mekonbekon's Forum Posts

  • That's very helpful, massive thanks!

  • Hi Janaina, do you have a capx that you can share? It will be easier to figure out the problem if we can review the code.

  • I think that's the same file as last time?

  • Oh it does not loop (step) when against the wall ? I did't notice that. Got to re look at it.

    It's better in this case for it not to be looping when against the wall.

    About: 'shouldn't the move left/right animations be resetting to frame 0 every tick?'

    When you use the action 'Set Animation' .... then the animation will change ONLY when ...

    The new animation is different then the current playing animation, OR, when the current playing animation is in the state of 'stopped'.

    An animation is in the state 'stopped' when you used the action 'Stop' or/and when a non looping animation reached the end of frames.

    Usually i do not set the walking animations to 'looping'. Because they are set on 'Key is down', a continuous 'every tick' condition.

    Key is down (or vectorX =not zero)

    __________Set Animation "walk" (from beginning)

    When "walk" is not looping, that action will do nothing as long as "walk" is playing, when "walk" is stopped (animation is at the end), that action will restart the animation, effectively looping the animation.

    I did not check this on the capx, btw.

    I was not aware that the animations worked like that - interesting. I figured that the anim would restart every time it hit the "play animation from beginning" action, regardless of whether it was currently running or stopped. Thanks for enlightening me!

  • 99Instances2Go

    Thanks for sharing this, and apologies for the delay in responding. It does partially solve my issue and I may well end up going with this so much appreciated, although I'm not entirely sure how this voodoo is working correctly: shouldn't the move left/right animations be resetting to frame 0 every tick? Or conversely, shouldn't the animation continue to loop when against the wall?

    I think the initial problem might arise again with this solution if I wanted to play a different animation when the avatar is next to the wall, a "collide" or "interact" animation for example.

  • Thanks for posting - I missed that thread.

    I've already filed it as a bug but if what Ashley says is correct and it's not going to be fixed then I'd suggest removing that condition from the behaviour because it is totally unreliable; in a platform game where the avatar is jumping around there will be plenty of opportunities where the avatar ends up in this situation. Either that or you have to build your levels so such a possibility can't arise, which is a pretty heavy restriction.

    TBH I don't understand why the check has to stop after moving it up and registering a ceiling. Why can't the test continue to move the sprite horizontally to test for a wall? If the sprite is on the ground and has a ceiling directly above it doesn't that preclude it from being on a slope? Or do a check on the sprite's angle to confirm whether it is horizontal.

  • You're welcome

  • Do you mean like this?:

    https://www.dropbox.com/s/7ywe7l3cacwh0 ... .capx?dl=0

    Cursor keys to move.

    You can adjust the sprite's instance variables to change speed, rotation and acceleration/deceleration.

  • Have you checked out the top-down shooter template that comes bundled with C2? That would be a good place to start.

    Select File>New>Template: Top-Down Shooter.

    Also, this tutorial: https://www.scirra.com/tutorials/37/beg ... onstruct-2

  • It's a little hard to envisage the issue. Maybe you could post the capx, or if you don't want to share that perhaps a gif/video of the problem?

  • Giving this a bump before I resort to logging it as a bug.

  • Add another instance variable to your asteroid object e.g. lootHP and set it to 1000

    In the event that you deduct hp from the asteroid add an action to deduct the same from lootHP

    Beneath that event add the sub-event : If asteroid.lootHP <=0 | asteroid spawn loot; asteroid set lootHP to 1000.

  • You can have this one for free <img src="{SMILIES_PATH}/icon_e_wink.gif" alt=";)" title="Wink">

    https://www.dropbox.com/s/vl30jbms1ucpf ... .capx?dl=0

    Just change Event 6: "avatar|On collision with object" for "On E is pressed" and "avatar is overlapping with object"

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hi all,

    I've been playing around with the platform behaviour and noticed that the "next to wall" condition doesn't trigger if there is tilemap collision directly above the avatar:

    https://www.dropbox.com/s/90krbak275kg0 ... 0.c3p?dl=0

    If you push into the wall either side of the central block then the correct animation is shown, but if you push into wall on the far left or right of the level (where the avatar is below a tile) then for some reason the animation doesn't run. Any ideas what the problem is? I can get around it by making my avatar smaller so that there is a gap between it and the ceiling, but that isn't ideal.

    Bonus related issue: If the avatar is exactly the same size as a tile then it won't fit through a single tile width/height gap. Why is this and is there any way to get around it? In the linked demo I've reduced the avatar's collision by a pixel on the top and sides, but it's a bit messy (you can see the overlap between the avatar and the tilemap) and would prefer a more aesthetically agreeable solution.

    Thanks in advance for any help <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

  • Can confirm, here's a cp3:

    https://www.dropbox.com/s/dia9gfn1hm68l ... n.c3p?dl=0

    Also if you check in debug there is a minute rounding error on the angle: it adds an extra -3x10^-14 to the angle - not sure why this would be.

    Weirdl,y even though it appears that the position of the left wall is affecting the trajectory of the ball, it seems that the ball isn't colliding with it, if my collision check is working correctly (run in debug and check the no. variable for the left and top wall).