void Shoot() { Debug.Log("Shoot"); shootTimer -= Time.deltaTime; if (enemyUnit != null) { laserShotLine.SetPosition(0, laserShotLine.transform.position); laserShotLine.SetPosition(1, enemyUnit.transform.position + Vector3.up); laserShotLine.enabled = true; } /* if (enemyUnit != null) * { * transform.LookAt(enemyUnit.transform); * GameObject go = (GameObject)Instantiate(bullet, bulletSpawnPoint.position, Quaternion.identity); * go.GetComponent<Rigidbody>().AddForce(bulletSpawnPoint.forward * 5000); * } */ enemyProp.TakeDamage(10); if (enemyProp.health < 0) { enemyProp.destroyed = true; friendlyQueue.Dequeue(); if (friendlyQueue.Count > 0) { enemyUnit = friendlyQueue.Peek(); enemyProp = enemyUnit.GetComponent <AllyShooting>(); } } }
void OnTriggerEnter(Collider col) { if (col.gameObject.tag == "FriendlyUnits" || col.gameObject.tag == "Player") { friendlyQueue.Enqueue(col.gameObject); } enemyUnit = friendlyQueue.Peek(); enemyProp = enemyUnit.GetComponent <AllyShooting>(); }
void Awake() { shootScript = GetComponent <AllyShooting>(); move = GetComponent <AllyMovement>(); targets = new GameObject[10]; }