Jump to content

Capitulo 1 lua


Santy!.

Recommended Posts

Bueno antes de empezar aclarare que esto lo ire asiendo a base de 1 par de libros q lei y tengo en mi pc y ire sacando lo mas impotante y resumiendo de todos 1 poco para que quede entendible y completo.

lo hago aca por que no se donde hacelo. :D

 

¿Que es lua?

 

Lua, es un lenguaje de programación de scripting y por lo tanto, necesita de un intérprete. La diferencia con los lenguajes compilados como C, es la sencillez que presenta a la hora de hacer pruebas y de programar, por varias razones:

 

Su sintaxis es muy sencilla, todo está agrupado en módulos con diversas funciones útiles.

No hace falta inicializar nada, ya todo viene inicializado en el intérprete por alguien que se preocupó en hacerlo (osea yo).

La más importante, al ser un lenguaje de scripting, no hacen falta makefiles, ni compilar el código, ni todo ese rollo, basta con un archivo de texto plano con extensión ".lua" para que el intérprete haga su trabajo.

Como punto adicional, si hay algún error de sintaxis o "gramatical", el mismo intérprete se encarga de mostrarlo por pantalla, indicando el archivo, la línea, y el error.

 

¿Que programas preciso?

 

puede ser notepad++ o similar

y lua platyer para el cual es 1 emulador el cual descargaremos

Debes iniciar sesión para ver el contenido del enlace en esta publicación.

 

ahora veremos como emular erchivo por eso abriremos y aremos 1 pequeño script con notepad y le deven poner su extencion "lua"

 

Empezamos a formar 1 script de pruebas:

 

rojo = Color.new(255, 0, 0)		    /declaramos el color
while true do					 / comienzo
   screen: print(200, 50, "Hola Mundo", rojo)	 /ftraset
   screen.waitVblankStart()		  
   screen.flip()					  
end				 /cerramos scritpt

Imagen enviada

 

 

Bueno espero que os aya gustado y para la próxima veremos variables!.

Saludos Santy,

Link to comment
Share on other sites

Capitulo 2 variables

 

¿Cuáles son variables?

 

Trabajamos con un ordenador y tenemos muchos valores para tener presente cuando los necesitamos más tarde. Estos datos serán almacenados en la memoria de ordenadores en un cierto lugar. Como este será hecho y donde esta memoria está localizada ... no tenemos que saber(conocer) este mientras trabajamos con LUA.

Sin embargo, para ser capaz de trabajar con estas variables más tarde les damos nombres. Con estos nombres recuperaremos los datos en cada vez los necesitamos.

Variables - Nombres

 

 

No importa como llamamos una variable. Sin embargo, hay algunas reglas de considerar.

 

Un nombre variable tiene que comenzar con una carta (carácter) o subrayar.

El mayúsculo y el minúsculo de un nombre de una variable son muy importantes: el player1 no es igual a Player1

Sólo caracteres, números subrayar son permitido.

 

 

Variables - Alcance de aplicación

 

 

Hay existencia de áreas, donde las Variables son vaild. Los motivos son diferentes pero es provechoso. En muchos lenguajes de programación hay sopes diferentes de la existencia de aplicación.

 

El LUA ofrece sólo dos (por suerte).

 

Global
Local

 

Los Globalvariables existen en todas partes.

 

Las variables locales sólo existen en el bloque donde ellos han sido creados y ellos existen mientras el bloque es activo. Sólo tenemos que considerar una excepción. Este será explicado en el capítulo " Functions ".

 

Algo sobre bloques:

 

En el lenguaje de programación LUA todo será hecho dentro de bloques. Ellos comienzan con una declaración, seguida de un bloque de asignaciones y finalmente la palabra "final" (otra vez con una excepción; explicado más tarde). Los bloques también pueden ser insertados y existiendo dentro de otros bloques.

 

A menudo encontraremos otra vez bloques. Sin embargo, trataré de visualizar la diferencia entre local y global.

 

Imagine una casa hecha del cristal. Usted puede mirar(examinar) el cristal en una dirección sólo. Desde fuera de ello no es posible para mirar dentro de la casa, que debería ser nuestro bloque. Las variables, llamadas como local dentro de nuestra casa del cristal, no pueden ser vistas desde fuera de la casa. Sólo las variables sin la palabra local delante de ello pueden ser vistas desde fuera de nuestra casa. Tales variables son llamadas globales.

 

