Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: sketch_turner en Diciembre 25, 2014, 05:01:56 PM

Título: Hacer que el score sea continuo room tras room
Publicado por: sketch_turner en Diciembre 25, 2014, 05:01:56 PM
hola camaradas,les comento mi asunto,en mi juego hasta ahora una vez que el jugador moria en el nivel el juego,uno se traslada directamente a la pantalla donde esta el score obtenido en el nivel y el score mas alto obtenido en el juego,pero quiero cambiar la metodologia esa,quiero crear varios niveles y por tiempo,o sea cuando termine el tiempo en el nivel 1 y el jugador siga en pie pasa al nivel 2 pero el score no se vuelve a 0 sino que es continuo y recien al morir va a la pantalla de score y highscore,como podria hacer eso? pidan codigos especificos y los posteo,desde ya muchas gracias
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: Mataca en Diciembre 25, 2014, 05:04:47 PM
Tienes que tildar "Relative" en score.
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: sketch_turner en Diciembre 25, 2014, 05:39:36 PM
Cita de: Mataca en Diciembre 25, 2014, 05:04:47 PM
Tienes que tildar "Relative" en score.

no es tan simple,tengo un objeto controller que marqué en persistente pero sigo con el mismo problema,paso de nivel y el score vuelve a cero,este es el codigo del objeto al que me refiero:

EVENTO CREATE//

global.score=0;

if file_exists("comandos.ini")
{
ini_open("comandos.ini");
global.points=ini_read_real("points","score",0);
global.highscore=ini_read_real("points","highscore",0);
ini_close();
}
else{
global.points=0
global.highscore=0
}

EVENTO GAME START//

score=0;

EVENTO GAME END//

ini_open("comandos.ini")
ini_write_real("points","highscore",global.highscore)
ini_close();
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: fega en Diciembre 25, 2014, 09:17:27 PM
ese es el problema, cada ves que inicias el room, se crea el objeto de nuevo, reiniciando el score, trata de ponerlo en otro lado, por ejemplo, cuando inicia el juego
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: Clamud en Diciembre 25, 2014, 09:21:29 PM
No se vuelve a crear porque es persistente.

En primer lugar no se debe poner "global.score", sino simplemente "score". El problema de que la variable score se reinicia tal vez sea que nunca cambia, ya que en tu código, en dos eventos se hace cero, pero al leer en el archivo ini usas la variable global.points, no se si esa variable es equivalente a score, si es así yo la descartaría y usaría simplemente score. También usaría sólo uno de los eventos, ya sea Create o Game Start.
[gml]
if file_exists("comandos.ini")
{
    ini_open("comandos.ini");
    score = ini_read_real( "points", "score", 0 );
    global.highscore = ini_read_real( "points", "highscore", 0 );
    ini_close();
}
else
{
    score = 0
    global.highscore = 0
}
[/gml]
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: sketch_turner en Diciembre 26, 2014, 12:11:31 AM
amigos pude solucionarlo creando un obj score y marcando la casilla persistente,muchas gracias
Título: Re:Hacer que el score sea continuo room tras room
Publicado por: vitail en Diciembre 26, 2014, 06:46:49 PM
Yo lo que hago es que en la primera room hago como un obj_setup y pongo todas las variables globales, hasta ahora me sirve