Save on edit

This commit is contained in:
Rendo 2025-07-16 22:14:15 +05:00
commit f7d19bbae6
10 changed files with 86 additions and 68 deletions

View file

@ -19,6 +19,8 @@ public partial class AdventureResourceInspector : Node
[Export]
public Control editorContainer;
[Export]
public AdventureEditor adventureEditor;
public override void _Ready()
{
@ -106,6 +108,7 @@ public partial class AdventureResourceInspector : Node
editorContainer.AddChild(editor);
editor.SetEditedWave(heldResource.waves[GetWaveIndex(selected.GetParent())]);
editor.SaveCallback += adventureEditor.Save;
return;
}
else if (index == EVENTS)

View file

@ -5,6 +5,7 @@ public partial class ZE_GridContainer : Control
{
private PackedScene rowEditorScene = ResourceLoader.Load<PackedScene>("uid://buvnw8a7pku78");
private WaveData waveData;
[Signal] public delegate void SaveCallbackEventHandler();
public void SetData(WaveData data)
{
waveData = data;
@ -33,6 +34,11 @@ public partial class ZE_GridContainer : Control
{
var editor = rowEditorScene.Instantiate<ZE_RowEditor>();
editor.editedSpawn = spawn;
editor.SaveCallback += Save;
AddChild(editor);
}
private void Save()
{
EmitSignal(SignalName.SaveCallback);
}
}

View file

@ -4,6 +4,7 @@ using Godot;
public partial class ZE_RowEditor : VBoxContainer
{
private PackedScene buttonScene = ResourceLoader.Load<PackedScene>("uid://segxys6udhyw");
[Signal] public delegate void SaveCallbackEventHandler();
public RowSpawn editedSpawn;
public override void _Ready()
{
@ -21,5 +22,6 @@ public partial class ZE_RowEditor : VBoxContainer
public void OnResourceChanged(ZombieResource resource, int index)
{
editedSpawn.zombies[index] = resource;
EmitSignal(SignalName.SaveCallback);
}
}

View file

@ -6,10 +6,15 @@ public partial class ZombieEditor : VBoxContainer
{
public WaveData editedWave;
[Export] private ZE_GridContainer container;
[Signal] public delegate void SaveCallbackEventHandler();
public void SetEditedWave(WaveData data)
{
editedWave = data;
container.SetData(editedWave);
}
public void Save()
{
EmitSignal(SignalName.SaveCallback);
}
}