dop2000's Forum Posts

  • Can't you use 2D array?

    In your example it will look like this:

    [

    ["John","Megan","Luke"],["diamond","chess",""], ["so", "then", "how"]];

    You can also store strings instead of child arrays (with values separated by comma or some other symbol).

    You'll just need to parse them using tokenat()

    ["John,Megan,Luke","diamond,chess", "so,then,how"];

    Or you can store JSON-strings of child arrays in your parent array. Of course, you'll have to "Load from JSON" before accessing them.

    And finally, you can create several instances of the child array, and in the parent array store child array's UIDs. (or some other unique identifier of child array instances). However, saving and restoring all them from local storage will not be an easy task.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You don't really need to include UID in the timer name. Each instance is running its own timer.

    However, you might need to add "For each test_obs_steam" in the On Timer event as another condition or sub-event, because there is a chance that timer will be triggered for 2 instances at the same moment (tick).

    Also, you don't have to stop timer in the On Timer event, as you start it "Once".

  • I didn't know how you were going to select 3 sprites, so I made it random.

    You can do it differently.

    Keeping all instances of the sprite off-screen and then moving 3 to the screen works for a small number of pictures.

    If you have lots of pictures, it will probably be better for each round to create (spawn) 3 instances of the sprite, set the right frame/animation/tag for each of them and set isCorrect=true for one of them.

  • You don't need arrays. And if you want to do it with arrays, use For loops to populate them.

    Also, you shouldn't have separate sprite object for every type of picture. Use one sprite with different frames or animations.

    If you want to have different objects, add them to a family for easier management.

    Here is a little demo I made:

    https://www.dropbox.com/s/mhyhuexih8stj ... .capx?dl=0

  • I usually do this:

    Rename the object to something like "ToDelete123"

    Save the project as a folder (not as a single file).

    Search all \Event Sheets\*.xml files for "ToDelete123".

    If none found, then I know I can safely delete this object.

    Yes it's a bit tedious, but there is no better way to do it.

  • Could you share the screenshot of the code where you assign this var_UID to both objects?

    Actually, the name "var_UID" is quite confusing, which object's UID it is supposed to be?

    If you want to tie prt_laser to obj_laser, you only need to create this instance variable on one of the objects (prt_laser), not both.

    Rename prt_laser.var_UID to prt_laser.obj_laser_UID

    Remove obj_laser.var_UID

    When you create your particles, do this:

    prt_laser.obj_laser_UID = obj_laser.UID

    When you want to pick particles tied to your laser, do this:

    prt_laser -> Compare instance variable -> obj_laser_UID = obj_laser.UID

    Or you can simply add both objects to the same container. They will be spawned together, destroyed together and when you pick laser instance in your events, its corresponding particles instance will be picked automatically.

  • Try setting Jump Sustain to 0

  • bump?

    I'd also would like to know what's the optimal screen resolution and ratio for mobile games nowadays.

  • In Doptrix my window size is dynamic. I actually started developing it on a phone with 320x240 screen

    So it works equally well on any resolutions from 320x240 to FullHD and maybe even higher. But I didn't develop it in C2.

    For my new C2 game I decided to go with HD resolution (720x1280), but I'm not 100% sure it's the right choice.

    If you are making your game for PC, maybe consider FullHD?

    Here are a few posts I found on this topic

  • avelok

    See this post:

    construct.net/en/forum/construct-2/how-do-i-18/how-to-appear-coins-in-a-spl-p-116804

    There is a working example and even a coin pattern builder.

  • Thanks for the plugin! I only wish you published it a year ago.. (Or at least that I found it sooner)

    Any advice on how to quickly replace lots of global variables with Globals.variables in a big project?

  • Your link to the Event Sheet is invalid.

  • You don't need hundreds of families because you should not have a separate text objects for every dialog line in your game. This approach is definitely wrong.

    You need a more universal system.

    All text (dialog lines and possible dialog answers) should be in some kind of data storage - XML or CSV or something similar.

    Then create a few functions that will build your dialog interface, handle responses etc.

    See this post for an example (there is a working link to CAPX at the bottom of the page):

  • There are lots of ways to optimize your code.

    You can add TextChoice1 and TextChoice2 to a family and bam - you already can combine those 2 conditions into one.

    Mouse On clicked on TextChoicesFamily
    Rubix is visible
    Text is not visible
    TextChoicesFamily is clickable
       TextChoicesFamily text is "Sure..."
       or 
       TextChoicesFamily text is "Uhm..."
    [/code:2fsunr36]
    
    I'm sure you it's possible to compress all this even further with functions, but I need more examples of your code.
    Could you share the capx?
    
    Also, you might want to check the FAQ on this forum - there are a few good examples of how to build a dialogue system in games.
  • Something like this?

    System -> Set variable("BlueCount")= number

    Unfortunately, this is not possible in C2.

    If you have 90 colors you should find another way to store them. Dictionary is the first that comes to mind.