Ir para conteúdo
  • 0

[Pedido] Npc Que Troca De Gênero


kriller12

Pergunta

Olá, como o título já diz preciso da ajudinha do xtibia para a script de um npc.

 

-->Oque eu preciso?

R: De um npc que troque o jogador de sexo.Eu dou uma certa quantidade de dinheiro (ou moeda vip,diamonds ou algo do tipo) ai ele me troca de sexo.

 

Alguem pode me ajudar?

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

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 msg = string.lower(msg)
local config = {itemid = 9020,cost = 15}
if msgcontains(msg, 'sex') then
npcHandler:say("Você quer mudar de sexo por "..config.cost.." "..getItemNameById(config.itemid).." ? {yes}", cid)
talkState[talkUser] = 1
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then
if doPlayerRemoveItem(cid,config.itemid,config.cost) == TRUE then
doPlayerSetSex(cid, getPlayerSex(cid) == PLAYERSEX_FEMALE and PLAYERSEX_MALE or PLAYERSEX_FEMALE)
npcHandler:say("Parabéns, você mudou de sexo com sucesso", cid)
else
npcHandler:say("Desculpe, Você não tem "..config.cost.." "..getItemNameById(config.itemid).." !", cid)
end
elseif msg == "no" then  
selfSay("Then not", cid)  
talkState[talkUser] = 0  
npcHandler:releaseFocus(cid)  
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Link para o comentário
Compartilhar em outros sites

  • 0

Mas ele está configurado para falar na aba do npc

 

npcHandler:say("msg", cid)

 

o "cid" faz com que a mensagem seja aberta nessa aba!

 

kIM4z.png

Link para o comentário
Compartilhar em outros sites

  • 0

Bom depois desse seu ultimo post eu resolvi me aprofuntar e responder a pergunta:

 

-->Porque o npc não queria falar no local correto?

Então resolvi comparar a script do seu npc, com outro npc que eu tinha e falava no local correto e descobri que:

 

Aqui quando eu colocava:

npcHandler:say("msg", cid)

ele não falava na aba. Então quando eu vi a script do meu npc,notei que avia algo diferente que era:

 

selfSay("msg ", cid)

 

ele falava no local correto.Nossos OTs não diferentes por isso a diferença. Mas a sua script ficou otima REP+

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...