guia komo hacer una quest

muy papa

« Older   Newer »
 
  Share  
.
  1. AntauriX
     
    .

    User deleted


    Como vi que no la pegabas pss aqui va xD

    primero q nada abrimos en map editor... y elejimos el cofre del quest.
    le hacemos click secundario, propiedades y luego unique id: 4000 ( es un ejemplo)
    elije el q quieras XD

    ya. luego vas a la carpeta data/actions/scripts

    y crea un archivo con el block de notas y guardalo commo quest.lua

    luego lo abres y escribe esto:

    CODE
    function onUse(cid, item, frompos, item2, topos)

    if item.uid == 4000 then
    queststatus = getPlayerStorageValue(cid,4000)
    if queststatus == -1 or queststatus == 0 then
    doPlayerSendTextMessage(cid,22,"Encontraste una DSM.")
    coins_uid = doPlayerAddItem(cid,3324,1)
    setPlayerStorageValue(cid,4000,1)
    end

    else
    doPlayerSendTextMessage(cid,22,"Este cofre esta vacio.")
    end

    return 0
    end


    miren

    CODE
    function onUse(cid, item, frompos, item2, topos)


    traducido seria: si el ittem unique id = 4000 entonces...

    CODE
    queststatus = getPlayerStorageValue(cid,4000)


    seria estadodelquest = estorage value es como para verificar si has hecho el quest, si lo hiciste a tu archivo char.xml se le va agregar este numero... te aconsejo q uses el mismo del unique id para q sea mas facil identificarlo.
    Entonces.. esa linea verifica si haz hecho o no el quest.

    CODE
    if queststatus == -1 or queststatus == 0 then


    Eso significa q si no tiene el storage value lo puede hacer.... traducido seria
    si el stado del quest ==-1 o el estado del quest = 0 entonces....

    entonces q?

    CODE
    doPlayerSendTextMessage(cid,22,"Encontraste una DSM.")


    entnces player recive un mensaje de texto diciendo "encontraste una DSM"

    obvio q no recives el mensaje solamente.. Y EL ITEM?? ME ROBARON!
    no...

    CODE
    coins_uid = doPlayerAddItem(cid,3324,1)


    aqui se pone el id del item y las cargas...

    CODE
    setPlayerStorageValue(cid,4000,1)


    luego eso... como dijimos antes el quest no se habia hecho... como verificamos si lo quiere sacar otrea vez? aqui se le poone el storagevalue... para marcalo como q ya lo hizo y no lo haga otra vez ;P este numero se va al archivo del char.xml como dije anteriormente

    CODE
    else
    doPlayerSendTextMessage(cid,22,"Este cofre esta vacio.")
    end


    traducido seria:
    O si no ( se refiere a q ya hizo el quest... q no cumple con las condiciones q puse arriba)
    doplayersendtextmessage = jugador recive mensaje de texto
    (cid, 22 , "Este cofre esta vacio." )

    CODE
    end


    siempre tienen q cerrar todo... para q tenga un orden... si no lo hacen bien... tendran errores

    CODE
    return 0
    end


    esto es mas complicado para explicar... solo ponganlo xDD.


    Ahora guarden eso
    vayan a la carpeta data/actions
    y busqn el archivo actions.xml
    abranlo con el block de notas y agregenle esto antes de

    eso seria ;p


    si quieren hacer mas quest haganlo asi

    <action uniqueid="4001" script="chests2.lua" />

    y asi... y vayan haciendo mas archivos... hay otra forma de hacerlo en 1 solo archivo pero es mas dificil de explicar.. y esto es suficiente xDD

    Salu2 AntauriX
     
    .
  2. Feliphex!
     
    .

    User deleted


    Umm Veo Que Nadie ha agradecido... Bueno Yo lo are Muchisismas Gracias Por Darte El Tiempo De Explicarlo De esa Manera Parte Por Parte ^^
     
    .
1 replies since 24/6/2006, 02:46   6346 views
  Share  
.