OTHispano
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Ir abajo
ﻝhonLedit
ﻝhonLedit
Moderador
Mensajes Mensajes : 312
http://www.otsuporter.com/

guia para scriptes Empty guia para scriptes

Mar Sep 06, 2011 3:35 pm
Esto es solo ara black tibia by Iron-skanet me yeba mas de 2 horas aser esta guia wueno la tenia guardada en la pc y quise compartirla con usteses Very Happy amm me meresco mucho rep por esoto amm si les gusto o si les funsiono no si les va a halar amm depositen rep Very Happy hojala me agan scripter o spripter por esto ese es mi sueño aparte de ser como misael Very Happy luego are una de mapers y sprites y asi susesiva mente si quieren ver la segunda parte comenten y den rep Very Happy

amm no Digo que la guia es mia si no que la tenia en la pc ok
Guia basica de Script

Simbolos mas usados.

Comparacion
> indicara que el valor de la izquierda es mayor al de la derecha.
< indicara que el valor de la derecha es mayor al de la izquierda.
>= indicara que el valor de la izquierda es mayor o igual al de la derecha.
<= indicara que el valor de la derecha es igual o mayor al de la izquierda.
== indicara que ambos valores son iguales.
~= indicara que ambos valores no son iguales.

Calculos
= esto ara que un valor pase a ocupar otro valor.
- calculo resta, tambien se usa para dar un valor negativo.
+ calculo suma.
* calculo multiplicacion.
/ calculo division.
Puntuaciones
. se usa para muchas cosas, una de sus principales funciones en lua es definir un parametro de una funcion y/o valor.
, se usa para muchas cosas, una de sus principales funciones en lua es separar parametros de una funcion y/o valor.

Parentesis
{ } abre y cierra una tabla.
( ) abre y cierra los parametros de una funcion y/o valor.
[ ] se usa para varias cosas, una des sus principales funcion en lua es abrir y cerrar subparametros en una funcion y/o valor.
Comillas
" " se usa para introducir texto en nuestra operacion.
' ' se usa para introducir texto en nuestra operacion.
si las comillas no se cierran correctamente esto dejara nula la operacion.
\ se usa para anular una comilla.

ejemplos:

Código:

nivel del player = variante
el valor "nivel rdel player" pasa a tomar el valor de una variante que luego explicare como hacer.


Código:
nivel requerido = 50
el valor "nivel requerido" pasa a tomar el valor de 50.


Código:
nivel del player > nivel requerido
si el nivel del player es mayos a .

Código:
nivel del player < nivel requerido
si el nivel del player es menor a ...

Código:
nivel del player >= nivel requerido
si el nivel del player es mayor o igual a ...

Código:
nivel del player <= nivel requerido
si el nivel del player es menor o igual a ...

Código:
nivel del player == nivel requerido
si el nivel del player es igual a ...

Código:
nivel del player ~= nivel requerido
si el nivel del player no es igual a ...

Código:
posicion = {x = 1000, Y = 1000, z = 7}
en este ejemplo tenemos varias cosas presentes, como el valor "posicion" pasa a tomar el valor indicado en la tabla, en la cual los parametros tambien pasan a tomar un valor indicado con "=", y los cuales estan separados por una coma ",".

Código:
valor1 = {mensaje = "Hola", color = 15}
doPlayerSendTextMessage(cid, valor1.color, valors1.mensaje)
el valor1 pasa a tomar el lugar de nuestra tabla, la cual tienes sus parametros, luego hacemos un llamado al valor1, separando sus parametros con un punto ".".

Código:
doPlayerSendTextMessage(cid, "Hello i\'m alejandro", 15)
en los casos que nuestro texto debe llevar una comilla por cosa de estetica anularemos la comilla con un "\", y nuestra comilla sera mostrada.

Código:
valor = 1 + 1
valor = 2 - 1
valor = 5 * 1
valor = 9 / 3

Código:
valor1 = 50
valor2 = 90
valor total = valor1 + valor2
ejemplo de calculos haciendo llamados a valores asignados.

Palabras Claves mas usadas

function dara inicio a nuestra funcion.
if pone una condicion a un evento.
else es la contradiccion de nuestra condicion.
elseif es la contradiccion de nuestra condicion, pero a la vez crea una nueva condicion.
and agrega una condicion a un if, la cual debe ser cumplida junto con el.
or es una condicion que se agrega a un if, la cual a la ves en una contradiccion.
end finaliza una function y/o un if.
local es un valor que puede ser llamado en cualquier momento de nuestra operacion.
then si se cumple la condicion da inicio a la serie de eventos.
not contradiccion a un if.

cada if, elseif debe llevar un then.
y cada if, function debe llevar su end.

ejemplos

Código:
function onUse(parametros)
hacer algo....
end
una funcion.

Código:
function onUse(cid, item, frompos, item2, topos)
if item.itemid > 2000 then
hacer algo....
elseif item.itemid < 2000 then
hacer algo....
end
end

notece en este ejemplo que cada if y elseif lleva un then y que por cada function y/o if tenemos un end, tambien regresemos a los simbolos basicos y notece que item.itemid
es un parametro del valor item, y que tenemos presente comparaciones.

Código:
function onUse(cid, item, frompos, item2, topos)
local nivel = getPlayerLevel(cid)
if nivel > 1 and nivel < 8 then
hacer algo....
elseif nivel > 8 and nivel < 20 then
hacer algo....
else
hacer algo....
end
end

