Movimiento sprite 3

Hola bede, hace unos días me diste un consejo para movcer un sprite con las flechas del teclado, según su inclinación al pusar la flecha hacia arriba, siga una trayectoria según el angulo de inclinación, hasta todo joya, el problema que tengo es que el sprite sin inclinarlo al pulsar la flecha hacia arriba, me va hacia la izq, y si pulso hacia abajo, el sprite se moverá hacia la derecha, ante este problema gire el sprite 90 grados y funciona de maravilla
las funciones del teclado, pero tengo el sprite girado 90 grados.
Este es el siguiente script que me aconsejaste, para ver cual puede ser el error, realmente yo no lo pude arreglar, desde ya muchas gracias por tu atención.
property p, py,px,posicion,rotacion
on beginSprite me
p = sprite(me.spriteNum)
py = p.locv
px = p.loch
posicion= p.loc
end
on exitFrame me
if keyPressed(123) then
p.rotation =p.rotation - 3
end if
if keyPressed(124) then
p.rotation= p.rotation+ 3
end if
rotacion=p.rotation
angulo=(pi*rotacion/180)
y1=sin(angulo)*3
x1=cos(angulo)*3
if keyPressed(126) then
posicion=posicion + point(x1,y1)
end if
if keyPressed(125) then
posicion=posicion - point(x1,y1)
end if
sprite(me.spriteNum).loc =posicion
end
Un abrazo
morphy

1 Respuesta

Respuesta
1
Ya ta:
Property p, py, px, posicion, rotacion
On beginSprite me
p = sprite(me.spriteNum)
py = p.locv
px = p.loch
posicion= p.loc
sprite(me.spriteNum).rotation=270
end
on exitFrame me
if keyPressed(123) then
p.rotation =p.rotation - 3
end if
if keyPressed(124) then
p.rotation= p.rotation+ 3
end if
rotacion=p.rotation
angulo=(pi*rotacion/180)
y1=sin(angulo)*3
x1=cos(angulo)*3
if keyPressed(126) then
posicion=posicion + point(x1,y1)
end if
if keyPressed(125) then
posicion=posicion - point(x1,y1)
end if
sprite(me.spriteNum).loc =posicion
end

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas