Ve se vai dar certo ae..
Crie um npc xml novo em Npc/Vendedor Vip.xml
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vendedor Vip" script="data/npc/scripts/vip.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="152" head="130" body="80" legs="155" feet="30" addons="2"/>
<parameters>
<parameter key="message_greet" value="Ola.. Tem o Item Vip para eu dar a {permissao} para acessar a area vip? "/>
</parameters></npc>
Faça isso em Npc/Scripts/vip.lua
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 exp = 35000
local t = {item1={9693,1}}
--[[
XXXX = ID DO ITEM
YY = QUANTIDADE DO ITEM
]]--
if(msgcontains(msg, 'permissao') or msgcontains(msg, 'permission')) then
selfSay('Quer me dar o VIPDAY pelo acesso a Area Vip Free? {yes} ', cid)
talkState[talkUser] = 1
elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then
if getPlayerStorageValue(cid,13851) == -1 then
if(getPlayerItemCount(cid, t.item1[1]) >= t.item1[2]) then
doPlayerRemoveItem(cid, t.item1[1], t.item1[2])
doPlayerAddExp(cid, exp)
setPlayerStorageValue(cid,13850,1)
selfSay('Narutibia Server Agradece, Receba de Brinde Uma Exp!', cid)
talkState[talkUser] = 0
else
selfSay('Você não tem ' .. t.item1[2] .. ' ' .. getItemNameById(t.item1[1]) .. ' para me entregar', cid)
talkState[talkUser] = 0
end
else
selfSay('Voce ja Tem O acesso.', cid)
talkState[talkUser] = 0
end
elseif msg == "no" and talkState[talkUser] == 1 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())
Agora no caso você pode se quiser criar apenas uma porta e coloca o Action Id em uma porta apenas para quem trocou o ITEM vip com o NCP que no caso é o 13850.
Se quiser que o Player passe pelo Piso e ainda fale que nao tem permisão acrescente isso:
Faça isso em movements/scripts/viptile.lua
local teleport = {x=1, y=1, z=1} --- local para onde será teleportado
function onStepIn(cid, item, pos, fromPos, toPos)
if getPlayerStorageValue(cid,13850) <= 0 then
doPlayerSendCancel(cid,"Esta área é exclusiva para VIPS.")
doTeleportThing(cid, fromPos)
else
doTeleportThing(cid,teleport)
doSendMagicEffect(teleport, 10)
end
end
Em movements.xml cole a tag
<movevent type="StepIn" actionid="13850" event="script" value="viptile.lua"/>
agora adicione no map editor o action id nos pisos que você quer que apenas os VIPS passem por ele que no caso o Action id é 13850
Flws ![]()


info
Grupo: Campones
Registrado: 20/06/12
Posts: 9
Reputação: 0
Char no Tibia: luu iceblade
Bom gostaria de pedir um script de vip para o meu narutibia versão 7.81 dno v2. preciso colocar um npc que venda a vip e colocar um porta que somente os players vip passem. pf me ajudem.
Tipo do script: Vip
Protocolo (versão do Tibia): NarutibiA 7.81
Servidor utilizado: DNO.V2
Nível de experiência:10
Adicionais/Informações: Vip