View Single Post
Old 04-11-2011, 01:29 AM   #14
Agronom
РядовойВ запасе
 
Join Date: Sep 2008
Posts: 29
Re: Фича, добавляющая в игру отображение кол-ва ресов у союзников

Частично переписал скрипт:
  • Время и ресурсы выводятся вместо текста "Resource Units", чтобы их было видно в режиме сенсоров.
  • Автоматически открываются меню "build" и "build queue" (для удобства ).
  • Теперь правило updateTimer работает только во время игры.
Code:
function updateTimer()
  if Universe_GameTime == nil then
    Rule_Remove("updateTimer");
    return
  end

  --TIME
  local time = Universe_GameTime();
  local h = floor(time / 3600);
  local m = floor(time / 60 - h * 60);
  local s = floor(time - m * 60 - h * 3600);

  local str;
  if h > 0 then
    str = format("%d:%02d:%02d", h, m, s);
  else
    str = format("%d:%02d", m, s);
  end

  --RU
  if (GR_MULTIPLAYER == GetGameRubric()) then
    local me = Universe_CurrentPlayer();
    for playerIndex=0, Universe_PlayerCount()-1 do
      if (me ~= playerIndex and AreAllied(me, playerIndex)==1) then
        local PlayerRUs = Player_GetRU(playerIndex);
        str = str .. format(" <c=38a2fa>%d{<c=ffd800>%d", playerIndex+1, PlayerRUs);
	if PlayerRUs < 1000 then str = str .. " "; end
	if PlayerRUs < 100  then str = str .. " "; end
	if PlayerRUs < 10   then str = str .. " "; end
      end
    end
  end

  UI_SetTextLabelText("ResourceMenu", "lblResourceUnitsStaticText", str);
end

UI_SetElementSize("ResourceMenu", "lblResourceUnitsStaticText", 168, 13);
Rule_AddInterval("updateTimer", 5);
updateTimer();

MainUI_UserEvent(eBuildManager);
UI_ToggleScreen("BuildQueueMenu", 1);
Поместить в "Homeworld2/Bin/autoexec.lua".
Attached Images
File Type: jpg timer.jpg (19.6 KB, 42 views)

Last edited by Agronom : 04-11-2011 at 05:58 PM.
Agronom is offline   Reply With Quote