//------------------------------------------------// //---------------------CHECKS---------------------// private void CheckPlayerStats() { if (playerStats.IsInvisibleUp() == true && enemyAction == basicActionWithPlayer) { enemyAction = basicAction; } }
protected virtual void Start() { playerInstance = PlayerInstant.Instance; p_movementModel = playerInstance.GetComponent <CharacterMovementModel>(); playerStats = playerInstance.GetComponent <PlayerStats>(); spawnCount = 0; enemyAction = basicAction; GetComponent <CircleCollider2D>().radius = 3f; }
private void UpdateActionEffects() { m_Animator.SetBool("Defend", enemyAction == enumEnemyActions.defend); if (enemyAction == enumEnemyActions.healAlly && target == null) { enemyAction = basicAction; } if (enemyAction == enumEnemyActions.chaseDecoy && target == null) { enemyAction = basicAction; } if (enemyAction != enumEnemyActions.spawn) { isDoSpawnActive = false; } if (enemyAction == enumEnemyActions.spawn && isDoSpawnActive == false) { StartCoroutine(DoSpawn()); } if (enemyAction != enumEnemyActions.pacing) { pacingActive = false; } if (enemyAction == enumEnemyActions.chase || enemyAction == enumEnemyActions.chaseDecoy) { if (projectileOn == true || projectileObject == null) { return; } projectileOn = true; StartCoroutine(DoProjectile()); } else { projectileOn = false; } }
private IEnumerator DoHeal() { float yieldTime = 0.5f; ienumeratorDoHealCheck = true; m_Animator.SetBool("Heal", true); yield return(new WaitForSeconds(yieldTime)); ienumeratorDoHealCheck = false; m_Animator.SetBool("Heal", false); Attackable allyAttackable = target.GetComponentInChildren <Attackable>(); Attackable selfAttackable = transform.parent.GetComponentInChildren <Attackable>(); allyAttackable.SetHealth(allyAttackable.GetMaxHealth()); selfAttackable.SubstractHealth(selfAttackable.GetMaxHealth() / 5); enemyAction = basicAction; }
public void SetEnemyAction(enumEnemyActions m_Action) { enemyAction = m_Action; }