mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2025-01-09 10:29:45 +01:00
Add catch-all softlock protection
What this simply does is make it so that in the event that game.hascontrol is somehow set to false when there isn't a cutscene running (i.e. when game.state is 0 and script.running is false), it gets set back to true again. There's many ways to interrupt a gamestate and/or a running script, most notably telejumping and doing a screen transition in the middle of the animation, interrupting it. This implements the first part of my idea in this comment: https://github.com/TerryCavanagh/VVVVVV/issues/391#issuecomment-659757071
This commit is contained in:
parent
563b10b666
commit
3aa407e981
1 changed files with 6 additions and 0 deletions
|
@ -649,6 +649,12 @@ void Game::updatestate()
|
|||
{
|
||||
case 0:
|
||||
//Do nothing here! Standard game state
|
||||
|
||||
//Prevent softlocks if there's no cutscene running right now
|
||||
if (!script.running)
|
||||
{
|
||||
hascontrol = true;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
//Game initilisation
|
||||
|
|
Loading…
Reference in a new issue