public void SetupStateController(EntityStats objectStats, State state, ReactionStates _reactionStates, bool bActivateStateController = true) { reactionStatesContainer = _reactionStates; SetupStateController(objectStats, bActivateStateController); currentState = state; TransitionToState(state); }
public void SetupStateController(bool bActivateStateController, EntityStats objectStats, State state, ReactionStates _reactionStates, Transform _waypointHolder = null, bool bPutWaypointsIntoArray = true) { bStateControllerActive = bActivateStateController; entityStats = objectStats; reactionStatesContainer = _reactionStates; waypointHolder = _waypointHolder; if (bPutWaypointsIntoArray) { GetWaypoints(); } currentState = state; TransitionToState(state); }
protected virtual void Awake() { animator = GetComponent <Animator>(); alive = true; hitFlashTimer = 0f; entity = this.GetComponent <Entity>(); enemyState = EnemyStates.Idle; combatState = CombatStates.None; reactionState = ReactionStates.None; player = GameObject.Find("Player"); knockbackModifier = 1f; ogMaxVelocity = maxVelocity; ogAttackRange = attackRange; elapsedApproachTime = 0; alliedWithPlayer = true; // if standard enemy, set chances //guardChance = 15; //counterAttackChance = 0; //dodgeChance = 0; hitPlayer = false; maxHP = hp; startingPosition = this.transform.position; enemyMan = GameObject.Find("EnemyManagerGO").GetComponent <EnemyManager>(); attackAudioPlayed = false; hitsTakenRecently = 0; increasedReactionWindowTimer = 1.5f; initialIRWT = increasedReactionWindowTimer; irwtChance = 0; irwGuardChance = 0; irwDodgeChance = 0; irwCounterAttackChance = 0; irwType = "dodge"; ogAtStartup = atStartup; enemyLight = null; lit = false; stunTime = 0; glower = false; ignoreAxisConstraints = false; }