pinkpassion's Forum Posts

  • 13 posts
  • Thanks for the reply.

    My real questions is:

    I want the enemy to (basically) attack every 4 seconds ONLY if he is in his "Idle" animation.

    If his idle is interrupted, say by blocking the player's attack, I want his 4 second timer to reset.

    So every time his "Idle" animation starts, a 4 second countdown begins to his attack. I can't figure out how to implement this--how to have an action interrupt/cancel/restart/etc. the wait command from a previous event.

    p.s. The image I posted above contains only a small portion of the event sheet--enemy is set to "Idle" on finish of several other animations.

    As for dt, yes, I plan on implementing that in the future--trying to get the core gameplay working first. Lots to learn!

  • Trying to post image again...

    <img src="http://www.flickr/photos/93326820@N05/8486076523/" border="0" />

    flickr.com/photos/93326820@N05/8486076523

  • The wait timer begins, and if enemy blocks at, say, 2 second mark, it will carry out the post-wait action 2 seconds later.

    I can't figure out how to "cancel" or "stop" the wait command. In other words, if something interrupts an event before its post-wait action occurs, how do I stop the post-wait action from occuring?

    Here is another attempt, which gives these results:

    <img src="http://www.flickr/photos/93326820@N05/8486076523/" border="0" />

  • I have tried so many combinations for a week now, and this (simple?) action will not behave for me.

    Fighting game, 1 player and 1 enemy. The following is simplified to show the problem. Sprite animations are in "quotes".

    GAMEPLAY

    While in "Idle" (not moving) pose, the enemy should "Attack" once every 4 seconds. This works fine.

    If player attacks enemy during "Idle", the enemy should "Block" then return to "Idle".

    Similarly, if player "Dodge"s enemy's attack, enemy should be "Dazed", then return to "Idle".

    The nemy will sometimes attack directly out of the "block" or "Dazed" animation instead of waiting 4 seconds.

    Here are my events as I have them now:

    1.(Glob.Var.)AttackType=0

        Is anim "Idle" playing   :   Set AttackType to 1

        X Is anim "Idle" playing : Set AttackType to 0

    2.AttackType=1 : Wait 4 secs, Set anim to "Attack", Set AttackType to 0

    Trigger once :

    Thank you in advance!

  • This is very helpful, thank you all three!

    I had a feeling the random was simply not playing well the way I was using it, because I've used it successfully in other situations.

    I will try your suggestions very soon, and report back with solutions.

    Thank you!

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Side view fighting game (basically), with Player and Enemy.

    For the enemy's in-game behavior, I want:

    Between 3-9 seconds while the enemy is playing "Idle" animation, the enemy attacks.

    My problem: The enemy attacks correctly, but ALWAYS on 3 second intervals--NOT randomly between 3 and 9 seconds. Where is my issue?

    EVENT 1 CONDITIONS

    Every random(3,9) sec.

    AttackType(Global Variable)=0

    Enemy anim = "Idle"

    ACTIONS

    Set AttackType = 1

    EVENT 2 CONDITIONS

    AttackType = 1

    ACTIONS

    Set Animation to "Attack1"

    Set AttackType = 0

  • Perfect, thanks both of you!

    In case someone has the same question, I used:

    Is animation Attack1 playing

    AND Player is (not) overlapping Enemy :   Set enemy animation to "Missed"

    AND Animation frame > 3

    I had to add the 3rd condition or else the Attack1 animation would begin and immediately see it's not overlapping, and switch to "Missed" animation.

    The 3rd condition ensures it has time to begin and get into attacking range!

    Thanks again, guys! (Is there a way to flag/reward someone who had a helpful reply? I need to look into etiquette!)

  • Hi everyone! (I look forward to the day I can answer instead of ask, but...)

    This is working for me so far (simplified):

    Player on collision with Enemy :

    AND Enemy is playing Attack1 animation : (action) Player is hit

    I can't figure out how:

    if the enemy attacks, but DOES NOT collide with Player, then he plays his "vulnerable" animation. (In other words, the Player has successfully dodged.)

    Any ideas?

  • I am excited to try this behavior, but the download won't unzip. It has the proper extension... Where can we download this now?

  • Hey! I didn't know about vector!

    Platformer was the 1 control method I had not tried (it contains "Vector" movement).

    To clarify, in case anyone is looking for similar "dodge"-type movement, this appears to be working for me:

    1. Apply Platform behavior to Player sprite (adjust behavior attributes as desired)

    2. Events:

       Condition:

    Keyboard / On A pressed

       Actions:

    / Player / Set Platform vector X to -5000 (e.g.)

    / System / Wait 1 second

    / Player / Set Platform vector X to 5000

    Player dodges (slides smoothly) left, pauses for 1 second, then returns.

    Now I need to figure out how to take away player control during the dodge.

    Thanks everyone!

  • You can adjust the collision area of each frame of the sprite on a per frame basis, so adjust it so that its no longer in the middle where they player could still be hit like when he's idle.

    And that's actually a good idea.

    My real difficulty is in getting the character to "slide" left, rather than jump left...

  • Thanks for the reply. I don't have anything worth showing, as I'm unable to replicate the movement without jumping from point to point.

    Here's my dilemna more clearly:

    Condition: On button pressed (A)

    1) Move Player with acceleration, speed, then deceleration to a point (e.g.) 200 pixels to the left,

    2) Player stays still for set time,

    3) Player returns with acceleration, speed, then deceleration to default position.

  • Hi everyone,

    I am feeling overwhelmed with movement options, none of which are logically giving me the type of movement I am attempting.

    It seems simple in my head: On button pressed (A), character dodges left, waits for a moment, then returns to the original position.

    The movement would be very similar to the dodge in Mike Tyson's Punch-Out!!.

    Could you help me figure this out? Also, I am not a coder, but would love to understand the logic behind the solution.

    Thank you so much!

    pinkpassion

  • 13 posts