From dcf5f3f0c7b1e400e94f31b02562cd380613886b Mon Sep 17 00:00:00 2001 From: tildearrow Date: Wed, 3 Sep 2025 04:01:47 -0500 Subject: [PATCH] fix stage 20 not being purple tanks --- src/gui/tutorial.cpp | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/src/gui/tutorial.cpp b/src/gui/tutorial.cpp index 9b238be85..f019d0d47 100644 --- a/src/gui/tutorial.cpp +++ b/src/gui/tutorial.cpp @@ -1313,7 +1313,7 @@ void FurnaceCV::buildStage(int which) { curStage=NULL; } - if (which>19 || which==4 || which==7 || which==9 || which==11 || which==13 || which==16 || which==17) { + if (which>18 || which==4 || which==7 || which==9 || which==11 || which==13 || which==16 || which==17) { stageWidth=80; stageHeight=56; } else { @@ -1346,26 +1346,7 @@ void FurnaceCV::buildStage(int which) { memset(busy,0,28*40*sizeof(bool)); // special stages - if ((which%10)==9) { - // vortex - for (int i=0; i<20+(which>>2); i++) { - int tries=0; - while (tries<20) { - int x=rand()%(stageWidth>>1); - int y=rand()%(stageHeight>>1); - int finalX=x<<4; - int finalY=y<<4; - if (busy[y][x]) { - tries++; - continue; - } - createObject(finalX,finalY); - createObject(finalX-4,finalY-4); - busy[y][x]=true; - break; - } - } - } else if ((which%10)==19) { + if ((which%10)==19) { for (int i=0; i<20+(which>>2); i++) { int tries=0; while (tries<20) { @@ -1387,6 +1368,25 @@ void FurnaceCV::buildStage(int which) { break; } } + } else if ((which%10)==9) { + // vortex + for (int i=0; i<20+(which>>2); i++) { + int tries=0; + while (tries<20) { + int x=rand()%(stageWidth>>1); + int y=rand()%(stageHeight>>1); + int finalX=x<<4; + int finalY=y<<4; + if (busy[y][x]) { + tries++; + continue; + } + createObject(finalX,finalY); + createObject(finalX-4,finalY-4); + busy[y][x]=true; + break; + } + } } else { // large if (which>=2) for (int i=0; i<(rand()%3)+which-2; i++) { @@ -1675,6 +1675,7 @@ void FurnaceCV::render(unsigned char joyIn) { lives+=lifeBank; respawnTime=1; lifeBank=0; + score=0; gameOver=false; }