Em data/npc cria um arquivo chamado "Vip Seller.xml" e coloque isso dentro:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vip Seller" script="Vip Seller.lua" walkinterval="0" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="664" head="114" body="119" legs="114" feet="114" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Welcome |PLAYERNAME|, I can sell to you: {Vip Account}. You want?"/>
</parameters>
</npc>
Depois, em scripts, você cria um arquivo "Vip Seller.lua" e coloca 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
msg = string.lower(msg)
---------
local configs = {
diamondsID = 2145, --id do diamond no items.xml/otb... (achu q vais ter q criar, ou pegar algum item q ja tenha ae...)
VIP = {days = 30, cost = 10}, --days = qnts dias de VIP o player compra por vez.... cost = custo para virar VIP...
}
if (msgcontains(msg, 'vip account') or msgcontains(msg, 'vip')) then
selfSay("You want to buy a diamond account and be VIP for "..configs.VIP.days.." days? It will cost "..configs.VIP.cost.." diamonds!", cid)
talkState[talkUser] = 2
return true
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
if getPlayerItemCount(cid, configs.diamondsID) >= configs.VIP.cost then
selfSay("Ok then, now you have "..configs.VIP.days.." days of VIP! Enjoy!", cid)
doPlayerAddPremiumDays(cid, configs.VIP.days)
doPlayerRemoveItem(cid, configs.diamondsID, configs.VIP.cost)
talkState[talkUser] = 0
return true
else
selfSay("You need atleast "..configs.VIP.cost.." diamonds to do that!", cid)
talkState[talkUser] = 0
return true
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Como editar?
diamondsID = 2145 Aqui você coloca o ID do Diamond
VIP = {days = 30, cost = 10} Aqui o 30 é quantidade de dias que vai ganhar de VIP, e 10 é quantos Diamond vai custar
PS: Não cheguei a testar o script, então se der erro, avisa ai!





info
Grupo: Campones
Registrado: 19/11/13
Posts: 25
Reputação: 0
aí galera preciso de um script de npc que troque diamond por 30 dias vip, eu ja pesquisei aki e axei o do stylo só q aki nao funfo
, dou rep+ se funfar