Hola buenas, mi pregunta es la siguiente: Como puedo controlar el wall jump para que no se pueda hacer en el mismo muro? De tal modo que solo se pueda hacer pasando de un muro a otro y no subiendo todo el rato por el mismo. Pongo el segmento específico de mi código usado para el wall jump.
// Moving right
if (rkey) {
if (hspd < spd) {
hspd += fric;
} else {
hspd = spd;
}
// Left wall jump
if (place_meeting(x-1, y, object_solid) && !place_meeting(x, y+1, object_solid) && !lkey)
vspd = -jspd;
}
// Moving left
if (lkey) {
if (hspd > -spd) {
hspd -= fric;
} else {
hspd = -spd;
}
// Right wall jump
if (place_meeting(x+1, y, object_solid) && !place_meeting(x, y+1, object_solid) && !rkey)
vspd = -jspd;
// Moving right
if (rkey) {
if (hspd < spd) {
hspd += fric;
} else {
hspd = spd;
}
// Left wall jump
if (place_meeting(x-1, y, object_solid) && !place_meeting(x, y+1, object_solid) && !lkey)
vspd = -jspd;
}
// Moving left
if (lkey) {
if (hspd > -spd) {
hspd -= fric;
} else {
hspd = -spd;
}
// Right wall jump
if (place_meeting(x+1, y, object_solid) && !place_meeting(x, y+1, object_solid) && !rkey)
vspd = -jspd;