dop2000's Forum Posts

  • Construct arrays have a specific JSON format, as on your third screenshot. If you can change your JSON string to that format, then you will be able to load it directly into the array with "Load" action.

    Otherwise, if your JSON string is like this - "[1,2,4,10]", you will need to loop thought all these values and insert them into the array one by one. Something like this:

    JSON Parse AJAX.LastData
    JSON For each element
     Array Insert JSON.CurrentValue
    
  • What do you mean? the link works for me, there is a download button on the page.

  • Always check the last few pages in the topic for updated download links.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Local Storage data is also saved in browser storage. So if player decides to clear cookies or browsing data, it may be lost.

    With Local Storage you can choose what to save. It may be a single bit of data, or lots of variables, arrays, dictionaries etc.

  • For a browser game you have two options - browser storage (either using System Save/Load, or LocalStorage plugin), or cloud storage. Browser storage may be lost if player clears browsing data, but for many simple games this is not a big issue, and it's much easier to implement.

    System Save action saves everything, so yes, it may restore old level layout. You can try adding NoSave behavior to objects which you don't want to save, but this may not work very well in some games.

    With LocalStorage you can save just the information you need - for example player stats, current level number, amount of gold etc.

    .

    If you want to use cloud storage, take a look at services like Playfab, Firebase etc. You will need to compose a block of data with information you wish to save, and send it to the server.

    .

    By the way, most of С2 manuals and tutorials are still relevant for C3, so don't discard them.

  • If you took my advice with two variables (correct order and clicked order), then once the length of both variables is the same, check if they are equal. If not - this means that the clicked order was wrong.

    If you want to detect mistakes immediately when the first wrong picture is clicked, you need to do something like this:

     Compare variable clickedOrder not equal left(correctOrder,len(clickedOrder))
     // display animation for wrong order
    
  • I've shared this example before:

    dropbox.com/s/srgf9lme08by9wa/JSON-RecursiveRead.c3p

    You can use it to browse through the entire JSON and compare value of each key/index.

  • I usually need to add multiple children to one parent. Sometime like 20 different objects. So I can see how your suggestion may be useful, but I would also prefer to keep the current method.

  • Double-click the sprite to open it in Animation Editor. There click the collision polygon icon on the left toolbar, or press Shift+P

  • My understanding is that to display a rewarded ad you are required to ask user if they would like to see it. Interstitial rewarded ads can be shown automatically without a prompt during natural app transitions.

    Edit: Apparently, you still need to give user an option to opt-out:

    support.google.com/admob/answer/9884467

    With interstitial ad you only get paid if people click on it.

    With rewarded and interstitial rewarded you get a small amount of money when the ad is played to the end.

  • An easy method is to use a text variable to store the sequence. For example, it can be a list of animation frames - "310". Which means that first you need to click sprite instance with frame 3, then 1, then 0.

    As player is clicking the sprites, save clicked frames in another variable:

    Set Result to (Result & Sprite.AnimationFrame)

    And once two variables are equal, this means that the sprites were clicked in the correct order.

  • I agree, expressions like Sprite.AnimationsCount and Sprite.AnimationName(index) would be quite useful.

  • You can add an event which outputs group status (enabled/disabled) to browser console. Either when a key is pressed, or every X seconds.

  • The condition on the left (CarControl ID=0) will pick the instance of CarControl object with ID=0. And then all actions in this event will only be applied to that picked instance.

    Picking is one of the most important principles of programming in Construct. I suggest you start by studying a few official templates and tutorials.