This commit is contained in:
watrabi
2025-10-28 14:05:46 -04:00
parent 977f1ff4b8
commit c93494f795
452 changed files with 47860 additions and 152 deletions
+51
View File
@@ -0,0 +1,51 @@
/* Copyright 2003-2005 ROBLOX Corporation, All Rights Reserved */
#pragma once
#include "Humanoid/Balancing.h"
namespace RBX {
class Body;
namespace HUMAN {
class RunningBase : public Balancing
{
private:
typedef Balancing Super;
protected:
Velocity floorVelocity;
// The following velocities are w.r.t the ground that the figure is walking on. The ground may be moving
Velocity desiredVelocity; // desired velocity in world coordinates relative to the floor's velocity
float desiredAltitude; // ignored if 0.0
void rotateWithGround(Body* body);
void hoverOnFloor(Body* body);
void move(Body* body);
///////////////////////////////////////////////////////////////////////////
// Humanoid::State
/*override*/ void onComputeForceImpl();
/*override*/ void onSimulatorStepImpl(float stepDt);
/*override*/ float getYAxisRotationalVelocity() const {return desiredVelocity.rotational.y;}
/*override*/ bool armsShouldCollide() const {return false;}
/*override*/ bool legsShouldCollide() const {return false;}
public:
RunningBase(Humanoid* humanoid, StateType priorState);
RunningBase(Humanoid* humanoid, StateType priorState, const float kP, const float kD);
/*override*/ void onCFrameChangedFromReflection();
static const float kTurnP() {return 7500.0f;}
static const float kTurnPForRotatePGS() {return 450.0f;}
static const float kTurnPForFreeFallPGS() {return 375.0f;}
};
} // namespace HUMAN
} // namespace RBX