Ejemplo n.º 1
0
    /// <summary>
    /// Sets default values for player data that interfaces with the engine, such as the player position
    /// </summary>
    void SetDefaultPlayerData()
    {
        c_trickPhysicsData = new TrickPhysicsData(Attributes.Tricks, Attributes.MaxStats);
        c_positionData     = new PlayerPositionData(transform.position, transform.forward, transform.rotation);
        c_scoringData      = new ScoringData();
        c_inputData        = new PlayerInputData();
        c_stateData        = new StateData();
        c_aerialMoveData   = new AerialMoveData();
        c_entityData       = new EntityData();
        c_collisionData    = new CollisionData(CollisionData.FrontRayOffset, CollisionData.BackRayOffset);
        c_lastFrameData    = new LastFramePositionData();
        c_turnData         = new PlayerHandlingData(c_playerData.f_turnSpeed, c_playerData.f_turnAcceleration, c_playerData.f_turnSpeedDeceleration, c_playerData.f_turnAcceleration * 2, this.Attributes.Balance);

        c_playerData.v_currentPosition               = transform.position;
        c_playerData.q_currentRotation               = transform.rotation;
        c_playerData.q_targetRotation                = transform.rotation;
        c_playerData.v_currentAirDirection           = transform.forward;
        c_playerData.v_currentNormal                 = transform.up;
        c_playerData.v_currentDown                   = transform.up * -1;
        c_playerData.f_currentSpeed                  = Constants.ZERO_F;
        c_playerData.f_currentAcceleration           = c_playerData.f_acceleration;
        c_playerData.f_currentTopSpeed               = c_playerData.f_topSpeed;
        c_playerData.f_currentJumpCharge             = Constants.ZERO_F;
        c_playerData.f_currentForwardRaycastDistance = c_playerData.f_forwardRaycastDistance;
        c_playerData.f_currentRaycastDistance        = c_playerData.f_raycastDistance;
        c_playerData.f_surfaceAngleDifference        = 0.0f;
        c_playerData.b_obstacleInRange               = false;

        c_lastFrameData.v_lastFramePosition = transform.position;
        c_lastFrameData.q_lastFrameRotation = transform.rotation;

        c_stateData.b_updateState    = true;
        c_stateData.b_courseFinished = false;
    }
Ejemplo n.º 2
0
 public AerialState(ref PlayerData playerData, ref CollisionData collisionData,
                    ref AerialMoveData moveData, ref PlayerPositionData positionData)
 {
     this.c_playerData     = playerData;
     this.c_aerialMoveData = moveData;
     this.c_collisionData  = collisionData;
     this.c_positionData   = positionData;
 }
Ejemplo n.º 3
0
 public JumpChargeState(ref PlayerData playerData, ref PlayerPositionData positionData, ref CollisionData collisionData, ref AerialMoveData aerialMoveData, ref IncrementCartridge incr)
 {
     this.c_playerData     = playerData;
     this.c_positionData   = positionData;
     this.c_aerialMoveData = aerialMoveData;
     this.c_collisionData  = collisionData;
     this.cart_increment   = incr;
 }
Ejemplo n.º 4
0
 public GroundedState(ref PlayerData playerData,
                      ref AerialMoveData aerialMoveData,
                      ref CollisionData collisionData,
                      ref PlayerPositionData positionData)
 {
     this.c_playerData     = playerData;
     this.c_aerialMoveData = aerialMoveData;
     this.c_positionData   = positionData;
     this.c_collisionData  = collisionData;
 }
Ejemplo n.º 5
0
 public SpinSnapState(ref AerialMoveData aerialIn,
                      ref PlayerPositionData playerPosIn,
                      ref TrickPhysicsData trickIn,
                      ref ScoringData scoringIn)
 {
     this.c_aerialMoveData = aerialIn;
     this.c_playerPosData  = playerPosIn;
     this.c_physData       = trickIn;
     this.c_scoringData    = scoringIn;
 }
Ejemplo n.º 6
0
 public BoostState(ref PlayerData playerData,
                   ref AerialMoveData aerialMoveData,
                   ref CollisionData collisionData,
                   ref PlayerPositionData positionData,
                   ref PlayerHandlingData turnData)
 {
     this.c_playerData     = playerData;
     this.c_aerialMoveData = aerialMoveData;
     this.c_positionData   = positionData;
     this.c_collisionData  = collisionData;
     this.c_turnData       = turnData;
 }
Ejemplo n.º 7
0
 public CollisionController(ref PlayerData playerData,
                            ref PlayerPositionData positionData,
                            ref CollisionData collisionData,
                            ref CharacterCollisionData collisionAttrs,
                            ref AerialMoveData aerialMoveData,
                            ref BoxCollider playerCollider,
                            LayerMask groundMask,
                            LayerMask zoneMask)
 {
     this.c_collisionData       = collisionData;
     this.c_collisionAttrs      = collisionAttrs;
     this.c_playerData          = playerData;
     this.c_positionData        = positionData;
     this.c_aerialMoveData      = aerialMoveData;
     this.i_groundCollisionMask = groundMask;
     this.i_zoneCollisionMask   = zoneMask;
     this.c_playerCollider      = playerCollider;
     this.a_colliders           = new Collider[5];
 }