Tengo otro problema de programacion, Me dice que espera una parentesis o un simbolo en medio de una O os marco en negrita y rojo donde.
///Desplazamiento
var KeyLeft, KeyRight, KeyJump, KeyJumpRelease;

KeyLeft        = -keyboard_check(vk_left);
KeyRight       = keyboard_check(vk_right);

KeyJump        = keyboard_check_pressed(ord('x'));
KeyJumpRelease = keyboard_check_released(ord('x'))

//Comprobacion de Colisiones

IntColLeft  = place_meeting(x - 1, y, Obj_Suelo);
IntColRight = place_meetin//Velocidad Horizontalg(x +1, y, Obj_Suelo);
BolGround   = place_meeting(x, y + 1 Obj_Suelo);

IntMove     = KeyLeft + KeyRight;


if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);
else IntVX =ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);

//Definir aceleracion y friccion en funcion del medio
if (!bolground)
{
   IntTempAce = IntAirAce;
   IntTempFric = IntAirFric;
}
else
{
    IntTempAce = IntGroundAce;
    IntTempFric =IntGroundFric;
}

//Colision horizontal
repeat(abs(IntVX))
    {
    if  (!place_meeting(x + IntVX, y, Obj_Suelo))
    {
    x += IntVX
    }
    else
    {
        IntVX =0;
        break;
    }
}

Para mí que en esta línea te falta una coma ","

BolGround   = place_meeting(x, y + 1 Obj_Suelo);

creo que debería ser

BolGround   = place_meeting(x, y + 1, Obj_Suelo);

Saludos

Hola buenas tardes.

Lo que dice empardopo es cierto y aqui hay otro error

Esto es incorrecto
IntColRight = place_meetin//Velocidad Horizontalg(x +1, y, Obj_Suelo);

Esto es correcto
IntColRight = place_meeting(x +1, y, Obj_Suelo); //Velocidad Horizontal
Dios nos ayuda y nos da sabiduría para vivir. Cáda código es una obra maestra que hay que respetar aunque exista un código mas eficiente y sencillo.

#3 Agosto 31, 2018, 10:52:11 AM Ultima modificación: Agosto 31, 2018, 10:58:01 AM por minordioso
Ok, ya Arregle los errores pero ahora al iniciar el juego para probarlo me sale otro error mas

FATAL ERROR in
action number 1
of  Step Event0
for object Obj_Player:

Push :: Execution Error - Variable Get -1.IntTempAce(100019, -1)
at gml_Object_Obj_Player_Step_0 (line 20) - else IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce);


El codigo es el mismo  :-[

PD: Díxon, el error que tu señalaste lo tenia bien en el código pero por alguna razón salio así de raro al pegarlo aquí.

PD: 2 me acabo de acordar de que hice unos minimos cambios en el codigo, aqui el nuevo.

///Desplazamiento
var KeyLeft, KeyRight, KeyJump, KeyJumpRelease;

KeyLeft        = -keyboard_check(vk_left);
KeyRight       = keyboard_check(vk_right);

KeyJump        = keyboard_check_pressed(ord('x'));
KeyJumpRelease = keyboard_check_released(ord('x'))

//Comprobacion de Colisiones

IntColLeft  = place_meeting(x - 1, y, Obj_Suelo);
IntColRight = place_meeting(x + 1, y, Obj_Suelo);
BolGround   = place_meeting(x, y + 1, Obj_Suelo);

IntMove     = KeyLeft + KeyRight;

//Velocidad Horizontal
if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce);
else IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce);

//Definir aceleracion y friccion en funcion del medio
if (!bolground)
{
   IntTempAce = IntAirAce;
   IntTempFric = IntAirFric;
}
else
{
    IntTempAce = IntGroundAce;
    IntTempFric =IntGroundFric;
}

//Colision horizontal
repeat(abs(IntVX))
    {
    if  (!place_meeting(x + IntVX, y, Obj_Suelo))
    {
    x += IntVX
    }
    else
    {
        IntVX =0;
        break;
    }
}



