Lua mini tutorial(no completo)

Solo disponible en BuenasTareas
  • Páginas : 12 (2819 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de agosto de 2012
Leer documento completo
Vista previa del texto
primero que nada, que es lua?

wikipedia:
wikipedia - Lua es un lenguaje de programación imperativo, estructurado y bastante ligero que fue diseñado como lenguaje de script con una semántica extendible. El nombre significa “luna” en portugués y gallego.


En otras palabras y para nosotros, lua es un lenguaje de programacion bastante eficiente que nos permite crear scripts para open tibia.¿que son variables?

las variables (como en matemática) son valores cambiantes. nosotros como programadores tenemos el poder de decidir que tendra esa variable como valor.
en lua no hace falta declarar las variables antes de poder asignarles un valor.
una variable se puede crear de la siguiente manera:
Código:

variable = 0

a estas variables les podemos poner el nombre que queramosMENOS algunas palabras reservadas del lenguaje lua.

¿que es una funcion?

como el nombre lo dice, una función es un conjunto de acciones o una sola, al que se le asigna algún propósito.
En nuestro caso, saber si un jugador ya realizo algún quest, si tiene tal nivel, etc.

dividiremos las funciones en 3 secciones.
principales: las que estan presente que todo script de modo predeterminadoy con caracter obligatorio.
secundarias: las que estan creadas en c++, en las sources de nuestro servidor, pero no es obligatorio usarlas en nuestro script.
personales: las creadas por nosotros mismo o las que están el data/lib o global.lua, en pocas palabras las que podemos modificar sin tocar las sources.

funciones principales


onUse(cid, item, fromPosition, itemEx,toPosition)
onLogin(cid)
onLogout(cid)
onAdvance(cid, skill, oldLevel, newLevel)
onStatsChange(cid, attacker, type, combat, value)
onDirection(cid, old, current)
onOutfit(cid, old, current)
onSendMail(cid, receiver, item, openBox)
onReceiveMail(cid, sender, item, openBox)
onTradeRequest(cid, target, item)onTradeAccept(cid, target, item, targetItem)
onJoinChannel(cid, channel, users)
onLeaveChannel (cid, channel, users)
onLook(cid, thing, position, lookDistance)
onThink(cid, interval)
onTextEdit(cid, item, newText)
onReportBug(cid, comment)
onAreaCombat(cid, tileItem, tilePosition, isAggressive)
onPush(cid, target)onTarget(cid, target)
onFollow(cid, target)
onCombat(cid, target)
onAttack(cid, target)
onCast(cid, target)
onKill(cid, target, lastHit)
onDeath(cid, corpse, deathList)
onPrepareDeath(cid, deathList)
onThink(interval, lastExecution, thinkInterval)
onStartup()
onShutdown()onRecord(current, old, cid)
onTimer()
onStepIn(cid, item, position, lastPosition, fromPosition, toPosition, actor)
onStepOut(cid, item, position, lastPosition, fromPosition, toPosition, actor)
onEquip(cid, item, slot)
onDeEquip(cid, item, slot)
onAddItem(moveItem, tileItem, position, cid)
onRemoveItem(moveItem, tileItem, position, cid)onCastSpell(cid, var)
onSay(cid, words, param, channel)
onUseWeapon(cid, var)


funciones secundarias y personales

//get*
getCreatureHealth(cid)
getCreatureMaxHealth(cid)
getCreatureHideHealth(cid)
getCreatureMana(cid)
getCreatureMaxMana(cid)
getCreatureSpeakType(cid)
getCreatureMaster(cid)
getCreatureSummons(cid)
getCreatureOutfit(cid)getCreaturePosition(cid)
getCreatureLookDirection(cid)
getCreatureName(cid)
getCreatureSpeed(cid) //TODO
getCreatureBaseSpeed(cid) //TODO
getCreatureTarget(cid) //TODO
getCreatureByName(name)
getCreatureSkullType(cid)
getCreatureCondition(cid, condition[, subId]) //TODO
getCreatureNoMove(cid) //TODO
getMonsterInfo(name)
getMonsterHealingSpells(name) //TODO...
tracking img