HeroOfFire
08-05-2010, 01:40 PM
Back in build 1076, I used the following in a custom door script to change the screen state of nearby rooms to simulate the normal NES door mechanics.
Game->SetScreenState(Game->GetCurMap() + 1, Game->GetCurScreen() + 16 - (8 * Game->GetCurMap()), ST_DOORDOWN, true);
Although it looks complex, this code worked perfectly, which meant a few bugs were worked around (as the GetCurMap() + 1 and the 8 screen offset per map show). Since that build, changes were made to the functions that completely broke the script.
What I want to know is, what would be an updated version of the code above that works (it changes the state of the screen directly below the current one to mark the top door opened). Or has a bug been introduced that needs to be fixed/worked around?
Game->SetScreenState(Game->GetCurMap() + 1, Game->GetCurScreen() + 16 - (8 * Game->GetCurMap()), ST_DOORDOWN, true);
Although it looks complex, this code worked perfectly, which meant a few bugs were worked around (as the GetCurMap() + 1 and the 8 screen offset per map show). Since that build, changes were made to the functions that completely broke the script.
What I want to know is, what would be an updated version of the code above that works (it changes the state of the screen directly below the current one to mark the top door opened). Or has a bug been introduced that needs to be fixed/worked around?