mirror of
https://github.com/yquake2/yquake2remaster.git
synced 2024-12-02 09:02:36 +00:00
c9913eb538
Autosaves are special. The are a byproduct of the level change process. When loaded they aren't respawning the player at it's last position, the player is relocated to func_playerstart. Since entities spawn at their start position, the player may end up in the wrong spot. One example is train.bsp -> base2.bsp. The platform spawns in upper position, the player in lower position. The platform comes down and crushes the player. Most of these cases work by luck when the client isn't paused during load, because the world advances a few frames before the player is spawned. Implement a better fix: Detect if an autosave is loaded (name is save0 or current) and treat it like a map change, advance the world by 100 frames. We cant use the `autosave` boolean, because it's in the game savefile. Fix suggested by @BjossiAlfreds, closes #711. |
||
---|---|---|
.. | ||
header | ||
sv_cmd.c | ||
sv_conless.c | ||
sv_entities.c | ||
sv_game.c | ||
sv_init.c | ||
sv_main.c | ||
sv_save.c | ||
sv_send.c | ||
sv_user.c | ||
sv_world.c |