Just ignore prediction entirely in custom player code, who cares.

This commit is contained in:
Mari the Deer 2025-08-18 23:29:49 +02:00
commit 7a3e0ae413
4 changed files with 18 additions and 6 deletions

View file

@ -1,3 +1,3 @@
[default]
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r1232 \cu(mié 13 ago 2025 14:03:13 CEST)\c-";
SWWM_SHORTVER="\cw1.3pre r1232 \cu(2025-08-13 14:03:13)\c-";
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r1233 \cu(lun 18 ago 2025 23:29:49 CEST)\c-";
SWWM_SHORTVER="\cw1.3pre r1233 \cu(2025-08-18 23:29:49)\c-";

View file

@ -324,7 +324,7 @@ extend Class Demolitionist
vel *= .95;
player.vel += RotateVector(nmove,angle)*cos(pitch)*16.;
player.jumptics = -2;
if ( !(player.cheats & CF_PREDICTING) && (player.cmd.forwardmove|player.cmd.sidemove) )
if ( player.cmd.forwardmove|player.cmd.sidemove )
PlayRunning();
if ( player.cheats&CF_REVERTPLEASE )
{
@ -428,7 +428,7 @@ extend Class Demolitionist
if ( spd > maxspd ) vel.xy = (vel.xy+accel/GameTicRate).unit()*spd;
else vel.xy = vel.xy+accel/GameTicRate;
}
if ( !(player.cheats&CF_PREDICTING) && (nmove.length() > 0.) )
if ( nmove.length() > 0. )
PlayRunning();
if ( player.cheats&CF_REVERTPLEASE )
{
@ -477,7 +477,7 @@ extend Class Demolitionist
}
if ( player.onground ) lastgroundtic = level.maptime;
else lastairtic = level.maptime;
if ( !(player.cheats & CF_PREDICTING) && !(player.cmd.forwardmove|player.cmd.sidemove) )
if ( !(player.cmd.forwardmove|player.cmd.sidemove) )
PlayIdle();
if ( !(player.cmd.buttons&BT_USER2) || (gamestate != GS_LEVEL) || (dashcooldown > 0) || (dashfuel < 20.) )
return;
@ -635,7 +635,7 @@ extend Class Demolitionist
bool raging = FindInventory('RagekitPower');
if ( raging ) jumpvelz *= 2.;
double pvelz = vel.z;
if ( !player.onground && !(player.cheats&CF_PREDICTING) )
if ( !player.onground )
{
// check for wall stuff
if ( walljump )

View file

@ -198,6 +198,12 @@ extend Class Demolitionist
override void PlayerThink()
{
if ( player && (player.cheats&CF_PREDICTING) )
{
// sod off, m8
Super.PlayerThink();
return;
}
if ( !player || (player.playerstate != PST_DEAD) ) deadtimer = 0;
oldangles = (angle,pitch,roll);
if ( player && (player.mo == self) && (player.playerstate != PST_DEAD) && (player.cmd.buttons&BT_USE) )

View file

@ -186,6 +186,12 @@ extend Class Demolitionist
override void Tick()
{
if ( player && (player.cheats&CF_PREDICTING) )
{
// sod off, m8
Super.Tick();
return;
}
Vector3 oldpos = pos;
// can't be poisoned
PoisonDurationReceived = 0;