private void SpawnAntLeader() { antLeaderToSpawn.transform.position = transform.position; antLeaderToSpawn.transform.rotation = transform.rotation; antLeaderToSpawn.GetComponent <Collider2D>().enabled = true; antLeaderToSpawn.gameObject.SetActive(true); AntsManager.ReturnAntToActives(antLeaderToSpawn); antLeaderToSpawn.MoveForwardAuto(); tutorial.antLeader = antLeaderToSpawn; }
private void SpawnAnt() { AntController ant = remainingAntsToSpawn[0]; ant.GetComponent <Collider2D>().enabled = true; ant.transform.position = transform.position; ant.gameObject.SetActive(true); AntsManager.ReturnAntToActives(ant); remainingAntsToSpawn.RemoveAt(0); }
private void OnCollisionEnter2D(Collision2D collision) { if (attachedAntLeader != null) { return; } AntController collidingAnt = collision.collider.GetComponent <AntController>(); if (collidingAnt == null || !collidingAnt.isLeader) { return; } AntSpawner.ForceSpawnOfAllAnts(); rb.bodyType = RigidbodyType2D.Dynamic; transform.parent = null; attachedAnts = AntsManager.GetActiveAnts(); foreach (AntController ant in attachedAnts) { ant.enabled = false; ant.transform.parent = transform; SetAntPositionAndRotationAfterHit(ant); ant.GetComponent <Collider2D>().enabled = false; if (ant.isLeader) { attachedAntLeader = ant; ant.GetComponent <Rigidbody2D>().bodyType = RigidbodyType2D.Kinematic; ant.PlayPickupSound(); } } }
void Awake() { instance = this; }