Para el compilador una variable local será identificada, cuando esto tiene la palabra local delante de ello.

 

A propósito, local y end son dos de las palabras reservadas en LUA.

 

 

 

Tipos (valores) de Variables

 

 

Las variables almacenan valores. Estos valores pueden ser de la clase diferente. Ellos pueden ser números, caracteres (cuerdas), condiciones (verdadero o falso) etc.

 

Allí existen:

 

 

Nil	(nada) (vacío) (no existiendo)
números
charcacters (cartas, palabras, etc.)
condiciones (verdaderas/falsas) (sí/no) (1/0)
funciones (como  caso especial	de un bloque)

Dos otros existen, pero arriba mencionado debería ser bastante para este momento.

 

NIL

 

Incluso no hay casi nada para contar sobre la NIL, somos felices que esto existe. Cada vez queremos trabajar con una variable que no existe, recuperaremos la NIL de valor. Nuestro ordenador no se estrella, no hará nil extraño o seguirá en el error.

 

Si queremos suprimir una variable, adjudicamos(asignamos) la nil de valor a esta variable. Ahora, nuestra variable no existe más.

 

Asignación:

 

Hasta ahora, hemos aprendido ya muchas variables. Pero no, como asignar o adjudicar(asignar) un valor a una variable. Cuando tenemos un valor ahora, haremos así

 

 

willi234 = nil

"El =" es llamado el operador de la asignación (asignación). Con este operador nuestra variable willv234 será adjudicada(asignada) a la NIL de valor. Nuestra variable ha sido suprimida.

Números

 

 

Como cada uno sabe(conoce), necesitamos números para el cálculo. Por lo tanto este tipo es llamado "el número". Casi en todos los lenguajes de programación hay diferencias que existen en el tipo "number". En LUA, no tenemos ninguna diferencia.

 

Asignación:

 

_omasAlter = 74
	willisIntelligenz = 105
	meinGutHaben = -55.26
	einHalbMalWurzel2 = 0.707107

 

¿Cuál es este código sobre?

 

Profesor universitario' usa una coma para el punto decimal de números. Use el punto.

Para usar números negativ (como mi equilibrio) usan un menos en el frente.

Asignación con el operador =

Notas diferentes de nombres para variables.

 

 

Caracteres (Cuerdas)

 

Sólo no tenemos números para trabajar con. Por ejemplo también queremos escribir algo en la pantalla. Para este fin tenemos realmente otro Tipo: "string"

 

Una cuerda es un encadenamiento de valores del ASCII (¿¿qué demonios es este???)

 

Hacerlo fácil: éstos son números también. Cuando los hemos rehusado como una cuerda, nuestro ordenador sabe que él tiene que contar con ellos.

 

Un carácter puede ser representado por un valor de número entero que es almacenado en la variedad de 0 a 255.

 

Por ejemplo: un carácter será almacenado y dentro de la memoria tenemos el número entero el número 56. Este es igual al carácter "D"

 

