Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- float prevX = X;
- float prevZ = Z;
- boolean isMoved = vInput != 0;
- X -= -Math.sin(rad) * (vInput * MOVEMENT_SPEED);
- Z -= Math.cos(rad) * (vInput * MOVEMENT_SPEED);
- if(collideTest())
- {
- X = prevX;
- Z = prevZ;
- isMoved = false;
- }
- public boolean collideTest(int x, int y, int size)
- {
- final int collideMargin = 64;
- for(int i = 0; i < worldHeight; i++)
- {
- for(int j = 0; j < worldWidth; j++)
- {
- if(tiles[i * worldWidth + j] != 0 &&
- aabbTest(x, y, (j * CUBE_SIZE) - CUBE_SIZE, i * CUBE_SIZE, CUBE_SIZE + collideMargin, CUBE_SIZE + collideMargin))
- {
- return true;
- }
- }
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement