public InputVariableJump2D(VelocityInUpSpace2D vius, Gravity2D gravity,
                            float variableJumpDampFactor, KeyCode buttonJump)
 {
     this.vius    = vius;
     this.gravity = gravity;
     this.variableJumpDampFactor = variableJumpDampFactor;
     this.buttonJump             = buttonJump;
 }
Esempio n. 2
0
 public GroundBasedAcceleration2D(GroundChecker2D groundChecker,
                                  VelocityInUpSpace2D vius,
                                  float groundDeceleration, float maxHorizontalSpeed)
 {
     this.groundChecker      = groundChecker;
     this.vius               = vius;
     this.groundDeceleration = groundDeceleration;
     this.maxHorizontalSpeed = maxHorizontalSpeed;
 }
Esempio n. 3
0
    public InputPlatformer(Mover2D mover, Rigidbody2D rb,
                           Angle upAngle, float gravityAcceleration,
                           Angle maxSlopeAngle, float groundDeceleration,
                           float maxHorizontalSpeed, float groundAcceleration,
                           string groundInputName, float jumpVelocity,
                           KeyCode buttonJump, float variableJumpDampFactor)
    {
        upDirection = new UpDirection2D(upAngle);
        vius        = new VelocityInUpSpace2D(mover, upDirection);
        gravity     = new Gravity2D(vius, gravityAcceleration);

        groundChecker = new GroundChecker2D(rb, upDirection, maxSlopeAngle);

        gba = new GroundBasedAcceleration2D(groundChecker, vius, groundDeceleration, maxHorizontalSpeed);

        igba = new InputGroundBasedWalk2D(gba, groundAcceleration, groundInputName);

        gbj             = new GroundBasedJump2D(groundChecker, vius);
        igbj            = new InputGroundBasedJump2D(gbj, jumpVelocity, buttonJump);
        variableJumping = new InputVariableJump2D(vius, gravity, variableJumpDampFactor, buttonJump);
        gbj.SubscribeToJumped(x => variableJumping.ResetVariableJump());
    }
Esempio n. 4
0
 public GroundBasedJump2D(GroundChecker2D groundChecker, VelocityInUpSpace2D vius)
 {
     this.groundChecker = groundChecker;
     this.vius          = vius;
 }
Esempio n. 5
0
 public Gravity2D(VelocityInUpSpace2D vius, float acceleration = 39.2f)
 {
     this.vius         = vius;
     this.acceleration = acceleration;
 }