El sprite salta los límites
Hola, estoy realizando mi primer trabajo en director, un comecocos, funciona bien siempre que pulse sólo una tecla, pero resulta que con este código el sprite se sale fuera de los límites cuando pulso dos teclas de movimiento a la vez.
Si pulso derecha y abajo, por ejemplo, salta los límites.
Cada trozo de pared mide 50 pixels, de este modo hago un cerco para que el sprite que mueve el jugador, que también se mueve de 50 en 50 no salga de los límites.
¿Dónde está el error? Gracias.
--Movimiento jugador
--Izquierda
if keyPressed(123) then sprite(a).loch = sprite(a).loch -50
--derecha
if keyPressed(124) then sprite(a).loch = sprite(a).loch +50
--abajo
if keyPressed(125) then sprite(a).locv = sprite(a).locv +50
--arriba
if keyPressed(126) then sprite(a).locv = sprite(a).locv -50
-- PARED /JUGADOR
--izquierda
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 123 then sprite(a).loch = sprite(a).loch +50
--derecha
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 124 then sprite(a).loch = sprite(a).loch -50
--arriba
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 126 then sprite(a).locv = sprite(a).locv +50
--abajo
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 125 then sprite(a).locv = sprite(a).locv -50
Si pulso derecha y abajo, por ejemplo, salta los límites.
Cada trozo de pared mide 50 pixels, de este modo hago un cerco para que el sprite que mueve el jugador, que también se mueve de 50 en 50 no salga de los límites.
¿Dónde está el error? Gracias.
--Movimiento jugador
--Izquierda
if keyPressed(123) then sprite(a).loch = sprite(a).loch -50
--derecha
if keyPressed(124) then sprite(a).loch = sprite(a).loch +50
--abajo
if keyPressed(125) then sprite(a).locv = sprite(a).locv +50
--arriba
if keyPressed(126) then sprite(a).locv = sprite(a).locv -50
-- PARED /JUGADOR
--izquierda
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 123 then sprite(a).loch = sprite(a).loch +50
--derecha
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 124 then sprite(a).loch = sprite(a).loch -50
--arriba
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 126 then sprite(a).locv = sprite(a).locv +50
--abajo
if sprite(a).loch = sprite(c).loch and sprite(a).locv = sprite(c).locv and the keyCode = 125 then sprite(a).locv = sprite(a).locv -50
1 Respuesta
Respuesta de josemarinno
1