en este ejemplo tenemos presente un valor local, al cual hicimos llamados varias veces en la operacion, tambien tenemos presente la palabra clave and la cual usamos para cumplir dos condiciones, tambien esta presente un else que es lo que ocurrira si no se cumple las condiciones.

Código:
function onUse(cid, item, frompos, item2, topos)
local nivel = getPlayerLevel(cid)
if nivel == 8 or nivel == 20 then
hacer algo....
else
hacer algo....
end
end
tenemos presente un or.

Código:
function onUse(cid, item, frompos, item2, topos)
if not isPlayer(cid) == 1 then
hacer algo....
else
hacer algo....
end
end
ejemplo de como usar un not.


Funciones

la funcion es lo que desencadenara nuestro script, es lo que dara inicio a una seria de eventos, cada funcion debe llegar su resprectivo end.
tambien se le llama funcion a loes eventos que abran dentro de nuestra funcion, ejemplos.

Código:
getPlayerFood(cid)
getPlayerHealth(cid)
ellos no necesitan un end

Tipos de funciones

Movements

Código:
function onStepIn(cid, item, pos)
end
se usa cuando quieres que al caminar sobre un objeto ocurra algo.
Code:
function onStepOut(cid, item, pos)
end
se usa cuando quieras que caminar fuera de un objeto ocurra algo.
Code:
function onEquip(cid, item, slot)
end
se usa cuando quieres que al poner un item en tu cuerpo ocurra algo.

Código:

function onDeEquip(cid, item, slot)
end

se usa cuando quieres que al quitar un item desde tu cuerpo ocurra algo.

Código:
function onAddItem(moveitem, tileitem, pos)
end
se usa cuando quieres que al agregar un item en algun lugar ocurra algo.
Code:
function onRemoveItem(moveitem, tileitem, pos)
end

se usa cuando quieras que al quitar un item desde un lugar ocurra algo.

ejemplos:

Código:
function onStepIn(cid, item, pos)
if isPlayer(cid) == 1 then
doPlayerSendTextMessage(cid,22,"Hola.")
end
end

Código:

function onStepOut(cid, item, pos)
if isPlayer(cid) == 1 then
doPlayerSendTextMessage(cid,22,"Chao.")
end
end

Código:
function onEquip(cid, item, slot)
doPlayerAddHealth(cid, 100)
end

Código:
function onDeEquip(cid, item, slot)
doPlayerAddHealth(cid, -100)
end

Código:
function onAddItem(moveitem, tileitem, pos)
posicion = {x=1000,y=1000,z=7}
doSummonCreature("rat", posicion)
end

Código:
function onRemoveItem(moveitem, tileitem, pos)
posicion = {x=1000,y=1000,z=7}
doSummonCreature("rat", posicion)
end



Parametros presentes en las funciones

cid = es la criatura que ejecuta la accion, movimiento, etc.
item = en el caso de StepIn y StepOut, es el item que debes pisar o abandonar, en el caso de onEquip y onDeEquipes el item que te pondras o quitaras.
pos = es la pocision (sqm) donde esta el item (piso).
slot = en que parte del cuerpo te pondras el item, o desde donde lo quitaras.
moveitem = es el item que agregaremos o quitaremos desde la pos.
tileitem = es el item en el cual agregaremos o quitaremos otro item.

Subparametros

item.uid = si el item tiene unique id, se usara esto para verificarla.
item.itemid = se usara esto para verificar el id del item.
item.actionid = si el item tiene actiond id, se usara esto para verificarla.
moveitem.itemid =s e usara esto para verificar el id del item agregado o quitado.
tileitem.uid = si el item(sqm,piso) tiene unique id, se usara esto para verificarla.
tileitem.actionid = si el item(sqm,piso) tiene action id, se usara esto para verificarla.
tileitem.itemid = verifica el id del piso o sqm.
pos.x
pox.y
pos.z
pos.stackpos verifica la posicion x, y, z y el stackpos del item.


Como agregas estas funciones al archivo xml


Código:
<movevent event="StepIn" uniqueid="2050" script="nombre.lua" />
<movevent event="StepOut" uniqueid="2050" script="nombre.lua" />
uniqueid="2050" se usara para cuando queremos realizar un paso dentro o fuera de un item con unique id.
itemid="2050" se usara cuando queramos ejecutar un paso dentro o fuera de un item con determinada id.
actionid="2050" se usara cuando queramos ejecutar un paso dentro o fuera de un item con determinada action id.

Código:
<movevent event="Equip" itemid="2136" slot="necklace" script="nombre.lua" />
<movevent event="DeEquip" itemid="2136" slot="necklace" script="nombre.lua" />
podemos cambiar el slot por:
-head
-necklace
-backpack
-armor
-right-hand
-left-hand
-legs
-feet
-ring

Código:
<movevent event="AddItem" tileitem="1" uniqueid="2051" script="nombre.lua" />
<movevent event="RemoveItem" tileitem="1" uniqueid="2051" script="nombre.lua" />
uniqueid="2051" se usara cuando se agregue o quite un item con unique id.
itemid="2051" se usara cuando se agregue o quite un item con determinado id.

Por ahora es todo cuando me aga un tiempo, continuare la guia
saludos.


actionid="2051" se usara cuando se agregue o quite un item con action id.
avatar
♣✖►[MAP] Knox™◄✖♠
Mapper
Mensajes Mensajes : 13
http://collapser-mexico.mex.tl/

guia para scriptes Empty Re: guia para scriptes

Mar Sep 06, 2011 5:57 pm
D:
Volver arriba
Permisos de este foro:
No puedes responder a temas en este foro.