Postado Maio 6, 2015 10 anos Desculpe Luciano, sou super leigo no assunto. No menu shop do meu gesior eu consigo adicionar itens para a venda. Tenho 3 opções nele, Itens, Mounts e Addons, gostaria de criar uma nova aba para vender tempo de vip. por exemplo Desculpe nao postar prints, o serv esta no meu pc de casa e estou sem net. Itens addons Mounts VIP Item1 addon1 Mount1 5dias Item2 addon2 Mount2 10dias Item3 addon3 Mount3 30dias E como que eu faço para colocar VIP nos player ingame. Vc so posto o scrip para adicionar vip no serv. Nao tem que ter o scrip la do talkactions?? Editado Maio 8, 2015 10 anos por andreoam (veja o histórico de edições)
Postado Maio 8, 2015 10 anos Olá pessoal, estou desenvolvendo esse sistema vip para TFS 1.1, ainda não acabei, se precisarem de alguma função nova é só comentar, criei para usar em um servidor teste meu e resolvi postar, bom proveito a todos. Basta criar um arquivo em libs com o nome de vip_system.lua e depois em global.lua (dentro do datapack do servidor - pode ser na primeira linha do arquivo), coloque o seguinte código: dofile('data/libs/vip_system.lua') E dentro do arquivo vip_system.lua que você criou em libs add o seguinte código: ------------------------------------------------------------------ -----------------[[ VIP SYSTEM POR LUANLUCIANO ]]----------------- ------------------------------------------------------------------ -- player:doVipTime() function Player.doVipTime(self) local resultId = db.storeQuery("SELECT `vip_time` FROM `accounts` WHERE `id` = '".. self:getAccountId() .."';") return resultId ~= false and result.getDataInt(resultId, "vip_time") or error('Account not found.') end -- player:isVip() function Player.isVip(self) return self:doVipTime() > os.time() and true or false end -- player:addVipDays(days) function Player.addVipDays(self, days) return(self:isVip() and tonumber((days * 86400))) and db.query("UPDATE `accounts` SET `vip_time` = '".. (self:doVipTime() + (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") or db.query("UPDATE `accounts` SET `vip_time` = '".. (os.time() + (days * 86400)) .."' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:removeVip() function Player.removeVip(self) db.query("UPDATE `accounts` SET `vip_time` = '0' WHERE `id` ='".. self:getAccountId() .."' LIMIT 1 ;") end -- player:doVipDate(storage) function Player.doVipDate(self, storage) if self:isVip() then self:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, 'Your vip ends in '.. os.date("%d %b %Y", self:doVipTime()) ..'.') if self:getStorageValue(storage) < 1 then self:setStorageValue(storage, 1) end else if self:getStorageValue(storage) >= 1 then self:teleportTo(self:getTown():getTemplePosition()) self:setStorageValue(storage, 0) end end end As funções são: • player:doVipTime() • player:isVip() • player:addVipTime(days) • player:removeVipTime() • player:doVipDate(storage) Qualquer dúvida ou erro/bug poste aqui. Desculpe o icomodo, eu acho que devo esta quebrando alguma regra do forum, mas preciso muito deste sistema. Nao ta faltando o talkactions para adicionar a vip nos players ingame??
Postado Maio 10, 2015 10 anos Autor @andreoam, amigo eu fiz as funções, você pode usar ela da forma que quiser: uma das maneiras é add a vip por talkaction.
Postado Maio 10, 2015 10 anos @andreoam, amigo eu fiz as funções, você pode usar ela da forma que quiser: uma das maneiras é add a vip por talkaction. Então amigo, os talkactions que eu tenho não funcionou com o seu sistema, sera que você poderia me mandar um?? Editado Maio 10, 2015 10 anos por andreoam (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.