Quantcast
Channel: Questions in topic: "javascipt"
Viewing all articles
Browse latest Browse all 1875

Code does not execute move right after being in top left corner

$
0
0
This is my code for checking if the character in my game can move to the desired position without intersecting the wall boundaries. So it checks for every wall (which is stored in limits) in the room, and if it can move to the desired position it will move. The code works fine except if i go up into the top left corner and then try to move right. Nothing happens and I have to move down first before I can move. It only happens if it is a top left corner trying to move to the right. I have been trying to understand where the logic is flawed but with no success. Move and moveX is true as default and should be reset after each frame. for (var i = 0; i < limits.length; i++ ) { if(!intersectCircleLine(xPos, yPos, 0.06, limits[i][0], limits[i][1], limits[i][2], limits[i][3]) && move) { if (i+1 == limits.length) { playerPos = Vector3 (xPos, yPos, -1); gameObject.transform.position = playerPos; move = true; moveX = true; break; } } else if (!intersectCircleLine(xPos, yCurrent, 0.06, limits[i][0], limits[i][1], limits[i][2], limits[i][3]) && moveX){ if (i+1 == limits.length) { playerPos = Vector3 (xPos, yCurrent, -1); gameObject.transform.position = playerPos; move = true; moveX = true; break; } move = false; } else if (!intersectCircleLine(xCurrent, yPos, 0.06, limits[i][0], limits[i][1], limits[i][2], limits[i][3])){ if (i+1 == limits.length) { playerPos = Vector3 (xCurrent, yPos, -1); gameObject.transform.position = playerPos; move = true; moveX = true; break; } move = false; moveX = false; } else { move = true; moveX = true; break; } }

Viewing all articles
Browse latest Browse all 1875

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>