1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-01 10:33:32 +02: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:
Misa 2020-08-02 15:39:21 -07:00 committed by Ethan Lee
parent 563b10b666
commit 3aa407e981

View File

@ -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