oosyrag's Forum Posts

  • The last condition in event 21 in the example

    + cat2: [X] Is isTurning

    This is an inverted condition to check if isTurning is False

    If isTurning is true, this event won't run

  • Variable: A value that can be changed depending on the situation.

    Boolean variable: A variable that has two states, true or false.

    Instance variable: A variable that is attached/associated with a specific instance of an object.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Drag the corner of the window...

  • In a browser, you can resize the the window to any size you want to simulate different aspect ratios and resolutions.

  • Updated again, this time filtering by angle, and then picking nearest. Works pretty well, until you run into a situation like the screenshots below where the red circled positions can never be reached.

    dropbox.com/s/tff81dp49h8chuw/grid_UI.c3p

  • When wood overlaps water, apply upward force on wood. This force should be enough to offset gravity.

    You can use overlap at offset if you want the wood not to bob completely out of the water.

  • You can use floor(unixtime/86400) to get the day number.

    Then use local storage to keep track if the user has received the reward for the day or not.

  • Quick google search: johnwordsworth.com/projects/sprite-font-builder

    I have no idea if it is suitable for your use. Hope it works!

  • Change

    -> System: Create object Raindrop on layer 0 at (random(WindowWidth+100), 0)
    

    To

    -> System: Create object Raindrop on layer 0 at (random(WindowWidth×2)+ViewportLeft(0), 0)
    

    Or put the rain on a separate layer with its own parallax separate from the background.

  • In the following event (you should make them both subevents of the button trigger), you can make an Else event. The Else event will only run if the previous event did NOT run (meet conditions). So if none of the spots checked in the first loop were valid, stop loop would never have run, and the following event will run. If the first loop did execute, then the else event would not.

    But again, you have to define clearly in what order you want to check available positions. For example, why would it go to D4 and not C5? Would it go to F2 if there was a spot there when you pressed left?

    Don't worry too much about checking X amount of columns, loops can do wonders :)

    Edit: Also where would it go if there was a spot at F5 and F7?

  • In the event that the Construct signaling server is no longer provided, you can always set up and host your own.

    The signaling process is part of the WebRTC standard, and not proprietary to Construct.

  • It's really not that complex...

    + Keyboard: On ↑ pressed
    + System: Repeat 4 times
    + select: Is overlapping grid at offset (0, -128×(LoopIndex+1))
    + grid: Is filled
    -> select: Set position to grid (image point 0)
    -> System: Stop loop
    

    This is all you need to skip empty spaces.

    If you want to hop over a row, you change the offset amount by -128 or +128 and repeat the same thing.

    dropbox.com/s/tff81dp49h8chuw/grid_UI.c3p

  • Lots of checks are relative, as the loop would be a single event. And you can add additional loops for neighboring columns or rows.

    Either way you'll need to clearly define the order of priority about where your selection would go. And if its actually random left or right you'll need to define that as well. Then you can put it together.

  • I'd normally use an array to set this up, as it has tools to make this sort of thing easier, but let's go with what you've got.

    First you'll need to identify if a grid spot is valid. You've already set up an instance boolean "filled" for your grid object, so that's good.

    Now when you press a direction, you want to see if the next spot in that direction is "filled" or not. You can easily do that with a compare instance variable condition.

    If it isn't filled, check the next position over in the same direction and repeat until one is filled.

    This can be done in a loop. Repeat x times (where x is the width of your grid, or maximum number of spaces you can move), and multiply the offset by loopindex for your positional check. If you run into a filled grid object, stop loop and move the selection to that object. Otherwise, if no valid spots were encountered, nothing happens.

  • You could start by making a multiplayer game. The tutorials are a great place to get started. construct.net/en/tutorials/multiplayer-tutorial-1-concepts-579

    You can limit the number of players per room in the Join Room action.

    If you have any additional specific questions, ask again. See tips for asking for help. construct.net/en/forum/construct-2/how-do-i-18/tips-posting-quothow-iquot-40390