private void createZombie() { GameObject createdEnemy = Instantiate(enemy, new Vector3(randomPosition(), zombieStartRootPosition.y, zombieStartRootPosition.z), rotation) as GameObject; createdEnemy.transform.LookAt(cam.transform.position); ZombieMovementScript zombiescript = createdEnemy.GetComponent <ZombieMovementScript>(); zombiescript.setZombieID(zombieCounter++); }
void OnCollisionEnter(Collision collision) { //Debug.Log("oncollision enter called"); ParticleSystem ps = (ParticleSystem)Instantiate(particleSystem, this.transform.position, particleSystem.transform.rotation); ps.Play(); StartCoroutine(DeleteParticleAfterShowing(ps)); //explosionAudio.Play(); AudioSource.PlayClipAtPoint(explosionAudio.clip, this.transform.position); Collider[] hitColliders = Physics.OverlapSphere(this.transform.position, explosionRadius); int combo = 0; for (int i = 0; i < hitColliders.Length; i++) { Debug.Log(hitColliders[i].name); ZombieMovementScript script = hitColliders[i].GetComponent <ZombieMovementScript>(); if (script != null) { combo += 1; script.colleteralDamage(); } //hitColliders[i].SendMessage("die"); } if (combo > 1) { GameScript.isCombo = true; GameScript.points += combo; } // Debug-draw all contact points and normals foreach (ContactPoint contact in collision.contacts) { Debug.DrawRay(contact.point, contact.normal, Color.white); } Destroy(GameScript.actualGrenade); }