Pesquisar na Comunidade
Mostrando resultados para as tags ''vipot''.
Encontrado 5 registros
-
Boa galera eu mais uma vez trazendo comodidade e algo seguro pra nós. Esse sistema VIP do Mock foi modificado e aptado em alumas partes dos scripts, para um funcionamento correto e com isso tivemos a ajuda dos scripts, Doidin, Luke sky walker e por min por ter ido atraz de todas as soluções pra completa algo incompleto. Vamos nois: 1° Acesse a pasta data/lib copie la um arquivo.lua e renomeio para 049-vipsys.lua, após isso apague tudo dentro desse arquivo e adicione este coder: vip = { name = "Vip system"; author = "Mock"; version = "1.0.0.0"; query="ALTER TABLE `accounts` ADD `vip_time` INTEGER"; query2="ALTER TABLE `accounts` ADD `vip_time` INT(15) NOT NULL" } function vip.setTable() dofile('config.lua') if sqlType == "sqlite" then db.executeQuery(vip.query) else db.executeQuery(vip.query2) end end function vip.getVip(cid) assert(tonumber(cid),'Parameter must be a number') if isPlayer(cid) == FALSE then error('Player don\'t find') end; ae = db.getResult("SELECT `vip_time` FROM `accounts` WHERE `name` = '"..getPlayerAccount(cid).."';") if ae:getID() == -1 then return 0 end local retee = ae:getDataInt("vip_time") or 0 ae:free() return retee end function vip.getVipByAcc(acc) assert(acc,'Account is nil') local a = db.getResult("SELECT `vip_time` FROM `accounts` WHERE `name` = '"..acc.."';") if a:getID() ~= -1 then return a:getDataInt("vip_time") or 0, a:free() else error('Account don\'t find.') end end function vip.setVip(cid,time) dofile("config.lua") assert(tonumber(cid),'Parameter must be a number') assert(tonumber(time),'Parameter must be a number') if isPlayer(cid) == FALSE then error('Player don\'t find') end; db.executeQuery("UPDATE `"..sqlDatabase.."`.`accounts` SET `vip_time` = '"..(os.time()+time).."' WHERE `accounts`.`name` ='".. getPlayerAccount(cid).."';") end function vip.getVipByAccount(acc) assert(acc,'Account is nil') return db.getResult("SELECT `vip_time` FROM `accounts` WHERE `name` = '"..acc.."';"):getDataInt("vip_time") or 0 end function vip.hasVip(cid) assert(tonumber(cid),'Parameter must be a number') if isPlayer(cid) == FALSE then return end; local t = vip.getVip(cid) or 0 if os.time(day) < t then return TRUE else return FALSE end end function vip.hasVips(cid) assert(tonumber(cid),'Parameter must be a number') if isPlayer(cid) == FALSE then return end; local t = vip.getVip(cid) if os.time(day) < t then return TRUE else return FALSE end end function vip.accountHasVip(acc) assert(acc,'Account is nil') if os.time() < vip.getVipByAccount(acc) then return TRUE else return FALSE end end function vip.getDays(days) return (3600 * 24 * days) end function vip.addVipByAccount(acc,time) assert(acc,'Account is nil') assert(tonumber(time),'Parameter must be a number') local a = vip.getVipByAcc(acc) a = os.difftime(a,os.time()) if a < 0 then a = 0 end; a = a+time return vip.setVipByAccount(acc,a) end function vip.setVipByAccount(acc,time) dofile("config.lua") assert(acc,'Account is nil') assert(tonumber(time),'Parameter must be a number') db.executeQuery("UPDATE `accounts` SET `vip_time` = '"..(os.time()+time).."' WHERE `accounts`.`name` ='"..acc.."';") return TRUE end function vip.returnVipString(cid) assert(tonumber(cid),'Parameter must be a number') if isPlayer(cid) == TRUE then return os.date("%d %B %Y %X ", vip.getVip(cid)) end end 2° Abra a pasta data/creaturescrpits/scripts copie la um arquivo.lua e renomeio para vip.lua, dentro dele adicione: By Lukeskywalker function onLogin(cid) local temple = { x =32369, y = 32246, z = 6} if vip.hasVip(cid) == true then if getPlayerStorageValue(cid,55555) ~= 1 then setPlayerStorageValue(cid,55555,1) end else if getPlayerStorageValue(cid,55555) == 1 then doTeleportThing(cid, temple) doPlayerSendTextMessage(cid, 22, "Your VIP Time over!") db.executeQuery("UPDATE `accounts` SET `vip_time` = 0 WHERE `id` = ".. getAccountIdByName(getPlayerName(cid))..";") setPlayerPromotionLevel(cid, 1) setPlayerStorageValue(cid, 55555, 0) end end return true end Você pode troca as coordenadas do templo: local temple = {x=32369, y=32246, z=6}. 3° Em data/creaturescripts/scripts/login.lua adicione essas tags: registerCreatureEvent(cid, "FimVip") registerCreatureEvent(cid, "VipReceive") 4° Em data/creaturescripts/creaturescripts.xml adicione está tag: <event type="login" name="FimVip" event="script" value="vip.lua"/> 5º Em data\movements\scripts copie la um arquivo.lua e renomeio para viptile.lua e adicione este coder dentro do mesmo: function onStepIn(cid, item, position, fromPosition) local tileConfig = { kickPos = fromPosition, kickEffect = CONST_ME_POFF, kickMsg = "You need to be a vip player to access this area.", enterMsg = "Welcome to vip area!", enterEffect = CONST_ME_MAGIC_RED, } if isPlayer(cid) == true then if vip.hasVip(cid) == FALSE then doTeleportThing(cid, tileConfig.kickPos) doSendMagicEffect(tileConfig.kickPos, tileConfig.kickEffect) doPlayerSendCancel(cid, tileConfig.kickMsg) return end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, tileConfig.enterMsg) doSendMagicEffect(position, tileConfig.enterEffect) return true end end 6° Em data\movements\movements.xml adicione a tag: <movevent type="StepIn" actionid="13500" event="script" value="viptile.lua"/> Vejam a numeração 13500 você irá usar no tile que você quer para a passagem de player VIP para configurar adicione a numeração em ActionID do tile. 7° Em data/talkactions/scripts acrecente dentro da pasta scripts uma outra pasta com o nome VIP vamos precisar de 7 arquivos.lua quem teram os nomes e coder a seguir: add.lua function onSay(cid, words, param, channel) doPlayerSendCancel(cid, "Added "..param.." Vip Days.") return doPlayerAddVipDays(cid, param) end addvipp.lua function onSay(cid, words, param) if param == "" then return doPlayerPopupFYI(cid,"Está com problemas?\nAprenda os comandos!\n---------------\nAdicionar vip:\n/vip add days player\n/vip add 30 Real\n---------------\nDeletar vip:\n/vip del player\n/vip del Real\n---------------\nVer a vip:\n/vip see player\n/vip see Real\n---------------\n") end if param:lower():find('add') == 1 and 3 then local _,_,id,name = param:lower():find('add (%d+) (.+)') name = name or "" id = tonumber(id or 1) or 1 if tonumber(id) == nil or getPlayerByName(name) == false then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"Adicionar vip:\n/vip add days player\n/vip add 30 Real\n[Player: "..name.."]") end if isPlayer(getPlayerByName(name)) == TRUE then vip.addVipByAccount(getPlayerAccount(getPlayerByName(name)) ,vip.getDays(id)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Foram adicionados "..tonumber(id).." dias de vip a "..name..".") doPlayerSendTextMessage(getPlayerByName(name),MESSAGE_INFO_DESCR,"Você recebeu "..tonumber(id).." dias de vip.") else doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,name.." não esta online ou não existe.") end elseif param:lower():find('del') == 1 and 3 then local _,_,name = param:lower():find('del (.+)') if getPlayerByName(name) == false then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"Deletar vip:\n/vip del player\n/vip del Real\n") end vip.setVipByAccount(getPlayerAccount(getPlayerByName(name)),-os.time()) doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"A vip de "..name.." foi apagada.") elseif param:lower():find('see') == 1 and 3 then local _,_,name = param:lower():find('see (.+)') name = name or "" if getPlayerByName(name) == false then return doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"Ver a vip:\n/vip see player\n/vip see Real\n") end local ret_ = vip.getVip(getPlayerByName(name)) if ret_ == 0 then return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,name.." Não tem vip, e nunca teve.") else return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "A vip de "..name.." Acaba/terminou em "..os.date("%d %B %Y %X ",ret_)) end end return TRUE end get.lua function onSay(cid, words, param, channel) doPlayerSendCancel(cid, ""..getPlayerVipDays(cid).." days VIP left.") end is.lua function onSay(cid, words, param, channel) if isPlayerVip(cid) == TRUE then doPlayerSendCancel(cid, "You are a VIP player.") else doPlayerSendCancel(cid, "You are not a VIP player.") end end removevip.lua function onSay(cid, words, param, channel) doPlayerSendCancel(cid, "Vip removed.") return doPlayerRemoveVip(cid) end set.lua function onSay(cid, words, param) if vip.hasVip(cid) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your vip end in "..os.date("%d %B %Y %X ",vip.getVip(cid))) else if vip.getVip(cid) ~= 0 then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You're not a vip player. Your vip has finished in "..os.date("%d %B %Y %X ", vip.getVip(cid)).." and now is "..os.date("%d %B %Y %X ", os.time())) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You're not a vip player. You naver has a vip.") end end return TRUE end 8°Em data/talkactions/talkactions.xml adicione está tag: <!-- VIP System --> <talkaction log="yes" words="/vip" access="5" event="script" value="VIP/addvipp.lua" /> <talkaction words="!vipdays" event="script" value="VIP/vipdays.lua" /> 9° Para finalizar execute este comando na sua database na tabela accounts: alter table `accounts` add `vip_time` INT NOT NULL; Bom galera fim este sistema vip adiciona os dias corretos e ao termino do VIP o player recebe a menssagem que o VIP acabou é teleportado pro templo porque se no caso ele estiver na área VIP essa é uma saida e zera a coluna vip_time. Creditos: Mock (por ter iniciado algo e não terminou) Lukeskywalker (Sistema de finalização perfeito do vip.) Natan Beckman (Por ter ido atrás a conclusão 100% in game e php)
- 59 respostas
-
- vipaccount
- vipsystem
- (e 6 mais)
-
Infinity-Sky Mapa [ Exclusivo ] New : Novas itens do shop como [ addon doll , wand the cosmic , axe the fire , club the onix , sword of the warlord vip de todos os dias e infinito , sets editados ]; Spells Igual; Versao 8.6; Zombie Event Funcionando; Dota Funcionado; War of Imperium Funcionando; Task Funcionando; Guild War com Escudos; [ VIP ] no nome Para players vips; Houses sem bug; Quest para itens vip; Bugs Reparados: Adm cria iten pelo comando /i id; Demon Helmet Quest arrumado; Bug da house da frente do templo arrumado; Bug de não ter vip mais pode acessar area arrumado; Bug da anihi arrumado; Database bug arrumado; Detalhes: Sql studio v.2.0.24 ja junto com o OTserver; configs dos events na pasta do OTserver; Pasta database ja com o OTserver; Distro junto com a pasta do OTserver; -- ScreeShoots : 1 Imagen Itens Free Clique Aqui 2 Imagem Events Clique Aqui 3 Imagen Trainers Clique Aqui 4 Imagen Vip Area Clique Aqui 5 Imagen Teleports Free Clique Aki Creditos: XFare: Subwat: OhGod: Download Aqui Não consegui fazer o scan entao peço que alguem faça para mim Senha do god ve na sql studio ou aki > admin/123456 Não se esqueça ajudei ? REP+ agradeço desde já!
-
Está esperando oque? Entre no Brutal Server, um dos maiores e melhores servidores 999x brasileiros online, inaugurado dia 30/07/2013! ~ Algumas Vantagens ~ • Servidor completo, com mais de 40 teleports free! • Servidor sem LAG algum, Dedicado nos Estados Unidos da America! • Servidor completo com area de trainers, e eventos automaticos! • Servidor com experiencia por stages! • Servidor com itens novos, e regulados para todas as vocações! • Knights,Paladins,Druids,Mages, com novas spells, runas... • Vocações balanceadas, PVP Completo! • Mais de 552 houses livres no servidor! • Mais de 6 cidades (Incluindo cidades do global!) • Muitas quests novas (Incluindo quests do global!) • Mais de 20 Monstros novos (EXCLUSIVO) • WebSite com recursos unicos e ineditos! • Servidor com recursos unicos e ineditos! • Equipe intensa e atenciosa! • Sem Ping / Latencia / Frezzes! • Grande comunidade ( grandes jogadores) • Pagina do servidor no Facebook! • Mapa RPG! • Areas exclusivas com o uso de intes novos (8.60) • Servidor baseado em grades servers, com varias partes inspiradas em grandes servidores! ~ Informações basicas sobre XP/Skills ~ • Experiencia (1000x) por stages! • Skills Up : 999x • Magic Up : 999x • Loot Rate : 4x • Spawn Rate 2x • Versão : 8.60 ~ Events : • Castle War (Com huntes unicas para guilds vencedoras!) • Zombie Event (Iniciado pelo ADM) • DOTA (Confronto entre guilds com recompensa!) • Borboleta Event OBS: A Conta do personagem pode ser criada no site ou pelo proprio servidor com o gerenciador de contas, ACCOUNT:1 / SENHA:1
-
[Encerrado][RECRUTO] MAPPER VIP Open Tibia
um tópico no fórum postou mkbrabsolute Formação de Equipes
Bom Dia, Boa Tarde, Boa Noite queridos XTIBIANOS! Eu, Lucas estarei reabrindo o servidor VIP Open Tibia, creio que muitos conheçam, é um servidor mapa slayer yurots, mega editado, com monstros, magias próprias, eventos próprios e exclusivos. VIP Open Tibia é um servidor que bateu 350 jogadores ativos, um servidor preparado. Preciso de mapper para ajudar em updates constantes, modificações, novidades entre demais coisas, eu sou programador, scripter e designer. Caso algum mapper de qualidade, que esteja bem nesta área queira ajudar e fazer parte dessa equipe que promete novamente, entre em contato comigo via skype. Trabalho com hosts, proteções e tudo mais, no entanto isto é tudo por minha conta, preciso da mão de obra. Segue abaixo uma imagem do servidor: Aguardo o contato. Skype: lu.lukinha Atenciosamente, Lucas, BRLGAMES. -
Ola pessoal cá estou eu de novo. Este servidor é 100% baseado no OpenTibia SVN, ou sejá, este server não possui uma versão SQLite, este server não possui Account Manager, ou seja... este server é apenas para quem sabe mexer com xampp e website. Mas vamos mas é falar do mapa. • O Que Contêm no Servidor: + Scripts. + Maps. + Pack de Monstros 100 % Proprios. + Milhares NPC'S,um File para Cada NPC. + War System. + TFS 0.4 DEV Rev: 3884 com War System Já Compilado. +Varios Teleportes free e Vip + Varias hunts por level + Mapa proprio com uma nova cidade e varias hunts implantadas • Lista Das Principais Quests (Todas Funcionando 100%): + The Annihilator Quest + Demon Helmet Quest + Firewalker Boots Quest + The Inquisition Quest + The Pits of Inferno Quest + Sless Set + The Demon Oak Quest + Quest de dias Vip + Quest de addon doll +Entre outras Prints Area 2k Vários Teleportes SCAN SERVIDOR DOWNLOAD WEBSITE SCAN WEBSITE SCAN BD Créditos: Thales Valentim CrAzYboY Márcio Silva +*Nota: o server esta ainda incompleto mas ja esta jogável, eu adicionei aos itens iniciais um item que da 100 points no website se quiserem retirem, como estou sem tempo para corrigir alguns bugs que ainda tem principalmente nos eventos partilho com vocês. Bom Jogo