InteractState ManageDestroyLure(InteractState previous, InteractStateParam param) { //NOTHING InteractState newState = InteractState.Nothing; return(newState); }
InteractState ManageSpawnLure(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING newState = InteractState.Nothing; return(newState); }
public InteractState GetNewState(InteractState previous, InteractStateParam param) { InteractState newState = previous; switch (previous) { case InteractState.Nothing: newState = ManageNothing(previous, param); break; case InteractState.Glide: newState = ManageGlide(previous, param); break; case InteractState.MeleeAttack: newState = ManageMeleeAttack(previous, param); break; case InteractState.DistantAttack: newState = ManageDistantAttack(previous, param); break; case InteractState.SpawnLure: newState = ManageSpawnLure(previous, param); break; case InteractState.DestroyLure: newState = ManageDestroyLure(previous, param); break; case InteractState.Inflate: newState = ManageInflate(previous, param); break; case InteractState.Tiny: newState = ManageResize(previous, param); break; case InteractState.Activate: newState = ManageActivate(previous, param); break; case InteractState.Absorb: newState = ManageAbsorb(previous, param); break; case InteractState.Carry: newState = ManageCarry(previous, param); break; case InteractState.Push: newState = ManagePush(previous, param); break; } return(newState); }
InteractState ManageCarry(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (param.finishedCarry) { newState = InteractState.Nothing; } return(newState); }
InteractState ManageAbsorb(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (!param.yokaiStillInRange) { newState = InteractState.Nothing; } return(newState); }
InteractState ManageActivate(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (!param.canGlide) { newState = InteractState.Nothing; } return(newState); }
InteractState ManageInflate(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (param.canInflate) { newState = InteractState.Nothing; } return(newState); }
InteractState ManageMeleeAttack(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (param.finishedMeleeAttack) { newState = InteractState.Nothing; } return(newState); }
InteractState ManageDistantAttack(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING if (param.finishedDistantAttack) { param.finishedDistantAttack = false; newState = InteractState.Nothing; } return(newState); }
InteractState ManageMeleeAttack(InteractState previous, InteractStateParam param) { InteractState newState = previous; //NOTHING //DETECTER LA FIN DE L'ANIMATION OU UN AUTRE MOYEN DE DECLENCHER LE RETOUR A L'ETAT NOTHING if (!param.canGlide) { newState = InteractState.Nothing; } return(newState); }
private void Start() { movementState = MovementState.Idle; previousMovementState = movementState; interactState = InteractState.Nothing; previousInteractState = interactState; body = GetComponent <Rigidbody>(); animBody = GetComponent <AnimatorController>(); moveStateParameters = new MovementStateParam(); moveStateCtrl = new MovementStateController(); interactStateParameter = new InteractStateParam(); InteractStateCtrl = new InteractStateController(); inputController = GetComponent <InputController>(); interactBehaviorCtrl = GetComponent <InteractBehavior>(); }
InteractState ManageGlide(InteractState previous, InteractStateParam param) { InteractState newState = previous; if (param.canGlide) { newState = InteractState.Glide; } //NOTHING if (!param.canGlide) { param.canAirStream = false; newState = InteractState.Nothing; } return(newState); }
InteractState ManageNothing(InteractState previous, InteractStateParam param) { InteractState newState = previous; //Glide if (param.canGlide) { newState = InteractState.Glide; } //MeleeAttack if (param.canMeleeAttack) { newState = InteractState.MeleeAttack; } //DistantAttack if (param.canDistantAttack) { newState = InteractState.DistantAttack; } //SpawnLure if (param.canSpawnLure) { newState = InteractState.SpawnLure; } //Inflate if (param.canInflate) { newState = InteractState.Inflate; } //Resize if (param.canResize) { newState = InteractState.Tiny; } //Activate if (param.canActivate) { newState = InteractState.Activate; } //Absorb if (param.canAbsorb) { newState = InteractState.Absorb; } //Carry if (param.canCarry) { newState = InteractState.Carry; } //Push if (param.canPush) { newState = InteractState.Push; } //// STILL MOVING UP //if (IsGoingUp(param)) { // if (param.jumpRequired) { // newState = InteractState.DoubleJump; // } // else { // newState = InteractState.Jump; // } //} return(newState); }