dop2000's Forum Posts

  • That was the most obvious problem with your events, but there may be other mistakes.

    Could you post your capx? It's hard to understand what's going on in that screenshot.

  • It's hard to tell, but you can run a test:

    On every tick

    Repeat 10000 times -> Function Call "MyFunction"

    In the function try setting the values directly or from the array.

    Run the project in debug mode and compare the performance.

  • "Array.CurValue" expression and "Array compare current value" event can only be used inside of "Array For each" loop.

    You need to replace them with "Array.At(x)" or "Array Compare at X"

  • And how are we supposed to help you without seeing your capx?

    You didn't even tell us what kind of game this is - platform, top-view, grid-based etc.

  • vontheodore

    I really don't recommend using "Waits" in game mechanics, especially long-running waits (for several seconds or longer). This is a very common mistake many beginners make.

    Use Timer behavior instead.

  • You do not have permission to view this post

  • Check your origin image point in Rocks sprite. It should be at (0,0) for all frames!

  • On your screenshot the "For each key" event is executed every tick, which is wrong.

    You need to move it to "Local storage item exist", after you've loaded the dictionary from local storage.

    Also, you should remove subevent #3.

    And if the "Name" instance variable is unique for each item, it's better to pick a_PicPreview by Name, rather then by UID.

  • Using "Wait" or "Every X seconds" like this can give you nothing but trouble.

    You need Timer behavior.

    Timers are running per each instance and you have control over them (pause, stop etc.)

  • When you touch the screen, all layers (even invisible ones) and all objects in this point of the screen receive this touch event.

    So if you want to "exclude" some layer or objects, you need to add conditions like "Layer X is visible" or "Sprite is visible" to your touch events.

    Another approach is to use event groups. For example, when player opens the in-game menu, you deactivate "CharacterControls" group and activate "MenuControls" group.

    See these posts for some examples:

  • I can see the Dictionary with every key when I reopen the .capx. So now I'm trying to understand how Construct 2 looks through a Dictionary and retrieves the key/value.

    Do "Dictionary for each key" after it's loaded from local storage, and update your extras sprites.

    Also, could I have saved the unlocks in the local storage? Would that have been a bigger hassle/mess because I can see how it could.

    Sorry, I don't understand what you mean. Aren't you already saving unlocked extras in the dictionary and in local storage? What bigger hassle are you talking about?

  • It will not bounce if all settings are set to zero.

    Instead of Bullet behavior, use "Platform Set Vector X" action.

    Player On collision with Enemy

    ....Enemy.X>player.X : Player set Platform Vector X to -1000

    ....Else : Player set Platform Vector X to 1000

    You can add more conditions - if player is on the ground, bounce only to the left or right. If player is in the air, set vector Y as well.

  • Of course it's possible.

    Use a different object for the ceiling (not the same you use for walls) and check for overlapping or overlapping at offset with this object. If overlapping the ceiling- stop climbing.

    If your level is made of one tilemap, you can put an invisible sprite in areas where your character may hit the ceiling, and use it for overlapping checks.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You need to read some tutorials:

    https://www.scirra.com/tutorials/all

    Add a spike sprite, on collision with the player subtract from player's health.

    Your enemies are rotating because you have "Set angle=yes" in Bullet properties.

  • I don't understand why can't you use "On tap object"..

    If your button is the Button object (form control), then you should request full screen in "On button clicked" event.

    If it's a sprite, you can add another condition to "On touch end" - "Is touching object ButtonSprite".