afinal, é por item ou por dinheiro? ou pelos 2?
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

info
Grupo: Campones
Registrado: 18/12/11
Posts: 40
Reputação: +1
Char no Tibia: speelbiding circle

Por item
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

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())
info
Grupo: Campones
Registrado: 18/12/11
Posts: 40
Reputação: +1
Char no Tibia: speelbiding circle

info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

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!

info
Grupo: Campones
Registrado: 18/12/11
Posts: 40
Reputação: +1
Char no Tibia: speelbiding circle

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+
info
Grupo: Conde
Registrado: 17/07/11
Posts: 705
Reputação: +108

Tópico movido para o local correto... Que seria Pedidos de Scripting, porém já que o pedido fora resolvido, movi para pedidos atendidos.



info
Grupo: Campones
Registrado: 18/12/11
Posts: 40
Reputação: +1
Char no Tibia: speelbiding circle
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?