void OnCollect(ScrollingObject scrollingObject) { scrollingObject.Stop(); m_onCollected?.Invoke(this); m_poolManager.ReturnPoolItem(this); }
void OnExtinguish(ScrollingObject scrollingObject) { scrollingObject.Stop(); m_onExtinguished?.Invoke(this); m_poolManager.ReturnPoolItem(this); }
public override void OnDeallocate() { m_onCollected = null; m_scrollingObject.Stop(); m_scrollingObject.OnScrollComplete -= OnCollect; base.OnDeallocate(); }
public override void OnDeallocate() { m_onExtinguished = null; m_scrollingObject.Stop(); m_scrollingObject.OnScrollComplete -= OnExtinguish; m_firePlayers[m_firePlayerIndex].Stop(); m_firePlayers[m_firePlayerIndex].gameObject.SetActive(false); base.OnDeallocate(); }
private void OnCollisionEnter(Collision collision) { // 땅에 착지시 게임 일시정지(키 입력으로 인해 해제 가능한 일시정지 상태) if (collision.transform.tag == "Ground") { if (Player.instance.isDead) // 죽어서 땅에 떨어지면 { if (Player.instance.life > 0) // 라이프가 있으면 { Player.instance.Resurrection(); // 부활 } else // 남아있는 라이프가 없으면 { GameManager.instance.StartCoroutine("GameOver"); // 게임 결과창 띄움 } anim.SetBool("isDead", false); } anim.SetBool("isGround", true); background.Stop(); } }