Ir para conteúdo
  • 0

[PEDIDO] NPC QUE TROCA CERTIFICADO POR SEMANA PREMIUM OU ITEM


LeoTK

Pergunta

OLÁ XTIBIA GOSTARIA DE PEDIR UMA SCRIPT BOM TENHO UMA JÁ SO QUE GOSTARIA QUE GANHACE O SEGUINTE

 

HIDAN AMULET ID:11396

SEMANA PREMIUM ID:8981

CERTIFICADO ID:6088

 

COM A SEGUINTE SCRIPT

 

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


function Certificado (cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end

if getPlayerItemCount(cid,6088) >= 1 then
if doPlayerRemoveItem(cid,6088,1) then
npcHandler:say('Aqui esta seus items!', cid)
doPlayerAddItem(cid,8981,1)
end
else
npcHandler:say('Voce nao tem itens necessarios!', cid)
end
end
-- STRIKE END --

keywordHandler:addKeyword({'Certificado'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "Eu troco {Semana Premy ou Hidan Amulet} por Certificado So Pode Escolher Um."})

local node1 = keywordHandler:addKeyword({'Semana Premium'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer trocar Certificado por uma semana premium?? Yes or no??'})
node1:addChildKeyword({'yes'}, Semanapremium, {npcHandler = npcHandler, onlyFocus = true, reset = true})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, Va Para Sua Aventura!', reset = true})
npcHandler:addModule(FocusModule:new())

 

 

NPC

 

 

<?xml version="1.0"?>
<npc name="Yondaime" script="data/npc/scripts/npcquest/Yondaime.lua" access="5" lookdir="2" walkinterval="0">
<health now="200" max="200" />
<look type="213" head="0" body="0" legs="0" feet="0" addons="0" />
<parameters>
<parameter key="message_greet" value="Ola |PLAYERNAME|. Veio trocar um Certificado por itens? Diga {Certificado}." />
</parameters>
</npc>

 

 

 

É ISSO GALERINHA AGUARDO RESPOSTAS E +REP PRA QUEM AJUDAR XD

 

PS: < IMPORTANTE > TIPOW QUE O PLAYER ESCOLHECE TROCAR O CERTIFICADO PELA SEMANA PREMIUM OU PELO HIDAN AMULET SO PODER ESCOLHER UM DOS DOIS

Editado por Brundss
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Opa, área incorreta. A que você postou é direcionada à códigos prontos, e não à pedidos e/ou dúvidas. Para isso, opte por postar na devida área: Pedidos e dúvidas - Scripting. Mais cuidado da próxima vez.

Tópico movido.

Link para o comentário
Compartilhar em outros sites

  • 0

Aqui, veja se é isso mesmo que você quer:

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
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
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
 
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
 
local certificado = 6088
 
local cfg = {
    ["hidan amulet"] = 11396,
    ["semana premium"] = 8981,
}
 
 
    if msgcontains(msg, "Certificado") then
        if getPlayerStorageValue(cid, 98815) >= 1 then
            selfSay("Desculpe, você já pegou seu item.", cid)
            talkState[talkUser] = 0
            return true
        else
            selfSay("Oh, posso lhe dar em troca de um certificado um {hidan amulet} ou {semana premium}. Qual você prefere?", cid)
            talkState[talkUser] = 1
            return true
        end
    elseif talkState[talkUser] == 1 then
        if cfg[msg:lower()] then
            if getPlayerItemCount(cid, certificado) >= 1 then
                selfSay("Obrigado, aqui está seu "..msg..".", cid)
                setPlayerStorageValue(cid, 98815, 1)
                doPlayerRemoveItem(cid, certificado, 1)
                doPlayerAddItem(cid, cfg[msg:lower()], 1)
                talkState[talkUser] = 0
                return true
            else
                selfSay("Desculpe, você não tem um certificado.", cid)
                talkState[talkUser] = 0
                return true
            end
        else
            selfSay("Desculpe, eu não troco esse item.", cid)
            talkState[talkUser] = 0
            return true
        end
    end
    return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Editado por zipter98
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...