Ir para conteúdo

Featured Replies

Postado

.Qual servidor ou website você utiliza como base? 

 

The OTX Server Version: (2.100 - 6000) - Codename: (FINAL)

 

Qual o motivo deste tópico? 

 

Tenho um item personalizado em meu servidor (ID 5152). Gostaria de criar um script para ele que forneça o seguinte benefício (por 30 minutos) variando por vocação, por exemplo:

ED / MS: ML +5
Cavaleiro: todas as habilidades +30
Paladino: distância +15 e ml +3

Após o período de 30 minutos, as habilidades voltarão ao normal.

 

 

Resolvido por Bruno Rezende

Ir para solução
  • Respostas 5
  • Visualizações 652
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Bruno Rezende
    Bruno Rezende

    --<action itemid="XXXX" event="script" value="script.lua"/> local config = { level = false, remove = true, time = 30, -- Time is in minutes message = {MESSAGE_EVENT_ADVANCE, "You

Postado

Após os 30 minutos o item desaparecerá? Caso ele não desapareça, como o player voltaria a ter esse bônus dos 30 minutos?

                                                                                                               destinyshield.gif.9f031b59b026058f32a1c50da92ebe2a.gif  mídias sociais  destinyshield.gif.02fca81ab0615e050b2bcefd8a73a2e8.gif

                                                                                                                            talk to me              

                                                                                                                               vídeos           

                                                                                             

                                                                                                            LOGONORMAL.png.815b40b04ec583be88d8a1e2626fe430.png

                                                                                                           

                               

Postado
  • Autor
  Em 26/08/2021 em 20:22, Rogex Joyz disse:

Após os 30 minutos o item desaparecerá? Caso ele não desapareça, como o player voltaria a ter esse bônus dos 30 minutos?

Minha ideia é que, ao usar o item já desapareça (um scroll). E no script desse scroll tivesse uma contagem de 30 minutos (1.800.000 ms) 

Postado
  • Autor
  • Solução
--<action itemid="XXXX" event="script" value="script.lua"/>
local config = {
    level = false,
    remove = true,
    time = 30, -- Time is in minutes
    message = {MESSAGE_EVENT_ADVANCE, "You feel the power growing."},
    conditions = {}
}

-- Sorcerer
config.conditions[1] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(config.conditions[1], CONDITION_PARAM_TICKS, config.time * 1000 * 60)
setConditionParam(config.conditions[1], CONDITION_PARAM_STAT_MAGICLEVEL, 5)
setConditionParam(config.conditions[1], CONDITION_PARAM_BUFF, true)
-- Druid
config.conditions[2] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(config.conditions[2], CONDITION_PARAM_TICKS, config.time * 1000 * 60)
setConditionParam(config.conditions[2], CONDITION_PARAM_STAT_MAGICLEVEL, 5)
setConditionParam(config.conditions[2], CONDITION_PARAM_BUFF, true)
-- Paladin
config.conditions[3] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(config.conditions[3], CONDITION_PARAM_TICKS, config.time * 1000 * 60)
setConditionParam(config.conditions[3], CONDITION_PARAM_SKILL_DISTANCE, 15)
setConditionParam(config.conditions[3], CONDITION_PARAM_STAT_MAGICLEVEL, 3)
setConditionParam(config.conditions[3], CONDITION_PARAM_BUFF, true)
-- Knight
config.conditions[4] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(config.conditions[4], CONDITION_PARAM_TICKS, config.time * 1000 * 60)
setConditionParam(config.conditions[4], CONDITION_PARAM_SKILL_CLUB, 30)
setConditionParam(config.conditions[4], CONDITION_PARAM_SKILL_SWORD, 30)
setConditionParam(config.conditions[4], CONDITION_PARAM_SKILL_AXE, 30)
setConditionParam(config.conditions[4], CONDITION_PARAM_BUFF, true)

function onUse(cid, item, fromPosition, itemEx, toPosition)
    if config.level then
        if getPlayerLevel(cid) < config.level then
            return doPlayerSendCancel(cid, "You need to be level " .. config.level .. " or higher.")
        end
    end
    if hasCreatureCondition(cid, CONDITION_ATTRIBUTES) then
        return doPlayerSendCancel(cid, "You cannot use this item more than once.")
    end
    if config.remove then
        doRemoveItem(item.uid, 1)
    end
    if config.message then
        doPlayerSendTextMessage(cid, config.message[1], config.message[2])
    end
    local voc = (getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 5) and 1 or (getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 6) and 2 or (getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 7) and 3 or (getPlayerVocation(cid) == 4 or getPlayerVocation(cid) == 8) and 4
    doAddCondition(cid, config.conditions[voc])
    return true
end

Resolvi com esse código

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo