1 decade ago by Nozferatu
Hi I'm pretty new to Impact, I thought I would start off with something simple - player movement.
I had the opportuntity to look at http://impactjs.com/forums/code/top-down-rpg-style-tile-based-grid-movement which is really close to what I want, but I don't really want to be restricted to moving only up, down, left, or right. I would like to be able to move diagonally, a la, pressing up and left at the same time. Similar to http://www.cross-code.com/en/play
I peiced together some very basic movement for my Player entity:
So with this I have the right movement range, but the only issue is that the player keeps going, there&
What's the best approach for something like this?
I had the opportuntity to look at http://impactjs.com/forums/code/top-down-rpg-style-tile-based-grid-movement which is really close to what I want, but I don't really want to be restricted to moving only up, down, left, or right. I would like to be able to move diagonally, a la, pressing up and left at the same time. Similar to http://www.cross-code.com/en/play
I peiced together some very basic movement for my Player entity:
if( ig.input.state('up') ) { this.vel.y = -this.speed; } else if( ig.input.state('down') ) { this.vel.y = this.speed; } if( ig.input.state('left') ) { this.vel.x = -this.speed; } else if( ig.input.state('right') ) { this.vel.x = this.speed; }
So with this I have the right movement range, but the only issue is that the player keeps going, there&
039;s nothing in place to tell it "Hey, you reached your destination time to stop moving". I considered getting around this entirely and just moving the entity directly via the #pos
attribute, but it seems that prevents the collision detection from working. What's the best approach for something like this?