Ir para conteúdo

Featured Replies

Postado

Eae pessoal Okay?

Este é meu segundo tópico pedindo suporte hj...

então não querendo incomodar muito alguem poderia fazer um npc que da items diferente para cada vocação

é assim, um player da vocação paladino acabou de criar uma conta e não tem item nenhum!

ai tem um npc na entrada que da informações sobre o jogo e tbm fala onde conseguir items iniciais, ele fala que em tal casa tem um npc que da items para jogadores iniciantes

o player vai la conversa com o npc

o npc pergunta se ele quer items para começar a jogar

ai o player responde "yes" o npc da os items para o player e manda uma mensagem, se o player tentar ir la denovo o npc diz que já ajudou o player!

 

Só isto galera alguem pode me ajudar? eu apenas quero o npc que da os items para cada vocação! por favor alguem ajuda ai

wq3bBzt.png
Pokémon Dust Evolution
 
É aonde começa sua nova aventura!! 

 

Facebook

 
Verifique Atualizações

 

Resolvido por Summ

Ir para solução
  • Respostas 11
  • Visualizações 507
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • ok xo fazer aqui rapidão to com sono kkkk   npc   <?xml version="1.0"?> <npc name="Paladin" script="data/npc/scripts/vocacao.lua" access="1" monster="1" speed="0" lookdir="2" pushable="0

  • Testado em: TFS 0.4 Protocolo: 8.60   Crie um arquivo em data/npc com o nome Ajudante.xml e troque o que estiver dentro por isso:   <?xml version="1.0" encoding="UTF-8"?> <npc name="Aju

Postado
  • Diretor

ok xo fazer aqui rapidão to com sono kkkk

 

npc

 

<?xml version="1.0"?>
<npc name="Paladin" script="data/npc/scripts/vocacao.lua" access="1" monster="1" speed="0" lookdir="2" pushable="0" level="100">
<health now="150" max="150"/>
<look type="51" head="120" body="120" legs="114" feet="114" addons="3"/>
<parameters>
<parameter key="message_greet" value="Ola {|PLAYERNAME|}, voce deseja vira {paladin} ?" />
</parameters>
</npc>

 

 

scripts vocacao.lua

 

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 getPlayerVocation(cid) > 3 then

selfSay('{'..getPlayerName(cid)..'} Eu já te ajudei!!', cid)
return true
end

 

