mindfaQ's Recent Forum Activity

  • Middle = higher y than other ice blocks and lower y than some others, yes? I don't think it would melt away by a function like this.

  • Descending instead of ascending?

    If that's not it, can you explain in more detail what you want to do?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Use a instance variable, timetouched.

    then your event:

    object Is dragging: add dt to timetouched

    is touching object would probably work as well as condition. timetouched will store the time it got touched. Don't forget to set it to 0 again somewhere if you want it to reset.

  • s000.tinyupload.com/index.php

    maybe you can learn from this.

    What it does:

    on start -> save sentences to array (I'd suggest using the CSVtoArray-Plugin, so you can write your sentences in excel, save the table as .csv and then import the csv-string into the game)

    after that the sentences are split up word by word and each word is saved at y=1, y=2 and so on of the array.

    So for one sentence the array would look like:

    x=0, y=0: I like to watch TV

    x=0, y=1: I

    x=0, y=2: like

    x=0, y=3: to

    x=0, y=4: watch

    x=0, y=5: TV

    The keyboard controls will be easily understandable for you. (A or Space shoots, later on in the sheet left and right puts the player to the lane to his left/right, if not at the edge already)

    The group spawnsentence sets the sentence that is next to spawn by randoming a number. The number represents the x in the array, which you later on will access. It also activates the group that is supposed to spawn the words on screen. It also disables itself to prevent a new sentence from spawning till all words are spawned by the spawnwords-group.

    Spawnwords-group. Uses the word-variable to detect which word it is at (word will chose where the word is taken from in the array). It selects a random lane by randoming between 0 and 2 to spawn the right word and the text that contains the right word gets the instance variable rightword set to 1. This later on helps to detect whether you hit a correct or a false word.

    For the lanes that are not filled with a word yet, a function to spawn false words is run, the function parameter tells the function where to spawn the word.

    False words get the variable rightword set to 0. False words are selected with a while-loop, where the system looks at a random word in the array and compares it to the right word. If the two words are not equal, it uses this word for the false text. If they are the same it looks up a random word again. In case you don't want "can" and "Can" to be detected as different words, use lowercase() for the while-condition.

    The rest of the events is kind of straight forward again. Hit detection, text movement, increasing difficulty over time, scoring based on difficulty (so later on you get more points), substraction of lives, game over display, removing the most front sentence from the sentence display after 5 words have been shot or passed the destroy-mark.

  • Yes.

    For each object (ordered)

    ordered by object.y (ascending):

    destroy object

    (system) stop loop

  • LAYERS

  • use other conditions/selectors, like:

    Global variable (paused = 0, set it to 1 when paused, set back to 0 when leaving the pause, add a condition to popping the bubble: paused = 0 so that it is only possible when the game is not paused)

    Deactivate an event group when pausing, so that the events in that group are disabled. When you continue the game, the group should be activated again.

    If you have problems with the z-order, just put the stuff that is supposed to overlap the bubbles to a layer above.

  • you can't set uids

  • Hey mate, had an idea for an event that works that should give better performance and doesn't require you to meddle with collision boxes in order to prevent it from going off too early:

    for each family1

    • family2: pick nearest to puzzle.x, puzzle.y AND family1.variable = family2.variable AND distance(family1.x,family1.y,family2.x,family2.y) less than 5: do stuff
  • No no, it works like I described. I updated my post and added a for each family1 to make it check for every puzzle piece, if you missed that.

  • Give them both an instance variable and set that variable for the corresponding pieces to the same values (0 for first piece, 1 for second and so on).

    Then

    for each family1:

    • family1 is overlapping family2 AND family1.variable equal to family2.variable: do stuff

    use system: compare two values for the second condition. Beware that overlapping would mean this triggers every tick.

    Reduce the collision polygon of the grid and puzzle pieces if you don't want it to activate when just the edges of the pieces touch.

  • fps and with that dt will be different (even if differences are very minimal), so the physics calculations will be carried out at different positions in time and space (I believe)

mindfaQ's avatar

mindfaQ

Member since 12 Oct, 2013

None one is following mindfaQ yet!

Trophy Case

  • 11-Year Club
  • Coach One of your tutorials has over 1,000 readers
  • Email Verified

Progress

13/44
How to earn trophies