private void GetStuck(Collider other) { StandardEnemy enemy = null; launched = false; rb.isKinematic = true; stuckInWall = true; SetAllowPickup(true); transform.SetParent(other.transform); GetComponentInChildren <ParticleSystem>().gameObject.SetActive(false); if (other.gameObject.tag.Contains("Enemy")) { enemy = other.gameObject.GetComponentInParent <StandardEnemy>(); } switch (other.gameObject.tag) { case "EnemyHead": enemy.TakeDamage(enemy.GetMaxHealth()); Debug.Log("HeadShot"); break; case "EnemyBody": enemy.TakeDamage(enemy.GetMaxHealth() / 3); Debug.Log("Body Hit"); break; case "EnemyLimb": enemy.TakeDamage(enemy.GetMaxHealth() / 9); Debug.Log("Limb Hit"); break; } }
private void OnTriggerExit(Collider other) { Debug.Log("Trigger Exit " + other.tag); if (other.tag.Contains("Enemy")) { StandardEnemy se = other.transform.parent.GetComponent <StandardEnemy>(); se.mainTowerAttack = false; } }
private void OnTriggerEnter(Collider other) { Debug.Log("Trigger Enter " + other.tag); if (other.tag.Contains("Enemy")) { enemies.Add(other.transform.parent.gameObject); StandardEnemy se = other.transform.parent.GetComponent <StandardEnemy>(); se.mainTowerAttack = true; } }
void SpawnEnemy() { GameObject enemy = GameObject.Instantiate(enemyPrefab, spawnLocation, new Quaternion(0, 0, 0, 0)); StandardEnemy enemyScript = enemy.GetComponent <StandardEnemy>(); enemyScript.SetLevel(1, enemy.GetComponent <StandardEnemy>().GetNavMeshAgent(), true); enemy.name = "IntroSceneEnemy"; enemies.Add(enemy); StartCoroutine(enemyScript.TurnOnNavMeshAgent()); DebugLog("Enemy Spawned", consoleLogs); enemySpawned = true; StartCoroutine(Story()); }
IEnumerator SpawnEnemies() { for (int i = 0; i < enemiesCount; i++) { System.Random rnd = new System.Random(); int level = 1; if ((waveNr / 2 * enemyLevelMultiply) > 1) { level = rnd.Next(1, (int)(waveNr / 2 * enemyLevelMultiply)); } //Debug.Log(spawnLocations[rnd.Next(0, spawnLocations.Count - 1)]); GameObject enemy = GameObject.Instantiate(enemyPrefab, spawnLocations[rnd.Next(0, spawnLocations.Count - 1)], new Quaternion(0, 0, 0, 0)); StandardEnemy enemyScript = enemy.GetComponent <StandardEnemy>(); enemyScript.SetLevel(level, enemy.GetComponent <StandardEnemy>().GetNavMeshAgent(), false); enemy.name = "Enemy[" + i + "]"; enemies.Add(enemy); StartCoroutine(enemyScript.TurnOnNavMeshAgent()); yield return(new WaitForSeconds(1f)); } waveInitialized = true; }
public override int GetSpecificsDamages(StandardEnemy e) { return((int)(1 * this.BaseDamage)); }
/** * Chaque objet Bullet inflige des dégâts spécifiques selon les types * d'ennemis touchés. * * */ public abstract int GetSpecificsDamages(StandardEnemy e);
public void Play() { StandardEnemy.ToggleAI(true); Player.instance.TogglePlayerInteraction(true); }
public void Pause() { StandardEnemy.ToggleAI(false); Player.instance.TogglePlayerInteraction(false); }