private IEnumerator CoroutineBlockEvent(Block block) { DungeonManager.instance.EnterState(DungeonState.BlockEvent); yield return(itemTakeEvent.StartTakeItemCoroutine(player.location)); if (block.blockType != BlockType.None) { yield return(battleEvent.StartBattleEventCoroutine(block, itemTakeEvent.taked)); if (battleEvent.onBattleEvent) { yield break; } yield return(powerTakeEvent.StartTakePowerCoroutine(block)); yield return(spRemainCheckEvent.StartCheckSpRemainCoroutine()); } yield return(powerTakeEvent.StartTakePowerCoroutine(block)); yield return(spRemainCheckEvent.StartCheckSpRemainCoroutine()); OnEndBlockEvent(); DungeonManager.instance.ExitState(); yield break; }