R0J0hound's Forum Posts

  • Giganten

    It's generally better to use forces and torques to change the motion of the objects. Changing the velocities directly won't give very realistic results although you can increase the iterations setting to make it do a better job of keeping up.

  • I can't see the link you posted but to do a mirrored water like surface it's just a matter of positioning the canvas with it's hotspot on the bottom of it. You'd then position it in the layout so the bottom will be where you want the top of the water to be. Then in events you'd:

    1. paste everything you want to reflect to the canvas

    2. set the canvas' height to negative

    The effect would basically look like this:

    +---+
    |   |
    |   |
    +-o-+  ->  +-o-+
               |   |
               |   |
               +---+[/code:25j7xwz9]
  • The nw.js export makes an exe which can work on most versions of windows.

  • That should be fine.

  • You can either use one sprite and make it's collision polygon detailed enough to match the shape... Or you could use a bunch of sprites positioned and rotated to cover the shape.

  • You do not have permission to view this post

  • "while" can be very useful to use. No reason to avoid it. You just need to make sure you're not causing an infinite loop by using it.

    The method I proposed was to choose a random number and if it's either of the last two values it tries again. The only drawback is it could have the chance of looping a lot if one of the last values gets picked over and over again, but that is a slim chance in this case.

    The method korbaach suggests is to have a list of all the numbers except the two last and choose one of them. Arrays could be used to do it or even text like the following.

    number cur=0

    number last1=0

    number last2=0

    text list=""

    on click

    --- set last2 to last1

    --- set last1 to cur

    --- set list to replace(replace("123456", str(last1), ""), str(last2), "")

    --- set cur to int(mid(list,int(random(len(list))),1))

  • It's in the manual under common conditions:

    https://www.scirra.com/manual/131/common-conditions

  • The "system compare" needs to be in the same block as the "while". It won't work if it's a sub event.

  • This could work also:

    var cur=0

    var last1=0

    var last2=0

    on click

    --- set last2 to last1

    --- set last1 to cur

    ------while

    ------ system compare: (cur=last1)|(cur=last2) = 1

    --------- set cur to choose(1,2,3,4,5,6)

  • This could be a way to do it:

    Just replace centerx/centery with the imagepoint x/y.

  • PixelMonkey

    For accessing the tilemap's collision polygons I found looking at the physics behavior useful.

    Here is the basics of getting them:

    //This is how you know an instance is a tilemap
    inst.tilemap_exists
    
    //This is how you get a list of the tilemap's collision polygons.
    var collrects = [];
    inst.getAllCollisionRects(collrects);
    
    // for example grabbing the first poly like so:
    var c = collrects[0];
    c.rc //this is the bounding box
    c.poly  //this is the tile's collision poly if it has one.
    [/code:3k5mqmbl]
    "poly" is defined in common_prelude.js as "cr.CollisionPoly".
  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Not currently. All layout/layer scaling is proportional. One workaround could be to draw to a paster object and stretch that.

  • lukezero

    It may perform better with webgl off. With webgl "on" a texture copy needs to be done every time the canvas is changed, which is slow.