Removed script select from the robotlist and added current script name to display.
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
[ext_resource type="Script" uid="uid://dcxom1paffp0p" path="res://Scripts/Robot/RobotDisplay.cs" id="1_ltmdd"]
|
[ext_resource type="Script" uid="uid://dcxom1paffp0p" path="res://Scripts/Robot/RobotDisplay.cs" id="1_ltmdd"]
|
||||||
|
|
||||||
[node name="Robot" type="PanelContainer" unique_id=247502695 node_paths=PackedStringArray("listItem")]
|
[node name="Robot" type="PanelContainer" unique_id=247502695 node_paths=PackedStringArray("listItem", "currentScript")]
|
||||||
anchors_preset = 14
|
anchors_preset = 14
|
||||||
anchor_top = 0.5
|
anchor_top = 0.5
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
@@ -12,6 +12,7 @@ grow_horizontal = 2
|
|||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
script = ExtResource("1_ltmdd")
|
script = ExtResource("1_ltmdd")
|
||||||
listItem = NodePath("HBoxContainer/ListItem")
|
listItem = NodePath("HBoxContainer/ListItem")
|
||||||
|
currentScript = NodePath("HBoxContainer/CurrentScript")
|
||||||
|
|
||||||
[node name="HBoxContainer" type="HBoxContainer" parent="." unique_id=906487472]
|
[node name="HBoxContainer" type="HBoxContainer" parent="." unique_id=906487472]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
@@ -20,6 +21,7 @@ alignment = 1
|
|||||||
|
|
||||||
[node name="ListItem" type="RichTextLabel" parent="HBoxContainer" unique_id=46246913]
|
[node name="ListItem" type="RichTextLabel" parent="HBoxContainer" unique_id=46246913]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
text = "Robot #1"
|
text = "Robot #1"
|
||||||
fit_content = true
|
fit_content = true
|
||||||
autowrap_mode = 0
|
autowrap_mode = 0
|
||||||
@@ -28,18 +30,16 @@ vertical_alignment = 1
|
|||||||
|
|
||||||
[node name="Jump" type="Button" parent="HBoxContainer" unique_id=391426419]
|
[node name="Jump" type="Button" parent="HBoxContainer" unique_id=391426419]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
text = "Jump to"
|
text = "Jump to"
|
||||||
|
|
||||||
[node name="CurrentScript" type="RichTextLabel" parent="HBoxContainer" unique_id=425408407]
|
[node name="CurrentScript" type="RichTextLabel" parent="HBoxContainer" unique_id=425408407]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
text = "Scriptname"
|
text = "Scriptname"
|
||||||
fit_content = true
|
fit_content = true
|
||||||
autowrap_mode = 0
|
autowrap_mode = 0
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="ScriptSelect" type="MenuButton" parent="HBoxContainer" unique_id=63458827]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Select script..."
|
|
||||||
|
|
||||||
[connection signal="pressed" from="HBoxContainer/Jump" to="." method="OnJumpToClicked"]
|
[connection signal="pressed" from="HBoxContainer/Jump" to="." method="OnJumpToClicked"]
|
||||||
|
|||||||
@@ -114,6 +114,7 @@ public partial class CodingWindow : PanelContainer
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (nodes.Count > 0) robot.SetupExecution(nodes);
|
if (nodes.Count > 0) robot.SetupExecution(nodes);
|
||||||
|
robot.currentProgram = scriptName.Text.Length <= 0 ? $"Script{availableScripts.ItemCount}" : scriptName.Text;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetRobot(Robot robot)
|
public void SetRobot(Robot robot)
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ public partial class Robot : Node3D
|
|||||||
List<ProgramNode> nodes;
|
List<ProgramNode> nodes;
|
||||||
bool isExecuting = false;
|
bool isExecuting = false;
|
||||||
ProgramNode currentNode;
|
ProgramNode currentNode;
|
||||||
|
public string currentProgram;
|
||||||
|
|
||||||
public override void _Ready()
|
public override void _Ready()
|
||||||
{
|
{
|
||||||
@@ -40,10 +41,6 @@ public partial class Robot : Node3D
|
|||||||
|
|
||||||
Visible = Math.Round(Math.Abs(Position.Y / GameData.tileHeight), 0) == GameData.visibleLayer;
|
Visible = Math.Round(Math.Abs(Position.Y / GameData.tileHeight), 0) == GameData.visibleLayer;
|
||||||
|
|
||||||
}
|
|
||||||
public void Move()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetupExecution(List<ProgramNode> nodes)
|
public void SetupExecution(List<ProgramNode> nodes)
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
using Godot;
|
using Godot;
|
||||||
|
|
||||||
public partial class RobotDisplay : PanelContainer
|
public partial class RobotDisplay : PanelContainer
|
||||||
{
|
{
|
||||||
[Export] public RichTextLabel listItem;
|
[Export] public RichTextLabel listItem;
|
||||||
|
[Export] public RichTextLabel currentScript;
|
||||||
[Signal]
|
[Signal]
|
||||||
public delegate void OnRobotJumpToEventHandler(Robot robot);
|
public delegate void OnRobotJumpToEventHandler(Robot robot);
|
||||||
public Robot robot;
|
public Robot robot;
|
||||||
@@ -13,7 +15,10 @@ public partial class RobotDisplay : PanelContainer
|
|||||||
|
|
||||||
public override void _Process(double delta)
|
public override void _Process(double delta)
|
||||||
{
|
{
|
||||||
|
if (robot.currentProgram != currentScript.Text)
|
||||||
|
{
|
||||||
|
currentScript.Text = robot.currentProgram;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnJumpToClicked()
|
public void OnJumpToClicked()
|
||||||
|
|||||||
Reference in New Issue
Block a user