Fix observers

This commit is contained in:
Paul Chote
2011-05-10 18:40:48 +12:00
parent ab28f5867f
commit 7c18614bf3
2 changed files with 76 additions and 75 deletions

View File

@@ -22,18 +22,13 @@ namespace OpenRA.Mods.Cnc.Widgets
static bool staticSetup; static bool staticSetup;
Widget ingameRoot; Widget ingameRoot;
public static CncIngameChromeLogic GetHandler() static void AddChatLineStub(Color c, string from, string text)
{ {
var panel = Widget.RootWidget.GetWidget("INGAME_ROOT"); var panel = Widget.RootWidget.GetWidget("INGAME_ROOT");
if (panel == null) if (panel == null)
return null; return;
return panel.DelegateObject as CncIngameChromeLogic; var handler = panel.DelegateObject as CncIngameChromeLogic;
}
static void AddChatLineStub(Color c, string from, string text)
{
var handler = GetHandler();
if (handler == null) if (handler == null)
return; return;
@@ -57,8 +52,10 @@ namespace OpenRA.Mods.Cnc.Widgets
Game.AddChatLine += AddChatLineStub; Game.AddChatLine += AddChatLineStub;
} }
ingameRoot.GetWidget<CncMenuButtonWidget>("DIPLOMACY_BUTTON").IsDisabled = () => true; if (world.LocalPlayer != null)
widget.GetWidget("PLAYER_WIDGETS").IsVisible = () => true;
ingameRoot.GetWidget<CncMenuButtonWidget>("DIPLOMACY_BUTTON").IsDisabled = () => true;
ingameRoot.GetWidget<CncMenuButtonWidget>("OPTIONS_BUTTON").OnClick = () => ingameRoot.GetWidget<CncMenuButtonWidget>("OPTIONS_BUTTON").OnClick = () =>
{ {
ingameRoot.IsVisible = () => false; ingameRoot.IsVisible = () => false;

View File

@@ -2,24 +2,13 @@ Container@INGAME_ROOT:
Id:INGAME_ROOT Id:INGAME_ROOT
Delegate:CncIngameChromeLogic Delegate:CncIngameChromeLogic
Children: Children:
WorldInteractionController: Container@PLAYER_WIDGETS:
Id:INTERACTION_CONTROLLER Id:PLAYER_WIDGETS
Width:WINDOW_RIGHT Visible:false
Height:WINDOW_BOTTOM Children:
ViewportScrollController:
Width:WINDOW_RIGHT
Height:WINDOW_BOTTOM
WorldCommand: WorldCommand:
Width:WINDOW_RIGHT Width:WINDOW_RIGHT
Height:WINDOW_BOTTOM Height:WINDOW_BOTTOM
Timer@GAME_TIMER:
Id:GAME_TIMER
X: WINDOW_RIGHT/2
Y: 10
StrategicProgress@STRATEGIC_PROGRESS:
Id:STRATEGIC_PROGRESS
X: WINDOW_RIGHT/2
Y: 40
Background@POSTGAME_BG: Background@POSTGAME_BG:
Id:POSTGAME_BG Id:POSTGAME_BG
X:(WINDOW_RIGHT - WIDTH)/2 X:(WINDOW_RIGHT - WIDTH)/2
@@ -49,31 +38,6 @@ Container@INGAME_ROOT:
TabClick: button.aud TabClick: button.aud
BuildPaletteOpen: appear1.aud BuildPaletteOpen: appear1.aud
BuildPaletteClose: appear1.aud BuildPaletteClose: appear1.aud
CncMenuButton@OPTIONS_BUTTON:
Id:OPTIONS_BUTTON
X:5
Y:5
Width:140
Height:35
Text:Options
Bold:True
CncMenuButton@DIPLOMACY_BUTTON:
Id:DIPLOMACY_BUTTON
X:150
Y:5
Width:140
Height:35
Text:Diplomacy
Bold:True
CncMenuButton@DEVELOPERMODE_BUTTON:
Id:DEVELOPERMODE_BUTTON
X:295
Y:5
Width:160
Height:25
Text:Developer Mode
Visible:false
Bold:True
RadarBin@INGAME_RADAR_BIN: RadarBin@INGAME_RADAR_BIN:
Id:INGAME_RADAR_BIN Id:INGAME_RADAR_BIN
WorldInteractionController:INTERACTION_CONTROLLER WorldInteractionController:INTERACTION_CONTROLLER
@@ -107,6 +71,46 @@ Container@INGAME_ROOT:
Image:repair Image:repair
Description:Repair Description:Repair
LongDesc:Repair damaged buildings LongDesc:Repair damaged buildings
WorldInteractionController:
Id:INTERACTION_CONTROLLER
Width:WINDOW_RIGHT
Height:WINDOW_BOTTOM
ViewportScrollController:
Width:WINDOW_RIGHT
Height:WINDOW_BOTTOM
Timer@GAME_TIMER:
Id:GAME_TIMER
X: WINDOW_RIGHT/2
Y: 10
StrategicProgress@STRATEGIC_PROGRESS:
Id:STRATEGIC_PROGRESS
X: WINDOW_RIGHT/2
Y: 40
CncMenuButton@OPTIONS_BUTTON:
Id:OPTIONS_BUTTON
X:5
Y:5
Width:140
Height:35
Text:Options
Bold:True
CncMenuButton@DIPLOMACY_BUTTON:
Id:DIPLOMACY_BUTTON
X:150
Y:5
Width:140
Height:35
Text:Diplomacy
Bold:True
CncMenuButton@DEVELOPERMODE_BUTTON:
Id:DEVELOPERMODE_BUTTON
X:295
Y:5
Width:160
Height:25
Text:Developer Mode
Visible:false
Bold:True
WorldTooltip: WorldTooltip:
ChatDisplay@CHAT_DISPLAY: ChatDisplay@CHAT_DISPLAY:
Id:CHAT_DISPLAY Id:CHAT_DISPLAY