Líderes
-
Natanael Beckman
MembroPontos574Total de itens -
Marco Oliveira
MembroPontos76Total de itens -
-
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 04/08/19 em todas áreas
-
[GlobalEvents] Perfect Lottery System (MySql) - Atualizado
[GlobalEvents] Perfect Lottery System (MySql) - Atualizado
LeoTK reagiu a Natanael Beckman por uma resposta no tópico
1 pontoSistema de Loterias por globalevents. Crie um arquivo .lua com o nome lottery dentro da pasta data/globalevents/scripts/loterry.lua, adicione dentro do arquivo o seguinte code: local config = { lottery_hour = "2 hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message) rewards_id = {2494, 2472, 2514, 2160}, -- ID dos Itens Sorteados na Loteria crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160). website = "yes", -- Only if you have php scripts and table `lottery` in your database! days = { "Monday-08:00", "Monday-13:00", "Monday-19:30", "Tuesday-08:00", "Tuesday-13:00", "Tuesday-19:30", "Wednesday-08:00", "Wednesday-13:00", "Wednesday-19:30", "Thursday-08:00", "Thursday-13:00", "Thursday-19:30", "Friday-01:22", "Friday-13:00", "Friday-19:30", "Saturday-21:27", "Saturday-21:28", "Saturday-21:29", "Sunday-08:00", "Sunday-13:00", "Sunday-19:30" } } local function getPlayerWorldId(cid) if not(isPlayer(cid)) then return false end local pid = getPlayerGUID(cid) local worldPlayer = 0 local result_plr = db.getResult("SELECT * FROM `players` WHERE `id` = "..pid..";") if(result_plr:getID() ~= -1) then worldPlayer = tonumber(result_plr:getDataInt("world_id")) result_plr:free() return worldPlayer end return false end local function getOnlineParticipants() local players = {} for _, pid in pairs(getPlayersOnline()) do if getPlayerAccess(pid) <= 2 and getPlayerStorageValue(pid, 281821) <= os.time() then table.insert(players, pid) end end if #players > 0 then return players end return false end function onThink(cid, interval) if table.find(config.days, os.date("%A-%H:%M")) then if(getWorldCreatures(o) <= 0)then return true end local query = db.query or db.executeQuery local random_item = config.rewards_id[math.random(1, #config.rewards_id)] local item_name = getItemNameById(random_item) local data = os.date("%d/%m/%Y - %H:%M:%S") local online = getOnlineParticipants() if online then local winner = online[math.random(1, #online)] local world = tonumber(getPlayerWorldId(winner)) if(random_item == 2160) then doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24) 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 doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24) doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")") doPlayerAddItem(winner, random_item, 1) end if(config.website == "yes") then query("INSERT INTO `lottery` (`name`, `item`, `world_id`, `item_name`, `date`) VALUES ('".. getCreatureName(winner).."', '".. random_item .."', '".. world .."', '".. item_name .."', '".. data .."');") end else print("Ninguem OnLine pra ganhar na loteria") end end return true end Recomendamos modificar: - rewards_id = {2494, 2472, 2514, 2160}, -- ID dos Itens Sorteados na Loteria Recomendo de item count apenas o 2160, outros podem bugar. - crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160). Altere pra mais ou menos o dinheiro. - "Monday-08:00", Ajuste os dias e horários como desejado. Em globalevents.xml, adicione: <!-- Lottery --> <globalevent name="lottery" interval="60000" event="script" value="lottery.lua"/> Não mexa no code acima. Certo, essa é a parte do servidor, agora vamos adicionar as querys necessárias no MySql: 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; Caso você queria adicionar uma query pra testar o site, veja: INSERT INTO `lottery` (`id`, `name`, `item`, `world_id`, `item_name`, `date`) VALUES(NULL, 'Character', '2470', '0', 'golden legs', '22/05/2014 - 04:49:50'); Agora vamos pra parte do site, crie um arquivo .php com o nome lottery, adicione dentro do arquivo o seguinte code: <?PHP $main_content .= '<center><h1>Lottery</h1><h3>Lotterys held at 09:00, 14:00 and 20:30 hour, brazil time.</h3></center><br><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><tr BGCOLOR="'.$config['site']['vdarkborder'].'"><td CLASS=white><center><b>Player Name</b></center></td><td CLASS=white width=184 colspan=2><center><b>Winning Item</b></center></td><td width=50 CLASS=white><center><b>World</b></center></td><td width=100 CLASS=white><center><b>Date and Time</b></center></td></tr>'; $lottery = $SQL->query('SELECT id, name, item, world_id, item_name, date 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=\'/item_images/'.urlencode($result['item']).'.gif\'></td><TD WIDTH=30%><center>'.$result['item_name'].'</center></td><TD WIDTH=7%><center>MegaTibia</center></td></td><TD WIDTH=30%><center>'.$result['date'].'</center></td></tr>'; } $main_content .= '</table>'; ?> Em index.php adicione: case "lottery"; $topic = "Lottery"; $subtopic = "lottery"; include("lottery.php"); break; Em layouts.php adicione o code abaixo: <a href="?subtopic=lottery"> <div id="submenu_lottery" class="Submenuitem" onmouseover="MouseOverSubmenuItem(this)" onmouseout="MouseOutSubmenuItem(this)"> <div class="LeftChain" style="background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);"></div> <div id="ActiveSubmenuItemIcon_lottery" class="ActiveSubmenuItemIcon" style="background-image:url(<?PHP echo $layout_name; ?>/images/menu/icon-activesubmenu.gif);"></div> <div id="ActiveSubmenuItemLabel_lottery" class="SubmenuitemLabel">Lottery</div> <div class="RightChain" style="background-image:url(<?PHP echo $layout_name; ?>/images/general/chain.gif);"></div> </div> </a> Pronto galera só isso, não esqueça clica em GOSTEI! Comente, participe do tópico, isso nos ajuda muito. Créditos: .lua - Killua e Matheus .php - Matheus e Natanael Beckman querys - Natanael Beckman e Matheus Atualização 24/05/2014 - Adicionado regras pra não sorteá membro da staff(GM, GOD) - Adicionando sistema de Storage pra não correr o risco de um player ganhar 2x no mesmo dia.1 ponto -
Gesior AAC - 2020
Gesior AAC - 2020
Rogex Joyz reagiu a Marco Oliveira por uma resposta no tópico
1 pontoOlá, estou deixando minha contribuição para o open-tibia, fornecendo a versão mais recente do meu site. Compatível com a versão mais recente do TFS e OTX. O layout é semelhante ao tibia.com, mas não contém todos os recursos. Conto com a contribuição de todos neste projeto. Algumas funcionalidades: Highscores NEW PagSeguro Lightbox New Tickets NEW Suporte https Créditos: Gesior.pl Felipe Monteiro Marco Oliveira Ricardo Souza Link para download ou contribuição: GITHUB1 ponto -
Widget Gesior
Widget Gesior
ConstantineGB reagiu a Belmont por uma resposta no tópico
1 pontoPara aqueles que sempre quiseram adicionar aqueles Widget no seu site, seja do Discord, TeamSpeak3, etc, vou disponibilizar alguns código para que vocês consigam por o Widget desejado. Widget Discord Para adicionar esse Widget em seu site, você irá em seu layout.php e adicionar o seguinte código. Pronto, seu Widget do Discord estar feito. Widget TeamSpeak Para adicionar esse Widget em seu site, você irá em seu layout.php e adicionar o seguinte código. Pronto, seu Widget do TeamSpeak estar feito. Se você quiser também adicionar o Discord com o box do TeamSpeak, só é fazer as devida modificações. Pronto, seu Widget do Discord com o box do TeamSpeak já estar feito.1 ponto -
[Modern Acc] Guild Dominante (Página)
[Modern Acc] Guild Dominante (Página)
r0bert0lol reagiu a LeoTK por uma resposta no tópico
1 pontoSalve galera bom estou trazendo mais um conteúdo dessa vez a página para mostrar a guild dominante do evento castle war para o modern acc com ajuda de muitos amigos claro consegui trazer esse conteúdo para vocês bora lá A página configurada corretamente vai ficar assim 2019-04-07 17-44-45.mp4 OBS: Eu não vou ceder a imagem porque é algo facinho de fazer e até porque eu não quero criar um padrão porque isso permite a pessoa criar do tamanho que desejar etc... então isso vou deixar a critério de vocês Código \/ <?php $consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); $number_of_rows = 0; foreach($consulta as $guildid){ $id = $guildid['guild']; } $consulta2 = $SQL->query('SELECT `name`, `id` FROM `guilds` WHERE id = '.$id.';'); ?> <style type="text/css"> a.castlefont { font-family: Verdana, Arial, Helvetica; font-size: 17px; color: #ffcc33; text-shadow:#000 4px 6px 4px, #000 -1px 1px 2px, #000 1px 1px 2px, #000 -1px -1px 2px; text-decoration:none } a:castle.topfont { font-family: Verdana, Arial, Helvetica; font-size: 10px; color: #CCC; text-decoration:none } </style> <div id="warcastle" style="margin-top:5px; margin-left:18px; height:150px; width:180px; background-image:url(<?PHP echo $layout_name; ?>LINK DA IMAGEM DE FUNDO AQUI);"> </br> </br> </br> <?php foreach($consulta2 as $guild){ echo ' <div align="center"> <a class="castlefont" href="/index.php/guilds/view/' . $id . '"> <img style="margin-left:8px; margin-top:6px" src="/public/guild_logos/' . (file_exists("public/guild_logos/".$guild['id'].".gif") == true ? $guild['id'].".gif" : "castlewar.gif").'" width="64" height="64" border="0"/> <br/> <div id="textcastle" style="margin-top:3px;">' . $guild['name'] . '</br></div> </a> </div> </td> </tr> </table> '; } ?> </div> Estarei deixando algumas explicações mais detalhadas abaixo 1º- Informações do evento do castle war basta mudar o castelo_guerra para o nome da tabela do seu banco de dados que pode estar como castle_war também (Fique atento a isso) $consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 2º- Nessa parte você vai editar tudo referente ao texto do nome da guilda cor, sombreamento etc... basta ir editando para ver qual fica melhor para você <style type="text/css"> a.castlefont { font-family: Verdana, Arial, Helvetica; font-size: 17px; color: #ffcc33; text-shadow:#000 4px 6px 4px, #000 -1px 1px 2px, #000 1px 1px 2px, #000 -1px -1px 2px; text-decoration:none } a:castle.topfont { font-family: Verdana, Arial, Helvetica; font-size: 10px; color: #CCC; text-decoration:none } </style> 3º- Nessa parte vai ser a imagem de fundo no caso do vídeo mostra uma imagem do tema naruto com a escrita Castle War porém você pode criar a imagem do tamanho que quiser e como quiser por isso estarei deixando em branco para vocês criarem uma imagem única e exclusiva para vocês <div id="warcastle" style="margin-top:5px; margin-left:18px; height:150px; width:180px; background-image:url(<?PHP echo $layout_name; ?>LINK DA IMAGEM DE FUNDO AQUI);"> 4º- Essa parte é a que busca a logo da guilda porém caso a guilda não tiver uma precisa haver uma reserva padrão no caso esta nomeada para castlewar.gif mude esse nome para uma imagem padrão que você tenha na pasta public/guild_logos <img style="margin-left:8px; margin-top:6px" src="/public/guild_logos/' . (file_exists("public/guild_logos/".$guild['id'].".gif") == true ? $guild['id'].".gif" : "castlewar.gif").'" width="64" height="64" border="0"/> 5º- Para os leigos basta apenas usar um include onde quiserem adicionar isso tanto na home do site etc... {include_php file='templates/naruto/castlewar.php'} Por exemplo ficaria assim o meu DATABASE ADICIONADA CASO TIVER PROBLEMAS castelo_guerra.sql Bom galera é isso espero que façam bom uso AVISO PROIBIDO PEDIDO DE AJUDA COM PROBLEMAS DE SQL E BUGS DO EVENTO CASTLE WAR NESSE TÓPICO CASO TIVER ALGUM PROBLEMA USE A ÁREA DE SUPORTE Agradecimentos (Créditos) @ricardo codenome @aspira @Yan Liima @Dwarfer @Yinz1 ponto -
BARRAS NO OLD CLIENT ?
1 pontoDa pra fazer por DLL e depois é só hookar no client. A galera que costuma fazer isso vende por um valor bem salgado. Então não espere algo assim pro OLD client de graça1 ponto
-
(Resolvido)[Cast System] OTX 8.60
O problema é que você está utilizando OTX2 que sim, possui o cast system do elf nas sources. Mas você está utilizando as funções Lua do cast do summ, que vem no TFS 0.4, assim não vai funcionar mesmo. A função correta seria: doPlayerSetSpectators Caso não possua a talkaction, aqui está. Edit: Impossível ele ter achado as funções, pois elas não existem no OTX, as funções são do cast system do summ, que geralmente vem no TFS 0.4. Então, ou você simplesmente pegou os arquivos spectators.cpp e spectators.h (que são do cast system do elf e não existem no TFS 0.4) e jogou no TFS 0.4, ou a alguém tentou adicionar essas funções do cast do summ que é totalmente diferente do que o elf fez, e obviamente não fez um bom trabalho.1 ponto
Líderes está configurado para São Paulo/GMT-03:00