Chris PlaysOldGames's Forum Posts

  • The scroll-to behavior works on whatever object it is assigned to. The trick to having the view ahead of the player is to put an invisible object with the scroll-to behavior on it moving along in front of the player where you want the center of screen to be.

  • Hmm, I tried and tried to get it to stick after I fixed the event nesting issue and it never would.

  • Are you asking for help in how to do this? Or are you looking for someone to do the work for you?

    If your looking for advice then start in the tutorials for the platform behavior. The platform behavior is very easy to use and gives you the ability to change jump parameters to your liking using events and actions. The charging bar can easily be built and multiple tutorials and .capx exist for it as well.

    Matter of fact, this thread with a .capx I made in it does most of what your asking for, and even uses the platform behavior:

    https://www.scirra.com/forum/viewtopic.php?f=147&t=118158

    I am not meaning to sound harsh, but if you don't learn to do these fairly simple things yourself you will never be able to get far even when people provide you code for specific issues...

  • Good to hear!

  • You have definitely done something wrong. We won't be able to help you without a screenshot of your events or the .capx file though. You have obviously got something out of order or nested wrong.

    Two, which tutorial are you referring to?

  • From what I understand the wait 0 simple makes Construct2 finish the action above this tick and return next pass so you would not want to use it after something that is necessary for the rest of the function each tick...

    Usually its is needed when you destroy something and then recreate or count its instances all in the same event because all events happen simultaneously Construct2 will destroy or count the instance at the same time it is doing the other stuff and that causes quirks.. I would say put the wait 0 right after your destroy family and leave the rest the same and see if it helps.

  • My guess would be that it has something to do with this:

    [quote:7h5i7h5t]Wait 0 Seconds

    Wait 0 seconds is designed to postpone until the end of the current run of events (not even the next tick - the same tick, but after all other events).

    Explanation :

    Condition 1

    .. Event1

    .. Event2

    In this case , event 1 & event 2 will occur in the same tick

    Condition 1

    .. Event1

    .. Wait 0 seconds

    .. Event2

    Putting a 0 seconds will insure that Event2 will only occur after Event1 is finished

    Some examples ...

    On start of layout

    .. Destroy Object1

    .. Set Variable1 to Object1.Count

    Here , the two events occur in the same tick , meaning the object is created in the same moment as the variable is changed , The object isn't destroyed yet , so the variable is assigned before the object count is egal to zero ... Doesn't work .

    If you place "Wait 0 seconds" between the two , C2 will destroy the instance , wait until it is successfully destroyed , and then assign the variable , in this case , set it to 0 ...

    This trick is very useful when you need to call a function then call another depending on the result of the last one ...

    From this tutorial (https://www.scirra.com/tutorials/510/ad ... ct2-offers) and Ashley's explaination of wait (https://www.scirra.com/tutorials/56/how ... ait-action)

    Try using a wait 0 after loading so it finishes load before moving on.

  • Your going to kick yourself...

    You accidentally put the is-not-overlapping rock set to false event inside a sub-event of the on-animation finish...

    Just move it out of there and it works great.

  • You will need to access its controls via an event and change them when you want this to happen.

    When you do an action on the object with the rotate behavior assigned you get the options to "set speed" and "set acceleration" allowing you to change these.

    You will need to decide when you want to stop it accelerating and set it to 0 at that point.

    If its a time thing then use a system event that deals with time and then action out to changing the speed/acceleration.

    If its a click, collision, or overlapping event then action out of it via the object.

    You could always not set its speed and rotation in its initial properties and instead set them via the actions I mention above at On-creation event or On-Start-of-layout, etc.

    You could also grab its current speed/acceleration via the objects "expressions" (the window that pops up with low opacity behind your action window when your making an action) using Sprite.Rotate.Acceleration or speed. You would need to have an event that stored this into an instance variable and then compares it to what you want the max to be and then stops it when it is equal/greater.

  • I get an error when I try to open the .capoj file into Construct2 saying a layer is missing or deleted.

    Use save as single file and upload the .capx instead.

  • You could grab their UID and store in a last picked variable.

    I never had classic so all I know is 2.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • (bullet) On Created: wait (time in seconds that matches distance you like based on your bullet speed setting)

    then destroy self.

    Add an instance variable to your player called reloading=0 (or whatever name you want) and then In your fire conditions have reloading=0 and in its actions have: reloading=1, wait 1 second, reloading=0.

  • Set a variable button_thisThing_pressed=0 and change it to 1 when pressed. In the event that hides the button; if button_thisThing_pressed=0 then you know it was never pressed.

  • You could just use spawn object bulletL, bulletR image point 1 or image point 2 and put 1 on right and 2 on left?

    That is the nice thing about Construct2, there are a dozen ways to fry an egg.

  • One solution would be to hide the layer (set layer invisible) with the buttons underneath and have the top sprite on a separate layer.

    What I was referring to earlier was for you to turn off the collision for the buttons underneath when the top sprite is displayer (a button only works if its collision is enabled) and if you also want them to disappear when the top sprite is displayed to set them invisible as well when top one is active. Reverse process when top sprite is closed.