void OnCollisionEnter2D(Collision2D coll) { if (coll.gameObject.tag == "Walls") { Instantiate(FireballImpact, transform.position, Quaternion.identity); Destroy(this.gameObject); } if (coll.gameObject.tag == "Enemy") { DemonScript enemy = coll.gameObject.GetComponent <DemonScript>(); if (enemy != null) { enemy.TakeDamage(4); DestroyFireball(); } } }
public override void Init(DemonScript demon) { speed = 5; attackDist = 3; name = "Dresh"; this.demon = demon; maxHealth = 60; health = maxHealth; hitDistance = 0.2f; damage = 15; walkSound = Resources.Load <AudioClip>("Sounds/demonWalk"); dieSound = Resources.Load <AudioClip>("Sounds/dreshDie"); alertSound = Resources.Load <AudioClip>("Sounds/dreshAlert"); hurtSound = Resources.Load <AudioClip>("Sounds/dreshHurt"); sprite = Resources.Load <Sprite>("Demons/dreshWalk"); }
public override void Init(DemonScript demon) { speed = 3; attackDist = 5; name = "Kirgan"; this.demon = demon; maxHealth = 250; health = maxHealth; hitDistance = 1f; damage = 30; walkSound = Resources.Load <AudioClip>("Sounds/kirganStep2"); alertSound = Resources.Load <AudioClip>("Sounds/kirganAlert"); dieSound = Resources.Load <AudioClip>("Sounds/kirgan6"); hurtSound = Resources.Load <AudioClip>("Sounds/kirganHurt"); sprite = Resources.Load <Sprite>("Demons/kirgan"); }
private void HandleRayCastHit(RaycastHit hit) { if (m_SelectedSpell == Spell.None) { Cursor.visible = true; if (hit.collider.gameObject.layer == 9) // Check if object is selectable { // Set cursor to hovering Cursor.SetCursor(m_CursorOn, new Vector2(16, 16), CursorMode.Auto); } else { // Set cursor to not hovering Cursor.SetCursor(m_CursorOff, new Vector2(16, 16), CursorMode.Auto); } } else { Cursor.visible = false; } if (m_SelectedSpell == Spell.None) // Check if spell is selected { // Select minion //HarvesterScript harvester = hit.collider.gameObject.GetComponentInChildren<HarvesterScript>(); //if ((harvester != null && Input.GetMouseButtonDown(0))) // Select minion with click //{ // MinionSelect(); // return; //} //if (m_selected != null) //{ // if (Input.GetMouseButtonDown(1) && m_selected.GetComponent<HarvesterScript>() != null) // Create target location for minion // { // m_selected.GetComponent<HarvesterScript>().SetTargetLocation(hit.point); // Debug.Log(hit.point); // return; // } //} // Select Demon DemonScript demon = hit.collider.gameObject.GetComponentInChildren <DemonScript>(); if ((demon != null && Input.GetMouseButtonDown(0))) // Select minion with click { DemonSelect(); return; } if (m_selected != null) { if (Input.GetMouseButtonDown(1) && m_selected.GetComponent <DemonScript>() != null) // Create target location for minion { m_selected.GetComponent <DemonScript>().SetTargetLocation(hit.point); Debug.Log(hit.point); return; } } // Select tower TowerScript tower1 = hit.collider.gameObject.GetComponentInChildren <TowerScript>(); BombTowerScript tower2 = hit.collider.gameObject.GetComponentInChildren <BombTowerScript>(); IceTowerScript tower3 = hit.collider.gameObject.GetComponentInChildren <IceTowerScript>(); LaserTowerScript tower4 = hit.collider.gameObject.GetComponentInChildren <LaserTowerScript>(); if ((tower1 != null || tower2 != null || tower3 != null || tower4 != null) && Input.GetMouseButtonDown(0)) { TowerSelect(hit); return; } TurretPlot plot = hit.collider.gameObject.GetComponentInChildren <TurretPlot>(); if (plot != null && Input.GetMouseButtonDown(0)) // Select turret plot { PlotSelect(plot); return; } } if (Input.GetMouseButtonDown(0)) // Cast spell { SpellCast(hit.point); DeselectObject(); return; } }
public virtual void Init(DemonScript demon) { name = "Unknown Demon"; this.demon = demon; }