Exit event from another event?

● ARCHIVED · READ-ONLY
Started by Geoff Moore 12 posts View original ↗
  1. I'm sure this has been answered before, and I searched the forum extensively before posting but I'm as bad at searching as I am at eventing. Sorry about that!

    I need to exit event processing of a parallel process from another event. I'm currently doing this by setting a switch in the other event and then conditionally exiting event processing during my parallel process if that switch is on, but I need it to be able to exit at any stage of the parallel process, not just at one or more conditional checks.

    Thanks for reading!
  2. you better tell us what you want to achieve in game, not how you want to achieve it - because from what you said, you're going much too complex on it.


    And post screenshots of the events in question, only then we can help you improve them.
  3. Well you could always use a region code script, combined with Hime's custom page condition script. Then every cell you assing a region to, could be tied to a common event, and the common events can have a push button as a trigger(so they would act like normal events).

    However I agree with Andar, perhaps you should tell us what the event/system entails, what's the purpose of the event in question?
  4. Thanks for the quick responses, I'll try to explain myself: (I'm probably doing this all backwards, lol ;) )

    What I'm attempting:

    I'm trying to roll my own idle animations with a common event. This event is triggered by this, placed on every map:

    1.jpg

    And here's the event itself (wouldn't fit on a single screengrab):

    2a.jpg

    2b.jpg

    2c.jpg

    2d.jpg

    This way the blink animation can display at any time, whereas the flick animation only displays when the character is standing still.

    The problem:

    I need to be able to interrupt this process during the game when controlling my player character's animation. I'm currently doing it like this:

    3b.jpg

    So I'm turning on the noblink switch and checking for it in the parallel process before the blink or flick animations are displayed, which works almost every time. But just occasionally it doesn't catch it, which is why I'd like to be able to reset the idle event from the last event I pictured. Also, if the player tries to use the action button while an animation is playing the game doesn't respond as it's waiting for the move route; again, if I can force the parallel process to reset from other event it should avoid this issue.

    I hope that all makes sense. Thanks for bearing with me :)
  5. First of all, that's not how you want to run your common event. Simply set the common event to use a switch, and set IT to parallel process. Then you don't need the first event at all (you'll still need to turn on the switch, of course). You can also get rid of the loop, because the common event will loop on its own. Then you can turn the switch off at any time to stop the common event.
  6. D'oh! Thanks for the advice, it'll take a bit of work to put everything right but I'll get on it straight away. I'm curious though, will it actually solve my problem? Surely even when I turn the trigger switch off it'll still run to the end of the parallel event before stopping it?

    Oh, and the only reason everything's in a loop is so the blinking animation can continue during conversations. I got the method here: http://rpgmaker.net/tutorials/816/ (tip number 1 on that page).

    EDIT: I've run into a problem; I changed the parallel process to be activated by a switch and turned that switch on at the start of the game, but now the idle event seems to ignore that waiting part and just fire again and again with barely enough time to move between. Changing it back to how I had it makes it work again, so there must be something else wrong with my event... I tried without the loop as well, in case that was the problem, but no change.
  7. Aside from what Tommy Gun said, I'm not quite sure why you're using the move route command to add a wait command, since it already exists on its own (second tab, I think). Then it'll wait, while still allowing the player to use button input.
  8. mostly useless said:
    EDIT: I've run into a problem; I changed the parallel process to be activated by a switch and turned that switch on at the start of the game, but now the idle event seems to ignore that waiting part and just fire again and again with barely enough time to move between. Changing it back to how I had it makes it work again, so there must be something else wrong with my event... I tried without the loop as well, in case that was the problem, but no change.
    Try Celianna's advice and change it to a regular wait and see if that helps (perhaps the *character* was waiting, but not the common event itself?). Also, you definitely don't want to just use a script for this? Such as: http://galvs-scripts.com/galvs-character-animations/
  9. Nice! Changing the wait command got things working again, thanks! I'll change a bunch of events and do some testing to see if this solves the main problem, and I'll report back here.

    I did want to use a script (as you've no doubt noticed I'm a little out of my depth!), but the two I found wouldn't work with my game. In the case of Galv's, it's not compatible with charactersheets using a $ in the title, and I can't remember the name of or problem with the other script off the top of my head.
  10. So why don't you mix charactersheets and remove the $? It's easy!
  11. *facepalms*

    I literally have no idea why I'm doing that. :p

    Before realising my stupidity I made the recommended changes and replaced all waiting in move routes with normal waits, although this method still doesn't stop the parallel process from finishing it's current cycle, so the original problem isn't actually solved. It's no longer a problem for me, though, because I'm going to use Galv's script instead. :)

    EDIT: Actually, I just had a thought. Galv's script might not allow my blinking animation to continue during messages, and I definitely want that. Also this worries me, since I heavily rely on Move Route Change graphic commands for animations:

    #  KNOWN ISSUES:

    #  - Move Route Change graphic commands only work when the switch is on.

    #    Then if you turn it off again, the graphic changes back to the original.

    #    Use "Set Actor Graphic" event command to change instead.

     

    It seems I'm pretty much there with this event, any ideas on how to solve the original problem?

    EDIT 2: Testing out Tommy Gun's method below with some success. I need to ask a couple of separate questions to get everything working, but I'll post back here soon.
  12. Well you should try out Galv's first and see. 

    But for your current method, I'd probably need to see what's actually happening in game to know what you want. But you could try putting "blink" into a separate common event process with a switch. That way your idle process can run much faster without all the waits. And the instant you're no longer idle, it can switch off the blink event or whatever (which still may need to run through till the end...but I'm not really sure what you're doing, so...).

    You could also basically build a "clock" into your idle event, so it's running through without waits, but adding to a variable. Then when that variable hits a certain number, the character blinks or whatever. That way you can stop the event pretty quickly since it's constantly running to the end.