Abril 17, 2016, 10:09:23 PM Ultima modificación: Abril 19, 2016, 06:42:10 PM por VisualGames
He de decir que ya había hecho una pregunta sobre lo mismo, pero esa pregunta era para GMS y no para GM8 :)

Hola! Me gustaría saber si se podría hacer un sistema de "puntuación" pero con distintas variables (En GM8) y como se le agregarian y como se le quitarían...
(Porfavor poner un ejemplo que incluya 2 variables :S)

Pd: Reescribo esta pregunta porque no estoy seguro que el sistema de varables en GMS sea igual en GM8 :v

E irónicamente soy yo quien te vuelve a responder xD

Te doy el mismo código que te dí en la anterior pregunta. Pero adaptado a GM8

Evento <create>
[gml]
global.puntuaciones = 3; //Yo quiero hacer tres diferentes puntuaciones
global.puntos[global.puntuaciones - 1] = 0;
[/gml]
Y en el objeto que quieras que sume a X puntuación, en el <create>:
[gml]
sumar_a = 0; //Esta variable significa la puntuación a la que el objeto va a sumar, siendo 0 la primera puntuación, 1 la segunda y 2 la tercera
[/gml]
Y cuando quieras sumarle, por ejemplo, <collision>
[gml]
global.puntos[sumar_a] += 1; //Le sumamos un punto a la puntuación dada
[/gml]
El valor de sumar_a puede ser modificado a tu gusto, y también desde el Creation Code, para darle más "flexibilidad" o lo que sea xD. Obviamente el valor de esta variable debe estar entre 0 y 2. Puesto que sólo hay tres espacios para puntuaciones (del 0 al 2)

Por último, puedes dibujar los puntos, ya sea manualmente o con un ciclo, así:
[gml]
var i;
for(i = 0; i < global.puntuaciones; i+=1)
    draw_text(32, 32 + 32*i, "Puntos " + string(i + 1)+": "+string(global.puntos));
[/gml]
alaberga regué el café.

BA:STFW&RTFM

Y como se le haría para que los nombres no sean siempre asi: "Punto ´Numero´" Osea que tengan distintos nombres y sin nombres...

Puedes tener una variable global con los nombres.
En el evento <create> (en el mismo sitio donde pusiste el primer código de mi mensaje anterior):
[gml]
global.nombre[0] = "Vidas";
global.nombre[1] = "Manzanas";
global.nombre[2] = "Monedas";
//Recuerda que tenemos 3 puntuaciones diferentes. Por eso creamos tres índices en el array
[/gml]
Y en <draw>, en vez del código anterior, usas algo como esto:
[gml]
var i;
for(i = 0; i < global.puntuaciones; i+=1)
    draw_text(32, 32 + 32*i, global.nombre+": "+string(global.puntos));
[/gml]
alaberga regué el café.

BA:STFW&RTFM

Ok, gracias :)
yyy... ¿Como se le haría para hacer un "test point"? (Con ejemplo porfi :3 que soy bastante nuevo en esto de GML)

¿Un qué?  XD  :'(
Y no, yo no dejo ejemplos  :-[
alaberga regué el café.

BA:STFW&RTFM

Cita de: NiuWeb en Abril 18, 2016, 09:43:11 PM
¿Un qué?  XD  :'(
Y no, yo no dejo ejemplos  :-[
Hablo de que detecte cuando por ejemplo: Tienes 5 puntos en la variable "Juanito" y al detectar que tienes 5 puntos en esa variable, pasaría que (por ejemplo) aparezca un texto :)

Como que no das ejemplos :v
Cita de: NiuWeb en Abril 17, 2016, 10:13:26 PM
Y cuando quieras sumarle, por >>>>ejemplo<<<<, <collision>
[gml]
global.puntos[sumar_a] += 1; //Le sumamos un punto a la puntuación dada
[/gml]
Turn down for what?? XD

Puedes usar una sentencia if para eso :-[
alaberga regué el café.

BA:STFW&RTFM