Wave display
This commit is contained in:
parent
0e9e17cfdc
commit
96e6a20e95
10 changed files with 188 additions and 5 deletions
|
|
@ -6,9 +6,13 @@ public partial class AdventureEditor : MarginContainer
|
|||
public AdventureLevelResource editedResource;
|
||||
public string editedPath;
|
||||
|
||||
[Signal]
|
||||
public delegate void ResourceChangedEventHandler(AdventureLevelResource to);
|
||||
|
||||
public void Reload()
|
||||
{
|
||||
editedResource = ResourceLoader.Load<AdventureLevelResource>(editedPath);
|
||||
EmitSignal(SignalName.ResourceChanged, editedResource);
|
||||
}
|
||||
|
||||
public void Save()
|
||||
|
|
|
|||
74
addons/pvzadventure/scripts/AdventureResourceInspector.cs
Normal file
74
addons/pvzadventure/scripts/AdventureResourceInspector.cs
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
using Godot;
|
||||
using System;
|
||||
|
||||
[Tool]
|
||||
public partial class AdventureResourceInspector : Node
|
||||
{
|
||||
const int DISORDERED = 0;
|
||||
const int ORDERED = 1;
|
||||
const int SPAWNS = 2;
|
||||
|
||||
private Tree tree;
|
||||
private AdventureLevelResource heldResource;
|
||||
private TreeItem root;
|
||||
public override void _Ready()
|
||||
{
|
||||
tree = GetNode<Tree>("Tree");
|
||||
}
|
||||
|
||||
public void Refresh(AdventureLevelResource resource)
|
||||
{
|
||||
heldResource = resource;
|
||||
RefreshTree();
|
||||
}
|
||||
|
||||
private void RefreshTree()
|
||||
{
|
||||
tree.Clear();
|
||||
root = tree.CreateItem();
|
||||
root.DisableFolding = true;
|
||||
|
||||
for (int i = 0; i < heldResource.waves.Count; i++)
|
||||
{
|
||||
var item = tree.CreateItem(root);
|
||||
item.DisableFolding = true;
|
||||
item.SetText(0, string.Format("Wave {0}", i));
|
||||
|
||||
var disorder = tree.CreateItem(item);
|
||||
disorder.SetText(0, "Disordered zombies");
|
||||
|
||||
var order = tree.CreateItem(item);
|
||||
order.SetText(0, "Ordered zombies");
|
||||
|
||||
var spawns = tree.CreateItem(item);
|
||||
spawns.SetText(0, "Field spawns");
|
||||
}
|
||||
}
|
||||
|
||||
public void OnNewButtonPressed()
|
||||
{
|
||||
var wave = new WaveData();
|
||||
heldResource.waves.Add(wave);
|
||||
RefreshTree();
|
||||
}
|
||||
|
||||
public void OnItemSelected()
|
||||
{
|
||||
var selected = tree.GetSelected();
|
||||
if (selected.GetParent() == root) return;
|
||||
|
||||
var index = selected.GetIndex();
|
||||
if (index == DISORDERED)
|
||||
{
|
||||
|
||||
}
|
||||
else if (index == ORDERED)
|
||||
{
|
||||
|
||||
}
|
||||
else if (index == SPAWNS)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1 @@
|
|||
uid://b0hl4ap18wbb2
|
||||
Loading…
Add table
Add a link
Reference in a new issue