Ola amigo tava procurando aqui no Xtibia e achei um olha
Vai em data/npc e crie um arquivo.xml, nomeia ele como você quiser, depois você cola isso dentro dele:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Nome do Npc" script="nome_do_arquivo.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="300" head="0" body="0" legs="0" feet="0" corpse="5995"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|! Do you want to do some {trading}?"/>
</parameters>
</npc>
- Pronto, feito isso vai em data/npc/script, e cria um arquivo .luaé so copiar um arquivo existente e renomear, depois você cola isso dentro:
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 shopWindow = {}
local moeda = 2200
local t = {
[12149] = {price = 1}, -- Nome do Item
[12150] = {price = 1}, -- Nome do Item
[12151] = {price = 1}, -- Nome do Item
}
local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
if t[item] and not doPlayerRemoveItem(cid, moeda, t[item].price) then
selfSay("Desculpe, mas voce nao tem "..t[item].price.." "..getItemNameById(moeda), cid)
else
doPlayerAddItem(cid, item)
selfSay("aqui esta seu item!", cid)
end
return true
end
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
for var, ret in pairs(t) do
table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)})
end
openShopWindow(cid, shopWindow, onBuy, onSell)
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Te ajudei rap ++