Description:
Add tower preview.
Commit status:
[Not Reviewed]
References:
Diff options:
Comments:
0 Commit comments
0 Inline Comments
Unresolved TODOs:
There are no unresolved TODOs
@@ -8,7 +8,8 | |||||
|
8 | { |
|
8 | { |
|
9 | None, |
|
9 | None, |
|
10 | Preserve, |
|
10 | Preserve, |
|
11 | Dezone |
|
11 | Dezone, |
|
|
12 | Tower | ||
|
12 |
|
13 | ||
|
13 | } |
|
14 | } |
|
14 |
|
15 |
@@ -327,13 +327,22 | |||||
|
327 | WorldBuilder.SetComponent(graphWindow, new VisibilityComponent { visible = false }); |
|
327 | WorldBuilder.SetComponent(graphWindow, new VisibilityComponent { visible = false }); |
|
328 | WorldBuilder.SetComponent(graphWindow, new WindowTypeComponent { type = isometricparkfna.Messages.Window.Graph }); |
|
328 | WorldBuilder.SetComponent(graphWindow, new WindowTypeComponent { type = isometricparkfna.Messages.Window.Graph }); |
|
329 |
|
329 | ||
|
330 | var preserveTool = WorldBuilder.CreateEntity(); |
|
330 | //Create a tool for each tool type. |
|
331 | WorldBuilder.SetComponent(preserveTool, new ToolComponent { Tool = Tool.Preserve }); |
|
331 | foreach (var tool in System.Enum.GetValues(typeof(Tool))) { |
|
332 | WorldBuilder.SetComponent(preserveTool, new SelectedComponent {Type = SelectionType.Tool, selected = true}); |
|
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 |
|
|
339 | // var preserveTool = WorldBuilder.CreateEntity(); |
|
335 |
WorldBuilder.SetComponent( |
|
340 | // WorldBuilder.SetComponent(preserveTool, new ToolComponent { Tool = Tool.Preserve }); |
|
336 |
WorldBuilder.SetComponent( |
|
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 | var gameEntity = WorldBuilder.CreateEntity(); |
|
348 | var gameEntity = WorldBuilder.CreateEntity(); |
@@ -23,11 +23,24 | |||||
|
23 | public override void Render() |
|
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 | foreach (ref readonly var entity in ReadEntities<CursorComponent>()) |
|
36 | foreach (ref readonly var entity in ReadEntities<CursorComponent>()) |
|
27 | { |
|
37 | { |
|
28 |
|
38 | ||
|
29 | var cursorComponent = GetComponent<CursorComponent>(entity); |
|
39 | var cursorComponent = GetComponent<CursorComponent>(entity); |
|
30 | Tile.OutlineSquare(batch, cursorComponent.position.X, cursorComponent.position.Y, Color.Yellow); |
|
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 | ImGui.Text(header); |
|
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 | // ImGui.SetCursorPosX(width - 520); |
|
104 | // ImGui.SetCursorPosX(width - 520); |
|
105 | // Add 12 pixels for each button, plus separator |
|
105 | // Add 12 pixels for each button, plus separator |
|
106 |
ImGui.SetCursorPosX(width - (dimensions.X + 11*1 |
|
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 | if (Menu.activeButton("\ue099 Preserve", bridgeEngine.toolStatuses[Tool.Preserve], StyleSets.selected, StyleSets.white)) |
|
112 | if (Menu.activeButton("\ue099 Preserve", bridgeEngine.toolStatuses[Tool.Preserve], StyleSets.selected, StyleSets.white)) |
|
109 | { |
|
113 | { |
|
110 | bridgeEngine.toggleToolMessages.Add(new ToggleToolMessage {Tool = Tool.Preserve}); |
|
114 | bridgeEngine.toggleToolMessages.Add(new ToggleToolMessage {Tool = Tool.Preserve}); |
You need to be logged in to leave comments.
Login now