Vá na pasta data de seu ot dps npc e copia um npc depois renomeie ele para Darok Rodo.
Depois dentro dele coloque isso:
<?xml version="1.0" encoding="UTF-8"?> <npc name="Dark Rodo" script="data/npc/scripts/runes1.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="289" head="140" body="64" legs="121" feet="76" addons="3"/> </npc>
Após ter feito isso va na pasta scripts e copie um script e renomeie ele para runes1.lua, depois coloque isso dentro dele:
local focuses = {}local function isFocused(cid)
for i, v in pairs(focuses) do
if(v == cid) then
return true
end
end
return false
end
local function addFocus(cid)
if(not isFocused(cid)) then
table.insert(focuses, cid)
end
end
local function removeFocus(cid)
for i, v in pairs(focuses) do
if(v == cid) then
table.remove(focuses, i)
break
end
end
end
local function lookAtFocus()
for i, v in pairs(focuses) do
if(isPlayer(v) == TRUE) then
doNpcSetCreatureFocus(v)
return
end
end
doNpcSetCreatureFocus(0)
end
local itemWindow = {
{id=2268, subtype=0, buy=215, sell=0},
{id=2273, subtype=0, buy=100, sell=0},
{id=2313, subtype=0, buy=125, sell=0},
{id=2304, subtype=0, buy=125, sell=0},
{id=8828, subtype=0, buy=22000, sell=0},
{id=2187, subtype=0, buy=15000, sell=0},
{id=2188, subtype=0, buy=5000, sell=0},
{id=8827, subtype=0, buy=7500, sell=0},
{id=8826, subtype=0, buy=18000, sell=0},
{id=2189, subtype=0, buy=10000, sell=0},
{id=2190, subtype=0, buy=500, sell=0},
{id=2191, subtype=0, buy=1000, sell=0},
{id=2274, subtype=0, buy=100, sell=0},
{id=8817, subtype=0, buy=750, sell=0},
{id=8816, subtype=0, buy=22000, sell=0},
{id=2183, subtype=0, buy=15000, sell=0},
{id=2181, subtype=0, buy=10000, sell=0},
{id=2182, subtype=0, buy=500, sell=0},
{id=2185, subtype=0, buy=5000, sell=0},
{id=2186, subtype=0, buy=1000, sell=0},
{id=8818, subtype=0, buy=18000, sell=0},
{id=8377, subtype=0, buy=310, sell=0},
{id=7591, subtype=0, buy=190, sell=0},
{id=7588, subtype=0, buy=100, sell=0},
{id=7618, subtype=0, buy=45, sell=0},
{id=8376, subtype=0, buy=190, sell=0},
{id=7590, subtype=0, buy=120, sell=0},
{id=7589, subtype=0, buy=80, sell=0},
{id=7620, subtype=0, buy=50, sell=0},
{id=2163, subtype=0, buy=500, sell=0},
{id=2311, subtype=0, buy=300, sell=0},
{id=2260, subtype=0, buy=10, sell=0}
}
local items = {}
for _, item in ipairs(itemWindow) do
items[item.id] = {buyPrice = item.buy, sellPrice = item.sell, subtype = item.subtype}
end
local function getPlayerMoney(cid)
return ((getPlayerItemCount(cid, 2160) * 10000) +
(getPlayerItemCount(cid, 2152) * 100) +
getPlayerItemCount(cid, 2148))
end
local onBuy = function(cid, item, subtype, amount)
if(items[item] == nil) then
selfSay("Ehm.. sorry... this shouldn't be there, I'm not selling it.", cid)
return
end
if(getPlayerMoney(cid) >= amount*items[item].buyPrice) then
local itemz, i = doPlayerAddItem(cid, item, subtype, amount)
if(i < amount) then
if(i == 0) then
selfSay("Sorry, but you don't have space to take it.", cid)
else
selfSay("I've sold some for you, but it seems you can't carry more than this. I won't take more money than necessary.", cid)
doPlayerRemoveMoney(cid, i*items[item].buyPrice)
end
else
selfSay("Thanks for the money!", cid)
doPlayerRemoveMoney(cid, amount*items[item].buyPrice)
end
else
selfSay("You don't have money.", cid)
end
end
local onSell = function(cid, item, subtype, amount)
if(items[item] == nil) then
selfSay("Ehm.. sorry... this shouldn't be there, I'm not buying it.", cid)
end
if(subtype < 1) then
subtype = -1
end
if(doPlayerRemoveItem(cid, item, amount, subtype) == TRUE) then
doPlayerAddMoney(cid, items[item].sellPrice*amount)
selfSay("Here you are.", cid)
else
selfSay("No item, no deal.", cid)
end
end
function onCreatureAppear(cid)
end
function onCreatureDisappear(cid)
if(isFocused(cid)) then
selfSay("Hmph!")
removeFocus(cid)
if(isPlayer(cid) == TRUE) then --Be sure he's online
closeShopWindow(cid)
end
end
end
function onCreatureSay(cid, type, msg)
if((msg == "hi") and not (isFocused(cid))) then
selfSay("Welcome, ".. getCreatureName(cid) ..".", cid, TRUE)
selfSay("I sell all types {runes}?", cid)
addFocus(cid)
elseif((isFocused(cid)) and (msg == "runes" or msg == "trade")) then
selfSay("Pretty nice, right?", cid)
openShopWindow(cid, itemWindow, onBuy, onSell)
elseif((isFocused(cid)) and (msg == "bye" or msg == "goodbye" or msg == "cya")) then
selfSay("Goodbye!", cid, TRUE)
closeShopWindow(cid)
removeFocus(cid)
end
end
function onPlayerCloseChannel(cid)
if(isFocused(cid)) then
selfSay("Hmph!")
closeShopWindow(cid)
removeFocus(cid)
end
end
function onPlayerEndTrade(cid)
selfSay("It was a pleasure doing business with you.", cid)
end
function onThink()
for i, focus in pairs(focuses) do
if(isCreature(focus) == FALSE) then
removeFocus(focus)
else
local distance = getDistanceTo(focus) or -1
if((distance > 4) or (distance == -1)) then
selfSay("Hmph!")
closeShopWindow(focus)
removeFocus(focus)
end
end
end
lookAtFocus()
end
OBS: Onde está em Vermelho é os itens que ele vende e onde está em azul é o que vc prescisa dizer para que apareça a janela dos itens....
Caso vc queira que o npc venda itens coloque isso (OBS está em Negrito)
{id=2268, subtype=0, buy=215, sell=0},{id=2273, subtype=0, buy=100, sell=0},
{id=2313, subtype=0, buy=125, sell=0},
{id=2304, subtype=0, buy=125, sell=0},
{id=8828, subtype=0, buy=22000, sell=0},
{id=2187, subtype=0, buy=15000, sell=0},
{id=2188, subtype=0, buy=5000, sell=0},
{id=8827, subtype=0, buy=7500, sell=0},
{id=8826, subtype=0, buy=18000, sell=0},
{id=2189, subtype=0, buy=10000, sell=0},
{id=2190, subtype=0, buy=500, sell=0},
{id=2191, subtype=0, buy=1000, sell=0},
{id=2274, subtype=0, buy=100, sell=0},
{id=8817, subtype=0, buy=750, sell=0},
{id=8816, subtype=0, buy=22000, sell=0},
{id=2183, subtype=0, buy=15000, sell=0},
{id=2181, subtype=0, buy=10000, sell=0},
{id=2182, subtype=0, buy=500, sell=0},
{id=2185, subtype=0, buy=5000, sell=0},
{id=2186, subtype=0, buy=1000, sell=0},
{id=8818, subtype=0, buy=18000, sell=0},
{id=8377, subtype=0, buy=310, sell=0},
{id=7591, subtype=0, buy=190, sell=0},
{id=7588, subtype=0, buy=100, sell=0},
{id=7618, subtype=0, buy=45, sell=0},
{id=8376, subtype=0, buy=190, sell=0},
{id=7590, subtype=0, buy=120, sell=0},
{id=7589, subtype=0, buy=80, sell=0},
{id=7620, subtype=0, buy=50, sell=0},
{id=2163, subtype=0, buy=500, sell=0},
{id=2311, subtype=0, buy=300, sell=0},
{id=2260, subtype=0, buy=10, sell=0},
{id=7634, subtype=0, sell=5, buy=0}
}
É um exemplo do Empty Strong Potion
Crédits:
80% Eu
20% Sibuna