Postado Março 27, 2015 10 anos Ou Luciano onde fica esse Global.lua nao achei mnw. @cliverson, fica dentro da pasta data/ Isso é em tfs 1.0, se a versão do seu for menor não vai existir e nem vai adiantar tente usar esse script do modo que está agora caso a versão do seu servidor seja menor. Editado Março 27, 2015 10 anos por Snowsz (veja o histórico de edições) _ .-'` `} _./) / } .'o \ | } '.___.'`.\ {` /`\_/ , `. } ME DA UMA NOZ! \=' .-' _`\ { `'`;/ `, } _\ @ ; } /__`;-...'--' Cluck!
Postado Abril 5, 2015 10 anos Ola, sou meio leigo ainda na criaçao de otservers, estou precisando aplicar um Vip System, e essa versao se encaixa. Bom minha duvida é como eu trabalho com essas funções (onde eu as aplico) ? Att Sartwood. ludggard.com.br
Postado Abril 6, 2015 10 anos Autor @Sartwood, depende da necessidade: • player:doVipTime() - Retorna o valor do viptime em segundos (igual esta na database).• player:isVip() - Usa-se em algum script para verificar se o player é vip ou não.• player:addVipTime(days) - Usa-se em algum script para para adicionar dias de vip ao player (parâmetro de entrada "days")• player:removeVipTime() - Usa-se em algum script para para remover todo tempo de vip do player.• player:doVipDate(storage) - Retorna uma mensagem no player mostrando a data que termina seu tempo de vip. STYLLER OT 2022
Postado Maio 5, 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. Agora como que eu adicionou a Vip nos palyers pelo god e como que eu cologo pra vender a VIP pelo gesior?
Postado Maio 5, 2015 10 anos Autor @andreoam, no shop do gesior, já vem de padrão ele add o tempo de vip na tabela vip_time, que é a mesma do sistema que estou usando ... STYLLER OT 2022
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.