Ir para conteúdo
Propaganda

Wang

Moderador
  • Total de Posts

    207
  • Registro em

  • Última visita

  • Dias Ganhos

    36

Tudo que Wang postou

  1. estão ativos os links para baixar obrigado dar reputação no tópico
  2. aperte aonde diz aqui para baixar
  3. obs verifica conteúdos ocultos as vezes a glr poem oculto
  4. pois bem não testei a base mais deve estar todos com nomes diferentes recomendo analisar foram pego da net estão free use em outros fórums.
  5. recomendo compilar um novo cliente i um novo exe. temos tutoriais aqui nas abas da comunidade ensinando fazer tudo isso, mais por via das dúvidas quiser enviar um print do erro abaixo podemos ajudar.
  6. Super Recomendo Investimento nesse projeto estou trazendo ele aqui desno de já declaro não ter envolvimento algum apesar do meu conhecimento em c++ todos créditos vai para seus criadores e os que elaboraram créditos: leohige & sua equipe Leandro Matheus (Leohige) Guilherme Leandro (Kurral) João Medeiros (joaotmed) Mateus (Majesty) Gabriel Pedro (gpedro) Felipe Muniz (Mun1z) Nycholas de Sousa (nycholassousa) wang ( nada importante apenas repostar) motivo eu estar postando isso? incentivar o uso do tfs 1x e abandonar o tfs 0x full gambiarras prestem atenção em suas vantagens seguir abaixo um ótimo serve para se usar. (Formatação topical original aonde clicar vai ser redirecionado ao git) The Ruby Server - Base Pokémon Ao olhar as diversas bases que podem ser encontradas aqui no fórum e em outros locais da internet, pude ver que todas elas carecem de qualidade. Todas estas bases são feitas utilizando gambiarras para diversos sistemas funcionarem, e com isso vários problemas surgem, como de sistemas que não funcionam direito, e o mais importante, com um desempenho extremamente baixo, gerando apenas servidores instáveis. Com isso eu decidi que iria começar a desenvolver uma base para servidores relacionados a Pokémon, com dois objetivos. Um dos objetivos é ganhar mais conhecimento em cima da linguagem de programação C++, o outro objetivo é disponibilizar uma base completamente estável, funcional e de fácil configuração e desenvolvimento para servidores de Pokémon, para que mais ótimos trabalhos possam surgir. Este projeto também irá incluir um cliente próprio e estável, junto com um website Também planejo criar uma espécie de Wiki para o servidor, cliente e website, com o objetivo de auxiliar quem for desenvolver em cima deste servidor, e também aqueles que pouco entendem do assunto relacionando a criação de escripts, Pokémon, spells e etc. Alguns poucos sistemas foram implementados no servidor por ora. Sistemas como o de catch e de goback serão implementados mais para frente, quando outros sistemas forem completamente implementados, como o sistema de configuração de Pokeballs, criação de Pokémons e sistema de shinys. Estou visando a qualidade do servidor como um todo, por isso algumas coisas irão demorar para aparecer. O sistema de Pokeballs e de criação de Pokémon já está bem encaminhado, e um sistema de gêneros também já está pronto com fácil configuração, onde o spawn destes Pokémon com sexo será por % igual aos jogos da franquia. Um sistema de surgimento de Ditto aleatório já está praticamente implementado, onde um Pokémon aleatório pode ser um Ditto disfarçado. [+] Informações do Servidor Baseado em: TFS 1.3 Protocolo: 10.98 [+] Informações do Client Baseado em: otclient 0.6.6 [+] Informações do Website Baseado em: nenhum Desenvolvido em: PHP (por ser o mais comum na comunidade) Como contribuir? Eu gostaria muito que a comunidade ajudasse no desenvolvimento deste projeto, pois o mesmo será disponibilizado para todos, e para contribuir não necessariamente é preciso entender de programação. Você pode também ajudar testando e reportando os bugs encontrados no repositório do projeto no GitHub, assim como com sugestões e ideias de mudança/implementação no servidor através do próprio repositório ou através do Discord, ou ajudar na criação de guias para o website do projeto. Links [+] RubyServer - GitHub [Hidden Content] [+] RubyClient - GitHub [Hidden Content] [+] RubyServer - Website [Hidden Content] [+] RubyServer - Discord [Hidden Content] Algumas Imagens [Hidden Content]
  7. belo script parabéns
  8. spawn.lua local shinysSpawn = { "Dodrio", "Rhydon", "Ariados", "Politoed", "Espeon", "Umbreon", "Stantler", "Mr. Mime", "Crobat", "Magmar", "Venusaur", "Charizard", "Blastoise", "Butterfree", "Beedrill", "Pidgeot", "Rattata", "Raticate" } local function doShiny(cid) if not isCreature(cid) then return true end local name2, pos2 = "Shiny ".. getCreatureName(cid), getThingPos(cid) doRemoveCreature(cid) doSendMagicEffect(pos2, 18) local shi = doCreateMonster(name2, pos2, false, true) setSto(shi, 74469, 1) end function onSpawn(cid) local name = getCreatureName(cid) if not isSummon(cid) and pokes[name] then if isInArray(shinysSpawn, name) then if getSto(cid, 74469)<=0 and getSto(cid, 22546)<=0 and getSto(cid, 637500)<=0 and getSto(cid,"golden")<=0 then if math.random(1, 120) == 1 then local list = getSpectators(getThingPos(cid), 20, 20, false) for i = 1, #list do if isPlayer(list[i]) and (getSto(list[i],13081)>=1 or getSto(list[i],13082)>=1) then sendMsg(list[i],27,"[Shiny Charm] Acaba de nacer un Shiny "..name.."! No fue por causa de Shiny Charm!") end end doShiny(cid) return true else --check for Charms local ch=1 local list = getSpectators(getThingPos(cid), 20, 20, false) for i = 1, #list do if isPlayer(list[i]) and (getSto(list[i],13081)>=1 or getSto(list[i],13082)>=1) then ch = ch + 1 if getSto(list[i],13082)>=1 then ch = ch+1 end--2x super if math.random(1, 120) <=ch then doShiny(cid) sendMsg(list[i],27,"[Shiny Charm] Felicidades grande aventurero! Nacio un Shiny "..name.." cerca tuyo por causa de tu Shiny Charm!") return true end end end ------ end end end Explicação: Basicamente, esta edição é o que está perguntando se há jogadores ao redor do Pokemon selvagem no nascimento. Se houver algum, peça para cada um deles se eles tiverem um feitiço brilhante Normal ou Especial. Se houver algum, então existe a possibilidade de que, se falhar na primeira vez que fique brilhante, ele pede novamente para cada jogador que encontrar. O encanto brilhante dos jogadores pode ser acumulado, se houver 3 jogadores ao redor de um Charizard (exemplo), haverá mais chances de ele se tornar Brilhante (já que ele passa pelo ciclo 3 vezes). Eu espero que você entenda. Edits: voce pode mudar aki no siguiente texto, 20, 20 e a distancia em SQM que o pokemon vai procurar jogadores (no mesmo andar na uma hunt). 13081 e 13082 sao storages do shiny charm e shiny charm Especial (doble chance do normal) (1, 120) o rate do aparicao do Shiny selvagem. local ch = 1 e rate extra do shiny charm normal, e ch=ch+1 sumaria o doble do normal (2). Se o random do 1,120 e menor o iguai que ch, entao shiny selvagen aparece. local ch=1 local list = getSpectators(getThingPos(cid), 20, 20, false) for i = 1, #list do if isPlayer(list[i]) and (getSto(list[i],13081)>=1 or getSto(list[i],13082)>=1) then ch = ch + 1 if getSto(list[i],13082)>=1 then ch = ch+1 end--2x super if math.random(1, 120) <=ch then créditos chavos
  9. Tô vendo gente vendendo um servidor cujo Qual foi vazado e muitos outros nem sabem que tá na net né então para acabar com essa picuinha de ficar e vendendo servidores dos outros resolvi tá postando o servidor completo veio para na minha mão segue abaixo servidor ele é uma base mistério parecida assim com Ot Pokémon antigo com algumas modificações porém todos os códigos de modificações module tudo que foi introduzido no Game é free use e está disponível para a comunidade então eu não vejo porque alguém querer vender este servidor. Tfs 0.3.6 Poke Misterios créditos quem fez o serve n tenho idea de quem foi. GAME SRC - Clique Aqui GAME SRV - Clique Aqui GAME OTC - Clique Aqui Faltou Scan Não conseguir realizar Estou Pelo cel Baixem por conta propia e façam se puder mandar irei postar o scan tbm não darei suporte apenas postei para Evitar golpes
  10. Agora vamos colocar o codigo Em data/talkactions/script/, crie um arquivo chamado aura.lua, e coloque isso dentro dele : local config_aurea = { effect = 50; -- efeito que vai ficar girando no player effect_health = 162; -- efeito qnd curar o player level_use = { -- level que vai ser usado (min/max) min = 1, max = 600, } ; health = 10; -- tanto que vai curar por time configurado pos_aurea = { -- não mexa [1] = {x = 0, y = -1}; [2] = {x = 1, y = -1}; [3] = {x = 1, y = 0}; [4] = {x = 1, y = 1}; [5] = {x = 0, y = 1}; [6] = {x = -1, y = 1}; [7] = {x = -1, y = 0}; [8] = {x = -1, y = -1}; }; storage_pos = 1547637649; -- não mexa e nem repita esse valor em outro script!! storage = 165477963; -- não mexa e nem repita esse valor em outro script!! tempo_aurea = 1; -- tempo da aurea para passar em cada posição } local function calculePosAurea(player_uid) local player = Player(player_uid) if not player then return end if player:getStorageValue(config_aurea.storage) <= 0 then return end if(player:getStorageValue(config_aurea.storage_pos) >= 8)then player:setStorageValue(config_aurea.storage_pos, 0) end local storage_ = player:getStorageValue(config_aurea.storage_pos) player:setStorageValue(config_aurea.storage_pos, storage_ + 1) local new_storage_ = player:getStorageValue(config_aurea.storage_pos) return new_storage_ end local function posAurea(player_uid) local player = Player(player_uid) if not player then return end if player:getStorageValue(config_aurea.storage) <= 0 then return end local pos_x = player:getPosition().x local pos_y = player:getPosition().y local pos_z = player:getPosition().z local aa = calculePosAurea(player_uid) local pos = Position(pos_x + config_aurea.pos_aurea[aa].x, pos_y + config_aurea.pos_aurea[aa].y, pos_z) if not pos then return end return pos end local function aurea(player_uid) local player = Player(player_uid) if not player then return end if player:getStorageValue(config_aurea.storage) <= 0 then return end local player_position = player:getPosition() player:addHealth(config_aurea.health) player_position:sendMagicEffect(config_aurea.effect_health) local position = posAurea(player_uid) local position_ = posAurea(player_uid) position:sendDistanceEffect(position_, config_aurea.effect) addEvent(aurea, config_aurea.tempo_aurea, player_uid) end function onSay(player, words, param) if words == "!aura on" then if player:getLevel() > config_aurea.level_use.max then player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser maior(" .. config_aurea.level_use.max) return false end if player:getLevel() < config_aurea.level_use.min then player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " seu level(" .. player:getLevel() .. ") precisa ser menor(" .. config_aurea.level_use.max) return false end if player:getStorageValue(config_aurea.storage) >= 1 then player:sendTextMessage(MESSAGE_STATUS_SMALL, player:getName() .. " Você ja esta com a aurea ligada") return false end player:setStorageValue(config_aurea.storage, 1) player:setStorageValue(config_aurea.storage_pos, 0) aurea(player.uid) elseif words == "!aura off" then player:setStorageValue(config_aurea.storage, 0) end return false end Agora em data/talkactions/talkactions.xml, abra ele e coloque : <talkaction words="!aura on;!aura off" script="aura.lua"/> Agora em data/creaturescript/script/login.lua, abra ele e embaixo de : player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr) Coloque : player:setStorageValue(165477963, 0) player:setStorageValue(1547637649, 0) 20210927_210547.mp4.6b64a1da14b4be6e53d5aa46b2e5aae6.mp4
  11. Bom galera, não vou enrola, é um item que cria um npc na posicao que vc definir, seria util para wodbo. function onUse(cid, item, frompos, item2, topos) local texto = 'Você invocou shenlong.' --msg ao usar item position = {x= 1487, y= 667, z= 7} --pos onde cria npc if getPlayerStorageValue(cid, 336659) >= 1 then doPlayerSendTextMessage(cid, 27, "Você ja invocou shenlong.") --msg ao tentar usar de novo item return true end if item.itemid == 7840 then --item q remove doRemoveItem(item.uid, 1) doSendMagicEffect(frompos, 13) doPlayerSendTextMessage(cid, 22, texto) doCreateNpc("Baiano", position) --npc q cria setPlayerStorageValue(cid, 336659, 1) end end
  12. Hoje vim trazer um NPC de evento , onde o player precisa trazer um pokemon(configuravel) por outro pokemon entao vamos la Em NPC crie um NPC.xml e cole isso Ocultar conteúdo <?xml version="1.0" encoding="UTF-8"?> <npc name="NPC NAME" script="EventoNPC.lua" walkinterval="0" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="2144" head="90" body="97" legs="114" feet="94"/> <parameters> <parameter key="message_greet" value="Ola, |PLAYERNAME|. estou aqui para lhe dar uma missao, eu erei precisar pikachu para completar minha colecao, voce tem esses items? diga {missao}."/> <!-- <parameter key="message_greet" value="Ola, |PLAYERNAME|. Safari ainda nao esta aberta"/> --> </parameters> </npc> npc/script e crie um arquivo.lua e cole isso local cfg = { btype = "Great Ball", --Type Da ball pokemonida = "Pikachu", -- Pokemon que o NPc vai pedir a troca pokemonVolta = "Pikachu Fly", -- Pokemon que o player vai ganhar palavra = "missao", -- Palavra para completar mensagem = "Preciso que me traga um pikachu.", -- msg quando n tiver o pokemon concluir = "Parabéns você cosegui completar minha missão, receba seus premios.", -- msg quando completar a quest completa = "você ja completou essa missão", -- msg quanto tentar fazer novamente sto = 9876574 , -- STORAGE -- OBS: Voce precisa ta com pokemon fora da ball para fazer a troca } 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 playerHaveItems(cid, itemid) local items = type(itemid) == "table" and itemid or {itemid} for i = 1, #items do if getPlayerItemCount(cid, items) <= 0 then return false end end return true end function doPlayerRemoveItems(cid, itemid, count) local items = type(itemid) == "table" and itemid or {itemid} for i = 1, #items do doPlayerRemoveItem(cid, items, count ~= nil and count or 1) end return nil end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, cfg.palavra) then if getPlayerStorageValue(cid,cfg.sto) == -1 then if getCreatureName(getCreatureSummons(cid)[1]) == cfg.pokemonida then setPlayerStorageValue(cid, cfg.sto, 1) doRemoveItem(getPlayerSlotItem(cid, 8).uid, 1) doRemoveCreature(getCreatureSummons(cid)[1]) addPokeToPlayer(cid, cfg.pokemonVolta, 0, nil, cfg.btype) selfSay(cfg.concluir) else selfSay(cfg.mensagem) end else selfSay(cfg.completa) end return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  13. Ao matar certa criatura Guardião ou boos irá aparecer um teleporte aonde o play possa colocar a sua determinada posição para fins opcionais va em creaturescripts: Local tpId = 1387 ---Id padrão tp local tp = { info = { pos = {x = 1002, y = 1022, z = 7}, -- onde aparece o tp toPos = {x = 1002, y = 1019, z = 7}, -- onde o player vai aparecer ao entrar no tp time = 10, -- tempo em segundos q o tp fica aberto }, kill = { ["Gre Mewtwo "] = {count = 1, str = 10629}, -- ["Gre Mewtwo"] = {quantidade = 1, storage = n mexa }, } function checkTask() for name, info in pairs(tp.kill) do if getGlobalStorageValue(info.str) < info.count then return false end end return true end function removeTp(tp) local t = getTileItemById(tp.info.pos, tpId) if t then doRemoveItem(t.uid, 1) doSendMagicEffect(tp.info.pos, CONST_ME_POFF) end end function onDeath(cid) local m = tp.kill[getCreatureName(cid)] if not tp then return true end setGlobalStorageValue(m.str, getGlobalStorageValue(m.str) < 0 and 1 or getGlobalStorageValue(m.str) + 1) if checkTask() then doCreateTeleport(tpId, tp.info.toPos, tp.info.pos) doCreatureSay(cid, "O teleport irá sumir em "..tp.info.time.." segundos.", TALKTYPE_ORANGE_1) addEvent(removeTp, tp.info.time * 1000, tp) for _, info in pairs(tp.kill) do setGlobalStorageValue(info.str, -1) end end return true end creaturescripts.xml <event type="death" name="MonsterQuest" event="script" value="tpmonster.lua"/> Agora adiciona o seguinte no arquivo .xml do monstro <script> <event name="MonsterQuest"/> </script> obs aqui vc pode adicionar mais monstros, assim kill = { ["Gre Mewtwo "] = {count = 1, str = 10629}, -- ["Gre Mewtwo"] = {quantidade = 1, storage = n mexa ["Steelix"] = {count = 1, str = 10630}, },
  14. achei útil. 1° Pasta LIB copie um arquivo e deverá renomear para torneio ficando torneio.lua apaga tudo que tem dentro e add torneio = { awardTournament = 2148, ---moeda usada para entra no torneio-- awardAmount = 1000, -- quantidade de moeda que o player vai ganhar ao vencer o torneio-- playerTemple = {x = 893, y = 499, z = 15}, --pra onde vai o player quando morrer ?-- tournamentFight = {x = 894, y = 538, z = 15}, --centro da arena torneio combate-- area = {fromx = 866, fromy = 508, fromz = 15, tox = 922, toy = 572, toz= 15},--canto acima direito da arena combate-canto esquerdo abaixo da arena combate-- waitPlace = {x = 969, y = 544, z = 15}, --centro da sala de espera-- waitArea = {fromx = 957, fromy = 536, fromz = 15, tox = 983, toy = 552, toz= 15}, --canto esquerdo acima da sala de espera--canto abaixo esquerdo da sala de espera-- startHour1 = "07:50:00", --horario do aviso?-- endHour1 = "08:00:00",--horario que começa?-- startHour2 = "11:50:00",--horario do aviso?-- endHour2 = "12:00:00",--horario do aviso?-- startHour3 = "17:50:00",--horario do aviso?-- endHour3 = "18:00:00",--horario do aviso?-- startHour4 = "22:50:00",--horario do aviso?-- endHour4 = "23:00:00",--horario do aviso?-- price = 500,--valor para entrar no torneio ? 500 dollar no caso-- revivePoke = 12344,--aqui é revive se tiver e se não tiver não precisa mexer-- } function getPlayersInArea(area) local players = {} for x = area.fromx,area.tox do for y = area.fromy,area.toy do for z = area.fromz,area.toz do local m = getTopCreature({x=x, y=y, z=z}).uid if m ~= 1 and isPlayer(m) then table.insert(players, m) end end end end return players end apaga os coments do scripts acima com --blablabla-- 2° GLOBALEVENTS vá na pasta globalevents/scripts copia um arquivo que voc?ê deverá renomear para torneio ficando torneio.lua e add function onTime() if #getPlayersInArea(torneio.area) > 1 then doBroadcastMessage("O Torneio dessa vez não teve vencedor, tente na proxima vez") return true end for _, pid in ipairs(getPlayersInArea(torneio.waitArea)) do puxar = math.random(-2, 2) doTeleportThing(pid, {x = torneio.tournamentFight.x + puxar, y = torneio.tournamentFight.y + puxar, z = torneio.tournamentFight.z}) end doBroadcastMessage("O torneio Iniciou!") return true end ou dependendo do tfs pode ser function onTimer() if #getPlayersInArea(torneio.area) > 1 then doBroadcastMessage("O Torneio dessa vez não teve vencedor, tente na proxima vez") return true end for _, pid in ipairs(getPlayersInArea(torneio.waitArea)) do puxar = math.random(-2, 2) doTeleportThing(pid, {x = torneio.tournamentFight.x + puxar, y = torneio.tournamentFight.y + puxar, z = torneio.tournamentFight.z}) end doBroadcastMessage("O torneio Iniciou!") return true end agora em globalevents.xml add as tag <globalevent name="TournamentStart1" time="08:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart2" time="12:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart3" time="18:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart4" time="23:00" event="script" value="torneio.lua"/> ou <globalevent name="TournamentStart1" timer="08:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart2" timer="12:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart3" timer="18:00" event="script" value="torneio.lua"/> <globalevent name="TournamentStart4" timer="23:00" event="script" value="torneio.lua"/> ainda em globalevents vá em globalevents/scripts copie outro arquivo e renomeia para, msgtorneio ficando msgtorneio.lua e add local i = { ["07:50"] = {nome = "O Torneio vai começar em 10 minutos, fale com o NPC Nike no CP de sua cidade, vai custar 500 Dollar's para participar!"}, ["07:55"] = {nome = "Faltam 5 minutos para fechar as inscrições do torneio!"}, ["07:59"] = {nome = "As inscrições do Torneio fecharam!"}, ["11:50"] = {nome = "O Torneio vai começar em 10 minutos, fale com o NPC Nike no CP de sua cidade, vai custar 500 Dollar's para participar!"}, ["11:55"] = {nome = "Faltam 5 minutos para fechar as inscrições do torneio!"}, ["11:59"] = {nome = "As inscrições do Torneio fecharam!"}, ["17:50"] = {nome = "O Torneio vai começar em 10 minutos, fale com o NPC Nike no CP de sua cidade, vai custar 500 Dollar's para participar!"}, ["17:55"] = {nome = "Faltam 5 minutos para fechar as inscrições do torneio!"}, ["17:59"] = {nome = "As inscrições do Torneio fecharam!"}, ["22:50"] = {nome = "O Torneio vai começar em 10 minutos, fale com o NPC Nike no CP de sua cidade, vai custar 500 Dollar's para participar!"}, ["22:55"] = {nome = "Faltam 5 minutos para fechar as inscrições do torneio!"}, ["22:59"] = {nome = "As inscrições do Torneio fecharam!"}, } function onThink(interval, lastExecution) hours = tostring(os.date("%X")):sub(1, 5) tb = i[hours] if tb then doBroadcastMessage(hours .. " - " .. tb.nome .. "") end return true end agora as tag globalevents.xml add <globalevent name="msg torneio" interval="60000" event="script" value="msgtorneio.lua"/> pronto agora vamos mexer com actions... 3° ACTIONS para o player receber a recompensa... vá em actions/scripts copie um arquivo lá e renomeia para torneio ficando torneio.lua e add function onUse(cid, item) local torneios = 1 if #getCreatureSummons(cid) >= 1 then doPlayerSendCancel(cid, "Volte seu pokémonDBR!") else if #getPlayersInArea(torneio.area) > 1 then doPlayerSendTextMessage(cid, 20 ,"Só o ultimo que ficar na arena, poderá abrir está porta! ") return true end doTeleportThing(cid, torneio.playerTemple) doBroadcastMessage("[Torneio] Parabéns ao treinador "..getCreatureName(cid).." foi o ganhador do torneio de hoje, verifique o rank em nosso site www.seusite.com!") doPlayerAddItem(cid,2148,300) addTopt(cid, torneios) doPlayerSendTextMessage(cid,MESSAGE_EVENT_ORANGE,"[Torneio] Você já venceu "..(getTopt(cid,torneio)).."x, Parabéns.") doPlayerAddItem(cid, torneio.awardTournament, torneio.awardAmount) return true end end agora a tag de actions.xml add <action uniqueid="18279" event="script" value="torneio.lua"/> *18279 é unique ID que vc terá que por numa porta alavanca o que for pra depois o ultimo player clicar... 4° NPC vá na pasta npc/scripts copia um arquivo e você deverá renomear para torneio ficando torneio.lua e add 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 if msgcontains(msg, 'torneio') or msgcontains(msg, 'enter') then if getPlayerItemCount(cid, torneio.revivePoke) >= 1 then selfSay('Voce nao Pode entrar no torneio com {revives}, por favor guarde eles e volte a falar comigo novamente.', cid) return true end selfSay('Voce quer Participar no torneio por '..torneio.price..' de Dollars?', cid) talkState[talkUser] = 2 elseif talkState[talkUser] == 2 then if msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then if os.date("%X") < torneio.startHour1 or os.date("%X") > torneio.endHour1 then if os.date("%X") < torneio.startHour2 or os.date("%X") > torneio.endHour2 then if os.date("%X") < torneio.startHour3 or os.date("%X") > torneio.endHour3 then if os.date("%X") < torneio.startHour4 or os.date("%X") > torneio.endHour4 then selfSay('As inscrições para o torneiro ainda não abriram, volte ás 07:50 AM, 11:50 AM, 17:50 AM ou ás 22:50 PM todo os dias', cid) return true end end end end if doPlayerRemoveMoney(cid, torneio.price) then doTeleportThing(cid, torneio.waitPlace) doPlayerSendTextMessage(cid, 21, "Bem vindo, esta e a sala de espera, voce espera aqui enquanto o torneio nao começa.") else selfSay('Voce não tem ('..torneio.price..') Dollars.', cid) end else selfSay('Certeza que voce não quer Participar? Ok, ate a Proxima', cid) talkState[talkUser] = 0 end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) bom agora volte um pasta e copia um arquivo.xml e renomeia para torneio ficando torneio.xml e add <?xml version="1.0" encoding="UTF-8"?> <npc name="Nick" script="torneio.lua" walkinterval="999000" floorchange="0"> <health now="150" max="150"/> <look type="1245" head="20" body="100" legs="50" feet="99" corpse="2212"/>] <parameters> <parameter key="message_greet" value="Ola |PLAYERNAME|. Sou o NIKE, Encarregado pelo Torneio diario caso queira entrar diga: {torneio}."/> </parameters> </npc> 5° importa para seu mysql o código ALTER TABLE `players` ADD `torneio` int(11) NOT NULL default '0'; agora a vá na pasta lib copia um arquivo.lua e renomeia para torneio e add ficando torneio.lua function getTopt(cid) local check4 = db.getResult("SELECT `torneio` FROM `players` WHERE `id` = " .. getPlayerGUID(cid) .. " LIMIT 1") return check4:getDataInt("torneio") <= 0 and 0 or check4:getDataInt("torneio") end function addTopt(cid,amount) db.executeQuery("UPDATE `players` SET `torneio` = "..getTopt(cid).."+"..amount.." WHERE `id` = "..getPlayerGUID(cid)) end function removeTopt(cid,amount) db.executeQuery("UPDATE `players` SET `torneio` = "..getTopt(cid).."-"..amount.." WHERE `id` = "..getPlayerGUID(cid)) end function setTopt(cid,value) db.executeQuery("UPDATE `players` SET `torneio` = "..value.." WHERE `id` = "..getPlayerGUID(cid)) end 6° pronto torneio 4 vezes ao dia + npc + rank para site como usar o rank no site ? vai em htdocs/template/seulayout/index.tpl e add em algum lugar lá <div class="top-box"> {include_php file='torneio.php'} </div> agora vá em htdocs criar um novo text com nome torneio.php e add <?PHP //** Connection to the database **// $ots = POT::getInstance(); $ots->connect(POT::DB_MYSQL, connection()); $SQL = POT::getInstance()->getDBHandle(); //** Top Players + online status By Kavvson **// $money_list = $SQL->query('SELECT name,torneio FROM players ORDER BY torneio DESC LIMIT 5')->fetchAll(); $i = 1; foreach($money_list as $money_chr){ echo '<center>'; echo $i.'. <a href="/pt/index.php/character/view/'.urlencode($money_chr['name']).'">'; $player = $ots->createObject('Player'); $player->find($money_chr['name']); echo '<font color="'; echo ($player->isOnline()) ? 'green' : 'green'; echo '">'; echo ''.$money_chr['name'].'</b></a></font>'; echo' Torneio Ganhos: '.$money_chr['torneio'].'</B>'; $i++; } for( $i; $i <= 1; $i++ ){ echo $i.'. <br><i>Empty</i><br /><br />'; } echo '</center>'; isso ai pessoal é completo eu fiz pro meu PokémonDBR que tinha fechado então resolvi compartilhar.... qualquer copia favor bote devido créditos e não quero ver ninguém vendendo meu scripts.... Créditos l3k0t
  15. removido
  16. seguir abaixo bem simples créditos agmar [Hidden Content]
      • 19
      • Like
      • Thanks
      • Haha
  17. só vi essa dll no poke miw porém se vc usar o unix ela é anulada dai mete o lan com nome de unix2 extrai com extensão que o brodine desenvolveu
  18. vendo a versão do dump 2022 atualização mykalo i brodines
  19. Sprinte Pokemon Psoul
  20. Então bora lá esses script ele basicamente um script de Trap pode ser usado como Matinho de GBA para projetos ou para quests/missões uma criatura ela é Sumonada de acordo com o que está abaixo registrado no Script você pode mexer ajustar a porcentagem de vir uma criatura Boss ou de vir uma criatura normal o valor máximo que cabe nessa script é de até 100 bom uso by Wang DATA / MOVEMENTS CRIE UM ARQUIVOS COM NOME DESEJADO local M = { [1] = {"Rattata",{x=1050, y=1050, z=7}}, [2] = {"Oddish",{x=1052, y=1053, z=7}}, [3] = {"Paras",{x=1051, y=1050, z=7}}, [4] = {"Charmander",{x=1050, y=1051, z=7}} } local storage = 14678 -- n mexa local time_summon = 1 -- tempo em minutos if not isPlayer(cid) then return false elseif getGlobalStorageValue(storage) >= os.time() then return false end r = math.random(1, #M) doCreateMonster(M[r][1], M[r][2]) doCreatdoCreatureSay" Um lindo pokemon surgiu!", 19) setGlobalStorageValue(storage, os.time()+time_summon*60) return TRUE end movements.xm <movevent type="StepIn" uniqueid="14500" event="script" value="Nome do arquivos aqui .lua"/>
  21. Chegou Até min Irei postar tem gente vendendo algo que foi vazado na net algum tempo atrás caso esteja na área errada podem mover pfvr tópico, sem scan estou sem pc alguém faça o scan irei postarlos. DATA PACK PSOUL FREE Pack de sprinte Customs poketibia
  22. caso alguém consiga melhorar o script liberado uso para postar em qualquer fórum.
×
  • Criar Novo...