Para esta compilación el ordenador tendrá el acceso al ASCII [1 cuenta(proyecto de la ley,billete de banco) - mesa(tabla).

 

Un encadenamiento del número 76, 85, y 65 significará LUA después de la compilación.

 

 

Asignación:

 

ommasName		 = "Elfriede von der Heiden"
	willisStammKneipe = 'Zum Treffpunkt'
	varTyp1		   = "function"
	meineGeschichte   = [[ geboren	: ja  Geburtsort : keine Ahnung  ]]

¿Cuál es este código sobre?

 

Las cuerdas serán empotradas dentro de comillas. Usted puede usar la doble cotización(cita) así como la cotización(cita) sola (que será de benfit más tarde). Sin embargo, esto tiene que ser la misma clase de la cotización(cita) al principio y al final.

 

También podemos incluir el texto en [[ y ]]. Con estos soportes seremos capaces de seguir nuestro texto en una nueva línea.

 

Asignación con el operador =

 

Las cuerdas y los números pueden ser concadenados muy fácilmente. Para este fin tenemos que usar dos puntos. No tenemos que convertir el número en una cuerda.

 

Ejemplo:

 

 

print( "Player"..5 )

 

Condiciones

 

 

Con condiciones tenemos realmente un tipo de variable que sólo sabe(conoce) 2 condiciones. Este tipo es llamado "boolean" y puede ser designado de modos diferentes como mostrado encima. Con LUA usamos verdadero y falso.

 

Asignación (Asignación):

 

williBesoffen = true
	omaBoese = false
	williesFrauBoese = true

¿Cuál es este código sobre?

Una Asignación será hecha con las palabras reservadas true o false

 

Funciones

 

Las funciones son variables que hacen algo cuando los llaman. A menudo seremos contratados en la utilización de funciones más tarde.

 

Las funciones serán comenzadas cualquiera con

 

 

Cuenta = function()
	-- o con
	function Cuenta()

y ellos serán terminados con

 

end

Como mostrado encima, vemos que hay dos possibilites que existen para adjudicar(asignar) un valor al tipo "function" variable. Ambos son equivalentes.

 

Entre el principio y el final de una función hay bloque que describe lo que tiene que ser hecho.

 

Ahora, vendremos a la excepción de local.

 

Asunción: tenemos realmente un bloque que es una función global. Dentro de este bloque tenemos realmente una variable local, que será usada de esta función. Después de ejecutar este bloque la variable (local) todavía existe dentro de la función, pero sólo dentro de esta función.

 

Ejemplo:

 

do				 -- el Principio del bloque
	  local cnt = 1	-- adjudicado(asignado) para este bloque
	  function inc ()  -- creación de una función
		cnt = cnt + 1  -- variable cnt será usado
		return cnt	 -- devolver el valor para comprobación
	  end			  -- Final de función
	end				-- Final de bloque

	print(inc())	   --> Salida 2
	print(cnt)		 --> Salida nil

Esta variable no es sólo una copia que será transferida a la función. El Apperently esto es la variable sí mismo, que vive en el twilightzone entre global y local.

 

(Mi) prueba, que esto no es una copia, pero la variable original:

 

do				
	  local cnt = 1	
	  function inc ()  
		cnt = cnt + 1  
		return cnt	
	  end			  
	  cnt = 5		  -- Valor será cambiado después de crear la función
	end				

	print(inc())	   --> Salida 6

 

Tables

Las tables son variables que almacenan otras variables dentro de ellos.

 

Variable - table de Tipo

 

La variable de tipo "table" hace el funcionamiento con columnas más fácil. Tenemos el possibilty para arreglar nuestro caos o trayendo a la luz en el oscuro. ;)

 

Este tipo de la variable nos contratará durante mucho tiempo. Primero de todo una breve perspicacia.

 

Asignación:

 

 

meinTable = {}

¿Cuál es este código sobre?

 

Ya sabemos(conocemos) el nombre y el operador para una asignación.

 

Una table será encerrada en { para el principio y } para el final.

 

En medio {y} podemos almacenar variables. En nuestro ejemplo no hay ningunos valores dentro {y}. Entonces tenemos una table vacía.

 

Un ejemplo corto sin explicación. No se preocupe, este seguirá más tarde. ;)

 

Asignación:

 

meinTable  = { 1, 4, "Willi", true, function() hacerAlgo end}
	meinTable2 = { X= 255 , Y =10, velocity =88)

la lectura en voz alta los valores:

 

meinTable[1]   -> 1
meinTable[2]   -> 4
meinTable[3]   -> "Willi"
meinTable[4]   -> true
meinTable[5]   -> function() hacerAlgo end
meinTable2.X   -> 255
meinTable2.Y   -> 10
meinTable2.velocity	   -> 88

Cuando podemos ver, hay dos clases diferentes de la existencia de mesas(tablas). Un con números y otro con nombres.

Uno más comentario: las tables pueden incluir otras tables como variables.

Dentro de la table no es esencial tener que buscar un arreglo bueno y apropiado cuando será fácil vivir con este caos dentro de una table.

Este era una introducción corta y breve de variables usadas para programar en LUA. Seguir previo con el aprendizaje de LUA, me gustaría (mejor tienen a) indicar(advertir) que hice un fraude. Un fraude sobre el camino escribo los nombres de variables.

Hemos aprendido que no tenemos ninguna limitación en el nombramiento de variables aparte de algunas restricciones.

 

Sin embargo, es aconsejable hacer un arreglo para este. Podemos imaginar muchos arreglos.

 

Bueno espero que os aya gustado y la proxima vamos con funciones.

Saludos Santy.

Link to comment
Share on other sites

  • 1 month later...
  • Dilong locked this topic
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...