**Buenas, primero me presento: Mi nombre es Álvaro Royo, soy Ingeniero de Software y os voy a enseñar de una vez a tener una idea BÁSICA de programación para hacer quests.
(Esto no es un curso de quest, cursos de quests ya hay muchos.)
COMENCEMOS:
Lua: Es un lenguaje relativamente antiguo, bastante simple, usa pocos conectores como puntos y comas.
Se usa sobre todo en la industria de análisis de funciones por eso lo usan muchas empresas de videojuegos para sus programas.
Muchos de vosotros conocereis ya el Python, bien sabreis que el python es un lenguaje que asimila el sangrado. ¿sangrado?: ejemplo de codigo con sangrado y sin sangrado:
CON SANGRADO:
[php]
if a == 1 then
print "a es igual a 1"
end[/php]
SIN SANGRADO:
[php]
if a == 1 then
print "a es igual a 1"
end[/php]
¿Para que esta explicación?
Solo para llegar a la conclusión de que en LUA no hay que respetar el sangrado.
De todas formas siempre es aconsejable tener cierto orden en los códigos por si alguna vez necesitais realizar un programa extenso.
También añado: Lua no es un lenguaje solo para metin, lo digo por la gente que piensa que es muy limitado. Lua realiza CASI todas las mismas funciones que un lenguaje como C++ o JAVA.
Despues de una pequeña introducción sobre LUA, pasamos a la primera clase de programación:
Variable es una palabra que almacena un valor, me explico:
Yo puedo crear la variable texto y almacenar dentro de ella el valor "esto es un texto". Y acudir a ella en cualquier parte del código.
Ejemplo (LUA):
[php]locale texto = "esto es un texto"
print texto
# El programa en este caso imprimiría en pantalla: esto es un texto[/php]
Como pudieron ver ya vimos algo de LUA que deben saber: las variables hay que presentarlas con el prefijo locale y el nombre de la variable, como en el ejemplo.
Vale cualquier nombre pero no pueden poner espacios ni caracteres especiales como acentos, eñes, arrobas, asteristos etc... Para representar los espacios pueden usar barra baja: get_level
TIPOS DE VARIABLES:
Se pueden distinguir varios tipos de variables: string (texto), int (numero sin comas[ 1 ]), float (numero con comas [ 1,54 ]), boolean (verdadero o falso [ true - false ])
Para las quest en LUA solo nos servirán estas.
STRING: Tiene que ir entre "", por ejemplo "texto".
NUMERICO, FLOAT O INT: Simplemente el número.
BOOLEAN: Solo true o false ¡ En minusculas sin "" !
Los tipos de variable son importantísimos ya que si no sabemos que tipo de variable nos devuelve una función, no sabremos con que podemos compararlo, ya que como es obvio no podemos preguntarlos si 1 es mayor que a...
Con las variables numéricas se pueden realizar operaciones matematicas, veremos las más simples por ahora:
SUMA: +
RESTA: -
MULTIPLICAR: *
DIVIDIR: /
[php]locale num = 5
print num + 4 # Esto seria igual a 9
print num - 3 # Esto seria igual a 2
print num * 5 # Esto seria igual a 25
print num / 5 # Esto seria igual a 1[/php]
Por supuesto disponemos de potencias, raices, logaritmos etc... pero no creo que quieran resolver nada parecido en Metin2. De todas formas todo esta en Google.
Lo segundo más importante que hay que saber en programación son las sentencias if y los bucles.
La sentencia if que en español seria si: si a es igual 1 haz esto.
En LUA el if tiene tres palabras: if, then y end
if [lo que comparamos] then
[lo que ocurre si es cierta la comparación]
end
Hace una comparación de una variable con otra o con un valor.
Para comparar en los if o bucles usaremos lo siguiente:
IGUAL A: ==
DISTINTO A: !=
MAYOR QUE: >
MENOR QUE: <
MAYOR O IGUAL A: >=
MENOR O IGUAL A: **