• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    (Action) pedido/ Vip Medal

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

    1Resuelto (Action) pedido/ Vip Medal el Dom Dic 11, 2016 10:38 pm

    Hola amigos... hoy le pido por favor que si fueran tan amable de ayudarme;

    yo integre a mi server un sistema vip (Talk)
    funciona a la perfección.. pero este systema funciona por / (getPlayerStorageValue(cid, 13545)

    entonces necesito el script de vip medal/¿Que es?
    es un action que otorga a un item la capasidad de dar dias vip al player..
    necesito ese script que integre (getPlayerStorageValue(cid, XXXX)

    -Necesito que tenga el Mensaje
    -Los días

    Ver perfil de usuario

    2Resuelto Re: (Action) pedido/ Vip Medal el Lun Dic 12, 2016 11:27 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    data/actions/actions.xml

    Código:
    <action itemid="5807" script="other/vip.lua"/>
    <action itemid="5806" script="other/vip.lua"/>
    <action itemid="5805" script="other/vip.lua"/>
    <action itemid="5785" script="other/vip.lua"/>


    data/actions/scripts/other/vip.lua


    Código:

    function onUse(cid, item, fromPosition, itemEx, toPosition)
    local cfg =
    {
    [5807] = {amount = (getPlayerStorageValue(cid)+30), days = 30}, -- Bronze Goblet
    [5806] = {amount = (getPlayerStorageValue(cid)+90), days = 60}, -- Silver Goblet
    [5805] = {amount = (getPlayerStorageValue(cid)+180), days = 180}, -- Golden Goblet
    [5785] = {amount = (getPlayerStorageValue(cid)+360), days = 360} -- Medal of Honor
    }

    local status = 10000
    local storage = getPlayerStorageValue(cid, status)
    if (storage == -1) then
    doSendAnimatedText(getCreaturePosition(cid), "+".. cfg[item.itemid].days .." Days", TEXTCOLOR_LIGHTBLUE)
    doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS)
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are now a VIP Member for ".. cfg[item.itemid].days .." days.")
    setPlayerStorageValue(cid, status, cfg[item.itemid].amount)
    doRemoveItem(item.uid)
    else
    doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are already a VIP member.")
    end
    return true
    end

    data/globalevents/globalevents.xml

    Código:
    <globalevent name="checkVip" interval="86400000" script="removeVipDays.lua"/>
    <globalevent name="removeVip" interval="36000000" script="removeVip.lua"/>

    data/globalevents/scripts/removeVipDays.lua

    Código:
    local storage = 10000
    function onThink(cid, item, fromPosition, toPosition)
    for _, name in ipairs(getOnlinePlayers()) do
    local player = getPlayerByName(name)
    if getPlayerStorageValue(player, storage) > 1 then
    setPlayerStorageValue(player, storage, getPlayerStorageValue(player) - 1)
    end
    end
    end

    data/globalevents/scripts/removeVip.lua

    Código:
    local storage = 10000
    function onThink(cid, item, fromPosition, toPosition)
    for _, name in ipairs(getOnlinePlayers()) do
    local player = getPlayerByName(name)
    if getPlayerStorageValue(player, storage) == 1 then
    setPlayerStorageValue(player, storage, 0)
    end
    end
    end



    Ver perfil de usuario http://www.tibiaface.com

    3Resuelto teste el Mar Dic 13, 2016 11:23 am

    Muchas gracias Good Maya ... tengo un unico problema que quisas es muy simple para ti pero en este script

    Código:

    function onUse(cid, item, fromPosition, itemEx, toPosition)
    local cfg =
    {
    [5807] = {amount = (getPlayerStorageValue(cid)+30), days = 30}, -- Bronze Goblet
    [5806] = {amount = (getPlayerStorageValue(cid)+90), days = 60}, -- Silver Goblet
    [5805] = {amount = (getPlayerStorageValue(cid)+180), days = 180}, -- Golden Goblet
    [5785] = {amount = (getPlayerStorageValue(cid)+360), days = 360} -- Medal of Honor
    }

    local status = 10000
    local storage = getPlayerStorageValue(cid, status)
    if (storage == -1) then
    doSendAnimatedText(getCreaturePosition(cid), "+".. cfg[item.itemid].days .." Days", TEXTCOLOR_LIGHTBLUE)
    doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS)
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are now a VIP Member for ".. cfg[item.itemid].days .." days.")
    setPlayerStorageValue(cid, status, cfg[item.itemid].amount)
    doRemoveItem(item.uid)
    else
    doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are already a VIP member.")
    end
    return true
    end

    No se muy bien en que parte va el numero de Storage.. probe en diferentes parte ... HELP
    getPlayerStorageValue(cid, status)


    Si mi StorageValue es 13545 como quedaria?

    Ver perfil de usuario

    4Resuelto Re: (Action) pedido/ Vip Medal el Mar Dic 13, 2016 12:46 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    tenes que modificar en todo los script de arriba el 1ooo0



    Ver perfil de usuario http://www.tibiaface.com

    5Resuelto Re: (Action) pedido/ Vip Medal el Mar Dic 13, 2016 1:20 pm

    Me tira este error en la consola
    [13/12/2016 14:22:32] [Error - Action Interface]
    [13/12/2016 14:22:32] data/actions/scripts/VIP/diasvip.lua:onUse
    [13/12/2016 14:22:32] Description:
    [13/12/2016 14:22:32] data/actions/scripts/VIP/diasvip.lua:4: attempt to perform arithmetic on a boolean value
    [13/12/2016 14:22:32] stack traceback:
    [13/12/2016 14:22:32] data/actions/scripts/VIP/diasvip.lua:4: in function <data/actions/scripts/VIP/diasvip.lua:1>

    Ver perfil de usuario

    6Resuelto Re: (Action) pedido/ Vip Medal el Mar Dic 13, 2016 8:58 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    itenta con este


    Código:
    function onUse(cid, item, fromPosition, itemEx, toPosition)

    local config={

    removeOnUse = "yes" -- remover quando usar ("yes" or "no")

    }

    local days = 30 -- dias que serão adicionados

    local daysvalue = days * 24 * 60 * 60

    local storageplayer = getPlayerStorageValue(cid, aqui su storange)

    local timenow = os.time()

    if getPlayerStorageValue(cid, aqui su storange) - os.time() <= 0 then

    time = timenow + daysvalue

    else

    time = storageplayer + daysvalue

    end

    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.")

    setPlayerStorageValue(cid, aqui su storange, time)

    local quantity = math.floor((getPlayerStorageValue(cid, aqui su storange) - timenow)/(24 * 60 * 60))

    doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))

    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "usted tiene ".. quantity .." dias de VIP restantes.")

    if (config.removeOnUse == "yes") then

    doRemoveItem(item.uid, 1)

    end

    return TRUE

    end

    donde diga aqui su storange coloque su storange de su vip



    Ver perfil de usuario http://www.tibiaface.com

    7Resuelto teste el Mar Dic 13, 2016 9:13 pm

    Muchas gracias Good Maya ... gracias por toda tu ayuda <3


    Very Happy Resuelto Gracias Very Happy


    Very Happy Resuelto Gracias Very Happy

    Ver perfil de usuario

    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.

     

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