Fixed by moving code that resizes player bbox from PlayerPostThink to EndFrame, which is executed later.
Also update hash
test_sv_game:
stage: test
script:
- - export EXPECT=17e9738e7898923e862b0b72da30c5ad
+ - export EXPECT=5be7dd7d77ee3de502261054c1060f00
- qcsrc/tools/sv_game-hashtest.sh
- exit $?
Player_Physics(this);
if (IS_PLAYER(this)) {
- if(this.death_time == time && IS_DEAD(this))
- {
- // player's bbox gets resized now, instead of in the damage event that killed the player,
- // once all the damage events of this frame have been processed with normal size
- float h = ceil((this.mins.z + this.maxs.z) * PL_CORPSE_SCALE * 10) / 10;
- this.maxs.z = max(h, this.mins.z + 1);
- setsize(this, this.mins, this.maxs);
- }
DrownPlayer(this);
UpdateChatBubble(this);
if (CS(this).impulse) ImpulseCommands(this);
.float jointime; // time of connecting
.float startplaytime; // time of switching from spectator to player
.float alivetime; // time of being alive
-
+.float death_time;
.bool wasplayer;
.int spectatee_status;
.float pushltime;
.bool istypefrag;
-.float death_time;
-
.float score_frame_dmg;
.float score_frame_dmgtaken;
it.hitsound_damage_dealt = 0;
it.killsound = false;
antilag_record(it, CS(it), altime);
+ if(it.death_time == time && IS_PLAYER(it) && IS_DEAD(it))
+ {
+ // player's bbox gets resized now, instead of in the damage event that killed the player,
+ // once all the damage events of this frame have been processed with normal size
+ float h = ceil((it.mins.z + it.maxs.z) * PL_CORPSE_SCALE * 10) / 10;
+ it.maxs.z = max(h, it.mins.z + 1);
+ setsize(it, it.mins, it.maxs);
+ }
});
IL_EACH(g_monsters, true,
{