Ir para conteúdo
  • Cadastre-se

(Resolvido)[Pedido] Npc de trocar Small Diamond por Poké


Ir para solução Resolvido por rafanasser,

Posts Recomendados

Galera eu queria um Script de um NPC que trocasse (Vendesse) Pokemons em troca de Small Diamond!

 

Obs: Oplayer da o small diamond em troca do Poke !

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

nao e mais facil por para comprar pelo otc ?

Nem pensei nisso hehe, concordo comprar com small diamond é bem melhor  ^^

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

a base do meu server é Pk Dash Eu tenho o script de um só que nem por nada eu consigo fazer ele vender + de 1 pokemon !
Vo passar o script akie !

 


 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
------------------- Configuração dos Itens -----------------------
 
local pokemon = "Articuno"
local nome = {'Articuno'}  -- Nome dos Itens
local valor = {2145, 20} -- id da moeda, quantidade
 
------------------- MESSAGES INICIAIS ----------------------------------------
if msgcontains(msg, nome[1]) then
selfSay('Deseja comprar um Pokemon Lendario pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 1
 
elseif (msgcontains(msg, 'trade') or msgcontains(msg, 'hi')) then
selfSay('Digite qual item deseja adquirir.', cid)
selfSay('Atualmente temos um {'..pokemon..'}.', cid)
talkState[talkUser] = 0
 
---------------------- NEGOCIAÇÃO -------------------------------
 
elseif talkState[talkUser] == 1 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        addPokeToPlayer(cid, pokemon, 0, 1, 'normal', true)
        selfSay('Parabens, voce acaba de adquirir um '..pokemon..'.', cid)
    else
        selfSay('Voce nao tem '..valor[2]..' {'..getItemNameById(valor[1])..'}.', cid)
    talkState[talkUser] = 0
    end
end
 
end
return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

UP

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites
Oks !
Eu só não coloco pelo otc pq quero que só premium account tenha acesso a esse npc
Então colocarei ele na area VIP !
 
 
Se puder atender ao meu outro pedido, o do sistema de comprar casas
meus REP+ de hj serão todos seus !
Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites
local config, buyPoke = {
    diamondId = xxx,                    --ID do diamond.
    pokemons = {
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
    },
}, ""
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
    if msgcontains(msg:lower(), "buy") or msgcontains(msg:lower(), "trade") then
        local str = ""
        for poke, price in pairs(config.pokemons) do
            if str == "" then
                str = poke.." - "..price.." diamonds"
            else
                str = str.."\n"..poke.." - "..price.." diamonds"
            end
        end
        selfSay("Hello, I sell this pokemons. Wanna buy any of them?", cid)
        doPlayerPopupFYI(cid, "Selling:\n"..str)
        talkState[talkUser] = 1
        return true
    elseif msgcontains(msg:lower(), "yes") then
        if talkState[talkUser] == 1 then
            selfSay("Tell me the name, please.", cid)
            talkState[talkUser] = 2
            return true
        elseif talkState[talkUser] == 3 then
            if buyPoke ~= "" then
                local price = config.pokemons[buyPoke]
                if doPlayerRemoveItem(cid, config.diamondId, price) then
                    selfSay("Here's your "..buyPoke.."!", cid)
                    addPokeToPlayer(cid, buyPoke, 0, 1, "normal", true)
                    talkState[talkUser] = 0
                    return true
                else
                    selfSay("You do not have "..price.." diamonds.", cid)
                    talkState[talkUser] = 0
                    return true
                end
            end
        end
    elseif config.pokemons[msg] and talkState[talkUser] == 2 then
        selfSay("You really wanna buy a "..msg.."? It will cost you "..config.pokemons[msg].." diamonds.", cid)
        buyPoke = msg
        talkState[talkUser] = 3
        return true
    elseif msgcontains(msg:lower(), "no") then
        selfSay("Then bye.", cid)
        talkState[talkUser] = 0
        return true
    end
    return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Editado por zipter98 (veja o histórico de edições)

não respondo pms solicitando suporte em programação/scripting

Link para o post
Compartilhar em outros sites

Cara quando eu vo spawnar o npc da esse erro aki

 

BRJtSRa.png

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Obrigado jajá irei testar aki !


Cara está funcionando perfeitamente agora + tem um pequeno problema:

Quando o player compra um pokemon nele, não diminui os Small diamons do player !

e players sem Small Diamonds tambem conseguem comprar pokes !

+1 Rep+ pra vc !

 

Editado por J.L (veja o histórico de edições)
  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites

Está realmente perfeito agora !

+ 1 REP+ pra você !!!

  •               6oI4lwi.gif
  • FusionPoké Estará aberto este mês para testes !
  • Curta A Page e Fique Por Dentro Das Novidades Do Servidor!   Like Aqui!
  •                         qNmeLvu.png
Link para o post
Compartilhar em outros sites
  • 10 months later...
Em 02/05/2015 21:34:51, zipter98 disse:

local config, buyPoke = {
    diamondId = xxx,                    --ID do diamond.
    pokemons = {
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
        ["pokemon_name"] = price,       --["nome_do_pokémon"] = preço,
    },
}, ""
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
    if msgcontains(msg:lower(), "buy") or msgcontains(msg:lower(), "trade") then
        local str = ""
        for poke, price in pairs(config.pokemons) do
            if str == "" then
                str = poke.." - "..price.." diamonds"
            else
                str = str.."\n"..poke.." - "..price.." diamonds"
            end
        end
        selfSay("Hello, I sell this pokemons. Wanna buy any of them?", cid)
        doPlayerPopupFYI(cid, "Selling:\n"..str)
        talkState[talkUser] = 1
        return true
    elseif msgcontains(msg:lower(), "yes") then
        if talkState[talkUser] == 1 then
            selfSay("Tell me the name, please.", cid)
            talkState[talkUser] = 2
            return true
        elseif talkState[talkUser] == 3 then
            if buyPoke ~= "" then
                local price = config.pokemons[buyPoke]
                if doPlayerRemoveItem(cid, config.diamondId, price) then
                    selfSay("Here's your "..buyPoke.."!", cid)
                    addPokeToPlayer(cid, buyPoke, 0, 1, "normal", true)
                    talkState[talkUser] = 0
                    return true
                else
                    selfSay("You do not have "..price.." diamonds.", cid)
                    talkState[talkUser] = 0
                    return true
                end
            end
        end
    elseif config.pokemons[msg] and talkState[talkUser] == 2 then
        selfSay("You really wanna buy a "..msg.."? It will cost you "..config.pokemons[msg].." diamonds.", cid)
        buyPoke = msg
        talkState[talkUser] = 3
        return true
    elseif msgcontains(msg:lower(), "no") then
        selfSay("Then bye.", cid)
        talkState[talkUser] = 0
        return true
    end
    return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

Cara...queria saber se tem como esse script pegar numa base cyan 8.54... essa parte eu adiciono no scritps da pasta data/npc/scripts certo?  mas o npc pra pasta data/npc  ... o que preciso fazer? '-' desculpa minha nubês mas, sei quase nads (ou nada .-. ) em scripts!!

 

obrigado desde já por responder! '-'

Link para o post
Compartilhar em outros sites
  • Solução
Em 04/03/2016 18:41:48, Morphred disse:

Cara...queria saber se tem como esse script pegar numa base cyan 8.54... essa parte eu adiciono no scritps da pasta data/npc/scripts certo?  mas o npc pra pasta data/npc  ... o que preciso fazer? '-' desculpa minha nubês mas, sei quase nads (ou nada .-. ) em scripts!!

 

obrigado desde já por responder! '-'

 

No caso você teria que abrir a pasta "data/npc" e criar um arquivo para ele, no qual contenha o nome, o script, intervalo no qual ele anda, se ele muda de andar por escada e etc, o access dele, level,mag level,healthnow, healtmax, looktype e etc....

 

Caso você não saiba criar um, apenas copie de algum, e vai mudando algumas informações a seu gosto.

Caso tenha ajudado, rep+ pf :D  

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo