Ir para conteúdo

hFrost

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    hFrost deu reputação a Wakon em [NPC] Papai Noel - Que dá presente   
    Configurei pra você, se faltar algo me avise.
    local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) function onCreatureAppear(cid)            npcHandler:onCreatureAppear(cid)            end function onCreatureDisappear(cid)        npcHandler:onCreatureDisappear(cid)            end function onCreatureSay(cid, type, msg)    npcHandler:onCreatureSay(cid, type, msg)    end function onThink()                        npcHandler:onThink()                        end local t = { item = 7844, st = 121402, temp = 24*3600, -- Em 24 é o tempo em horas para usar novamente! level = 200 } function creatureSayCallback(cid, type, msg) msg = msg:lower() if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, 'sim') or msgcontains(msg, 'yes') then    if getPlayerLevel(cid) >= t.level then        if getPlayerStorageValue(cid, t.st) > os.time() then        selfSay("Você precisa esperar " .. getPlayerStorageValue(cid, t.st) - os.time() .. ' segundo' .. (getPlayerStorageValue(cid, t.st) - os.time() == 1 and "" or "s") .. " para pegar o presente novamente.", cid)        else        setPlayerStorageValue(cid, t.st, os.time() + t.temp)        doPlayerAddItem(cid, t.item)        doSendMagicEffect(getThingPos(cid), 13)        selfSay('Aqui está! Feliz natal!', cid)        end    else    selfSay('Você precisa ser level '.. t.level ..' para pegar o presente.', cid)    end end    end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  2. Gostei
    hFrost deu reputação a Danihcv em [NPC] Papai Noel - Que dá presente   
    Bom galera, sei que o natal acabou de passar, porém esqueci de postar esse system antes...
    Fiz uma versão 2.0 do meu npc de natal (papai noel).
     
    Agora ao invés do bom velhinho entregar diretamente o item, vc recebe uma caixa que ao clicar vc recebe um item 100% aleatorio (dentre os itens que foram programados dentro do script).
     
     
    Funciona assim: o player vai até o papai noel e fala: hi, aí o papai noel fala ho-ho-ho... aí o player responde sim (ou yes) e então o player recebe uma caixa. Ao clicar na caixa, o player recebe um dos itens, que estiverem programados no script, de forma aleatoria.
     
     
    Então vamo lá.
     
    Pra adicionar esse system, primeiro vá na pasta data/npc e crie um arquivo chamado Papai Noel.xml e coloque isso dentro:
    <?xml version="1.0" encoding="UTF-8"?> <npc name="Papai Noel" script="data/npc/scripts/papai_noel.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"> <health max="100" now="100"/> <look type="160" head="0" body="113" legs="94" feet="132" addons="0" mount="0"/> <parameters> <!--MESSAGES--> <parameter key="message_greet" value="HO-HO-HO, |PLAYERNAME| bem-vindo. Voce gostaria de um presente?"/> <parameter key="message_farewell" value="HO-HO-HO, tenha um feliz natal, |PLAYERNAME|."/> </parameters> </npc> Agora vá na pasta data/npc/scripts e crie um arquivo chamado papai_noel.lua e coloque isso dentro:



     
     
    Agora vá na pasta data/actions e adicione essa tag dentro do arquivo actions.xml:
    <action itemid="11401" event="script" value="giftbox.lua"/> Agora va na pasta data/actions/scripts  e crie um arquivo chamado giftbox.lua e coloque isso dentro:
    local items = { [1]=2160, --ID do item 1 [2]=2157, --ID do item 2 [3]=2121} --ID do item 3 local stor = (11401+os.date("%Y")) --Nao mexa function onUse(cid) if getPlayerStorageValue(cid, stor) ~= 1 then a = math.random(1, #items) doPlayerAddItem(cid, items[a], 1) setPlayerStorageValue(cid, stor, 1) else doPlayerSendCancel(cid, "Voce ja pegou seu presente.") end doPlayerRemoveItem(cid, 11401, 1) return true end E isso é tudo pessoal!
  3. Gostei
    hFrost deu reputação a Renato em [Action] Quest que ganha crystal coins equivalente ao level   
    Créditos: Eu (por criar o script), thalia (por me ajudar e algumas correções básicas)
    Sei que parece um script básico, mas é que eu estou aprendendo ainda, então não reclama .l.

    Explicação: Se você for level 50 vai ganhar 50 crystal coins, se for level 10 vai ganhar 10 crystal coins etc.

    • Crie um arquivo LUA com o nome cclevelquest.lua em data/actions/scripts
    E ponha:


    function onUse(cid, item, fromPosition, itemEx, toPosition)

    local config = {
    storage = 1579,
    itemid = 2160,
    qnt = getPlayerLevel(cid),
    }

    if getPlayerStorageValue(cid, config.storage) == 1 then
    return doPlayerSendCancel(cid, "You already make this quest.")
    else
    setPlayerStorageValue(cid, config.storage, 1)
    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You received "..config.qnt.." crystal coins.")
    doPlayerAddItem(cid, config.itemid, config.qnt)
    end
    end
    [/code] Você pode trocar o itemid pra outro item que seja contável também.. mas não esquece de trocar o nome nessa linha: [code]doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You received "..config.qnt.." crystal coins.") Onde tá crystal coins. • Em actions.xml coloque <action actionid="9898" event="script" value="cclevelquest.lua"/>

    No mapeditor você vai colocar 9898 no actionid nas propriedades do chest e não em uniqueid

    Abraços.

Informação Importante

Confirmação de Termo