Ir para conteúdo

Dias de vip no lugar de Gp's


Skymagnum

Posts Recomendados

Vi um pedido que o cara queria que em vez de o NPC cobrar gp's ele cobrasse dias de vip, então está aí, não foi testado.

 

data/npc/ crie um arquivo da extensão .xml renomeie para Billi, e adicione o seguinte conteúdo nele.

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Billi" script="NOME.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150"/>
<look type="128" head="20" body="100" legs="50" feet="99" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. I change items for vip days."/>
</parameters>
</npc>

 

agora crie um arquivo da extensão .lua e adicione isso dentro.

pastebin.com/A32guS16

 

Créditos:

Eu

Vodkart(base)

 

só funciona com o Perfect Vip System v.3, se quiserem modifiquem vocês mesmos.

Editado por Skymagnum
Link para o comentário
Compartilhar em outros sites

Muito bom. Quando liberar o rep aqui te do.

 

Pra quem não entendeu, no .lua não é pra por pastebin.com/A32guS16 e sim isso:

 

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 ITEMS = {

[2195] = {days = 15},

[2493] = {days = 25},

[2361] = {days = 30},

}

local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)

if ITEMS[item] and not doRemoveCharacterAcess(cid, ITEMS[item].days) then

selfSay("Você não tem " .. ITEMS[item].days .. " dias de vip", 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(ITEMS) do

table.insert(shopWindow, {id = var, subType = 0, buy = ret.days, 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())

 

Editado por ThiagoBjiW
Link para o comentário
Compartilhar em outros sites

Tentei usar este script porem deu este erro no distro:

 

[15/03/2013 22:12:40] [Error - Npc interface]
[15/03/2013 22:12:40] (Unknown script file)
[15/03/2013 22:12:40] Description:
[15/03/2013 22:12:40] data/npc/scripts/vip.lua:21: attempt to call global 'doRemoveVipDays' (a nil value)
[15/03/2013 22:12:40] stack traceback:
[15/03/2013 22:12:40]  data/npc/scripts/vip.lua:21: in function <data/npc/scripts/vip.lua:20>

Link para o comentário
Compartilhar em outros sites

Tentei usar este script porem deu este erro no distro:

 

[15/03/2013 22:12:40] [Error - Npc interface]
[15/03/2013 22:12:40] (Unknown script file)
[15/03/2013 22:12:40] Description:
[15/03/2013 22:12:40] data/npc/scripts/vip.lua:21: attempt to call global 'doRemoveVipDays' (a nil value)
[15/03/2013 22:12:40] stack traceback:
[15/03/2013 22:12:40]  data/npc/scripts/vip.lua:21: in function <data/npc/scripts/vip.lua:20>

Já foi explicado no outro tópico o porque deste erro.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...