mirror of
https://github.com/nzp-team/quakec.git
synced 2025-02-17 01:11:13 +00:00
SERVER: More accurate weapon walk and sprint speed math and data
This commit is contained in:
parent
377453f04b
commit
acd2ac8062
2 changed files with 66 additions and 28 deletions
|
@ -218,7 +218,7 @@ void() PlayerPreThink =
|
||||||
if (self.downed) {
|
if (self.downed) {
|
||||||
self.maxspeed = 30;
|
self.maxspeed = 30;
|
||||||
} else {
|
} else {
|
||||||
self.maxspeed = 175;
|
self.maxspeed = 190;
|
||||||
if (self.sprinting) {
|
if (self.sprinting) {
|
||||||
|
|
||||||
#ifdef FTE
|
#ifdef FTE
|
||||||
|
@ -234,7 +234,7 @@ void() PlayerPreThink =
|
||||||
#endif // FTE
|
#endif // FTE
|
||||||
|
|
||||||
playrun1();
|
playrun1();
|
||||||
self.maxspeed *= 1.66;
|
self.maxspeed *= 1.5; // down from 1.66x, to match WaW
|
||||||
} else if (!self.sprinting && !self.zoom) {
|
} else if (!self.sprinting && !self.zoom) {
|
||||||
|
|
||||||
#ifdef FTE
|
#ifdef FTE
|
||||||
|
|
|
@ -1226,45 +1226,83 @@ float(float wep, float delaytype) getWeaponDelay =
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
float GetWeaponWalkSpeed(float perks, float weapontype)
|
#define SPEED_MULTIPLIER_STANDARD 1
|
||||||
|
#define SPEED_MULTIPLIER_RIFLE 0.88
|
||||||
|
#define SPEED_MULTIPLIER_HEAVY 0.75
|
||||||
|
#define SPEED_MULTIPLIER_ULTRAHEAVY 0.66
|
||||||
|
|
||||||
|
float GetWeaponWalkSpeed(float perks, float weapon)
|
||||||
{
|
{
|
||||||
float spd;
|
// leave this at 0 so people who add new weapons know they did something WRONG >:D
|
||||||
|
float speed_multiplier = 0;
|
||||||
|
|
||||||
spd = 0;
|
switch (weapon) {
|
||||||
|
case W_COLT:
|
||||||
switch(weapontype) {
|
case W_BIATCH:
|
||||||
default: spd = 1;
|
case W_MP40:
|
||||||
case W_KAR:
|
case W_AFTERBURNER:
|
||||||
|
case W_PPSH:
|
||||||
|
case W_REAPER:
|
||||||
|
case W_STG:
|
||||||
|
case W_SPATZ:
|
||||||
|
case W_THOMPSON:
|
||||||
|
case W_GIBS:
|
||||||
|
case W_TYPE:
|
||||||
|
case W_SAMURAI:
|
||||||
|
case W_DB:
|
||||||
|
case W_BORE:
|
||||||
|
case W_SAWNOFF:
|
||||||
|
case W_SNUFF:
|
||||||
|
case W_TRENCH:
|
||||||
|
case W_GUT:
|
||||||
|
case W_BAR:
|
||||||
|
case W_WIDOW:
|
||||||
|
case W_FG:
|
||||||
|
case W_IMPELLER:
|
||||||
|
case W_RAY:
|
||||||
|
case W_PORTER:
|
||||||
|
case W_TESLA:
|
||||||
|
case W_DG3:
|
||||||
|
case W_MP5K:
|
||||||
|
case W_KOLLIDER:
|
||||||
|
speed_multiplier = SPEED_MULTIPLIER_STANDARD;
|
||||||
|
break;
|
||||||
case W_357:
|
case W_357:
|
||||||
case W_GEWEHR:
|
|
||||||
case W_M1:
|
|
||||||
case W_M1A1:
|
|
||||||
case W_KAR_SCOPE:
|
|
||||||
case W_KILLU:
|
case W_KILLU:
|
||||||
case W_COMPRESSOR:
|
case W_KAR:
|
||||||
case W_M1000:
|
|
||||||
case W_WIDDER:
|
|
||||||
case W_ARMAGEDDON:
|
case W_ARMAGEDDON:
|
||||||
|
case W_KAR_SCOPE:
|
||||||
case W_HEADCRACKER:
|
case W_HEADCRACKER:
|
||||||
spd = 0.9;
|
case W_GEWEHR:
|
||||||
case W_M2:
|
case W_COMPRESSOR:
|
||||||
spd = 0.67;
|
case W_M1A1:
|
||||||
case W_MG:
|
case W_WIDDER:
|
||||||
case W_BROWNING:
|
case W_M1:
|
||||||
case W_PANZER:
|
case W_M1000:
|
||||||
|
speed_multiplier = SPEED_MULTIPLIER_RIFLE;
|
||||||
|
break;
|
||||||
case W_PTRS:
|
case W_PTRS:
|
||||||
case W_BARRACUDA:
|
|
||||||
case W_ACCELERATOR:
|
|
||||||
case W_PENETRATOR:
|
case W_PENETRATOR:
|
||||||
spd = 0.75;
|
case W_BROWNING:
|
||||||
|
case W_ACCELERATOR:
|
||||||
|
case W_MG:
|
||||||
|
case W_BARRACUDA:
|
||||||
|
case W_PANZER:
|
||||||
|
case W_LONGINUS:
|
||||||
|
speed_multiplier = SPEED_MULTIPLIER_HEAVY;
|
||||||
|
break;
|
||||||
|
case W_M2:
|
||||||
case W_FIW:
|
case W_FIW:
|
||||||
spd = 0.85;
|
speed_multiplier = SPEED_MULTIPLIER_ULTRAHEAVY;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (perks & P_STAMIN)
|
if (perks & P_STAMIN)
|
||||||
spd *= 1.07;
|
speed_multiplier *= 1.07;
|
||||||
|
|
||||||
return spd;
|
return speed_multiplier;
|
||||||
}
|
}
|
||||||
// forward/back,right/left,down/up
|
// forward/back,right/left,down/up
|
||||||
vector GetWeaponADSPos(float wep) {
|
vector GetWeaponADSPos(float wep) {
|
||||||
|
|
Loading…
Reference in a new issue