MesterLum Posted March 10, 2016 Report Share Posted March 10, 2016 Hola, buenas a todos, estuve viendo que en la sección de quest y/o LUA de este foro no estaba un capitulo de operadores lógicos (y si lo hay borren mi post). PD: ACLARO QUE ALGUNAS DEFINICIONES LAS SAQUE DE INTERNET POR QUE NO SABÍA DECIRLAS CON MIS PROPIAS PALABRAS. Bueno, primero que nada, ¿Qué es un operador lógico?. Los operadores relacionales son símbolos que se usan para comparar dos valores. Si el resultado de la comparación es correcto la expresión considerada es verdadera, en caso contrario es falsa. Por ejemplo, 8>4 (ocho mayor que cuatro) es verdadera, se representa por el valor true del tipo básico boolean, en cambio, 8<4 (ocho menor que cuatro) es falsa, false y tu te preguntaras, ¿Para qué coño me sirve esto en metin2?, bien la respuesta es: Cuando por ejemplo, iniciamos una quest con la siguiente sentencia: when login with pc.is_gm() and pc.get_level() >= 110 begin básicamente a qui estamos haciendo una expresión de tipo bool, en la que si esta es "true" entrara a la función, y en caso de que no se cumpla la expresión lógica no entrara. Tú diras... Mmmmh okey, ya entendí un poco de su utilidad, ¿Pero qué más puedo hacer? y la respuesta es... BASTANTES COSAS. Yo, en lo personal, las expresiones lógicas son uno de mis mejores aliados cuando hablamos de meterle un poco de razonamiento y limitar ACCIONES en un determinado programa. Os daré un mejor ejemplo de como darle un buen uso a los operadores lógicos... (quest completa) Debes iniciar sesión para ver el contenido del enlace en esta publicación. mira esta sentencía: if game.get_event_flag("Guerra_Jinno") == 1 and pc.get_empire() == 3 then Básicamente aqui estoy diciendo lo siguiente: Si game.get_event_flag("Guerra_Jinno") == 1 Y el pc.get_empire() == 3 entonces hacer lo siguiente: <EXPRESION> Es decir, con los operadores lógicos puedes LIMITAR las cosas para que sea más restringidas las acciones. Cabe mencionar que no solo existen los tipos de operadores que he puesto, tambíen existen una gran variedad como por ejemplo: OR ------ Si es por lo menos una de las acciones esta será un "true". AND ----- Ambos valores tienen que ser "True" para que te regrese un "True" XOR ----- (No sé su sintaxis para el LUA) Sí los valores son diferentes entonces retornara un "True" ETC... AQUI MÁS COMPLETO PARA EL QUE LE INTERESE SABER QUE VALORES RETORNAN: Debes iniciar sesión para ver el contenido del enlace en esta publicación. Bien chavos, esto es todo de momento por mí parte, no sé si le falte algo, y si le falta lo anexaré posteriormente... -Mecos HASTA LUEGO. DragonM2M, Jack Morgan, alkalo and 2 others 5 Link to comment Share on other sites More sharing options...
Johan™ Posted March 10, 2016 Report Share Posted March 10, 2016 Operador and retorna verdadero si todas sus condiciones se cumplen 1 == 1 and 2 == 2 = True 1 == 1 and 2 == 1 = False Operador or retorna verdadero si por lo menos una de sus condiciones es verdadero 1 == 1 or 2 == 3 = True 1 == 2 or 2 == 4 = False esos son los mas utilizados. xd (((1 == 1) and (1 != 2)) and (2 >4)) or (90 < 80) = False Gracias por el aporte. Link to comment Share on other sites More sharing options...
MesterLum Posted March 10, 2016 Author Report Share Posted March 10, 2016 Operador and retorna verdadero si todas sus condiciones se cumplen 1 == 1 and 2 == 2 = True 1 == 1 and 2 == 1 = False Operador or retorna verdadero si por lo menos una de sus condiciones es verdadero 1 == 1 or 2 == 3 = True 1 == 2 or 2 == 4 = False esos son los mas utilizados. xd (((1 == 1) and (1 != 2)) and (2 >4)) or (90 < 80) = False Gracias por el aporte. Tienes razon, se me olvido mencionar los tipos de valores y que retornara... YA LO ANEXO, gracias. Link to comment Share on other sites More sharing options...
DragonM2M Posted March 11, 2016 Report Share Posted March 11, 2016 YA LO ANEXO, gracias. grande MesterLum +1 Link to comment Share on other sites More sharing options...
Recommended Posts