1
0
Fork 0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2025-01-09 10:29:45 +01:00

Set script attribute of custom level script boxes

To avoid going through gamestates, we'll need to carry the name of the
script on the script box itself. And to do that, we'll need to set the
'script' attribute of script boxes when translating edentities into real
entities in custom levels.
This commit is contained in:
Misa 2020-07-09 23:01:13 -07:00 committed by Ethan Lee
parent 5e94239967
commit 8c42f82317
3 changed files with 4 additions and 3 deletions

View file

@ -770,7 +770,7 @@ void entityclass::generateswnwave( int t )
}
}
void entityclass::createblock( int t, int xp, int yp, int w, int h, int trig /*= 0*/ )
void entityclass::createblock( int t, int xp, int yp, int w, int h, int trig /*= 0*/, const std::string& script /*= ""*/ )
{
k = blocks.size();
@ -793,6 +793,7 @@ void entityclass::createblock( int t, int xp, int yp, int w, int h, int trig /*=
block.hp = h;
block.rectset(xp, yp, w, h);
block.trigger = trig;
block.script = script;
break;
case DAMAGE: //Damage
block.type = DAMAGE;

View file

@ -53,7 +53,7 @@ public:
void generateswnwave(int t);
void createblock(int t, int xp, int yp, int w, int h, int trig = 0);
void createblock(int t, int xp, int yp, int w, int h, int trig = 0, const std::string& script = "");
bool removeentity(int t);

View file

@ -1775,7 +1775,7 @@ void mapclass::loadlevel(int rx, int ry)
case 19: //Script Box
game.customscript[tempscriptbox]=edentity[edi].scriptname;
obj.createblock(1, (edentity[edi].x*8)- ((rx-100)*40*8), (edentity[edi].y*8)- ((ry-100)*30*8),
edentity[edi].p1*8, edentity[edi].p2*8, 300+tempscriptbox);
edentity[edi].p1*8, edentity[edi].p2*8, 300+tempscriptbox, "custom_" + edentity[edi].scriptname);
tempscriptbox++;
break;
case 50: //Warp Lines