Added robot display to map logic, now need to add the color for it.
This commit is contained in:
@@ -281,6 +281,11 @@ layout_mode = 2
|
|||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
text = "Apply"
|
text = "Apply"
|
||||||
|
|
||||||
|
[node name="CheckBox" type="CheckBox" parent="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Renaming" unique_id=1340883792]
|
||||||
|
layout_mode = 2
|
||||||
|
button_pressed = true
|
||||||
|
text = "Show on map"
|
||||||
|
|
||||||
[node name="Scripting" type="HBoxContainer" parent="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer" unique_id=1934932205]
|
[node name="Scripting" type="HBoxContainer" parent="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer" unique_id=1934932205]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
@@ -732,6 +737,7 @@ vertical_alignment = 1
|
|||||||
|
|
||||||
[connection signal="pressed" from="CanvasLayer/UIHandler/MainUI/HeaderContainer/VBoxContainer/UnlockLayer" to="CanvasLayer/UIHandler" method="UnlockLayer"]
|
[connection signal="pressed" from="CanvasLayer/UIHandler/MainUI/HeaderContainer/VBoxContainer/UnlockLayer" to="CanvasLayer/UIHandler" method="UnlockLayer"]
|
||||||
[connection signal="pressed" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Renaming/Button" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="SaveRobotName"]
|
[connection signal="pressed" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Renaming/Button" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="SaveRobotName"]
|
||||||
|
[connection signal="toggled" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Renaming/CheckBox" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnMapToggled"]
|
||||||
[connection signal="connection_request" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeConnect"]
|
[connection signal="connection_request" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeConnect"]
|
||||||
[connection signal="disconnection_request" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeDisconnect"]
|
[connection signal="disconnection_request" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeDisconnect"]
|
||||||
[connection signal="node_deselected" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeDeselect"]
|
[connection signal="node_deselected" from="CanvasLayer/UIHandler/MainUI/Content/CodingWindow/VBoxContainer/Scripting/EditorWindow/CodeContainer" to="CanvasLayer/UIHandler/MainUI/Content/CodingWindow" method="OnNodeDeselect"]
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ public partial class Robot : Node3D
|
|||||||
public bool isCoolingDown = false;
|
public bool isCoolingDown = false;
|
||||||
public bool isBroken = false;
|
public bool isBroken = false;
|
||||||
public string robotType = "iron_robot";
|
public string robotType = "iron_robot";
|
||||||
|
public bool showOnMap = true;
|
||||||
|
|
||||||
private RobotTypeStats TypeStats =>
|
private RobotTypeStats TypeStats =>
|
||||||
GameData.robotStats.RobotTypes.TryGetValue(robotType, out RobotTypeStats stats)
|
GameData.robotStats.RobotTypes.TryGetValue(robotType, out RobotTypeStats stats)
|
||||||
|
|||||||
@@ -43,6 +43,12 @@ public partial class CodingWindow : PanelContainer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnMapToggled(bool toggledOn)
|
||||||
|
{
|
||||||
|
if(robot == null) return;
|
||||||
|
robot.showOnMap = toggledOn;
|
||||||
|
}
|
||||||
|
|
||||||
public void OnNodeSelect(NodeDisplay node)
|
public void OnNodeSelect(NodeDisplay node)
|
||||||
{
|
{
|
||||||
selectedNode = node;
|
selectedNode = node;
|
||||||
|
|||||||
@@ -22,6 +22,21 @@ public partial class Map : PanelContainer
|
|||||||
Tile[,] tiles = GameData.map[GameData.currentLayer].tiles;
|
Tile[,] tiles = GameData.map[GameData.currentLayer].tiles;
|
||||||
int size = GameData.layerSize;
|
int size = GameData.layerSize;
|
||||||
|
|
||||||
|
Dictionary<Vector2I, List<Robot>> visibleRobots = new Dictionary<Vector2I, List<Robot>>();
|
||||||
|
|
||||||
|
Vector3I tilePos;
|
||||||
|
Vector2I key;
|
||||||
|
|
||||||
|
foreach(Robot robot in GameData.robots)
|
||||||
|
{
|
||||||
|
if(!robot.showOnMap) continue;
|
||||||
|
tilePos = Pathfinding.GetClosestStartPoint(robot.Position);
|
||||||
|
if(tilePos.Y != GameData.visibleLayer) continue;
|
||||||
|
key = new Vector2I(tilePos.X, tilePos.Z);
|
||||||
|
if(!visibleRobots.ContainsKey(key)) visibleRobots.Add(key, new List<Robot>());
|
||||||
|
visibleRobots[key].Add(robot);
|
||||||
|
}
|
||||||
|
|
||||||
for (int z = -1; z < size; z++)
|
for (int z = -1; z < size; z++)
|
||||||
{
|
{
|
||||||
for (int x = -1; x < size; x++)
|
for (int x = -1; x < size; x++)
|
||||||
|
|||||||
Reference in New Issue
Block a user