El problem es que GM8 no me est? respetando el else, me cumple cualquiera de estos c?digos y viola el else. O lo m?s com?n, usa el primero de todos cuando debi? usar el ?ltimo u otro. Espero me ayuden a ordenarlo mejor. Gracias 8)
[gml]
if global.coins=5 and global.ganado>=1 {global.ganancias=global.ganado*5 global.total+=global.ganancias}
else
if global.coins=4 and global.ganado>=1 {global.ganancias=global.ganado*4 global.total+=global.ganancias}
else
if global.coins=3 and global.ganado>=1 {global.ganancias=global.ganado*3 global.total+=global.ganancias}
else
if global.coins=2 and global.ganado>=1 {global.ganancias=global.ganado*2 global.total+=global.ganancias}
else
if global.coins=1 and global.ganado>=1 {global.ganancias=global.ganado*1 global.total+=global.ganancias}
else
if global.coins=5 and tripl=1
{global.ganancias=global.ganado*15 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else
if global.coins=4 and tripl=1
{global.ganancias=global.ganado*12 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else
if global.coins=3 and tripl=1
{global.ganancias=global.ganado*9 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else
if global.coins=2 and tripl=1
{global.ganancias=global.ganado*6 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else
if global.coins=1 and tripl=1
{global.ganancias=global.ganado*3 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
[/gml]
Porque Mejor No Solo Quitas Los "else" ;)
Hola, utiliza { } para agrupar los else asi como los for, saludos.
Cita de: Zeit en Agosto 11, 2011, 04:34:15 PM
Hola, utiliza { } para agrupar los else asi como los for, saludos.
No hay ningun
for XD.
y bueno kaliman777 yo solo te puedo decir que para cosas como esa existe el "
switch" si no sabes que es busca en el manual.
Hola, perdon a los if, else, for, etc... si es que los hay... Saludos.
Creo Qe Seria Mucho Mejor Quitar Los else porque en ese codigo no sirven para nada....
if global.coins=5 and global.ganado>=1 ,{global.ganancias=global.ganado*5 global.total+=global.ganancias};
if global.coins=4 and global.ga,nado>=1 {global.ganancias=global.ganado*4 global.total+=global.ganancias}
if global.coins=3 and global.ganado>=1 {global.ganancias=global.ganado*3 global.total+=global.ganancias};
if global.coins=2 and global.ganado>=1 {global.ganancias=global.ganado*2 global.total+=global.ganancias};
if global.coins=1 and global.ganado>=1 {global.ganancias=global.ganado*1 global.total+=global.ganancias};
if global.coins=5 and tripl=1
{global.ganancias=global.ganado*15 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};
if global.coins=4 and tripl=1
{global.ganancias=global.ganado*12 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};
if global.coins=3 and tripl=1
{global.ganancias=global.ganado*9 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};
if global.coins=2 and tripl=1
{global.ganancias=global.ganado*6 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};
if global.coins=1 and tripl=1
{global.ganancias=global.ganado*3 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};
Y Si No Sirve, Poner if "codigo{codigo}else{}"
yo lo har?a as?
[gml]
if global.ganado>=1
{global.ganancias=global.ganado*global.coins
global.total+=global.ganancias}
if global.coins=5 and tripl=1
{global.ganancias=global.ganado*15 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)};[/gml]
espero que te ayude :D
Bueno, gracias a por todas sus respuestas.
Parece que GM se enreda a veces con los c?digos, de hecho he comprobado que obvia algunos y comprobado de verdad, porque al verificar el error, no exist?a. Esto pasa sobretodo cuando colocas decenas de c?digos casi id?nticos (combinacones ganadoras de tragamonedas por ejemplo).
Y comprob? adem?s que si usas m?s de 20 veces en una room instance_activate(object) despu?s de x n?mero ya no se activan. :-\
Reordenar no ayuda mucho si el c?digo est? bien, lo interpreta igual.
Talvez debo crear m?s variables para hacerle al GM8 que tenga m?s condiciones de filtro.
Gracias y estamos en contacto.
@kaliman777: la verdad creo que todo lo que dices es error humano, y como no cometerlos con tantos if y elses, deber?as de usar una operaci?n matem?tica para hacer estas cosas.
revisa si poniendo corchetes funciona.
[gml]if global.coins=5 and global.ganado>=1 {global.ganancias=global.ganado*5 global.total+=global.ganancias}
else{
if global.coins=4 and global.ganado>=1 {global.ganancias=global.ganado*4 global.total+=global.ganancias}
else{
if global.coins=3 and global.ganado>=1 {global.ganancias=global.ganado*3 global.total+=global.ganancias}
else{
if global.coins=2 and global.ganado>=1 {global.ganancias=global.ganado*2 global.total+=global.ganancias}
else{
if global.coins=1 and global.ganado>=1 {global.ganancias=global.ganado*1 global.total+=global.ganancias}
else{
if global.coins=5 and tripl=1
{global.ganancias=global.ganado*15 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=4 and tripl=1
{global.ganancias=global.ganado*12 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=3 and tripl=1
{global.ganancias=global.ganado*9 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=2 and tripl=1
{global.ganancias=global.ganado*6 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=1 and tripl=1
{global.ganancias=global.ganado*3 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}}}}}}}}}}[/gml]
p.d mejor te dejo una simple operaci?n para reemplazar eso.
[gml]
global.ganancias=global.ganado*global.coins*(1+tripl*2)
global.total+=global.ganancias
if tripl {instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
[/gml]
Edit: ahora que lo veo ordo_ab_chao tambien habia echo una operaci?n mas corta
Gracias, me gusta el ?ltimo c?digo, el del PD 8). Creo que aplicar? un poco de lo de cada uno, as? que gracias a todos.
Pronto colgar? este juego, que aunque no es de plataformas, es muy interesante, es un tipo de BINGO, donde las probabilidades y la suerte te podr?an hacer ganar millones de $ virtuales.
Hasta la vista.
De nada kaliman777, espero haberte ayudado.