Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

of course - quick question, do you think the best way of adding new events to this system would be by modifying the “type” variable, with 0 currently being normal and 1 being dialogue options, could I add a type 2 for a personal function like spawning a new object in the room for example?

Ahh that's an interesting one. You definitely could do it with the "type" argument. So then you could jump into the step event and expand the if/else statement to include another check. And what I think I'd do, so that you could use this for a few things, is make our third "type" run whatever script you input into text[page] for that line.

So here's some pseudo code:

if(type[page] == 0) { 
    //normal
} else if(type[page] == 1) {
    //dialogue choice
} else {
    execute_script(text[page]);
    page++;
}

So basically it runs that script and then immediately begins the next line. Or, you could make it wait some time before beginning the next page, ie. by setting of an alarm like if(alarm[3] != -1){ alarm[3] = room_speed; }.

Note that you'll also have to change the "else" in the Draw event to specifically check else if(type[page] == 0), because at the moment it just runs if text[page] isn't 1. Also, depending on what you want, you might still want to have some specific thing that it's drawing - at the moment, it'll draw nothing while we're in this "type" of event. So you might want to get it to keep drawing the text from last time, or just an empty textbox, etc.

Hope that makes sense!

Looks great I'll try it out tonight thanks again

I finally got round to trying this out - thanks for the help.

 I ended up messing with the create_dialogue script you made and added some extra variables to everything (object, object_x and object_y)  to add some more flexibility, like being able to choose what object to spawn on the fly and where abouts it would appear - I  was thinking of adding some extra variables for object names or descriptions, but I'm not sure if I'm inadvertently breaking anything in the switch statement you have in that script.

To be honest I'm kinda lost on what that switch statement does - why does it only change variables based on how many arguments are added when it looks like every argument is added each time the script it used anyway? 

Ah that's awesome! Yeah to be honest I need to clean that script up. When I was initially adding the arguments I wanted to keep them optional, so I just had it depend on the arguments you gave it. But now that there's so many it would make more sense to just check if you input a default argument (-1) instead of having it depend on the argument COUNT, which is pretty silly. 

I'll definitely change this in one of the next iterations to make it easier for you/others to play with the code!