mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2025-01-09 02:19: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:
parent
5e94239967
commit
8c42f82317
3 changed files with 4 additions and 3 deletions
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue