• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    change vocation

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1default change vocation el Jue Ene 03, 2019 9:10 pm

    TheFlariuz

    TheFlariuz
    Miembro
    Miembro
    tengo un script para cambiar la vocacion pero al monento de que el pj de reconecta se regresa a la vocacion que tenia antes de usar el iten y la idea es que se mantenga


    Código:
    function onUse(cid, item, fromPosition, itemEx, toPosition)
    if getPlayerLevel(cid) >= 20 then
    if getPlayerVocation(cid) == 1 then
    doPlayerSetVocation(cid,6)
    doCreatureSay(cid, "You are now a Magician!", TALKTYPE_ORANGE_1)
    doRemoveItem(item.uid, 1)
    elseif getPlayerVocation(cid) == 2 then
    doPlayerSetVocation(cid,7)
    doCreatureSay(cid, "You are now a Priest!", TALKTYPE_ORANGE_1)
    doRemoveItem(item.uid, 1)
    elseif getPlayerVocation(cid) == 3 then
    doPlayerSetVocation(cid,8)
    doCreatureSay(cid, "You are now a Archer!", TALKTYPE_ORANGE_1)
    doRemoveItem(item.uid, 1)
    elseif getPlayerVocation(cid) == 4 then
    doPlayerSetVocation(cid,9)
    doCreatureSay(cid, "You are now a Warrior!", TALKTYPE_ORANGE_1)
    doRemoveItem(item.uid, 1)
    elseif getPlayerVocation(cid) == 5 then
    doPlayerSetVocation(cid,10)
    doCreatureSay(cid, "You are now a Warrior!", TALKTYPE_ORANGE_1)
    doRemoveItem(item.uid, 1)
    else
    doPlayerSendCancel(cid,"You need to be promoted in order to use this item.")
    end
    else
    doPlayerSendCancel(cid,"You don't have the required level to use this.")
    end
    return TRUE
    end

    Ver perfil de usuario

    2default Re: change vocation el Jue Ene 03, 2019 9:18 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    pues el scripts no presenta ni un error esta funcionando bien a noser que tuservidor tenga algun problema con el guardado de los player que no este tomando encuenta los cambios



    change vocation YNU5B25
    Ver perfil de usuario https://www.tibiaface.com

    3default Re: change vocation el Jue Ene 03, 2019 9:23 pm

    TheFlariuz

    TheFlariuz
    Miembro
    Miembro
    pero con la funcion doPlayerSetPromotionLevel(cid, 2) que es para la promotion si funciona y no se regresa

    Ver perfil de usuario

    4default Re: change vocation el Jue Ene 03, 2019 9:29 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    hmmm que raro pero seguramente es un problema en la funcion interna no esta guardando el cambio asi que se vuelve.

    Código:

    function onUse(cid, item, fromPosition, itemEx, toPosition)
            if getPlayerLevel(cid) >= 20 then
            if getPlayerVocation(cid) == 1 then
            doPlayerSetVocation(cid,6)
            doPlayerSave(cid)
            doCreatureSay(cid, "You are now a Magician!", TALKTYPE_ORANGE_1)
            doRemoveItem(item.uid, 1)
            elseif getPlayerVocation(cid) == 2 then
            doPlayerSave(cid)
            doPlayerSetVocation(cid,7)
            doCreatureSay(cid, "You are now a Priest!", TALKTYPE_ORANGE_1)
            doRemoveItem(item.uid, 1)
            elseif getPlayerVocation(cid) == 3 then
            doPlayerSave(cid)
            doPlayerSetVocation(cid,8)
            doCreatureSay(cid, "You are now a Archer!", TALKTYPE_ORANGE_1)
            doRemoveItem(item.uid, 1)
            elseif getPlayerVocation(cid) == 4 then
            doPlayerSave(cid)
            doPlayerSetVocation(cid,9)
            doCreatureSay(cid, "You are now a Warrior!", TALKTYPE_ORANGE_1)
            doRemoveItem(item.uid, 1)
            elseif getPlayerVocation(cid) == 5 then
            doPlayerSave(cid)
            doPlayerSetVocation(cid,10)
            doCreatureSay(cid, "You are now a Warrior!", TALKTYPE_ORANGE_1)
            doRemoveItem(item.uid, 1)
            else
            doPlayerSendCancel(cid,"You need to be promoted in order to use this item.")
            end
            else
            doPlayerSendCancel(cid,"You don't have the required level to use this.")
            end
            return TRUE
            end


    le integre una funcion

    doPlayerSave(cid)

    que es un funcion auxiliar



    change vocation YNU5B25
    Ver perfil de usuario https://www.tibiaface.com

    Contenido patrocinado


    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Permisos de este foro:
    No puedes responder a temas en este foro.

    Temas Recomendados×+

       

      BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).