// method to create a new creature and add it to the table public void AddCreatureAtIndex(CardAsset ca, int UniqueID, int index) { GameObject creature = GameObject.Instantiate(GlobalSettings.Instance.CreaturePrefab, this.transform.position, Quaternion.identity) as GameObject; OneCreatureManager manager = creature.GetComponent <OneCreatureManager>(); manager.cardAsset = ca; manager.LoadFromCardAsset(); foreach (Transform t in creature.GetComponentsInChildren <Transform>()) { t.tag = owner.ToString() + "Creature"; } creature.transform.SetParent(this.transform); CreaturesOnTable.Insert(index, creature); IDHolder id = creature.AddComponent <IDHolder>(); id.UniqueID = UniqueID; CalculateCardPositions(); // end command execution Command.CommandExecutionComplete(); }