logo hyperPad Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Login

    Understanding Behaviour Priority...

    Scheduled Pinned Locked Moved
    Help and Support
    4
    11
    313
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Deeeds
      last edited by

      In the following example, I'm curious, does hyperPad interrupt the sequence of behaviours if another message is received to activate the top most behaviour, and start again without finishing?

      Or does it try to finish each run through of any given sequence of behaviours regardless of re-activations?

      Is this (whatever the answer is) by design?

      @Hamed @Murtaza

      0_1512566739495_restarts.jpg

      1 Reply Last reply Reply Quote 0
      • HamedH
        Hamed Admin
        last edited by

        It does not interrupt the children until the child gets triggered again.

        If Set Color 785 is 0.5 seconds in, and 784 gets called again, 785 will get restarted at 1.5 seconds. So it will not complete the first iteration.

        This is by design.

        D 1 Reply Last reply Reply Quote 0
        • D
          Deeeds @Hamed
          last edited by Deeeds

          @Hamed said in Understanding Behaviour Priority...:

          It does not interrupt the children until the child gets triggered again.

          If Set Color 785 is 0.5 seconds in, and 784 gets called again, 785 will get restarted at 1.5 seconds. So it will not complete the first iteration.

          This is by design.

          @Hamed Sorry, I need to be very clear about this, as it's influencing a stack of things I'm doing.

          Should this line:

          It does not interrupt the children until the child gets triggered again.

          be:

          It does not interrupt the children until the parent gets triggered again.

          ???

          The second time through, you're saying that the partially completed 785 triggers, but with a reduced timespan based on how much it got through the last time... why is this?

          Why don't they all start over? And if you're crimping time from a partially completed Behaviour, why aren't the previously completed Behaviours skipped altogether in subsequent restarts?

          Jack8680J 1 Reply Last reply Reply Quote 0
          • Jack8680J
            Jack8680 @Deeeds
            last edited by

            @Deeeds when a behaviour with a duration activates while it is running it will get interrupted and restart.

            It can run multiple parts of the branch at once, for example activating 784 while 786 is running will not interrupt it immediately. However, if 785 finishes before 786 does it will reach 786 again and interrupt it.

            Basically, a single behaviour with a duration can't be running multiple times at once, but multiple different behaviours can be.

            D 1 Reply Last reply Reply Quote 1
            • D
              Deeeds @Jack8680
              last edited by Deeeds

              @Jack8680 argh. Thank you!!!

              This definitely explains what was happening to a series of branches I was treating as "action sequences" and seeing them get out-of-sync issues I couldn't otherwise explain.

              THANK YOU!!!

              Is there any way to ensure that a branch of behaviours can be treated as a whole sequence, so any calling of the first behaviour in the branch stops the entire branch sequence (and any one of its active members), right then and there?

              Jack8680J 1 Reply Last reply Reply Quote 0
              • Jack8680J
                Jack8680 @Deeeds
                last edited by

                @Deeeds I think the only way to stop an already running behaviour is to turn them all off. I had this exact same problem with a sequence of attacks running on my player.

                Maybe a nice feature would be the option of a dynamic behaviour off so we can loop through a list of behaviours to turn them off.

                D 2 Replies Last reply Reply Quote 0
                • D
                  Deeeds @Jack8680
                  last edited by

                  @Jack8680 I'll find some time to map out how a basic animation editor might look, with blocks for sequencing, grouping and repeating. Solve all the problems at once.

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    Deeeds @Deeeds
                    last edited by

                    @Hamed Does this also mean that in this situation, all on the same object:

                    Message Receiver XYZ -> Set Colour (to blue) duration 5 seconds

                    2 seconds later...

                    Message Receiver ABC -> Set Colour (to red) duration 1 second

                    On the same object, the second Set Colour doesn't ever get activated, because it's not permitted to cutoff or otherwise interrupt the other first Set Colour?

                    If so, how do I interrupt this first Set Colour?

                    How do I interrupt it if I don't know what it's called, because there's (let's say) 5 different random set colours on the same object, and whatever one is currently running, I'd like to interrupt it?

                    1 Reply Last reply Reply Quote 0
                    • D
                      Deeeds @Jack8680
                      last edited by

                      @Jack8680 I just tried this. But then can't turn them back on without them all running at that moment when I turn them back on... I just want to put them into a standby mode, because if I have a tree turning them on, that can't be turned off... without turning them all off. And on and on it goes. An endless loop just to get interruptible animations.

                      FUCK!!!!!!!!!!!!!!!!

                      iTap DevelopmentI 1 Reply Last reply Reply Quote 0
                      • iTap DevelopmentI
                        iTap Development @Deeeds
                        last edited by

                        @Deeeds can you use behavior on, with the skip events toggle off?

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          Deeeds @iTap Development
                          last edited by

                          @iTap-Development No. It isn't possible to get them to stop and stay in sync with other objects. So it's not possible to restart them, and keep sync, either.

                          These are all workarounds for the lack of sprite sheets, the lack of bitmap fonts and the lack of image swap transitions... oh, and the lack of referencing and addressable instances.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post