Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 01/26/18 em todas áreas

  1. one piece client

    Nazo e um outro reagiu a Nogard por uma resposta no tópico

    2 pontos
    Dei uma mexida em um client e gostaria de opiniões:
  2. 1 ponto
    Dragon Ball Rox Servidor 100% estável com mais de 200 horas online. 38 Vocações sendo 9 delas vip que são: Shenron,Vegetto,Zaiko,Kagome,Tapion,Kame Chilled,C8 e King Vegetta. Spells de fast attack (Usa uma vez sai 10 hits). Eventos automaticos como: Castle,Battlefield,Run event. Reborn level maximo 600. Vamos aos bugs que eu encontrei: * Zombie event quando o zombie pega algum player todos do evento e mandando pra fora e evento encerra. * Erro quando usa spell e a pessoa morre antes da spell acabar no caso das de combo. * Erro nos eventos Battlefield e Run event quando vai adicionar a recompensa da erro por faltar uma tabela na database que não me recordo o nome agora. Update v2 Adicionado 7 novas vocações vips sendo elas: Bills,Whiss,Golden Freeza,Vegetto Blue,Zamasu,Gogeta Blue e Goku Black Evo. Adicionado 3 vocações free sendo elas: Zeno, Vados e Vegetto Black. Vocações que antes era vip no update v1 agora são free. Fazer reborn não precisa mais fazer quest das esferas do dragão. Adicionado cassino que se ganha small diamonds que se troca por: Divine Stone(Usado para upgrade), Black Stone (Item para virar Vegetto Black) e Leviathan Amulet. Adicionado npc que vende Anti Loss Ring Protege 10% contra todos danos e funciona como a band of loss porem infinita. Ele fica no Yama. Adicionado sistema de pontuação por hora online, cada 1 hora online = 1 ponto que se pode trocar por itens no npc Points Trader no Yama. Adicionado sistema Anti-MC, podendo logar somente 2 contas por ip. Adicionado 3 bosses espalhados pelo mapa (Earth). Adicionado sistema de forja podendo criar o melhor set, armas free e o item para virar Zeno. Adicionado sistema de upgrade fazendo seu item ficar mais forte. Adicionado transformação ultra god para todas as vocações, sendo pega no templo de reset ao lado do esquerdo do templo. Necessário ter level 800 e possuir 100 God Essences que dropam do Ultra God Bills em God Island.Para entrar no templo de reset é necessário possuir 1 reset, para dar reset necessita ter level 800 e digitar o comando "!reset", você voltara para o level 100 com o hp/mp de um player level 100 mas ganhara acesso a área de reset que tem o npc de ultra god e a área de forja. Nova moeda acima de Gold sendo ela Blue God equivalente a 100 Gold Bars. Area de evento pvp e dice/bag adicionada no Yama. Area vip adicionada. Adicionado 2 sets novos free, 2 armas free, 2 shields free, senzu free (God Senzu), Senzu vip (Mystic Senzu), Vados staff free, Whiss staff vip. Vocações que antes era vip na v1 se pega na capsule ao lado direito do templo. Algumas modificações no mapa, hunts, quest. Por enquanto é só isso que estou lembrando,conforme eu lembro edito o tópico. Gostou ? Clique em Gostei logo abaixo. Para consertar o erro da loteria só executar essa query na sua database: CREATE TABLE `lottery` ( `id` int(11) NOT NULL auto_increment, `name` varchar(255) NOT NULL, `item` varchar(255) NOT NULL, `world_id` tinyint(2) unsigned NOT NULL default '0', `item_name` varchar(255) NOT NULL, `date` varchar(256) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1; Downloads Server (Distro para windows e linux já compilada) Scan Cliente Scan Sources Scan Site (Modern Acc) Scan Database Scan Creditos server: Kramer, WhiteBubble Creditos site: @Hastafaru e a WhiteBubble por adaptar ao server Creditos source: Fir3element e WhiteBubble por aumentar limite de efeitos e por skill fist skill para aumentar attack speed.
  3. [OPEN-SOURCE] PokeChampions

    Druidzin reagiu a Matt Shadows por uma resposta no tópico

    1 ponto
    Olá Caros membros, hoje estou trazendo um servidor para vocês no qual eu fui contratado para adaptar uma source, me "calotaram" e eu achei justo postar a base adaptada. Desfrutem...
  4. Global 11/12x [v32] - New Falcons - New Asuras - Warzone 4,5,6 - Exercise Training - Raids 100% - Monstros 100% - Trainer Offline 100% - Trainer Online 100% - Taming system funcionando 100%; - Database completa - War System 100% - Global MAP Full - Store 100% - Imbuement - Prey System - Entre outros sistemas. Projeto no: GITHUB Scan Vírus Total IMAGES Créditos:
  5. [TFS 1.2+] Invite Players System!

    Jeff Delay reagiu a Vodkart por uma resposta no tópico

    1 ponto
    Resumo: Para quem já jogou league of legends, o sistema é "parecido" com o Invite Friends, e para quem não jogou irei dar uma breve descrição sobre o sistema. Descrição: O sistema oferece algumas premiações como: Itens, Premium Days, Montarias, Premium Points(para site) e Outfits. Claro que isso tudo é configurável. A ideia principal do sistema foi que essas premiações fossem exclusivas do sistema, digamos, que os jogadores só fossem recompensados e tivessem certas montarias/outfits se ele atingisse num número "X" de pontos por ter ajudado seu servidor a crescer! Como todo mundo almeja algo exclusivo e difícil de ser obtido, iria instigar os jogadores a usar o sistema e convidar seus amigos para o servidor! Como Funciona o Sistema? O sistema foi planejado para que jogadores "espertinhos" não burlassem o sistema e acontece da seguinte maneira: Temos o jogador João e a jogadora Maria: Maria necessita ser level 30 ou menor que 30(Configurável) para utilizar uma talkactions e dizer por quem foi invitada para o servidor, vamos supor que João a convidou Maria para jogar, João por sua vez necessita também ter um level avançado, digamos 50 ou superior(Configurável). Feito com sucesso o uso do sistema, ele funciona da seguinte maneira: OBS: Você pode dizer o nome do jogador mesmo que ele esteja OFFLINE! OBS2: Um ou mais Players podem ser invitador pelo MESMO JOGADOR! ENTÃO QUANTO MAIS PLAYER VOCÊ CHAMAR, MAIS FÁCIL DE RECEBER PONTOS E PREMIAÇÕES O jogador invitado, no caso o João, teria que atingir um número "X" de pontos para receber premiações, por exemplo: * Com 10 Pontos jogão recebe: Itens * Com 25 Pontos jogão recebe: Itens e Premium Points * Com 50 Pontos jogão recebe: Itens e Montaria * Com 100 Pontos jogão recebe: Itens, Premium Points, Premium Days e Outifit (Claro que isso é tudo configurável em uma Tabela) E como recebo Recebo esses Pontos VODKART SEU FILHO DA PUTA! Se lembra que João Convidou Maria para Jogar? Então... Maria tem que atingir certos leveis para que João receba esses pontos! Por exemplo a tabela do sistema: levels_win = { [50] = 5, [80] = 6, [100] = 8, [150] = 10 }, Se Maria atingir level 50, João recebe 5 pontos Se Maria atingir level 80, João recebe 6 pontos Etc... Claro que isso tudo é acumulativo! E sabe o que mais? João recebe Pontos mesmo se estiver ONLINE ou OFFLINE! Sem mais delongas, Vamos instalar o sistema! Instalando o Sistema: data\creaturescripts\scripts InviteFriends.lua function onLogin(player) player:registerEvent("FriendsPoints") if player:getStorageValue(_invite_friends.storages[1]) < 0 then player:setStorageValue(_invite_friends.storages[1], 0) player:setStorageValue(_invite_friends.storages[4], 0) end if getInvitePoints(player) > 0 then local acc = player:getAccountId() local FriendPoints, CheckPoints = getInvitePoints(player), player:getStorageValue(_invite_friends.storages[4]) for vod, ka in pairs(_invite_friends.rewards) do local str = "" if FriendPoints >= vod and CheckPoints < vod then str = str.."--> Invite Players System <--\n\nVocê acaba de receber algumas recompensas:\n\nItems: \n"..getItemsFromList(ka.items)..".\n\n" if ka.p_days > 0 then player:addPremiumDays(ka.p_days) str = str.."Premium Days:\n"..ka.p_days.." Premium Days." end if ka.p_points > 0 then db.executeQuery('UPDATE accounts SET premium_points=premium_points+' .. ka.p_points ..' WHERE id=' .. acc) str = str.."Premium Points:\n"..ka.p_points.." Premium Points." end if ka.out[1] > 0 then player:addOutfitAddon(player:getSex() == PLAYERSEX_FEMALE and ka.out[1] or ka.out[2], 3) str = str.."[New Outfit]\nRecebeu uma Nova Outfit." end if ka.mount_id > 0 then player:addMount(ka.mount_id) str = str.."[New Outfit]\nRecebeu uma Nova Montaria." end player:setStorageValue(_invite_friends.storages[4], FriendPoints) local town_id = player:getTown():getId() if #ka.items > 0 then local parcel = player:getDepotChest(town_id, true):addItem(2595) for _, i_i in ipairs(ka.items) do local item, amount = i_i[1],i_i[2] if isItemStackable(item) or amount == 1 then parcel:addItem(item, amount) else for i = 1, amount do parcel:addItem(item, 1) end end end end local townid = player:getTown():getId() local letter = player:getDepotChest(town_id, true):addItem(2598, 1, true, 1) letter:setAttribute(ITEM_ATTRIBUTE_WRITER, "[+] Invite Players System [+]") letter:setAttribute(ITEM_ATTRIBUTE_TEXT, str) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE,"[Invite Players System] Você Recebeu algumas premiações por estar convidando jogadores para o servidor, Por favor conferir os itens no Depot.") end end end return true end function onAdvance(player, skill, oldlevel, newlevel) if (skill == SKILL__LEVEL) then if hasInviteFriend(player) and player:getStorageValue(_invite_friends.storages[3]) < newlevel and _invite_friends.levels_win[newlevel] then local f_name, points = getNameFriend(player), _invite_friends.levels_win[newlevel] player:setStorageValue(_invite_friends.storages[3], newlevel) addInvitePoints(f_name, points) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[Invite Friends] você atingiu o level "..newlevel.." e o seu amigou "..f_name.." recebeu "..points.." Friend Points. Obrigado!") end end return true end creaturescripts.xml <event type="advance" name="FriendsPoints" script="InviteFriends.lua"/> <event type="login" name="FriendsLogin" script="InviteFriends.lua"/> data\lib\core _invite_friends = { storages = {202301, 202302, 202303, 202304}, -- points, jogador, recompensa lvl, recompensa items level_max = 30, -- até que level ele precisa falar seu friend level_need = 50, -- que lever o jogador precisa ser para ganhar pontos levels_win = { [50] = 5, [80] = 6, [100] = 8, [150] = 10 }, rewards = { [10] = {items = {{2160,1},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [25] = {items = {{2160,2},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [50] = {items = {{2160,3},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [100] = {items = {{2160,4},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [200] = {items = {{2160,5},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [250] = {items = {{2160,6},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0, 0}}, [500] = {items = {{2160,7},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}} } } function getInvitePoints(cid) local cid = Player(cid) if cid == nil then return false end return getPlayerStorageValue(cid, _invite_friends.storages[1]) < 0 and 0 or getPlayerStorageValue(cid, _invite_friends.storages[1]) end function hasInviteFriend(cid) local cid = Player(cid) if cid == nil then return false end return getPlayerStorageValue(cid, _invite_friends.storages[2]) > 0 and true or false end function getNameFriend(cid) local cid = Player(cid) if cid == nil then return false end return getPlayerNameByGUID(getPlayerStorageValue(cid, _invite_friends.storages[2])) end function addInvitePoints(name, amount) local pid, Guid = getPlayerByName(name), getPlayerGUIDByName(name) if not pid then local getFriendPoints = db.storeQuery("SELECT `value` FROM `player_storage` WHERE `player_id` = ".. Guid .." AND `key` = ".._invite_friends.storages[1]) if getFriendPoints ~= false then db.asyncQuery("UPDATE `player_storage` SET `value` = ".. (result.getDataInt(getFriendPoints, "value")+amount) .." WHERE `player_id` = ".. Guid .." AND `key` = ".._invite_friends.storages[1]) end else setPlayerStorageValue(getPlayerByName(name), _invite_friends.storages[1], getInvitePoints(getPlayerByName(name))+amount) end return true end function getItemsFromList(items) -- by vodka local str = '' if table.maxn(items) > 0 then for i = 1, table.maxn(items) do str = str .. items[i][2] .. ' ' .. ItemType(items[i][1]):getName() if i ~= table.maxn(items) then str = str .. ', ' end end end return str end function getPlayerNameByGUID(guid) local a = db.storeQuery('SELECT `name` FROM `players` WHERE `id` = ' .. guid .. ' LIMIT 1') if a then return result.getDataString(a, "name") end return nil end function PlayerExist(name) -- by vodka local a = db.storeQuery('SELECT `id` FROM `players` WHERE `name` = ' .. db.escapeString(name)) if a ~= false then return true end return false end Na mesma pasta procure por data\lib\core.lua e adicione essa linha: dofile('data/lib/core/invitefriends.lua') data\talkactions\scripts InviteFriends.lua function onSay(player, words, param) local param = param:lower() if param == "" or not param then player:sendCancelMessage("Você precisa digitar o nome de um jogador.") return false elseif param == "points" then player:popupFYI("[+] Invite Friend System [+]\n\nvocê tem ["..getInvitePoints(player).."] Friends Points.") return false elseif hasInviteFriend(player) then player:sendCancelMessage("Você já agradeceu o jogador ["..getNameFriend(player).."] por te convidar a jogar neste servidor.") return false elseif not getPlayerGUIDByName(param) then player:sendCancelMessage("Desculpe, mas o jogador [" .. param .. "] não existe.") return false elseif player:getLevel() > _invite_friends.level_max or result.getDataInt(db.storeQuery("SELECT `level` FROM `players` WHERE `id` = "..getPlayerGUIDByName(param)), "level") < _invite_friends.level_need then player:sendCancelMessage((player:getLevel() > _invite_friends.level_max and "Desculpe, mas você precisa ter no maximo level ".._invite_friends.level_max.." para usar este comando." or "Desculpe, mas o jogador ["..param.."] precisa ter no minimo level ".._invite_friends.level_need.." para ser escolhido.")) return false elseif player:getName():lower() == param then player:sendCancelMessage("Desculpe, mas você não pode se auto invitar.") return false end player:setStorageValue(_invite_friends.storages[2], getPlayerGUIDByName(param)) player:sendTextMessage(25, "Você indicou o jogador "..param..", este sistema é uma forma de agradecer a vocês por trazerem seus amigos para jogar.") player:getPosition():sendMagicEffect(math.random(28,30)) return false end talkactions.xml <talkaction words="!invited" separator=" " script="InviteFriends.lua"/> Exemplo de uso do comando: Vodkart me chamou para jogador? uso o comando: !invited vodkart Configurando o Sistema: *Vá na LIB do sistema que você adicionou* level_max = 30, -- até que level ele precisa falar seu friend level_need = 50, -- que lever o jogador precisa ser para ganhar pontos levels_win = { -- [LEVEL QUE PRECISA ATINGIR] = QUANTIDADE DE PONTOS QUE O OUTRO JOGADOR VAI RECEBER [50] = 5, [80] = 6, [100] = 8, [150] = 10 } rewards = { [10] = {items = {{2160,1},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [25] = {items = {{2160,2},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [50] = {items = {{2160,3},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [100] = {items = {{2160,4},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [200] = {items = {{2160,5},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, [250] = {items = {{2160,6},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0, 0}}, [500] = {items = {{2160,7},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}} } rewards = { [PONTOS NECESSÁRIO PARA OBTER A PREMIAÇÃO] = exemplo: [10] = {items = {{2160,1},{2173,1}}, p_days = 0, mount_id = 0, p_points = 0 , out = {0,0}}, com 10 pontos ele irá rceber aquele itens acima /\ items = {} -- Poderá adicionar itens em uma tabela dizendo {id do item, quantidade} p_days = 0 -- se o jogador vai receber Premium Days? 0 ou Quantidade que vc deseja dar mount_id = 0 -- Se o jogador vai receber montaria? Colocar o Mount ID(que fica em mounts.xml) Ou deixar 0 para nenhuma p_points = 0 -- se o jogador vai receber Premium Points? 0 ou Quantidade que vc deseja dar out = {0,0} -- se vai recever outfit? {FEMALE, MALE} OU {0 , 0} para nenhuma
  6. [CTF] Capture The Flag 2.0(Automático)

    Deathstroke reagiu a MaXwEllDeN por uma resposta no tópico

    1 ponto
    #Introdução Este é um sistema de rouba bandeira, no qual tem dois times que se enfrentam e tentam se infiltrar na fortaleza do inimigo, roubar a bandeira dele e retornar para sua base com ela. #Instalação Faça o download do sistema (anexado ao tópico) e cole na pasta do seu servidor. Atualizado 28/03/2014 Após ter instalado os arquivos nas suas respectivas pastas e instalado as tags nos arquivos xml, abra a pasta do seu servidor, e em seguida abra a pasta spells/scripts/support, e abra o arquivo invisible.lua com algum editor de texto, depois de function onCastSpell(cid, var) cole isso: if (getPlayerStorageValue(cid, 16700) ~= -1) then return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2) end ficando assim: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_INVISIBLE) setConditionParam(condition, CONDITION_PARAM_TICKS, 200000) setCombatCondition(combat, condition) function onCastSpell(cid, var) if (getPlayerStorageValue(cid, 16700) ~= -1) then return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2) end return doCombat(cid, combat, var) end #Configuração Como na maioria dos meus códigos: as configurações ficam na lib, então: waitpos = {x = 93, y = 117, z = 6}, -- Posição da sala de espera tppos = {x = 92, y = 117, z = 7}, -- Onde o TP vai aparecer days = {2, 5, 7}, -- Dias que o evento vai abrir xp_percent = 0.5, -- Porcentagem de xp que o player vai receber quando ganhar timeclose = 1, -- Tempo para iniciar o CTF winp = 10, waitpos = {x = 93, y = 117, z = 6}, -- Posição da sala de espera Posição onde os players que entrarem no teleport vão ficar esperando, até o evento iniciar tppos = {x = 92, y = 117, z = 7}, -- Onde o TP vai aparecer Posição de onde o teleport vai aparecer days = {2, 5, 7}, -- Dias que o evento vai abrir Dias que o evento vai iniciar. xp_percent = 0.5, -- Porcentagem de exp que o player vai ganhar Quando o evento acaba, os players da equipe que venceu ganham uma quantidade de experiência baseada na experiência que eles já têm, exemplo: Meu player tem 1200000000 de exp, quando o evento acabar, ele vai ganhar 0.5% da exp que ele tem, no caso desse exemplo 6000000 de exp. timeclose = 1, -- Tempo, em minutos, para iniciar o CTF Tempo para o teleport sumir e os players que estão na sala de espera serem teletransportados para o evento. winp = 10, -- Quantos pontos uma equipe precisa marcar para vencer Quantos pontos uma equipe precisa marcar para vencer o evento. Para configurar o horário que o evento vai abrir, é só você modificar na tag do globalevents.xml: <globalevent name="CTFCheck" time="19:33:00" event="script" value="CTFMax.lua"/> Você não precisa criar as bandeiras pelo map editor. O script irá adicioná-las automaticamente. É isso, essa versão é uma remake, vários bugs reportados pela galera na v.1 foram corrigidos, o script ficou mais simples Capture The Flag.rar
  7. Job System

    ADM Mayk on BaiakME reagiu a Dwarfer por uma resposta no tópico

    1 ponto
    ACABOU A MOLEZA! Você que sempre fez os NPC's trabalharem dia e noite, disponíveis a qualquer momento mesmo que seja apenas para receber um "hi, buy rope, yes". A COISA MUDOU! Agora você vai ter que ralar. E olhe que os monstros estão com muito gold para gastar devido às mortes de aventureiros, despreparados de AOL ou de bençãos, que acabam por deixar dinheiro nas suas backpacks. VÁ TRABALHAR, SEU VAGAB..! Depois dessa ladainha toda, estava eu testando algumas funções, umas coisitas aqui e ali e ao misturar tudo saiu isso aí meio que sem querer. Tem uns pontos que podem ser melhorados, mas como disse serviu apenas como uns testes para mim, mas resolvi compartilhar, mesmo sendo simplesinho. Acho que será útil para servidor com um pouquinho de RPG. Testado em TFS 0.4 e versão 8.60. O Job System é um sistema no qual o player atenderá pedidos dos monstros. Cada pedido correto, o player ganha 1 job point que pode ser utilizado para comprar itens no npc ou como você queira fazer, em quests, acessos, seja lá o que for. O funcionamento é demonstrado no vídeo abaixo: Segue o código do sistema (MOD) e do NPC. jobsystem.xml CONFIGURAÇÃO: Desde que configure corretamente o mapa, não tem praticamente nada para modificar. monsters = { [1] = {"Amazon", "Dwarf", "Elf Scout"}, [2] = {"Barbarian Bloodwalker", "Dwarf Guard", "Warlock"}, [3] = {"Vampire Bride", "Dwarf Geomancer", "Infernalist"} } times = { deal = 30, lever = 2 } Aqui deal é o tempo em segundos entre cada pedido. Lever é o tempo em minutos para poder usar a alavanca novamente. Aconselho deixá-los nesses valores, já testei e funcionou certinho assim. A configuração ocorre praticamente no mapa: 1 - Crie uma "loja" do mesmo tamanho e com a mesma configuração que as mostradas no vídeo e na imagem abaixo. Apenas com a posição do meio livre. Não importa a "orientação" da loja. A única exigência é que a alavanca sempre esteja do lado do braço direito do char, conforme a imagem. MUITO IMPORTANTE: NÃO USE ITENS STACKABLES NA LOJA 2. Definindo o rank da loja: ALAVANCA DE ACTION ID: 4421 - Rank Apprentice 4422 - Rank Merchant 4423 - Rank Rashid 3. Todos os itens que não devem ser arrastados (itens da loja ou de decoração que não devam ser arrastados como o royal axe que mostrei lá no vídeo) devem receber o actionid 4420. 4. Os pisos onde os monstros serão criados devem ter actionid 4420. Além disso, ser área no-pvp e no logout (apenas por precaução). 5. Toda a área restante deve ser Protection Zone (PZ). Além disso, os locais do centro da loja onde os players ficarão devem ser No Logout Area. Dwarfer.xml job.lua Configuração do NPC: promote = {tomerchant = 50, torashid = 100}, tomerchant = 50 -> São necessários 50 pontos no rank Apprentice para avançar torashid = 100 -> São necessários 100 pontos no rank Merchant para avançar entice_rank = {-- Apprentice [2154] = {price = 1}, [2158] = {price = 3}, [2155] = {price = 7}, [2156] = {price = 100} }, merchant_rank = { -- Merchant [1998] = {price = 15}, [5950] = {price = 25}, [1987] = {price = 70}, [2402] = {price = 100} }, rashid_rank = { -- Rashid [9993] = {price = 15}, [9992] = {price = 25}, [9992] = {price = 70}, [7399] = {price = 100}} } [id_do_item] = {price = preço do item} que aparecerá na lista do NPC. É isso aí, seus vagal's
  8. Reestruturação do Fórum

    KotZletY reagiu a Bruno Carvalho por uma resposta no tópico

    1 ponto
    Olá membros do TibiaKing, realizamos diversos updates em nossa comunidade para torna-la um lugar ainda melhor para vocês usuários que aqui habitam. Este já é o segundo grande update do mês e vamos ao que interessa! MUDANÇA ESTRUTURAL Já faz alguns anos que não tivemos uma reestruturação global em nossa comunidade. E desta vez ela foi feita junto aos membros em uma reunião aberta feita em nosso grupo no discord. Mudanças Significativas Nomenclaturas Normal e Derivado passou a ser Tibia Clássico e Tibia Alternativo; A área de suporte possui um modelo de tópico a ser seguido (se o membro quiser); A Categoria Tibia King passou a se chamar Comunidade; Regras da Comunidade passou a se chamar Regras; Todo o conteúdo de Notícias foi passado para o Portal e agora tem-se prefixos para separar os temas; Atendimento Geral deixou de ser um fórum e passou a ser uma Categoria; Apresentação foi excluída; O conteúdo de Atendimento Geral foi movido para Ouvidoria e o conteúdo de Ouvidoria foi movido para Ouvidoria Privada; Criamos o fórum comércio onde os membros que tem anúncios em classificados podem criar posts (não ativo até a publicação da notícia) e temos a Lista Negra do Comércio; Criamos uma área privada onde os membros podem Denunciar fraudes no comércio; O redirecionamento para os clubes passou a estar em comunidade; A categoria OTServ passou a se chamar OTServer O fórum Geral passou a se chamar Discussão e abrange todos os meios de discussão envolvendo otservs; O fórum Geral passou a ter uma organização via prefixos (opcional); O fórum pedidos foi mesclado com o fórum Suporte; Ao invés de separar a área de suporte em seu tipo ela foi separada em Clássico e Alternativo; Os prefixos agora são para definir o tipo de suporte requerido; A categoria Aprendizagem passou a se chamar Tutorial; Todos os fóruns de tutoriais de diversas áreas de otservs foram movidos para esta categoria; Os fóruns Tutoriais de Script e Tutoriais de Programação foram mesclados em Códigos; Os fóruns de Linux em Open Tibia e Internet Compartilhada foram mesclados com Infraestrutura; Outros Tutoriais passou a se chamar Diversos; Os fóruns Normal e Derivado em Downloads passou a ter a nomenclatura adequada; Os fóruns de Tibia Alternativo passaram e ter prefixos de alguns servidores ATS comuns; Foi criado o fórum Desenvolvimento de Códigos; Todos o conteúdo envolvendo Script, Web e Programação passou a integrar desenvolvimento de códigos; O fórum é divido em Clássico e Alternativo; O conteúdo é organizado por meio de prefixos; Foi criado o fórum Concursos e Eventos; Todo o conteúdo de Concursos e Eventos de outras categorias passaram a integrar esta; As categorias de áreas específicas em OTServer foi excluída; A categoria Tibia Geral passou a ser um Clube; Tibia BOTS voltou a ser uma caregoria; Geral passou a se chamar discussão; Tudo nas categorias de Centro de Criação e Diversos passou a ser um clube; A categoria Clubes da Comunidade foi criada; Clubes da Comunidade contém os clubes mais importantes do fórum; Esperamos que a nova estrutura seja mais amigável aos novos membros e traga menos confusões. ATUALIZAÇÃO DAS REGRAS GERAIS Tivemos algumas pequenas mudanças nas Regras Gerais, pois agora temos uma Lista Negra do Comércio e os membros podem fazer anúncios de áreas de comércio na sua assinatura. Regra 4.10. Comércio foi atualizada; 5.1. Vendas sofreu alterações. Você também pode fazer a leitura novamente com o link abaixo. http://www.tibiaking.com/forum/forums/topic/1281-regras-gerais-do-tibiaking/ Pequenas mudanças e considerações Além de tudo isso que já citamos, vários plugins e sistemas de nossa comunidade foram atualizados, fixamos muitos problemas que o fórum vinha apresentando, muitas mudanças vocês talvez nem irão notar (ou irão, navegando em nosso site) e realizamos diversas outras correções. Uma das mudanças significativas é que o tempo de espera para poder fazer uma nova busca passou a ser 10 segundos. Bom pessoal, por enquanto é isso esperamos que gostem das novidades e caso tenha alguma crítica, sugestão ou até mesmo encontre algum tipo de problema, por favor nos relate neste mesmo tópico ou entre em contato com nossa equipe que iremos resolve-lo o mais rápido possível. Atenciosamente, Equipe TibiaKing.
  9. Nokturno's mapping

    Nazo reagiu a noktuno por uma resposta no tópico

    1 ponto
    THAIS MY STYLE Finally after 8 years of inactivity, i can bring you some of my recent work. the first one to be honest. Back in the day ppl usually didnt like my style, and some do like it cuz i used to map some ice/space weird sh@t lol and if someone has any related work of my own ill apreciate alot if you share with me any picture xD. HOPE YOU LIKE IT
  10. Faço questão de que funcione 100%, testa agora: https://pastebin.com/raw/L17JMYYE Caso minha resposta tenha sido a melhor, marque na parte superior esquerda do post!
  11. (Resolvido)error no look

    robson da silva reagiu a Nazo por uma resposta no tópico

    1 ponto
    @robson da silva substitua seu look.lua por esse e tente: local NPCBattle = { ["Brock"] = {artig = "He is", cidbat = "Pewter"}, ["Misty"] = {artig = "She is", cidbat = "Cerulean"}, ["Blaine"] = {artig = "He is", cidbat = "Cinnabar"}, ["Sabrina"] = {artig = "She is", cidbat = "Saffron"}, --alterado v1.9 \/ peguem tudo! ["Kira"] = {artig = "She is", cidbat = "Viridian"}, ["Koga"] = {artig = "He is", cidbat = "Fushcia"}, ["Erika"] = {artig = "She is", cidbat = "Celadon"}, ["Surge"] = {artig = "He is", cidbat = "Vermilion"}, } function onLook(cid, thing, position, lookDistance) local str = {} if not isCreature(thing.uid) then local iname = getItemInfo(thing.itemid) if isPokeball(thing.itemid) and getItemAttribute(thing.uid, "poke") then unLock(thing.uid) local lock = getItemAttribute(thing.uid, "lock") local pokename = getItemAttribute(thing.uid, "poke") table.insert(str, "You see "..iname.article.." "..iname.name..".") if getItemAttribute(thing.uid, "unique") then table.insert(str, " It's an unique item.") end table.insert(str, "\nIt contains "..getArticle(pokename).." "..pokename..".\n") if lock and lock > 0 then table.insert(str, "It will unlock in ".. os.date("%d/%m/%y %X", lock)..".\n") end local boost = getItemAttribute(thing.uid, "boost") or 0 if boost > 0 then table.insert(str, "Boost level: +"..boost..".\n") end if getItemAttribute(thing.uid, "nick") then table.insert(str, "It's nickname is: "..getItemAttribute(thing.uid, "nick")..".\n") end if getItemAttribute(thing.uid, "gender") == SEX_MALE then table.insert(str, "It is male.") elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then table.insert(str, "It is female.") else table.insert(str, "It is genderless.") end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false elseif string.find(iname.name, "fainted") or string.find(iname.name, "defeated") then table.insert(str, "You see a "..string.lower(iname.name)..". ") if isContainer(thing.uid) then table.insert(str, "(Vol: "..getContainerCap(thing.uid)..")") end table.insert(str, "\n") if getItemAttribute(thing.uid, "gender") == SEX_MALE then table.insert(str, "It is male.") elseif getItemAttribute(thing.uid, "gender") == SEX_FEMALE then table.insert(str, "It is female.") else table.insert(str, "It is genderless.") end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false elseif isContainer(thing.uid) then --containers if iname.name == "dead human" and getItemAttribute(thing.uid, "pName") then table.insert(str, "You see a dead human (Vol:"..getContainerCap(thing.uid).."). ") table.insert(str, "You recognize ".. getItemAttribute(thing.uid, "pName")..". ".. getItemAttribute(thing.uid, "article").." was killed by a ") table.insert(str, getItemAttribute(thing.uid, "attacker")..".") else table.insert(str, "You see "..iname.article.." "..iname.name..". (Vol:"..getContainerCap(thing.uid)..").") end if getPlayerGroupId(cid) >= 4 and getPlayerGroupId(cid) <= 6 then table.insert(str, "\nItemID: ["..thing.itemid.."]") local pos = getThingPos(thing.uid) table.insert(str, "\nPosition: [X: "..pos.x.."][Y: "..pos.y.."][Z: "..pos.z.."]") end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false elseif getItemAttribute(thing.uid, "unique") then local p = getThingPos(thing.uid) table.insert(str, "You see ") if thing.type > 1 then table.insert(str, thing.type.." "..iname.plural..".") else table.insert(str, iname.article.." "..iname.name..".") end table.insert(str, " It's an unique item.\n"..iname.description) if getPlayerGroupId(cid) >= 4 and getPlayerGroupId(cid) <= 6 then table.insert(str, "\nItemID: ["..thing.itemid.."]") table.insert(str, "\nPosition: ["..p.x.."]["..p.y.."]["..p.z.."]") end sendMsgToPlayer(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false else return true end end local npcname = getCreatureName(thing.uid) if ehNPC(thing.uid) and NPCBattle[npcname] then --npcs duel table.insert(str, "You see "..npcname..". "..NPCBattle[npcname].artig.." leader of the gym from "..NPCBattle[npcname].cidbat..".") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false end if getPlayerStorageValue(thing.uid, 697548) ~= -1 then table.insert(str, getPlayerStorageValue(thing.uid, 697548)) local pos = getThingPos(thing.uid) if youAre[getPlayerGroupId(cid)] then table.insert(str, "\nPosition: [X: "..pos.x.."][Y: "..pos.y.."][Z: "..pos.z.."]") end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false end if not isPlayer(thing.uid) and not isMonster(thing.uid) then --outros npcs table.insert(str, "You see "..getCreatureName(thing.uid)..".") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false end if isPlayer(thing.uid) then --player doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, getPlayerDesc(cid, thing, false)) return true end if getCreatureName(thing.uid) == "Evolution" then return false end if not isSummon(thing.uid) then --monstros table.insert(str, "You see a wild "..string.lower(getCreatureName(thing.uid))..".\n") table.insert(str, "Hit Points: "..getCreatureHealth(thing.uid).." / "..getCreatureMaxHealth(thing.uid)..".\n") if getPokemonGender(thing.uid) == SEX_MALE then table.insert(str, "It is male.") elseif getPokemonGender(thing.uid) == SEX_FEMALE then table.insert(str, "It is female.") else table.insert(str, "It is genderless.") end doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) return false elseif isSummon(thing.uid) and not isPlayer(thing.uid) then --summons local boostlevel = getItemAttribute(getPlayerSlotItem(getCreatureMaster(thing.uid), 8).uid, "boost") or 0 if getCreatureMaster(thing.uid) == cid then local myball = getPlayerSlotItem(cid, 8).uid table.insert(str, "You see your "..string.lower(getCreatureName(thing.uid))..".") if boostlevel > 0 then table.insert(str, "\nBoost level: +"..boostlevel..".") end table.insert(str, "\nHit points: "..getCreatureHealth(thing.uid).."/"..getCreatureMaxHealth(thing.uid)..".") table.insert(str, "\n"..getPokemonHappinessDescription(thing.uid)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, table.concat(str)) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You see a "..string.lower(getCreatureName(thing.uid))..".\nIt belongs to "..getCreatureName(getCreatureMaster(thing.uid))..".") end return false end return true end
  12. (Resolvido)Town portal like WOW

    Nazo reagiu a noktuno por uma resposta no tópico

    1 ponto
    I love u dude im trying this at night
  13. (Resolvido)Town portal like WOW

    noktuno reagiu a Nazo por uma resposta no tópico

    1 ponto
    Oh, i gonna try, wait, i edit here and explain for u edit, @noktuno TAGS in actions.xml <action itemid="PORTALID HERE" script="townportalsystem.lua" /> <action itemid="SCROLLID HERE" script="townportalsystem.lua"/> Archive townportalsystem.lua in actions/scripts/ -- Town Portal Scroll System based in Dota 2 -- by Nazo (tibiaking.com) local config = { portalId = 1231, -- change to portal item id portalTime = 30, -- portal duration in seconds scrollId = 1232, -- change to scroll item id effect = CONST_ME_POFF -- effect id or CONST that appears at the end of time } local function removePortal(portal) portal:remove() portal:getPosition():sendMagicEffect(config.effect) end function onUse(player, item, fromPosition, target, toPosition, isHotkey) if(item:getId()==config.scrollId) then portal = Game.createItem(config.portalId, 1, player:getPosition()) if(player:getParty()) then portal:setCustomAttribute("party", player:getParty()) else portal:setCustomAttribute("owner", player:getName()) end addEvent(removePortal, config.portalTime * 1000, portal) item:remove() else if(not player:isPzLocked()) then if(item:getCustomAttribute("party")) then if(player:getParty()==item:getCustomAttribute("party")) then player:teleportTo(player:getTown():getTemplePosition(), true) else player:popupFYI("You do not participate in the portal creator's party.") end elseif(item:getCustomAttribute("name") and player:getName() == item:getCustomAttribute("name")) then player:teleportTo(player:getTown():getTemplePosition(), true) else player:popupFYI("You isn't the owner.") end else player:popupFYI("You are PZ locked.") end end return true end besides fixing the lack of pz locked, I fixed a bug without party, and only the portal's owner can use this.
  14. (Resolvido)Town portal like WOW

    Nogard reagiu a Nazo por uma resposta no tópico

    1 ponto
    Hi, 'meu chapa' :rofl: test this, @noktuno: -- Town Portal Scroll System based in Dota 2 -- by Nazo (tibiaking.com) local config = { portalId = 1231, -- change to portal item id portalTime = 30, -- portal duration in seconds scrollId = 1232, -- change to scroll item id effect = CONST_ME_POFF -- effect id or CONST that appears at the end of time } local function removePortal(portal, position) portal:remove() Position(position):sendMagicEffect(config.effect) end function onUse(player, item, fromPosition, target, toPosition, isHotkey) if(item:getId()==config.scrollId) then portal = Item(Game.createItem(config.portalId, 1, player:getPosition())) portal:setCustomAttribute("party", player:getParty()) addEvent(removePortal, config.portalTime * 1000, portal, player:getPosition()) item:remove() else if(player:getParty()==item:getCustomAttribute("party")) then player:teleportTo(player:getTown():getTemplePosition(), true) else player:popupFYI("You do not participate in the portal creator's party.") end end return true end
  15. Configurando email no Gesior

    joaotmed reagiu a Nazo por uma resposta no tópico

    1 ponto
    É possível que seja no xampp o problema, o mesmo tem algumas frescuras com emails e requer umas configurações, tente isso: Procure adicionar/editar essas linhas no sendmail/sendmail.ini do xampp: smtp_server=smtp.gmail.com smtp_port=465 auth_username=seuemail@gmail.com auth_password=obvioissokkk Depois no php/php.ini: sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" Não se esqueça de reiniciar o serviço apache após as edições. @joaotmed, aliás, no momento você utiliza sua própria máquina ou um host a parte?
  16. [DICAS] Onde divulgar seu servidor?

    GustavoColetti reagiu a Dyego por uma resposta no tópico

    1 ponto
    O Mais famoso é o https://otservlist.org/ não sei se hoje em dia pode por derivados lá, tem também o http://ots-list.org/ tem também esse outro http://otservlist.me/
  17. Umapinha Ekz - Map Shape estendido

    eviltox reagiu a Cat por uma resposta no tópico

    1 ponto
    Como usar: http://www.tibiaking.com/forum/forums/topic/50868-tibiaking-map-shape-v103/ (1ª versão) O que muda nessa versão? Não há o limite 1000x1000 por imagem Visual Diferente Download: xmapshape.zip Scan
  18. House Clean

    Heyron reagiu a Vodkart por uma resposta no tópico

    1 ponto
    Descrição: É para deletar house de players inativos, ou seja, o player que não loga em "X" dias perde a sua house! houseclean.lua function onTimer() local days = 15*24*60*60 doSaveServer() local query = db.getResult("SELECT `owner`,`id` FROM `houses`;") if (query:getID() ~= -1) then while true do local own,houseid = query:getDataInt("owner"),query:getDataInt("id") local qry = db.getResult("SELECT `lastlogin` FROM `players` WHERE `id` = "..own) if(qry:getID() ~= -1) then last = tonumber(qry:getDataInt("lastlogin")) if last < os.time() - days then setHouseOwner(houseid, NO_OWNER_PHRASE,true) end end if not(query:next()) then break end end query:free() end return true end globalevents.xml <globalevent name="HouseClean" time="03:00" event="script" value="houseclean.lua"/> na tag está para executar o script as 3 da manhã se quiser alterar só mudar essa parte: time="03:00" para configurar os dias que o player que não logar em "X" dias É aqui: local days = 15*24*60*60 no caso está para o jogador que não logar em 15 dias perder a house.
  19. Naxed (Mapa gringo)

    Nandozeraah reagiu a Werner por uma resposta no tópico

    1 ponto
    Estava ultimamente pesquisando alguns projetos de otservers gringos e achei esse mapa chamado "Naxed" e resolvi traze-los para vocês. O motivo de posta-lo aqui é que os servidores ultimamente são todos iguais, mudando apenas a aparência do Templo, Hunts room, Quest room mas acaba no final sendo tudo a mesma coisa quando entramos nos teleports. "O Meu propósito aqui é trazer um conteúdo que sirva para aprimorar os servidores, pois está ficando cada vez mais cansativo joga-los". O que o mapa oferece Diversas hunts próprias, não apenas copiadas do Global Rooms diferentes e não apenas construções quadradas. Cidades completamente diferentes e grandes. Quests grandes, e com um cenário diferente Alguns Prints do mapa: Hunts e Quests Free Cenários diferentes Quests Vip Trainers O Mapa inicia em x: 160 y: 50 z: 7 Download: Clique Aqui Scan: Clique Aqui Créditos:
  20. [TFS 1.2] Prision Boss Script

    malucooo reagiu a vankk por uma resposta no tópico

    1 ponto
    Prision Bosses TFS 1.2 by vankk Eu estava com um código bem ruim dos bosses da Prision Key no Aura, e resolvi atualizar, e decidi compartilhar aqui com vocês. Caso vocês queiram ver o script em funcionamento entre já em Aura. Clique aqui para ir para o site. O sistema está bem fácil de ser configurado, está tudo em tabelas, esse script é para os bosses: Zavarash, Horadron, Terofar. data/actions/actions.xml <action itemid="22606" script="prision_bosses.lua"/> <action itemid="22605" script="prision_bosses.lua"/> <action itemid="22604" script="prision_bosses.lua"/> data/actions/prision_bosses.lua -------------THIS SCRIPT WAS MADED BY VANKK AT 15TH DECEMBER 2016 AT 4 P.M (GMT - 3) ------------- local config = { [22606] = { targetId = 22636, -- Target ID. bossName = 'Zavarash', -- boss name keyPlayerPosition = Position(296, 1650, 12), -- Where the player should be. newPosition = Position(220, 1591, 13), -- Position to teleport bossPosition = Position(216, 1587, 13), -- Boss Position centerPosition = Position(215, 1591, 13), -- Center Room exitPosition = Position(293, 1634, 12), -- Exit Position rangeX = 20, -- Range in X rangeY = 20, -- Range in Y time = 15, -- time in minutes to remove the player }, [22605] = { targetId = 22634, -- Target ID. bossName = 'Horadron', -- boss name keyPlayerPosition = Position(291, 1650, 12), -- Where the player should be. newPosition = Position(293, 1676, 13), -- Position to teleport bossPosition = Position(300, 1677, 13), -- Boss Position centerPosition = Position(296, 1678, 13), -- Center Room exitPosition = Position(293, 1634, 12), -- Exit Position rangeX = 20, rangeY = 20, time = 15, -- time in minutes to remove the player }, [22604] = { targetId = 22638, -- Target ID. bossName = 'Terofar', -- boss name keyPlayerPosition = Position(302, 1650, 12), -- Where the player should be. newPosition = Position(257, 1675, 13), -- Position to teleport bossPosition = Position(260, 1676, 13), -- Boss Position centerPosition = Position(255, 1678, 13), -- Center Room exitPosition = Position(293, 1634, 12), -- Exit Position rangeX = 20, rangeY = 20, time = 15, -- time in minutes to remove the player } } local function roomIsOccupied(centerPosition, rangeX, rangeY) local spectators = Game.getSpectators(centerPosition, false, false, rangeX, rangeX, rangeY, rangeY) if #spectators ~= 0 then return true end return false end function clearBossRoom(playerId, centerPosition, rangeX, rangeY, exitPosition) local spectators, spectator = Game.getSpectators(centerPosition, false, false, rangeX, rangeX, rangeY, rangeY) for i = 1, #spectators do spectator = spectators[i] if spectator:isPlayer() and spectator.uid == playerId then spectator:teleportTo(exitPosition) exitPosition:sendMagicEffect(CONST_ME_TELEPORT) end if spectator:isMonster() then spectator:remove() end end end function onUse(player, item, fromPosition, target, toPosition, isHotkey) local tmpConfig = config[item.itemid] if not tmpConfig then return true end if target.itemid ~= tmpConfig.targetId then return true end local creature = Tile(tmpConfig.keyPlayerPosition):getTopCreature() if not creature or not creature:isPlayer() then return true end if roomIsOccupied(tmpConfig.centerPosition, tmpConfig.rangeX, tmpConfig.rangeY) then player:sendCancelMessage("There is someone in the room.") return true end local monster = Game.createMonster(tmpConfig.bossName, tmpConfig.bossPosition) if not monster then return true end -- Send message player:sendTextMessage(MESSAGE_EVENT_ADVANCE, 'You have entered an ancient demon prison cell!') player:sendTextMessage(MESSAGE_EVENT_ADVANCE, 'You have fifteen minutes to kill and loot this boss, else you will lose that chance.') -- Let's roll addEvent(clearBossRoom, 60 * tmpConfig.time * 1000, player:getId(), tmpConfig.centerPosition, tmpConfig.rangeX, tmpConfig.rangeY, tmpConfig.exitPosition) item:remove() player:teleportTo(tmpConfig.newPosition) player:getPosition():sendMagicEffect(CONST_ME_TELEPORT) return true end Não ensinarei a configurar a tabela, isso é uma tarefa bem fácil, e para não ter nada de mão beijada também né, Esse script é exclusivo do TibiaKing, e sua postagem em outros forums é proibida. Caso utilize em algum projeto, por favor manter os créditos.
  21. Bike Systema

    Helder Junio adm reagiu a Adriano SwaTT por uma resposta no tópico

    1 ponto
    Teste este para bloquear de usar a bike quanto estiver com outro sistema ativo, Lembre de por a storage de controle dos sistemas que deseja bloquear em "local strgs = {12345, 54321, 23456}" seguindo o exemplo. local strgs = {XXXX, XXXX} -- Coloque a Storage de Controle dos Sistemas Que Deseja Bloquear. local config = { velocidadeDaSuaBike = 1000, -- A volocidade da bike (1-9) outfitMale = 1787, -- Outfit male outfitFemale = 1619, -- Outfit female storageValue = 5602, -- Storage Para a bike } function onUse(cid, item, itemEx, fromPosition, toPosition) ctrl = 0 for x = 1, #strgs do if getPlayerStorageValue(cid, strgs[x]) > 0 then ctrl = ctrl + 1 end end if ctrl < 1 then if item.uid ~= getPlayerSlotItem(cid, CONST_SLOT_RING).uid then doPlayerSendCancel(cid, "Voce deve colocar sua bike no local correto.") return TRUE end if isPlayer(cid) and getCreatureOutfit(cid).lookType == 814 then return false end if getPlayerStorageValue(cid, config.storageValue) <= 0 then local a = {lookType = config.outfitMale, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet} local b = {lookType = config.outfitFemale, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet} setPlayerStorageValue(cid, 3624, ""..getPlayerStamina(cid).."") doSendMagicEffect(getThingPos(cid), 18) doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, config.velocidadeDaSuaBike) setPlayerStorageValue(cid, config.storageValue, 1) if getPlayerSex(cid) == 0 then doSetCreatureOutfit(cid, b, -1) else doSetCreatureOutfit(cid, a, -1) end else setPlayerStorageValue(cid, config.storageValue, 0) doSendMagicEffect(getThingPos(cid), 18) doRemoveCondition(cid, CONDITION_OUTFIT) doRegainSpeed(cid) end else doPlayerSendCancel(cid, "Você não pode estar com nenhum outro sistema ativo para usar a bike.") end return true end Daqui a pouco tento montar o outro para você, teste e dê um feedback. Boa sorte.
  22. Abre o mapa, aperta ctrl T, e adiciona um local do templo
  23. [DÚVIDA] Remover o "ambient light"

    Snowsz reagiu a bringsz por uma resposta no tópico

    -1 pontos
    Removido
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo