Pluzetti2104 5 Posted May 25, 2019 Report Share Posted May 25, 2019 Opa boa tarde galera, hoje venho trazer a vocês o sistema de evento igual ao do OtPokemon, no qual se define um horario, e sorteia um pokemon para voce matar, quem matar mais pokemons ganha o evento. OBS: Pokemons na tabela podem ser alterados, e os premios também, vamos la. Vá em data/globalevents e crie um arquivo lua com nome Monster Hunter.lua/ depois disso copie o código abaixo e cole no arquivo e salve. local monsters = { "Rattata","Caterpie","Metapod","Raticate","Charmander","Charmeleon","Butterfree","Beautifly","Squirtle","Wartortle","Poliwag","Cubone","Marowak","Diglett","Dugtrio","Sandshrew","Mareep","Beedril","Magnemite","Pikachu","Voltorb","Electrode","Elekid","Gastly","Haunter","Geodude","Machoke","Graveler","Pidgey","Pidgeotto","Weepinbell","Oddish","Gloom","Golbat","Zubat","Drowzee","Abra","Machop","Spearow","Nidoran Female","Nidoran Male","Nidorino","Nidorina","Bulbasaur","Ivysaur","Weedle","Kakuna","Eevee"} -- Monstros que podem ser sorteados local time_min, max = 10, 30 -- Em minutos local premios, gold = {{9020, 1}, {2152, 25}}, 10000 -- {id do item, quantidade} que o jogador ganha e quantia de gold function winMonsterEvent() local max_sto, winner = 0, 0 local monster = getGlobalStorageValue(90904488) for _, pid in pairs(getPlayersOnline()) do local sto = getPlayerStorageValue(pid, 90904487) if sto > max_sto then max_sto = sto winner = pid end end if isPlayer(winner) then local artigo = getPlayerSex(winner) == 0 and "[Derrote o Pokémon]: A jogadora" or "[Derrote o Pokémon]: O jogador" doBroadcastMessage(artigo.." "..getCreatureName(winner).." derrotou "..getPlayerStorageValue(winner, 90904487).." "..monster.."s e venceu o evento. Parabéns!",25) for _, prize in pairs(premios) do doPlayerAddItem(winner, prize[1], prize[2]) end doPlayerAddMoney(winner, gold) else doBroadcastMessage("[Derrote o Pokémon]: O evento terminou e não houve nenhum vencedor.") end setGlobalStorageValue(90904488, 0) end function onTimer() local random = math.random(1, #monsters) local time = math.random(time_min, max) for _, pid in pairs(getPlayersOnline()) do doPlayerSetStorageValue(pid, 90904487, 0) end setGlobalStorageValue(90904488, monsters[random]) doBroadcastMessage("[Derrote o Pokémon]: O evento começou e durará "..time.." minutos. O pokémon sorteado foi "..monsters[random].."! Quem conseguir derrotar mais "..monsters[random].."'s até o fim será o vencedor!",25) addEvent(winMonsterEvent, time*1000*60) return true end Feito isso vá em globalevents.xml e adicione essa tag. <globalevent name="Monster Hunter Event1" time="10:00" event="script" value="Monster Hunter.lua"/> Beleza, feito isso salve e de reload em seu servidor, que ja estara funcionando. Perguntas: "Ah se eu quiser por mais horarios? simples vá na tag copie ela e cole de novo, onde está "Monster Hunter Event1" time="10:00" mude para "Monster Hunter Event2" time="12:00"...lembrando sempre que voce adicionar 1 novo evento o horario também deve mudar. É isso obrigado a todos e até mais. Créditos: PokeZRing (de onde foi retirado) OTP (criador, me corrija caso esteja errado) Eu ( por disponibilizar) LeoTK 1 Link to comment https://xtibia.com/forum/topic/249783-monster-hunter/ Share on other sites More sharing options...
Poke X Ice 52 Posted May 25, 2019 Report Share Posted May 25, 2019 (edited) esse system está incompleto,está faltando a parte da storage. vá em servidor/data/creatureevent e crie um arquivo chamado "Monster Hunter.lua" depois disso copie o código abaixo e cole no arquivo e salve. Spoiler function onKill(cid, target, lastHit) if isPlayer(cid) and isMonster(target) then if isPlayer(getCreatureMaster(target)) then return true end local name = getGlobalStorageValue(90904488) if tostring(string.lower(getCreatureName(target))) == tostring(string.lower(name)) then doPlayerSetStorageValue(cid, 90904487, getPlayerStorageValue(cid, 90904487) + 1) doPlayerSendTextMessage(cid, 19, "[Evento: Mate o Pokémon] Voce ja matou "..getPlayerStorageValue(cid, 90904487).." "..name.."s! Continue matando para ser o vencedor!") else -- print('target: '..string.lower(getCreatureName(target))..'') -- print('name: '..string.lower(name)..'') end end return true end function onLogin(cid) if getGlobalStorageValue(90904488) == 0 then doPlayerSetStorageValue(cid, 90904487, 0) end registerCreatureEvent(cid, "MonsterHunter") return true end Agora em CreatureEvent.xml e adicione a tag Spoiler <event type="kill" name="Monster Hunter" event="script" value="Monster Hunter.lua"/> <event type="login" name="Monster Hunterl" event="script" value="Monster Hunter.lua"/> Edited May 25, 2019 by Poke X Ice LeoTK 1 Link to comment https://xtibia.com/forum/topic/249783-monster-hunter/#findComment-1751710 Share on other sites More sharing options...
klbkevinklb 6 Posted May 25, 2019 Report Share Posted May 25, 2019 49 minutos atrás, Poke X Ice disse: esse system está incompleto,está faltando a parte da storage. vá em servidor/data/creatureevent e crie um arquivo chamado "Monster Hunter.lua" depois disso copie o código abaixo e cole no arquivo e salve. Mostrar conteúdo oculto function onKill(cid, target, lastHit) if isPlayer(cid) and isMonster(target) then if isPlayer(getCreatureMaster(target)) then return true end local name = getGlobalStorageValue(90904488) if tostring(string.lower(getCreatureName(target))) == tostring(string.lower(name)) then doPlayerSetStorageValue(cid, 90904487, getPlayerStorageValue(cid, 90904487) + 1) doPlayerSendTextMessage(cid, 19, "[Evento: Mate o Pokémon] Voce ja matou "..getPlayerStorageValue(cid, 90904487).." "..name.."s! Continue matando para ser o vencedor!") else -- print('target: '..string.lower(getCreatureName(target))..'') -- print('name: '..string.lower(name)..'') end end return true end function onLogin(cid) if getGlobalStorageValue(90904488) == 0 then doPlayerSetStorageValue(cid, 90904487, 0) end registerCreatureEvent(cid, "MonsterHunter") return true end Agora em CreatureEvent.xml e adicione a tag Mostrar conteúdo oculto <event type="kill" name="Monster Hunter" event="script" value="Monster Hunter.lua"/> <event type="login" name="Monster Hunterl" event="script" value="Monster Hunter.lua"/> Obrigado meu amigo por completar, acabei esquecendo dessa parte. Link to comment https://xtibia.com/forum/topic/249783-monster-hunter/#findComment-1751712 Share on other sites More sharing options...
LeoTK 173 Posted May 25, 2019 Report Share Posted May 25, 2019 gostei vou testar dps esse code esta para 0.3.6 8.54 ? Link to comment https://xtibia.com/forum/topic/249783-monster-hunter/#findComment-1751714 Share on other sites More sharing options...
Recommended Posts