mindfaQ's Forum Posts

  • Yep I know your plugin rex and it's great. I would love those features in the normal text object so everyone could enjoy them.

    Since we are talking about styling text; is there a way to replicate something like the stroke layer effect in photoshop for text (= basically an outline around the characters)? I've looked through the standard effects in C2, but have not found one that would emulate that effect (or even do a drop shadow).

  • I can't notice any gaps for looped music in a project of mine and would agree with frcol (http://strategy-investor.de/mgz10/vnengine/ this has 3 short loops on menu, load and game screen). An example showcasing the problem would be helpful.

  • I think text styling options like eli0s mentioned would be a great addition to the text object.

    Typewriter would be okay too, but it doesn't feel like this would really add anything - at least not for me.

  • Doesn't the tokenat() expression work for that, or am I misunderstanding you?

    My sentence was missing a word. Wanted to say that you can't access a random key from the dictionary (or can you, aside from the "for each key"-loop?).

    And not sure what you want to do with tokenat. Did you want to store keys like "4" for 4 letter words, "5" for five letter words and give the keys values like "park;east;gone;..."? I don't see an advantage over the array then, if anything I think it would be slower than just grabbing a value directly.

  • I'd use an array. It's not value pairs you are dealing with, but just single entries. It's also easier to access. Dictionaries are not ordered, you can't access entries randomly.

    So just create an array with size (words, 1, 1) and then fill the words.

    Construct 2 only offers sorting alphabetically as far as I can see. So if you want to quickly be able to access words with a specific length, you could for example sort your words by length right from the start and then remember where are words with length x. Another way would be creating multiple arrays (from the same object), one for each word length (give them an instance variable) and then selecting the appropriate array.

    Maybe there is also a data structure plugin that let's you perform some fast searches, but as far as I can see, your wordlist won't change once it's in a game, so theres probably no need for expensive searches.

  • Or just use local storage.

  • "Stop loop" is a System object action, and will only stop loops from the System object -- for, for each, and repeat. It won't stop Array loops, since those are independent of the System object.

    I'd suggest using a variable to set and detect loop completion

    Even easier on the code would be using a for-loop to loop through the array, because there the stop action should work (-> you'll save some unnecessary computation).

  • Dictionaries, arrays, global variables, ...

  • Arrays can store more than one element and can be stored in local storage.

  • Local storage would be what persists through sessions, so you have to use that.

  • If the chance of rolling the same numbers is low (for example your range is 1-100, and you wanna fill 6 fields), I would probably just do a while loop (roll -> check if number is present; if it is, reroll; end loop when number is not present).

    If the number of fields is closer to the range of values you are filling into them, I would do something like:

    this would circumvent unnecessary retries, but need a bit more memory, since you build an array (but memory would only be a problem for big ranges)

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Can anyone please tell me which size the resulting apks have for a basically empty project? Thanks

  • Setting your sprite visible every tick might be a workaround, but not a real solution. You should really find the cause of the problem (= you need to understand what's going on). I'm not willing to download your project, because it is too big.

    You can invert the "is flashing"-event. Problem would be that in the event of flashing, you would do nothing, meaning you would end up with an invisible sprite during flashing duration just like you had initially. That's because you did not remove the cause of your problem.

    Since your sprite has the flashing behaviour, you should check if it's flashing from the start (you can see that in the debug as well). If you activate the flashing every tick in some event this could lead to the behavior you are witnessing.

    Further: events run from top of the event sheet to bottom. Your "every tick: set visible"-event made your sprite visible. That means the event making it invisible is located ABOVE that event. Move your visible-event upwards in the event sheet in steps and watch if you can see the sprite or not. Once you can't anymore, the event causing the bug must be somewhere between the current position of the event and the last position of the event that you checked.

  • the event triggered from confirming the selection:

    • : unlock easy levels
    • if list selected item >= 1: unlock medium levels
    • if list selected item >= 2: unlock hard levels

    or

    the event triggered from confirming the selection:

    • : unlock easy levels
    • if list selected item >= 1: unlock easy and medium levels
    • if list selected item >= 2: unlock all levels

    How you "unlock" your levels depends on your code, probably you'll use some flags you can check against.