Fix drops on enemies and treasure rooms

This commit is contained in:
Marco 2025-05-01 14:43:30 +02:00
commit 8d71a59d84
25 changed files with 81 additions and 40 deletions

View file

@ -29,11 +29,11 @@ public partial class LootItem : Resource
//[Export] public PackedScene HudItemScene;
[Export(PropertyHint.File)] public StringName DropScenePath { get; private set; } // Has to be a string path to avoid recursion issues
public ItemPickup Spawn(Node2D parent)
public ItemPickup Spawn(Node2D sibling, bool dropAsChild = false)
{
if (string.IsNullOrWhiteSpace(DropScenePath)) return null;
var itemScene = GD.Load<PackedScene>(DropScenePath);
var spawnedItem = parent.CreateSibling<ItemPickup>(itemScene);
var spawnedItem = dropAsChild ? sibling.CreateChild<ItemPickup>(itemScene) : sibling.CreateSibling<ItemPickup>(itemScene);
spawnedItem.Name = this.ItemKey;