Aprendiendo un poco acerca de los scripts

Todo los scripts comienzan declarando una funcion x el ejemplo

Codigo
function onUse(cid, item, frompos, item2, topos)
A esto le llamaremos "open scripts" la parte que dice "function" es la palabra que indica que el script comienza "onUse" es el tipo de funcion q declara el scripts en est caso onUse se significa un objeto que puede usarse esto quiere decir que el scripts trata de un objeto, luego hay algo asi "(cid, item, frompos, item2, topos)" esto declara que esas palabras seran las q se pueden usar dentro de est scripts.

Luego el la linea siguiente el scripts declarara algo como esto :

Codigo:
if item.actionid == xxxx then
A esto le llamaremos "oraciones if".

Aqui esta declarando la funcion de una action, escribiremos todo igual exepto que donde dice "xxxx" pondremos el numero del action que queramos. Esta oracion para mi se leeria asi "si el actionid es = a xxxx entonces"
En la linea de abajo pondremos lo que pasara si la actionid se cumple por ejemplo:

Codigo:
doPlayerRemoveItem(cid,2160,5)
A esto le llamaremos "acciones if"

Se leeria mas o menos así "remover al player 5 objetos con el id 2160". Que declara quitar la cantidad de 5 objetos con el id 2160. Entoncs donde va 2160 colocariamos cualquier id que queramos y donde dice 5 la cantidad.

Si no quieres poner mas "oraciones if" que pueden ser no solo de remover cosas de los players.
Luego le seguen las oracions "elseif" ejemplo:

Codigo:
elseif item.actionid == xxxx then
doPlayerAddItem(cid,2160,10)
Estas dicen asi "En cambio si la actionid es xxxx entoncs se cumple lo siguiente"
Declara que esta oracion es un "if" pero diferente.
La linea de abajo funciona = que la de las oraciones "if"

Le siguen las oraciones "else" x ejemplo:

Codigo:
else
doPlayerSendCancel(cid, "xxxx.")
Que se leeria asi "si ninguna de las condiciones se cumple se le enviara el siguiente mensaje al player". Declara que se cancela la accion y se envia un mensaje al players

Esta ya seria la oracion final ahora tanto como abrimos el scripts debemos cerrarlo cerraremos el script de la siguient manera pondremos un "end" luego pondremos "end" x cada oracion q comienze x la palabra "if". Si seguimos todos los pasos tendriamos algo asi:

Codigo:
function onUse(cid, item, frompos, item2, topos)
if item.actionid == xxxx then
doPlayerRemoveItem(cid,2160,5)
elseif item.actionif == xxxx2 then
doPlayerRemoveitem(cid, 2160, 5)
else
doPlayerSendCancel(cid, "xxxx".)
end
end
Claro esta que cambiando las xxxx por el numero o la palabra que queramos segun la explicacion. Para agregar este script vamos a nuestra carpeta action de nuestro server y abrimos para editar el archivo "action" ahi ponemos esto:

Codigo: 
      <.action actionid="xxxx" script="xxxx.lua">

En donde dice script el nombre que le hayamos puesto al script y en donde dice actionid el numero que pusimos en las oracion "if" como actionid.

Guia echa por: Wizazu

2 comentarios:

Anónimo dijo...

me an quedado claras algunas cosas aunque no creo que intente acer scripts, parece dificil y aburrido

Anónimo dijo...

como hacer un script que saque unas potas del dp cuando me queden x potas?, tugbot, gracias :)

Publicar un comentario

Aqui puedes publicar algun comentario, duda, sugerencia, problema, agradecimiento o lo que quieras. Ten en cuenta que el comentario será moderado antes de salir publico.