Description:
Add tower preview.
Commit status:
[Not Reviewed]
References:
Comments:
0 Commit comments 0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
Add another comment

r576:f3ba97208995 -

@@ -8,7 +8,8
8 8 {
9 9 None,
10 10 Preserve,
11 Dezone
11 Dezone,
12 Tower
12 13
13 14 }
14 15
@@ -327,13 +327,22
327 327 WorldBuilder.SetComponent(graphWindow, new VisibilityComponent { visible = false });
328 328 WorldBuilder.SetComponent(graphWindow, new WindowTypeComponent { type = isometricparkfna.Messages.Window.Graph });
329 329
330 var preserveTool = WorldBuilder.CreateEntity();
331 WorldBuilder.SetComponent(preserveTool, new ToolComponent { Tool = Tool.Preserve });
332 WorldBuilder.SetComponent(preserveTool, new SelectedComponent {Type = SelectionType.Tool, selected = true});
330 //Create a tool for each tool type.
331 foreach (var tool in System.Enum.GetValues(typeof(Tool))) {
332 if ((Tool)tool != Tool.None) {
333 var toolEntity = WorldBuilder.CreateEntity();
334 WorldBuilder.SetComponent(toolEntity, new ToolComponent { Tool = (Tool)tool });
335 WorldBuilder.SetComponent(toolEntity, new SelectedComponent {Type = SelectionType.Tool, selected = ((Tool)tool == Tool.Preserve)});
336 }
337 }
333 338
334 var dezoneTool = WorldBuilder.CreateEntity();
335 WorldBuilder.SetComponent(dezoneTool, new ToolComponent { Tool = Tool.Dezone });
336 WorldBuilder.SetComponent(dezoneTool, new SelectedComponent {Type = SelectionType.Tool, selected = false});
339 // var preserveTool = WorldBuilder.CreateEntity();
340 // WorldBuilder.SetComponent(preserveTool, new ToolComponent { Tool = Tool.Preserve });
341 // WorldBuilder.SetComponent(preserveTool, new SelectedComponent {Type = SelectionType.Tool, selected = true});
342 //
343 // var dezoneTool = WorldBuilder.CreateEntity();
344 // WorldBuilder.SetComponent(dezoneTool, new ToolComponent { Tool = Tool.Dezone });
345 // WorldBuilder.SetComponent(dezoneTool, new SelectedComponent {Type = SelectionType.Tool, selected = false});
337 346
338 347
339 348 var gameEntity = WorldBuilder.CreateEntity();
@@ -23,11 +23,24
23 23 public override void Render()
24 24 {
25 25
26 Tool selectedTool = Tool.None;
27
28 foreach (ref readonly var entity in ReadEntities<ToolComponent>()) {
29 var toolComponent = GetComponent<ToolComponent>(entity);
30 var selectedComponent = GetComponent<SelectedComponent>(entity);
31 if (selectedComponent.selected) {
32 selectedTool = toolComponent.Tool;
33 }
34 }
35
26 36 foreach (ref readonly var entity in ReadEntities<CursorComponent>())
27 37 {
28 38
29 39 var cursorComponent = GetComponent<CursorComponent>(entity);
30 40 Tile.OutlineSquare(batch, cursorComponent.position.X, cursorComponent.position.Y, Color.Yellow);
41 if(selectedTool == Tool.Tower) {
42 Tile.drawTileAt(batch, (int)cursorComponent.position.X, (int)cursorComponent.position.Y, 300, 2, 0.70f, new Color(1.0f, 1.0f, 1.0f, 0.5f));
43 }
31 44 }
32 45 }
33 46
@@ -99,12 +99,16
99 99 ImGui.Text(header);
100 100
101 101
102 var dimensions = ImGui.CalcTextSize("X Preserve X Dezone | X Graph X Contracts $ Budget X Forest X News X | Pause 1 2 3 4 5") ;
102 var dimensions = ImGui.CalcTextSize("X Tower X Preserve X Dezone | X Graph X Contracts $ Budget X Forest X News X | Pause 1 2 3 4 5") ;
103 103
104 104 // ImGui.SetCursorPosX(width - 520);
105 105 // Add 12 pixels for each button, plus separator
106 ImGui.SetCursorPosX(width - (dimensions.X + 11*12));
106 ImGui.SetCursorPosX(width - (dimensions.X + 11*15));
107 107
108 if (Menu.activeButton("\ue06e Tower", bridgeEngine.toolStatuses[Tool.Tower], StyleSets.selected, StyleSets.white))
109 {
110 bridgeEngine.toggleToolMessages.Add(new ToggleToolMessage {Tool = Tool.Tower});
111 }
108 112 if (Menu.activeButton("\ue099 Preserve", bridgeEngine.toolStatuses[Tool.Preserve], StyleSets.selected, StyleSets.white))
109 113 {
110 114 bridgeEngine.toggleToolMessages.Add(new ToggleToolMessage {Tool = Tool.Preserve});
You need to be logged in to leave comments. Login now