mi pregunta es la del titulo cuando y como deben de usarse?
por que aveces pongo [gml]instance_exist(objet0=0) and global.col=true and selected=true [/gml]
y funciona y hago eso mismo pero con otras y derrepente ya no :S.
en fin lo que quiero saber es como usar if and or else ! ==
if comprueba si una expresion es verdadera:
EJ:
[gml]if (numero == 4) //Lo que hace aqui es comprobar si la variable numero es igual a 4, si es asi, entonces se ejecuta el codigo[/gml]
and (tambien se escribe &&) une dos condiciones
EJ:
[gml]if (numero == 4 and nombre="pedro") //Para que esto sea verdadero: Numero tiene que ser 4 y nombre tienen que ser pedro, si nombre es por ejemplo "Javier", entonces ya no se va a cumplir. O si numero no es 4, entonces tampoco se va a cumplir[/gml]
or (tamien escrito ||) es parecido, pero en este caso solo uno de los dos tiene que ser verdadero
EJ:
[gml]if (numero == 4 or numero == 5) //En este caso, uno de los dos tiene que ser verdadero para que se cumpla, ya sea que numero sea igual a 4 o numero sea igual a 5, si numero no es ni 4 ni 5 (ej:3) entonces ya no se va a cumplir la condicion[/gml]
el == es propio de otros lenguajes como C++, php, java.... y es que en esos lenguajes es muy diferente el = a ==.
El primer caso "=" asigna un valor
EJ:
[gml]numero = 4; //En este caso, le estamos diciendo al sistema que numero sera igual a 4[/gml]
el segundo caso "==" es para comprobar
EJ:
[gml]if (numero == 4) //Comprobara si el numero es 4[/gml]
En c++ por ejemplo si compiamos:
[gml]if (numero = 4)//Entonces ya le estamos diciendo al sistema que numero sera 4 y siempre sera verdadera esta funcion. [/gml]
Sin embargo con game maker no hay diferencia entre el = y el ==
el != pregunta si "no es igual"
EJ:
[gml]if (numero != 4) //En este caso, esta comprobacion solo sera verdadera si numero no es 4 (ej: 3, 5, 6)[/gml]
hay otro que es el not
EJ:
[gml]if not(numero == 4)//En este caso tiene la misma funcion que el anterior, pero la diferencia es cuando a?adimos and, o or[/gml]
[gml]if (numero != 4 and nombre == "Javier")[/gml]
Esto es diferente a decir:
[gml]if not (numero == 4 and nombre == "Javier")[/gml]
este ultimo es equivalente a:
[gml]if (numero != 4 and nombre != "Javier")[/gml]
El else (si no...), es para hacer otra funcion cuando la principal ha salido falsa
EJ:
[gml]if (numero == 4){
show_message("Tu numero es 4");
}else{
show_message("Tu numero no es 4");
}[/gml]
Leido seria algo como:
Si numero es igual a 4 entonces muestre el mensaje "Tu numero es 4" si no muestre el mensaje "Tu numero no es 4"
En fin... esto es una teoria un poco mas larga, tambien hay que mirar los "<, >, <=, >=" que son "menor que", "mayor que", "menor o igual que", "mayor o igual que" respectivamente.
Esos funcionan con valores numericos
EJ:
[gml]if (numero >= 4){
show_message("Tu numero es mayor o igual a 4");
}else{
show_message("Tu numero es menor a 4");
}[/gml]
--
En fin... con el tiempo veras que esto es muy facil XD
Saludos
gracias por la explicacion si pudiera cambiar de carrera lo haria. y pues he estado practicando :D