Announcement

Collapse
No announcement yet.

Re-Trigger Delay resetting on untouched?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Re-Trigger Delay resetting on untouched?

    I have a moving platform attached to a matinee sequence that has a dynamic trigger volume attached to it to move with it whenever someone lands on it. I set the re-trigger delay to the same duration as the matinee duration so that as soon as it stops, it can be triggered again, no sooner and no later. However, I've found that exiting the trigger volume resets the re-trigger delay, completely defeating the purpose of what I'm trying to do. Is there any way to make it apply only to Touched? This seems like an obvious setting that should be included in the properties, but I haven't seen one. Anyone have any experience with this?

    #2
    Images/Screenshots of your kismet would be helpful.

    I would do it that way that you use a Gate. Close that gate once someone touches the trigger. The trigger touch event should be linked with In of the Gate object. The matinee should have a completed event. Use that event to Open that gate so a player can re-trigger the matinee.

    Always check that Max Trigger is 0 of any touch event.

    FYI: This thread is not for Kismet. Not many Level Designers look into this "Programming" section. Next time, use this thread:
    http://forums.epicgames.com/forums/3...g-amp-Skinning

    Comment


      #3
      My bad, wasn't sure if Kismet counted as programming since it's technically scripting. Will check the other forum.

      But, since you asked..









      Not the easiest thing to follow, but essentially a platform starts in the center of the map and detects which of two teams the first player to touch it belongs to and goes a particular direction depending on that team. After that, every subsequent touch to the trigger will make it go back and forth between two points, which also depends on which team initially triggered it.

      Anyway, the important part is that the platform bugs out if there's no delay between the time the first matinee starts and ends, because it will begin one of the subsequent matinees too early and permanently put the platform out of place for the rest of the game. However, if that matinee sequence is 3-5 seconds long, then players have to wait that much time before they can get back on it once it has completed one movement track, which is not at all ideal for my gameplay. I'm aware of MaxTriggerCount, that's not where my issue is. I just need my re-trigger delay to end after a specified amount of time from being touched, not untouched.

      Comment


        #4
        I guess, the switch statemant is bad. It does not have an input-value. It's always bad to do things timed. Events are way better. Try to do things sequentially.
        Are you using the same Matinee Data for the back and forth movement? Why not using the Revere action?

        With such information i would do that with this approach.
        Click image for larger version

Name:	platform.jpg
Views:	1
Size:	86.5 KB
ID:	3249749

        I did not check if it's running. But i guess it works. The platform should move from Base to A or B. Once a player reaches the platform the destination will be either A or B. After jumping on it, it will wait for 5secs and move to the destination. If a player dies (or all players), the platform will contiune to the destination. Once the platform reaches the destination it will first change the matinee playback direction and will remotely reset the ability to refire the triggering.

        Comment


          #5
          I'll mess around with that. I've just never worked with remote events or gates before, so I'm not entirely sure how they work. I'm still sort of new to Kismet.

          However, my main concern at this point is how the re-trigger delay works. Notice how I have a named variable, "retrigger", that should be changing depending on what happened. If the trigger is untouched or if either of the matinees complete, it should set the float re-trigger value to 1 second. If it is touched, it should set the re-trigger value to 3 seconds. However, when I test it, it only uses the default re-trigger delay value that I put in its properties. Any idea why that's happening?

          Comment


            #6
            Check my example.
            You do have more than 1 named variable. It probably breaks the functionality.

            The remote events are only used to call the exact code more than 1 and to have a structured kismet layout.

            Comment

            Working...
            X