dop2000's Forum Posts

  • Because the list is generated dynamically, I don't recommend referencing buttons by UID. And definitely don't hard-code UIDs in events, because they may change.

    Every object in the grid is linked to a record in JSON through the DataBind plugin. For example, when a button is pressed, you should be able to access the name of the product and its price using these expressions:

    Button.GridViewDataBind.get("title")

    Button.GridViewDataBind.get("price")

    Or using the JSON object:

    JSON.Get(Button.GridViewDataBind.index & ".title")

    JSON.Get(Button.GridViewDataBind.index & ".price")

  • I suggest you also make a post in this sub-forum:

    construct.net/en/forum/game-development/job-offers-and-team-requests-28

    As I understand, this will be a network multiplayer game? Make sure to mention that you need someone with experience in multiplayer plugin, as this is a pretty specific requirement.

    One piece of advice is to use JSON object from the start for storing cards, inventories and other data. I used to have dozens of arrays and dictionaries in my project, eventually I ended up converting most of them to JSON - it's much more versatile.

  • There are many ways to do it. You can use an invisible RoomZone sprite. When the player collides with it, close all doors connected to this RoomZone. For example:

    Player on collision with RoomZone
    RoomZone is overlapping Door
    .. Door set animation to "Closed"
    

    Or instead of overlapping check you can add doors to a hierarchy and pick Door instances which are children to RoomZone.

    When the player kills a monster, pick all remaining monsters overlapping RoomZone and if there are none, open the doors.

  • Try opening it in beta version of Construct:

    editor.construct.net/r324

    If it doesn't work, make a copy of the file, rename its extension from .C3P to .ZIP and try opening it with Windows. If Windows can't open the archive either, then there is probably nothing you can do.

  • When you see that message that Construct cannot open your file, press F12 and check the errors at the bottom of the console log.

  • Press F12 and check for errors in the browser console.

    If the game slows down but not actually crashing, you can try CPU profiler in Debug View, it may show you what processes or events are using the CPU.

  • As far as I know, there is no way to attach files directly here.

    If you don't have a dead-zone in the center of the paddle where the ball bounces naturally, then you don't need this action - "set a to a>1 ? a-1 : (a<-1 ? a+1 : 0)", you can remove it.

    To change how the ball bounces off when hitting different parts of the paddle you can experiment with these values:

    Set a to clamp(a/2, -45, 45)

  • There is an extra comma after class_04 in your JSON string. You can use any online JSON validation tool to test.

    If you remove the comma, then it works fine:

  • Glad it worked! How exactly do you want to improve it? And can you share your current code?

  • Because I used an object for the classes instead of an array.

    It should've still worked - you should be able to access the first class name using Get(".name") in For Each entry in "classes" loop.

  • Use Brush tool, set large brush size, very small Hardness and select "Smooth" on the panel at the top.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Ah, sorry, you are right - if you have card names as dictionary keys, then your code is correct.

    If it isn't working, my guess is that you are not picking Cards instance. There should be a parent event which picks one Cards instance, for example, a clicked card. Or if you want to process all cards, put these events inside the "For each Cards" loop.

  • ObjectTypeName returns object name (a string), it can't be 0 or 1.

    You need to explain what you are trying to do.