oosyrag's Recent Forum Activity

  • I believe the example I posted should work with any size/ratio tile. Just change the size of the sprite object for the tile. Let me know if it breaks and I'll take a look again.

  • What is the size of your tile?

    Edit: Never mind, here is an example with any size tile. It's a little messier to read though.

    dropbox.com/scl/fi/fdxh5lyfi7h6szkbxqbhv/isoexample.c3p

    Some additional tweaks in this particular example include centering the origin tile 0,0 by ORIGINOFFSET, which is viewportwidth/2, and offsetting the mouse screen coordinate input by tile.height/2 to center the highlight, since the origin point of each tile is currently at the top of the tile instead of the center.

    Basically it's still "Get the nearest isometric tile coordinate from the mouse location, and set the object position to the screen coordinates corresponding to the tile coordinates".

    The main difference from orthographic projection is that any given x or y isometric position requires both an x and y input to get, while in an orthographic system you would only need an x input to map to an x coordinate, and y input for y coordinate.

  • Do you have an isometric grid already set up? Not all isometric grids are created at the same size/angle, so the exact way to do it would depend on what you've got.

    I'd assume any isometric grid set up already has a way to translate screen coordinates to grid locations, which means you should have a way to get/snap to the nearest grid. Then you would just set the position of the object to the nearest grid coordinate every tick instead of the mouse coordinate.

  • Moving up (up to 45 degree) diagonal slopes should work fine by default. Are your tile collision boxes set properly?

    Otherwise try using an invisible helper sprite set to solid and set it to 45 degrees aligned with the slope.

  • Edit: A triggered event cannot be a sub event.

  • Here's the same, with gradual filling. metermask.reserve is an instance variable used to keep track of how much/long to fill up.

    + System: metermask.Height > 0
    -> metermask: Set height to max(0,metermask.Height-0.05)
    
    + System: metermask.reserve > 0
    -> metermask: Set reserve to max(0,metermask.reserve-1)
    -> metermask: Set height to min(150,metermask.Height+1)
    
    + Touch: On any touch start
    -> metermask: Set reserve to metermask.reserve+25
    

    You can add stuff like setting the reserve to 0 if fuel gets maxed out, if that is your desired behavior. Alternatively, you can set the reserve to min(25,fuelmax-currentfuel), to take the smaller of either 25 or the difference between max fuel and current fuel to prevent overfilling.

  • construct.net/en/tutorials/how-to-collaborate-on-projects-with-svn-321

    Github is probably the big one.

    Edit: Oops meant to post the link below. But this one is probably good to leave here too.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • If they are acting differently when set up like that in an or block, you probably have an event somewhere else that also does something when the same button is pressed.

  • Use the advanced random plugin. construct.net/en/make-games/manuals/construct-3/plugin-reference/advanced-random

    Probability tables

    Advanced Random can also create probability tables, which are a way of generating weighted random numbers. For example if you add three items with a weight of 1, and then a fourth item with a weight of 2, that item is twice as likely to be picked as any other item. The value of a probability table entry can be either a number or a string, but the weight must be a number. This is useful for doing things like random pickups with lots of common cheap items, but also some rare valuable items.

  • Ah.

    The pixel rounding setting should still overwrite whatever you see as the canvas coordinate. That is it should only attempt to draw the nearest (rounded) "full" pixels, regardless if layer coordinate or canvas coordinate is not a whole number.

    Anyways you can see what exactly pixel rounding does in this project dropbox.com/scl/fi/dccxvbgvvymzep5z7195n/pixelroundingexample.c3p

    Try turning it on and off to see how it behaves when pressing the right arrow.

oosyrag's avatar

oosyrag

Online Now

Member since 20 Feb, 2013
Last online 3 Feb, 2025

Twitter
oosyrag has 39 followers

Trophy Case

  • 11-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • Enduring Visitor Visited Construct.net 90 days in a row
  • Unrelenting Visitor Visited Construct.net 180 days in a row
  • Continuous Visitor Visited Construct.net 365 days in a row
  • RTFM Read the fabulous manual
  • Email Verified

Progress

21/44
How to earn trophies