public void OnRemoveMc() { if (selectedMagicCircle != null) { if (selectedMagicCircle.mcParent == null) { selectedMagicCircle.RemoveAllMagicCircles(); Destroy(selectedMagicCircle.gameObject); } else { Debug.Log("Removing Magic Circle"); selectedMagicCircle.mcParent.RemoveMagicCircle(selectedMagicCircle); } } }
public virtual bool RemoveMagicCircle(MagicCircle mc) { foreach (int currMcType in innerMagicCircleList.Keys) { Debug.Log("innerMagicCircleList: " + ((MagicCircleType)currMcType).ToString()); } if (innerMagicCircleList.ContainsKey((int)mc.GetMcType())) { mc.Deactivate(); mc.RemoveAllMagicCircles(); innerMagicCircleList.Remove((int)mc.GetMcType()); Destroy(mc.gameObject); UpdateCirclePositions(); return(true); } else { Debug.LogError("This Magic Circle is not on the parent magic circle. Can't remove it " + mc.mcType); return(false); } }