El error te lo da en la línea 20...

Lo mismo es por el ; que hay de la linea anterior...

//Velocidad Horizontal
if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce);
else IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce);


cambialo a
//Velocidad Horizontal
if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce)
else IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce);


Quedaría más fácil de ver dejándolo así...


//Velocidad Horizontal
if (IntMove !=0) {
    IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce)
}
else {
    IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce)
}


que por cierto no entiendo lo hace ese If, ya que en cualquier caso, es decir, para cualquier valor de IntMove siempre vas a darle el mismo valor a IntVX, no?

Saludos

Quite:
//Velocidad Horizontal
if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce);
else IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce);


Y puse:

//Velocidad Horizontal
if (IntMove !=0) {
    IntVX = ScrApproach(IntVX, IntVXMax * IntMove, IntTempAce)
}
else {
    IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce)
}


Y ahora dice que el error esta en la linea 23:
IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce)

Probablemente el error esta en ScrApproach que es un script que hize, lo dejo por aqui por si acaso.

//ScrApproach
if (argument0 < argument1)
   return min (argument0 + argument2, argument1);
else
   return max (argument0 - argument2, argument1);



El problema de seguir los tutoriales de the montydrake sin comprenderlos o sin fijarte bien en todo, lleva como norma general a esos problemas, ya que son tutoriales practicamente creados con codigos suyos(escepto algunos que coge y modifica de otros como shaun palding etc)te recomiendo que veas de nuevo los tutoriales e intentes fijarte en que hizo pero sobre todo en porque lo hizo ya que en un futuro ademas de saber copiar sabras entender por ti mismo el origen de esos problemas.

Qué dice el error exactamente?
Seguro que el script se llame tal cual lo estás llamando.

Saludos

Aqui tienes el error, espero que esto se resuelva rapido. FATAL ERROR in
action number 1
of  Step Event0
for object Obj_Player:

Push :: Execution Error - Variable Get -1.IntTempAce(100019, -1)
at gml_Object_Obj_Player_Step_0 (line 23) -     IntVX = ScrApproach (IntVX, IntVXMax * IntMove, IntTempAce)
ese es el error.

PD: Gracias por la opinion zorge, intentare ver el error y fijarme mas en lo que dice para ver cual es el error


Uff, la verdad es que no sé si mis conocimientos alcanzan , jeje.

Podría ser que la variable IntTempAce no está definida?

En el código del primer post ponías esto...


if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);
else IntVX =ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);

//Definir aceleracion y friccion en funcion del medio
if (!bolground)
{
   IntTempAce = IntAirAce;
   IntTempFric = IntAirFric;
}
else
{
    IntTempAce = IntGroundAce;
    IntTempFric =IntGroundFric;
}


cambia el orden a ver si suena la flauta...



//Definir aceleracion y friccion en funcion del medio
if (!bolground)
{
   IntTempAce = IntAirAce;
   IntTempFric = IntAirFric;
}
else
{
    IntTempAce = IntGroundAce;
    IntTempFric =IntGroundFric;
}

if (IntMove !=0) IntVX = ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);
else IntVX =ScrApproach(IntVX, IntVXMax + IntMove, IntTempAce);


De esta forma cuando llegues a llamar al script IntTempAce sí o sí tendría un valor aunque claro, habrá que ver si no te da otro error porque IntAirAce o IntGroundAce no estén definidas, jeje.

Prueba a ver.

Saludos

No funciono, aqui te dejo el error por si lo quieres ver
FATAL ERROR in
action number 1
of  Step Event0
for object Obj_Player:

Push :: Execution Error - Variable Get -1.bolground(100019, -1)
at gml_Object_Obj_Player_Step_0 (line 22) - if (!bolground)


De todas formas esto era para la acelerzion del personaje, no creo que sea tan importante. lo borro y sigo con el proyecto.

El problema es que algunas variables no están definidas. Lo mejor es declararlas en el evento Create antes de utilizarlas en otra parte del código.