public override void OnGridUpdate() { base.OnGridUpdate(); oldMine = mine; mine = null; MissionManager.Mission newMission = GameManager.instance.missionManager.PrepareNewMission(); newMission.position = block.gridCoordinates; newMission.callBack = ""; newMission.range = 1; Block[] blocks = GameManager.instance.missionManager.CheckAdjacentBlocks(block.gridCoordinates, newMission).ToArray(); GameManager.instance.missionManager.EndMission(newMission); foreach (Block b in blocks) { Mine m = b.GetComponent <Mine>(); if (m != null) { mine = m; if (mine != oldMine) { mine.Cage(); } break; } } if (oldMine != null && oldMine != mine) { oldMine.Uncage(); } if (mine == null) { isEnabled = false; } }