A nice new feature for this forum is the DizzyAGE code highlighter
to use you need to use the following bbcode [highlight="dizzyage"] code [/highlight]
example:
[highlight="dizzyage"]
func ShowScroll ( id )
{
// Set the ids for the objects
idxtop = ObjFind( id );
idxbot = ObjFind( id+1 );
// if any of the ids can't be found then exit the function
if( idxtop==-1 || idxbot==-1 ) return;
// Pause the game
GamePause(1);
// set the scrolls to their closed state
oy = ObjGet(idxtop,O_Y);
ObjSet(idxtop,O_H,8);
ObjSet(idxbot,O_Y,oy+8);
// enable the scrolls now they are in the closed state
ObjSet(idxtop, O_DISABLE, 0);
ObjSet(idxbot, O_DISABLE, 0);
// Get the variables from the objects
// y = the y position on the map for the top of the scroll
// h = current height of the scroll
// boxh = the full height of the scroll
y = ObjGet(idxtop,O_Y);
h = ObjGet(idxtop,O_H);
boxh = ObjGet(idxtop,O_SCROLLH);
while(h != boxh)
{
// Open the scroll
h+=2;
if (h >= boxh) h=boxh;
WaitFrames(3);
// Update the height of the scroll top and bottom
ObjSet(idxtop,O_H,h);
ObjSet(idxbot,O_Y,y+h);
if(h==boxh) break;
}
// Wait for the user to press the action key to continue
DialogRun();
// Disable the Scroll
ObjSet(idxtop, O_DISABLE, 1);
ObjSet(idxbot, O_DISABLE, 1);
// Unpause the game
GamePause(0);
}
[/highlight]
Which would output as below....
[highlight="dizzyage"]
func ShowScroll ( id )
{
// Set the ids for the objects
idxtop = ObjFind( id );
idxbot = ObjFind( id+1 );
// if any of the ids can't be found then exit the function
if( idxtop==-1 || idxbot==-1 ) return;
// Pause the game
GamePause(1);
// set the scrolls to their closed state
oy = ObjGet(idxtop,O_Y);
ObjSet(idxtop,O_H,8);
ObjSet(idxbot,O_Y,oy+8);
// enable the scrolls now they are in the closed state
ObjSet(idxtop, O_DISABLE, 0);
ObjSet(idxbot, O_DISABLE, 0);
// Get the variables from the objects
// y = the y position on the map for the top of the scroll
// h = current height of the scroll
// boxh = the full height of the scroll
y = ObjGet(idxtop,O_Y);
h = ObjGet(idxtop,O_H);
boxh = ObjGet(idxtop,O_SCROLLH);
while(h != boxh)
{
// Open the scroll
h+=2;
if (h >= boxh) h=boxh;
WaitFrames(3);
// Update the height of the scroll top and bottom
ObjSet(idxtop,O_H,h);
ObjSet(idxbot,O_Y,y+h);
if(h==boxh) break;
}
// Wait for the user to press the action key to continue
DialogRun();
// Disable the Scroll
ObjSet(idxtop, O_DISABLE, 1);
ObjSet(idxbot, O_DISABLE, 1);
// Unpause the game
GamePause(0);
}
[/highlight]
I case your wondering this is the script that shows the message scroll in my Treasure Island Remake![]()




Reply With Quote


