public static GameEntity CreateOreBranch(GameContext context, GameEntity vein, Vector2 position) { var e = context.CreateEntity(); e.AddSprite("ore_branch"); e.AddPosition(position); var health = StatCalculator.Calculate(BaseBranchHealthPercentage, 1); e.AddHealth(health, health); e.isOre = true; e.isOreBranch = true; e.isKillable = true; e.isRemovedWhenDead = true; e.AddRoomChild(vein.roomChild.id); e.AddParent(vein.id.value); e.isOnGround = true; if (vein.hasBag == false) { vein.AddBag(new List <int>()); } vein.bag.items.Add(e.id.value); return(e); }