void stateMachine() { if (knockback) { currentState = knockbackState; } else { currentState = movementState; } currentState(); }
void stateMachine() { if (hostileHit) { finding = true; patrolling = false; dormant = false; currentState = findingState; hostileHit = false; } if (finding) { currentState = findingState; } else { if (targetDist(_player.gameObject) <= chaseDistance) { patrolling = false; dormant = false; } else if (targetDist(_player.gameObject) >= chaseDistance) { patrolling = true; } if (dormant) { currentState = dormantState; } else { if (patrolling) { currentState = patrolState; } else { currentState = chaseState; if (damageTaken >= damageThreshold) { damageTaken = 0; patrolling = true; } } } } currentState(); }
void stateMachine() { if (targetInSight()) { activeState = followState; } else { activeState = idleState; } activeState(); }
//state control void stateMachine() { if(hostileCollision) { activeState = pauseMovementController; } else { activeState = movementController; } }