Hola a todos. He seguido este tutorial del usuario HeartBeast en youtube:
https://www.youtube.com/watch?v=ZFX7IHhZw7g
He conseguido que todo funcione tal y como está explicado. Pero no entiendo como se consigue que GMS sepa a que función se refiere cada variable. Intentaré concretar mi duda con el código.
Tengo una room muy simple, con un objeto "suelo" sólido que hace de suelo extendiéndose y haciendo varias plataformas a diferentes niveles.
Tengo un objeto/personaje, que en mi caso se llama "chuck". Puede moverse a derecha/izquierda y saltar. Y tiene estos 2 eventos:
1 Create
2 Step
Mi duda es, por ejemplo en la sección "Mover a derecha". Como sabe GMS que cuando pongo hspd, me refiero a la función "hspeed"?? Y que spd es "speed"?? Es que no logro entender como es que funciona, y si no lo entiendo... no he aprendido nada.
Una explicación para dummies??
Gracias y un saludo.
https://www.youtube.com/watch?v=ZFX7IHhZw7g
He conseguido que todo funcione tal y como está explicado. Pero no entiendo como se consigue que GMS sepa a que función se refiere cada variable. Intentaré concretar mi duda con el código.
Tengo una room muy simple, con un objeto "suelo" sólido que hace de suelo extendiéndose y haciendo varias plataformas a diferentes niveles.
Tengo un objeto/personaje, que en mi caso se llama "chuck". Puede moverse a derecha/izquierda y saltar. Y tiene estos 2 eventos:
1 Create
Código [Seleccionar]
/// Declaración de propiedades y variables
grav = 1.1; // Gravedad
spd = 4; // Velocidad
jspd = 12; // Velocidad de salto
hspd = 0; // Velocidad horizontal
vspd = 0; // Velocidad vertical
2 Step
Código [Seleccionar]
/// Movimientos y colisiones
var izquierda = keyboard_check ( vk_left );
var derecha = keyboard_check ( vk_right );
var salto = keyboard_check ( ord ("Z") );
// Comprueba contacto con suelo
if ( place_meeting (x,y+1,obj_parentsolid)) {
vspd = 0;
// Saltando
if ( salto ) {
vspd = -jspd;
}
} else {
// Gravedad
if ( vspd < 6 ) {
vspd += grav;
}
}
// Mover a derecha
if ( derecha ) {
hspd = spd;
}
// Mover a izquierda
if ( izquierda ) {
hspd = -spd;
}
// Chequea si no se puede mover
if ( (!izquierda && !derecha) || ( izquierda && derecha )) {
hspd = 0;
}
// Colisión horizontal
if ( place_meeting ( x+hspd,y,obj_parentsolid )) {
while ( !place_meeting ( x+sign(hspd),y,obj_parentsolid )) {
x += sign(hspd);
}
hspd = 0;
}
// Movimiento horizontal
x += hspd;
// Colisión vertical
if ( place_meeting ( x,y+vspd,obj_parentsolid )) {
while ( !place_meeting ( x,y+sign(vspd),obj_parentsolid )) {
y += sign(vspd);
}
vspd = 0;
}
// Movimiento vertical
y += vspd;
}
Mi duda es, por ejemplo en la sección "Mover a derecha". Como sabe GMS que cuando pongo hspd, me refiero a la función "hspeed"?? Y que spd es "speed"?? Es que no logro entender como es que funciona, y si no lo entiendo... no he aprendido nada.
Una explicación para dummies??
Gracias y un saludo.