private void DoRepeatingAction(GameObject goalObject) { Action action = null; Item item = goalObject.GetComponent <Item>(); if (item == null) { return; } switch (item.itemType) { case ItemType.Furniture: action = new FurnitureCatAction(); break; } if (action != null) { action.Execute(this.gameObject, item); damageEffect.Play(); } }