diff --git a/addons/pvzadventure/scenes/adventure_editor.tscn b/addons/pvzadventure/scenes/adventure_editor.tscn index 47e575a..aac382c 100644 --- a/addons/pvzadventure/scenes/adventure_editor.tscn +++ b/addons/pvzadventure/scenes/adventure_editor.tscn @@ -32,13 +32,11 @@ layout_mode = 2 layout_mode = 2 text = "File" switch_on_hover = true -item_count = 3 +item_count = 2 popup/item_0/text = "New" popup/item_0/id = 0 -popup/item_1/text = "Save" +popup/item_1/text = "Open" popup/item_1/id = 1 -popup/item_2/text = "Open" -popup/item_2/id = 2 script = ExtResource("2_d5hwn") [node name="FileDialog" type="FileDialog" parent="Editor/StatusBar/HBoxContainer/FileButton"] diff --git a/addons/pvzadventure/scripts/AdventureEditor.cs b/addons/pvzadventure/scripts/AdventureEditor.cs index 5f52654..1f98b89 100644 --- a/addons/pvzadventure/scripts/AdventureEditor.cs +++ b/addons/pvzadventure/scripts/AdventureEditor.cs @@ -8,11 +8,18 @@ public partial class AdventureEditor : MarginContainer [Signal] public delegate void ResourceChangedEventHandler(AdventureLevelResource to); + [Signal] + public delegate void ReloadRequestedEventHandler(); public void Reload() + { + EmitSignal(SignalName.ReloadRequested); + } + public void HardReload() { editedResource = ResourceLoader.Load(editedPath); EmitSignal(SignalName.ResourceChanged, editedResource); + Reload(); } public void Save() diff --git a/addons/pvzadventure/scripts/FileButton.cs b/addons/pvzadventure/scripts/FileButton.cs index 0b2c3b2..156aa90 100644 --- a/addons/pvzadventure/scripts/FileButton.cs +++ b/addons/pvzadventure/scripts/FileButton.cs @@ -4,8 +4,7 @@ using Godot; public partial class FileButton : MenuButton { const int NEWFILE = 0; - const int SAVEFILE = 1; - const int OPENFILE = 2; + const int OPENFILE = 1; private AdventureEditor editor; private FileDialog dialog; private int chosenOption = -1; @@ -27,10 +26,6 @@ public partial class FileButton : MenuButton dialog.PopupCentered(); dialog.FileMode = FileDialog.FileModeEnum.SaveFile; } - else if (index == SAVEFILE) - { - editor.Save(); - } else if (index == OPENFILE) { dialog.PopupCentered(); @@ -43,10 +38,11 @@ public partial class FileButton : MenuButton if (chosenOption == NEWFILE) { editor.Save(); + editor.HardReload(); } else if (chosenOption == OPENFILE) { - editor.Reload(); + editor.HardReload(); } } diff --git a/resources/levels/test_level_2.tres b/resources/levels/test_level_2.tres new file mode 100644 index 0000000..4aab480 --- /dev/null +++ b/resources/levels/test_level_2.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="AdventureLevelResource" load_steps=2 format=3 uid="uid://bd2napw4d6tjn"] + +[ext_resource type="Script" uid="uid://bximdujbkj2n4" path="res://addons/pvzadventure/AdventureLevelResource.cs" id="1_4mtvk"] + +[resource] +script = ExtResource("1_4mtvk") +startSun = 50.0 +wavePercentage = 0.0 +standardWaveDelay = 0.0 +initialWaveDelay = 0.0 +waves = null