-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por luanluciano93
Bom, como o nome ja diz, é uma loteria, no(s) horario(s) que for definir, é sorteado para algum player um determinado item dentre os items configurados no script, por fim aparece uma mensagem no servidor dizendo quem ganhou e o que recebeu ...
Crie um arquivo em globalevents/scripts/ com o nome loteria.lua e dentro coloque o código:
-- <globalevent name="Loteria1" time="09:00:00" script="loteria.lua" /> local rewards = { {2494, 1}, {2472, 1}, {2160, 22}, {5809, 1}, } function onTime(interval) local players = Game.getPlayers() if #players > 0 and #rewards > 0 then local uid, n = math.random(1, #players), math.random(1, #rewards) local ganhador = players[uid] local reward, count = rewards[n][1], rewards[n][2] if ganhador and reward and count then ganhador:addItem(reward, count) Game.broadcastMessage('O player '.. ganhador:getName()..' recebeu '.. count .. ' '..ItemType(reward):getName()..' na loteria.', MESSAGE_STATUS_WARNING) end end return true end A tag do globalevents.xml esta no script como comentario, basta adiciona-la. Você pode tbem adicionar outras tags para outros horarios, mas sempre mudando o nome. Por exemplo:
<globalevent name="Loteria1" time="09:00:00" script="loteria.lua" /> <globalevent name="Loteria2" time="10:00:00" script="loteria.lua" /> E para editar os items, basta coloca o item_id e quantidade, como na sequencia:
local rewards = { {2494, 1}, {2472, 1}, {2160, 22}, {5809, 1}, } É isso pessoal, espero ter ajudado.
-
Por Xagah
Olá, bom dia a todos.
Como tenho visto muitíssimos pedidos neste sentido, lhes apresento o LMS - Last Man Standing com BroadCast
-
Por Killua
Últimas atualizações:
16/12/2013:
Introdução:
Este é o meu já conhecido evento Blood Castle Automático que estava em outro fórum que acabou. Estou trazendo ele aqui para que ele não "morra".
Informações:
#Dica: Acho que fica legal o premio do evento ser um item que da double exp por um tempo.
Atualização [12/04/2014]
Resolvi refazer o código, para facilitar a instalação e melhorar o funcionamento do evento.
O que mudou?
Instalando o evento:
Lib:
Movements:
Creaturescripts:
Monsters:
O evento pode acontecer de duas maneiras: automática ou manualmente. Vou por as duas possibilidades: Automática:
Manual:
Como Configurar:
* Se você for colocar, dentro do evento, um teleporte para as pessoas que não quiserem mais participar, coloque o Action ID 9371 nele.
* Lembre-se de por NO-LOGOUT tool e NO-PVP tool em toda área do evento!!
Todas as demais explicações estão na lib, mas vou demonstrar como configurar os mais "confusos".
No modo automático, você configura de quanto em quanto o tempo o evento vai acontecer. Nessa tag:
<globalevent name="Blood Castle" interval="3600" event="script" value="BloodGlobalEvent.lua"/> Aqui está 3600 segundos, ou seja, 1 hora.
* Se seu servidor for em milisegundos, multiplique o número por 1000, assim: 3600 segundos * 1000 = 3600000 milisegundos = 1 hora.
No modo manual, para iniciar o evento, basta usar a talkaction /blood-start com seu god.
Em posGuarda, vc deve colocar a posicao do Guarda do Portao, como mostrado abaixo:
As posPedras são onde ficam as pedras que tampam a passagem enquanto o evento não esta aberto, conforme na imagem abaixo:
Em estátua, vc deve colocar a posição em que o arcanjo vai ser criado, conforme na imagem abaixo:
Nas posParedes, vc deve por a posição das paredes que bloqueiam a entrada do castelo e que são removidas quando o guarda morre, conforme abaixo:
Em fromPos e toPos, você vai por o canto superior esquerdo e o canto inferior direito do mapa do seu evento, respectivamente. Dessa maneira:
As outras configurações eu acredito que já estejam bem explicadas. Espero que gostem dessa nova versão. Recomendo a todos que já usam o evento, reinstalar com essa nova versão. Qualquer dúvida ou bug, postem que irei responder. -
Por King Laker
Olá, passei um tempo procurando este script até que um amigo do TK disponibilizou (credito no fim do post)
Edit1: O evento funciona assim, o evento começa as 14:00:00 para inscrições realizando as inscrições você é levado para sala de espera (coloque no-logout e protection) onde você tera de esperar 5 minutos passado os 5 minutos todos na sala de espera serão teleportados para uma arena que você pode fazer facilmente e configurar conforme explicado na script --> apenas lembre de colocar o no-logout e pvp tool na arena.
(As 13:59:00 vai aparecer um broadcast dizendo que o Npc PvP irá aparecer em 1 minutos que você terá então 5 minutos para se inscrever com o custo de 10k (configurável na script do actions) a área onde o npc nasce é configurável, o npc sumirá após 6 minutos (1 minuto depois do inicio da matança)-)
O ultimo vivo na arena terá de clicar na alavanca e será teleportado para o templo (coordenadas configuráveis) ganhando o devido premio do evento (configuravel na script do actions).
Vamos lá:
data/lib adicione um arquivo .lua e renomeie para Torneio.lua e coloque dentro
vai em Globalevents adicione Torneio.lua e dentro dele coloque
(se sua versão é em millisegundos então mude para)
Adicione a tag em globalevents.xml
se seu servidor for em millisegundos:
vai em Actions adicione Torneio.lua e dentro:
Atenção: Voce faz uma area do Torneio no Map editor e Coloca PVP-Zone e no-logout no Mapa editor e coloca uma Alavanca com a uniqueid "18279" e actionid "18279" antes verifique se não tem a action e unique id no seu servidor com o mesmo numero (18279) [ a alavanca serve para quando o ultimo player vivo no evento volte para o templo e receba os premios]
Em Actions.xml adcione a tag
Agora o NPC TORNEIO em data/NPC adicione um xml, renomeie para o nome torneio.xml (pode mudar mais tarde, se não souber oque esta fazendo não mexa)
em NPC/SCRIPTS/torneio.lua
LEIA:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
aqui um script que achei no TK que você pode usar no seu evento, ele faz o npc aparecer 1 minuto depois do horario marcado na posição que você quiser, com um broadcast dizendo que ele esta chegando. (é bom para dizer que o evento esta começando)
vá em globalevents.xml e adicione a tag
Dica: Coloque 1 minuto antes do inicio do evento (configuravel no lib/torneio.lua) no meu caso seria as 12:00:00 hrs (meio dia)
se o seu servidor não for millisegundos use
va em globalevents/scripts e crie um arquivo .lua com o nome de npcpvp
se o seu servidor não for em millisegundos use assim:
Creditos:
@J.L por disponibilizar os script do Evento PvP.
@Stigal por disponibilizar o script do Npc que aparece sozinho na hr marcada.
@King Laker por editar e mesclar os scripts.
-
Por
Absolute
Fala galera do TIBIAKING!
Trago hoje um sistema fácil de adaptação, ou seja apenas um arquivo MOD!
Sem mimimi vamos ao que interessa:
Crie um arquivo com o nome de Loterry.xml na pasta data/mods do seu servidor e dentro do arquivo adicione:
<mod name="Lottery System" version="1.5" author="Absolute" contact="[email protected]" enabled="yes"> <config name="lottery_config"><![CDATA[ config = { lottery_hour = "2 hour", -- Time to next lottery (only for broadcast message, real time you can set on globalevents.xml) rewards_id = {2160}, -- Rewards ID crystal_counts = 10, -- Used only if on rewards_id is crystal coin (ID: 2160). website = "no" -- Only if you have php scripts and table `lottery` in your database! } ]]></config> <globalevent name="lottery" interval="3600000" event="script"><![CDATA[ domodlib('lottery_config') function onThink(interval, lastExecution) if(getWorldCreatures(0) == 0)then return true end local list = {} for i, tid in ipairs(getPlayersOnline()) do list[i] = tid end local winner = list[math.random(1, #list)] local random_item = config.rewards_id[math.random(1, #config.rewards_id)] if(random_item == 2160) then doPlayerAddItem(winner, random_item, config.crystal_counts) doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .. " " .. getItemNameById(random_item) .. "s! Congratulations! (Next Lottery in " .. config.lottery_hour .. ")") else doBroadcastMessage("[Loteria Automatica] Ganhador: " .. getCreatureName(winner) .. ", Reward: " .. getItemNameById(random_item) .. "! Parabens (Next Lottery in " .. config.lottery_hour .. ")") doPlayerAddItem(winner, random_item, 1) end if(config.website == "yes") then db.executeQuery("INSERT INTO `lottery` (`name`, `item`) VALUES ('".. getCreatureName(winner) .."', '".. getItemNameById(random_item) .."');") end return true end ]]></globalevent> </mod> No seu PHPMYADMIN, execute a seguinte query:
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', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; Depois:
INSERT INTO `lottery` (`id`, `name`, `item`, `world_id`) VALUES (NULL, 'Nobody', 'nothing', 0); Agora na pasta do seu site, htdocs ou www crie um arquivo com o nome de loteria.php e dentro adicione:
<?PHP $main_content .= '<center><h1>Lottery</h1><h3>As loterias acontecem todo dia no servidor.</h3></center><br><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><tr BGCOLOR="'.$config['site']['vdarkborder'].'"><td CLASS=white><center><b>Nome do ganhador</b></center></td><td CLASS=white width=184 colspan=2><center><b>Recompensa</b></center></td><td width=100 CLASS=white><center><b>World</b></center></td></tr>'; $lottery = $SQL->query('SELECT id, name, item, world_id FROM lottery WHERE world_id = 0 ORDER BY id DESC;'); foreach($lottery as $result) { $players++; if(is_int($players / 2)) $bgcolor = $config['site']['lightborder']; else $bgcolor = $config['site']['darkborder']; $main_content .= '<TR BGCOLOR='.$bgcolor.'><TD WIDTH=35%><center><a href="?subtopic=characters&name='.urlencode($result['name']).'">'.$result['name'].'</a></center></td><TD WIDTH=5%><img src=\'/images/'.urlencode($result['item']).'.gif\'></td><TD WIDTH=30%><b>'.$result['item'].'</b></td><TD WIDTH=30%><center>Norah World</center></td></tr> <center><a href="http://www.tibiaking.com/forum/user/116608-absolute/">Absolute</a> on tibiaking - Todos os direitos reservados</center> '; } $main_content .= '</table>'; ?> Em seu index.php adicione:
case "lottery"; $topic = "Lottery System"; $subtopic = "lottery"; include("lottery.php"); break; Adicione onde preferir no menu do seu Gesior no layout.php
Modelo base:
Créditos:
Absolute
vdK
KleKSu
Caso haja dúvidas não deixe de perguntar
Até o próximo.
Absolute.
-