// OnStateEnter is called when a transition starts and the state machine starts to evaluate this state override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { Collider2D c = firstPlayer.collisionData; string Answer = firstPlayer.Answer; int Number = firstPlayer.Number; alphabetQueueHandler.UpdateQueue(c.gameObject.GetComponent <Enemy>().alphabet); string arrayQueue = alphabetQueueHandler.GetQueueString(); c.gameObject.GetComponent <Spaceship>().Explosion(); Destroy(c.gameObject); if (arrayQueue != Answer) { if (c.gameObject.GetComponent <Enemy> ().alphabet != "DOOR") { HitPoint.decrease_hp(); } } else { Number = CharacterCount.decrease_cnt(); } if (arrayQueue == Answer) { firstPlayer.AnswerNumber++; if (Number < 2) { DoorRefference.SetActive(); } } animator.SetTrigger("EnemyCollisionFinished"); }
public void OnTriggerEnter2D(Collider2D c) { string layerName = LayerMask.LayerToName(c.gameObject.layer); if (layerName == "Enemy") { queue.Enqueue(c.gameObject.GetComponent <Enemy>().alphabet); string arrayQueue = string.Concat(queue.ToArray()); Debug.Log("arrayQueue:" + arrayQueue); spaceship.Explosion(); Destroy(c.gameObject); if (arrayQueue != answer) { hp.decrease_hp(); } if (queue.Count < answer.Length) { return; } QueueFull(c, arrayQueue); } }