Prepicked plants editor

This commit is contained in:
Rendo 2025-07-29 04:08:05 +05:00
commit 56f75a5d06
43 changed files with 532 additions and 50 deletions

View file

@ -0,0 +1,15 @@
namespace Newlon.Components.GUI.Seedpackets;
public class PrepickedDummyHandler : SeedpacketHandler
{
public PrepickedDummyHandler(Seedpacket owner) : base(owner)
{
if (LevelGUIElements.Instance.SeedpacketsHotbar.GetChildCount() >= PlayerProgress.Instance.MaxSeedpackets) return;
_owner.disablePacket = true;
var hotbarSeedpacket = Seedpacket.Prefab.Instantiate<Seedpacket>();
LevelGUIElements.Instance.SeedpacketsHotbar.AddChild(hotbarSeedpacket);
hotbarSeedpacket.SetResource(_owner.GetResource());
hotbarSeedpacket.SetHandler(new PrepickedHandler(_owner));
}
}

View file

@ -0,0 +1 @@
uid://c7uf1ygofsurs

View file

@ -0,0 +1,23 @@
using Newlon.Components.Level;
namespace Newlon.Components.GUI.Seedpackets;
public class PrepickedHandler : SeedpacketHandler
{
public PrepickedHandler(Seedpacket owner) : base(owner)
{
RuntimeLevelData.Instance.OnLevelStateChanged += OnLevelStateChanged;
}
public void OnLevelStateChanged(RuntimeLevelData.LevelStates state)
{
if (state == RuntimeLevelData.LevelStates.Game)
{
_owner.SetHandler(new HotbarHandler(_owner));
}
else if (state != RuntimeLevelData.LevelStates.ChooseYourSeeds)
{
_owner.disablePacket = true;
}
}
}

View file

@ -0,0 +1 @@
uid://d3da4b6e4qwtm