if(msgcontains(msg, 'Paladin') or msgcontains(msg, 'paladin')) then
selfSay('Bom se você chegou aqui é por que você está muito corajoso e vc deja virar {paladin} ?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
doPlayerSetVocation(cid, 3)

doPlayerAddItem(cid, 2160, 60)  --2160 é i id do item 60 é a quantidade--

selfSay('Parabéns {'..getPlayerName(cid)..'}, agora você é da vocacão paladin', cid)
end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

 

 

me fala os itens que eu termino ele

Editado por alexxxxxxx (veja o histórico de edições)

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Postado

Testado em: TFS 0.4 Protocolo: 8.60
 
Crie um arquivo em data/npc com o nome Ajudante.xml e troque o que estiver dentro por isso:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Ajudante" script="Ajudante.lua" walkinterval="2000" speechbubble="1" floorchange="0">
  <health now="100" max="100" />
 <look type="160" head="98" body="95" legs="115" feet="114" addons="0"/>
  <parameters>
    <parameter key="message_greet" value="Ola, voce precisa de ajuda ? Eu dou items para os iniciantes! Quer os items ?" />
  </parameters>
</npc>

 
Agora, em, data/npc/scripts crie um arquivo com nome Ajudante.lua e troque o que estiver dentro por isso:

 

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 creatureSayCallback(cid, type, msg)
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	msg = msg:lower()


local items = {
      [1] = {
          {2160, 10}, 
          {2159, 10},
      },
      [2] = {
          {2159, 10},
          {2157, 10},
      },
}

local storage = 6554

    if getPlayerStorageValue(cid, storage) >= 1 then
        npcHandler:say("Ja lhe entreguei os items, suma!", cid)
        return true
    elseif msgcontains(msg, "yes") then
	npcHandler:say("Aqui, tome seus items.", cid)
	for voc, item in pairs(items) do
	    if items[getPlayerVocation(cid)] then
                for _, itemid in pairs(item) do
                    doPlayerAddItem(cid,itemid[1],itemid[2]) 
                end
                break
            end
        end
        setPlayerStorageValue(cid, storage, 1)
    end
    return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 
 
Configuração:

Aqui:

local items = {
      [1] = {
          {2160, 10}, 
          {2159, 10},
      },
      [2] = {
          {2159, 10},
          {2157, 10},
      },
}

Você põe os items de cada vocação, é o seguinte:
 
 

[id da vocação] = {
{id do item, quantidade},
}

 
Repita o processo quantas vezes quiser, exemplo, se você quer que um player com a vocação de id 1 ganhe 3 items, você faz assim:

 

local items = {
    [1] = {
        {2160, 2},
        {2159, 10},
        {2152, 20},
    },
}

Editado por Snowsz (veja o histórico de edições)

                              _
                          .-'` `}
                  _./)   /       }
                .'o   \ |       }
                '.___.'`.\    {`
                /`\_/  , `.    }                                      ME DA UMA NOZ!
                \=' .-'   _`\  {
                 `'`;/      `,  }
                    _\   @   ;  }
                   /__`;-...'--'

Cluck!

Postado
  • Autor

 

Testado em: TFS 0.4 Protocolo: 8.60

 

Crie um arquivo em data/npc com o nome Ajudante.xml e troque o que estiver dentro por isso:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Ajudante" script="Ajudante.lua" walkinterval="2000" speechbubble="1" floorchange="0">
  <health now="100" max="100" />
 <look type="160" head="98" body="95" legs="115" feet="114" addons="0"/>
  <parameters>
    <parameter key="message_greet" value="Ola, voce precisa de ajuda ? Eu dou items para os iniciantes! Quer os items ?" />
  </parameters>
</npc>

 

Agora, em, data/npc/scripts crie um arquivo com nome Ajudante.lua e troque o que estiver dentro por isso:

 

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 creatureSayCallback(cid, type, msg)
	if(not npcHandler:isFocused(cid)) then
		return false
	end
	msg = msg:lower()


local items = {
      [1] = {
          {2160, 10}, 
          {2159, 10},
      },
      [2] = {
          {2159, 10},
          {2157, 10},
      },
}

local storage = 6554

    if getPlayerStorageValue(cid, storage) >= 1 then
        npcHandler:say("Ja lhe entreguei os items, suma!", cid)
        return true
    elseif msgcontains(msg, "yes") then
	npcHandler:say("Aqui, tome seus items.", cid)
	for voc, item in pairs(items) do
	    if items[getPlayerVocation(cid)] then
                for _, itemid in pairs(item) do
                    doPlayerAddItem(cid,itemid[1],itemid[2]) 
                end
                break
            end
        end
        setPlayerStorageValue(cid, storage, 1)
    end
    return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

Configuração:

Aqui:

local items = {
      [1] = {
          {2160, 10}, 
          {2159, 10},
      },
      [2] = {
          {2159, 10},
          {2157, 10},
      },
}

Você põe os items de cada vocação, é o seguinte:

 

 

[id da vocação] = {
{id do item, quantidade},
}

 

Repita o processo quantas vezes quiser, exemplo, se você quer que um player com a vocação de id 1 ganhe 3 items, você faz assim:

 

local items = {
    [1] = {
        {2160, 2},
        {2159, 10},
        {2152, 20},
    },
}

Irei testar o seu!

 

 

ok xo fazer aqui rapidão to com sono kkkk

 

npc

 

<?xml version="1.0"?>

<npc name="Paladin" script="data/npc/scripts/vocacao.lua" access="1" monster="1" speed="0" lookdir="2" pushable="0" level="100">

<health now="150" max="150"/>

<look type="51" head="120" body="120" legs="114" feet="114" addons="3"/>

<parameters>

<parameter key="message_greet" value="Ola {|PLAYERNAME|}, voce deseja vira {paladin} ?" />

</parameters>

</npc>

 

 

scripts vocacao.lua

 

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 getPlayerVocation(cid) > 3 then

selfSay('{'..getPlayerName(cid)..'} Eu já te ajudei!!', cid)

return true

end

 

if(msgcontains(msg, 'Paladin') or msgcontains(msg, 'paladin')) then

selfSay('Bom se você chegou aqui é por que você está muito corajoso e vc deja virar {paladin} ?', cid)

talkState[talkUser] = 1

elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then

doPlayerSetVocation(cid, 3)

doPlayerAddItem(cid, 2160, 60)  --2160 é i id do item 60 é a quantidade--

selfSay('Parabéns {'..getPlayerName(cid)..'}, agora você é da vocacão paladin', cid)

end

return true

end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

 

 

 

me fala os itens que eu termino ele

man vc entendeu tudo errado! mas pelomenos tentou! vlw ai

wq3bBzt.png
Pokémon Dust Evolution
 
É aonde começa sua nova aventura!! 

 

Facebook

 
Verifique Atualizações

 

Postado
  • Diretor

Irei testar o seu!

 

 

man vc entendeu tudo errado! mas pelomenos tentou! vlw ai

entendi eu fiz pra trocar item por vocação malz eu li lá em cima só

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

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