Para quem não conheçe o War System é aquele sistema onde duas guild se declaram em guerra onde então os frags nao sera contados como "Unjusted kills"
É preciso TFS 0.3+ & Gesior AAC
Bom vamos la então !
1.0 - Crie um arquivo com o nome GuildWar.lua dentro da pasta do seu ot , aonde fica o distro, as dll's , etc... e copie este codigo:
DelayToCancel = 24 * 60 * 60 --minutes Maps = { ["map 1"] = { Guild1Pos = {x=998, y=1006, z=7}, Guild2Pos = {x=1002, y=1006, z=7} }, ["map 2"] = { Guild1Pos = {x=994, y=1004, z=6}, Guild2Pos = {x=1000, y=1003, z=6} } } TimeToTeleport = 1 --minutes, when star a challenge StopBattle = TRUE --Stop battle after X time ? TRUE / FALSE TimeToStop = 60 --Minutes Time to Stop if StopBattle = TRUE. --Cancel messages~ CancelMessagesWar = { --Message when player try accept/reject/cancel a war but there is no a invitation. [1] = "Not pending invitations.", --Message when the player is not the guild leader. [2] = "Only Guild Leader can execute this command.", --Message when try Cancel the invitation but the war is already accepted. [3] = "The war is already accepted.", --MEssage when the invited guild name is not correct or does not exist. [4] = "Not correct guild name.", --Message when try invite any guild to a war but his guild already have a war or a pending invitation. [5] = "Your guild is already in war or have a pending invitation.", --Same of the cancel message 5 but the the enemy guild. [6] = "This guild is already in war or have a pending invitation.", --Message when use invite command but not write guild name. [7] = "Command needs param.", --Message when try invite his guild. [8] = "You can\´t invite you guild.", --Message when the map name is not correct. [9] = "Please write a correct name.", --Message when try go to any map but the guild is have no received/sent any war invitation [10] = "Your guild is not in any war.", --When try to cancel a war before the delay [11] = "You should wait ".. DelayToCancel .." minutes to cancel the war" } --Broadcast messages when invite/accept/reject/cancel ~ Remember the Spaces. BroadCast_Type = MESSAGE_EVENT_ADVANCE BroadCast = { --Message when inviting [1] = { "Guild ", --Here will be the guild name " have invited guild ", --Here will be the invited guild name " to have a war." }, --Message when accept. [2] = { "Guild ", --Here will be the guild name " have accepted the invitation of the guild " , --Here will be the name of the guild who have invited em. " to have a war." }, --Message when reject. [3] = { "Guild ", --Here will be the guild name " have rejected the invitation of the guild " , --Here will be the name of the guild who have invited em. " to have a war." }, --Message when cancel. [4] = { "Guild ", --Here will be the guild name " have canceled the invitation to the guild " , --Here will be the name of the guild who have invited em. " to have a war." }, --Message whenstar a battle.. [5] = { "Guild ", --Here will be the guild name " and guild " , --Here will be the name of the guild who have invited em. " will have a battle in the map :" }, --message when a battle ends. [6] = { "The battle betwen guild ", --Here will be the guild name " and guild " , --Here will be the name of the guild who have invited em. " its over." }, } --Functions ~. function getGuildWarInfo(id) local Info = db.getResult("SELECT `invited_to`, `invited_by`, `in_war_with`,`war_time` FROM `guilds` WHERE `id` = " .. id .. "") if Info:getID() ~= LUA_ERROR then local invTo, invBy, warWith, Time = Info:getDataInt("invited_to"), Info:getDataInt("invited_by"), Info:getDataInt("in_war_with"), Info:getDataInt("war_time") Info:free() return {To = invTo, By = invBy, With = warWith, T = Time} end return LUA_ERROR end function getGuildNameById(id) local Info = db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. id .. "") if Info:getID() ~= LUA_ERROR then local Name = Info:getDataString("name") Info:free() return Name end return LUA_ERROR end function GuildIsInPEace(id) local Info = getGuildWarInfo(id) return (Info.To == 0 and Info.By == 0 and Info.With == 0) end function doInviteToWar(myGuild, enemyGuild) db.executeQuery("UPDATE `guilds` SET `invited_to` = ".. enemyGuild .." WHERE `id` = ".. myGuild .."") db.executeQuery("UPDATE `guilds` SET `invited_by` = ".. myGuild .." WHERE `id` = ".. enemyGuild .."") end function WarAccept(myGuild, enemyGuild) local StartTime = os.time() db.executeQuery("UPDATE `guilds` SET `invited_to` = 0, `invited_by` = 0, `war_time` = ".. StartTime ..", `in_war_with` = ".. myGuild ..", `kills` = 0, `show` = 1 WHERE `id` = ".. enemyGuild .."") db.executeQuery("UPDATE `guilds` SET `invited_to` = 0, `invited_by` = 0, `war_time` = ".. StartTime ..", `in_war_with` = ".. enemyGuild ..", `kills` = 0, `show` = 0 WHERE `id` = ".. myGuild .."") end function cleanInfo(myGuild) db.executeQuery("UPDATE `guilds` SET `invited_to` = 0, `invited_by` = 0, `war_time` = 0, `in_war_with` = 0, `kills` = 0, `show` = 0 WHERE `id` = ".. myGuild .."") end function registerDeath(myGuild, enemyGuild, cid, target) db.executeQuery("INSERT INTO `deaths_in_wars` (`guild_id`, `player_id`, `killer_guild`, `killer`, `date`) VALUES ("..enemyGuild..", "..getPlayerGUID(target)..", "..myGuild..", "..getPlayerGUID(cid)..", " .. os.time() ..");") db.executeQuery("UPDATE `guilds` SET `kills` = `kills` + 1 WHERE `id` = ".. myGuild .."") end function StopWar(myGuild, enemyGuild) cleanInfo(myGuild) cleanInfo(enemyGuild) removeDeaths(myGuild) removeDeaths(enemyGuild) end function removeDeaths(id) db.executeQuery("DELETE FROM `deaths_in_wars` WHERE `guild_id` = " ..id .. ";") end function WeAreInWar(myGuild, enemyGuild) local myGuildInfo = getGuildWarInfo(myGuild) local enemyGuildInfo = getGuildWarInfo(enemyGuild) if myGuild == enemyGuildInfo.With and enemyGuild == myGuildInfo.With then if enemyGuildInfo.ON == 1 and myGuildInfo.ON == 1 then return TRUE end end return FALSE end function getOnlineMembers(id) local PlayersOnline = getPlayersOnline() local MembersOnline = {} for i, pid in ipairs(PlayersOnline) do if id == getPlayerGuildId(PlayersOnline[i]) then table.insert(MembersOnline, PlayersOnline[i]) end end return MembersOnline end function teleportGuild(id, pos) local Members = getOnlineMembers(id) if #Members > 0 then for i = 1, #Members do if getTilePzInfo(getCreaturePosition(Members[i])) == TRUE then doTeleportThing(Members[i], pos, FALSE) doSendMagicEffect(pos, CONST_ME_TELEPORT) doSendMagicEffect(getCreaturePosition(Members[i]), CONST_ME_POFF) end end end end function removeFrag(cid) local FragTime = getConfigInfo('timeToDecreaseFrags') local myFragTime = getPlayerRedSkullTicks(cid) local Remo = (myFragTime - FragTime) if Remo < 0 then Remo = 0 end doPlayerSetRedSkullTicks(cid, Remo) end function getGuildsWithWar() local res = db.getResult("SELECT `id` FROM `guilds` WHERE `in_war_with` > 0") local GuildW = {} if res:getID() ~= LUA_ERROR then while true do table.insert(GuildW, res:getDataInt "id") if not res:next() then break end end res:free() end return GuildW end function guildExist(nom) local Get = db.getResult("SELECT `id` FROM `guilds` WHERE `name` = " .. db.escapeString(nom) .. ";") if Get:getID() ~= LUA_ERROR then local ret = Get:getDataInt("id") Get:free() return ret end return LUA_ERROR end function StarWar(x) teleportGuild(x.myGuild, Maps[x.map].Guild1Pos) teleportGuild(x.enemyGuild, Maps[x.map].Guild2Pos) --[[ putWarOn(x.myGuild, x.enemyGuild) if StopBattle == TRUE then addEvent(StopWarNow, 60 * 1000, {myGuild = x.myGuild, enemyGuild = x.enemyGuild}) end ]] end --[[ function StopWarNow© StopWar(c.myGuild, c.enemyGuild) doBroadcastMessage(BroadCast[6][1] ..getGuildNameById(c.myGuild).. BroadCast[6][2] ..getGuildNameById(c.enemyGuild).. BroadCast[6][3], BroadCast_Type) end function putWarOn(myGuild, enemyGuild) db.executeQuery("UPDATE `guilds` SET `war_time` = 1 WHERE `id` = ".. myGuild .."") db.executeQuery("UPDATE `guilds` SET `war_time` = 1 WHERE `id` = ".. enemyGuild .."") end ]]
2.0 - Crie um novo arquivo em: data\creaturescripts\scripts\ com o nome de: war_attack.lua e copie esse codigo:
dofile("./GuildWar.lua") function onAttack(cid, target) if isPlayer(cid) == TRUE and isPlayer(target) == TRUE then local myGuild = getPlayerGuildId(cid) local enemyGuild = getPlayerGuildId(target) if myGuild ~= 0 and enemyGuild ~= 0 then if enemyGuild == getGuildWarInfo(myGuild).With then if getPlayerSkullType(cid) == 3 or getPlayerSkullType(cid) == 4 then if getPlayerSkullType(target) == 0 then doCreatureSetSkullType(cid, 1) doCreatureSetSkullType(target, 1) end end end end end return TRUE end
2.1 - Crie um novo arquivo em: data\creaturescripts\scripts\ com o nome de: war_kill.lua e copie esse codigo:
dofile("./GuildWar.lua") local PZ = createConditionObject(CONDITION_INFIGHT) setConditionParam(PZ, CONDITION_PARAM_TICKS, getConfigInfo('whiteSkullTime')) function onKill(cid, target) if isPlayer(cid) == TRUE and isPlayer(target) == TRUE then local myGuild = getPlayerGuildId(cid) local enemyGuild = getPlayerGuildId(target) if myGuild ~= 0 and enemyGuild ~= 0 then if enemyGuild == getGuildWarInfo(myGuild).With then doAddCondition(cid, PZ) registerDeath(myGuild, enemyGuild, cid, target) doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "This frag will not count!") end end end return TRUE end
2.2 - Abra login.lua (data/creaturescripts/scripts/):
Após:
dofile("./GuildWar.lua") function onSay(cid, words, param) if getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER then local myGuild = getPlayerGuildId(cid) if words == "/war-invite" then if GuildIsInPEace(myGuild) == true then if param ~= "" then if guildExist(param) ~= LUA_ERROR then local invitedGuild = getGuildId(param) if invitedGuild ~= LUA_ERROR then if invitedGuild ~= myGuild then if GuildIsInPEace(invitedGuild) == true then doInviteToWar(myGuild, invitedGuild) doBroadcastMessage(BroadCast[1][1] ..getPlayerGuildName(cid).. BroadCast[1][2] ..getGuildNameById(invitedGuild).. BroadCast[1][3], BroadCast_Type) else doPlayerSendCancel(cid, CancelMessagesWar[6]) end else doPlayerSendCancel(cid, CancelMessagesWar[8]) end else doPlayerSendCancel(cid, CancelMessagesWar[4]) end else doPlayerSendCancel(cid, CancelMessagesWar[4]) end else doPlayerSendCancel(cid, CancelMessagesWar[7]) end else doPlayerSendCancel(cid, CancelMessagesWar[5]) end elseif words == "/war-accept" then if getGuildWarInfo(myGuild).By ~= 0 then local enemyGuild = getGuildWarInfo(myGuild).By doBroadcastMessage(BroadCast[2][1] ..getPlayerGuildName(cid).. BroadCast[2][2] ..getGuildNameById(enemyGuild).. BroadCast[2][3], BroadCast_Type) WarAccept(myGuild, enemyGuild) else doPlayerSendCancel(cid, CancelMessagesWar[1]) end elseif words == "/war-reject" then if getGuildWarInfo(myGuild).By ~= 0 then doBroadcastMessage(BroadCast[3][1] ..getPlayerGuildName(cid).. BroadCast[3][2] ..getGuildNameById(getGuildWarInfo(myGuild).By).. BroadCast[3][3], BroadCast_Type) cleanInfo(getGuildWarInfo(myGuild).By) cleanInfo(myGuild) else doPlayerSendCancel(cid, CancelMessagesWar[1]) end elseif words == "/war-cancel-invite" then if getGuildWarInfo(myGuild).To ~= 0 then if getGuildWarInfo(myGuild).With == 0 then doBroadcastMessage(BroadCast[4][1] ..getPlayerGuildName(cid).. BroadCast[4][2] ..getGuildNameById(getGuildWarInfo(myGuild).To).. BroadCast[4][3], BroadCast_Type) cleanInfo(getGuildWarInfo(myGuild).To) cleanInfo(myGuild) else doPlayerSendCancel(cid, CancelMessagesWar[3]) end else doPlayerSendCancel(cid, CancelMessagesWar[1]) end elseif words == "/war-challenge" then local map = Maps[param] if map then if getGuildWarInfo(myGuild).With ~= 0 and getGuildWarInfo(myGuild).ON == 0 then local enemyGuild = getGuildWarInfo(myGuild).With addEvent(StarWar, 15 * 1000, {myGuild = myGuild, enemyGuild = enemyGuild, map = param}) doBroadcastMessage(BroadCast[5][1] ..getPlayerGuildName(cid).. BroadCast[5][2] ..getGuildNameById(enemyGuild).. BroadCast[5][3] .. param ..".", BroadCast_Type) else doPlayerSendCancel(cid, CancelMessagesWar[10]) end else doPlayerSendCancel(cid, CancelMessagesWar[9]) end elseif words == "/war-cancel" then local enemy = getGuildWarInfo(myGuild).With if enemy ~= 0 then if (os.time() - getGuildWarInfo(myGuild).T) >= (60 * DelayToCancel) then StopWar(myGuild, enemy) doBroadcastMessage(BroadCast[6][1] ..getGuildNameById(myGuild).. BroadCast[6][2] ..getGuildNameById(enemy).. BroadCast[6][3], BroadCast_Type) else doPlayerSendCancel(cid, CancelMessagesWar[11]) end else doPlayerSendCancel(cid, CancelMessagesWar[10]) end end else doPlayerSendCancel(cid, CancelMessagesWar[2]) end local file = io.open("data/logs/Wars.txt", "a") file:write("".. os.date("%d %B %Y %X ", os.time()) .." --> "..getCreatureName(cid)..": "..words.." "..param.."\n") file:close() return TRUE end
4.1 - Adicione isto em: talkactions.xml
<?PHP //Litle Config $MaxShow = 20; //END if($action == '') { $main_content .= ' <P ALIGN=CENTER> <br> <FONT SIZE=4 COLOR=#8A0808> Como usar... </FONT> <br> <br> <FONT SIZE=2 COLOR=#DF0101> * <b>/war-invite</b> : <FONT SIZE=1 COLOR=green> Enviar um convite para iniciar uma War.<br> <u>Exemplo</u>: /war-invite Feel the Power </FONT><br> * <b>/war-accept</b> : <FONT SIZE=1 COLOR=green> Aceitar o convite para iniciar a War. </FONT><br> * <b>/war-reject</b> : <FONT SIZE=1 COLOR=green> Rejeitar o convite. </FONT><br> * <b>/war-cancel-invite</b> : <FONT SIZE=1 COLOR=green> Cancelar o convite. </FONT><br> * <b>/war-cancel</b> : <FONT SIZE=1 COLOR=green> Terminar a War, so pode ser usado apos 5 dias. </FONT><br> </FONT> <br> <FONT SIZE=2 COLOR=#8A0808> Esses comandos podem somente ser executados por lideres da guild.<br><br> <table border="1"><tr border="1"><td border="1"><h3>Obs:</h3> <ul> <li>Seu time so ganhara frag se matar quem esta na guild inimiga.</li> <li>Se alguen do mesmo time se matar sera descontado um frag da guild.</li> <li>Todos os frag da war nao sera contados como "Unjusted kills".</li> <li>Quando iniciada uma War so podera ser encerrada apos 5 dias.</li> </ul></td></tr></table> </FONT> </P> '; $wars = $SQL->query(" SELECT g.name AS gname, wg.name AS wgname, g.war_time AS gtime, g.kills AS kills, wg.kills AS ekills, g.show AS s, g.id AS gid, wg.id AS wgid FROM guilds AS g INNER JOIN guilds AS wg ON wg.id = g.in_war_with ORDER BY s DESC LIMIT 50; "); foreach ($wars as $k=>$v) { if ($v[s] == 1) { $stats .=" <TR BGCOLOR=\"".$config['site'][($k % 2 == 1 ? 'light' : 'dark').'border']."\"> <TD> <center> <b> <a href='index.php?subtopic=guilds&action=show&guild=" . $v[gid] . "'>$v[gname]</a> </b> </center> </TD> <TD>V/s</TD> <TD> <center> <b> <a href='index.php?subtopic=guilds&action=show&guild=" . $v[wgid] . "'>$v[wgname]</a> </b> </center> </TD> <TD> <center> " . data("d/m/y H:i:s", $v[gtime]) . " </center> </TD> <TD> <center> <a href='index.php?subtopic=wars&action=show&war=" . $v[gid] . "'>{$v[kills]} - {$v[ekills]}</a> </center> </TD> </TR> "; } } $main_content .= ' <center> <h1> Guilds Wars </h1> </center> '; if(!$stats) { $main_content .= ' <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR="'.$config['site']['vdarkborder'].'"> <TD CLASS=white> </TD> </TR> <TR BGCOLOR='.$config['site']['darkborder'].'> <TD> Nenhuma guild em War no '.$config['server']['serverName'].'. </TD> </TR> </TABLE> '; } else { $main_content .= " <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR=\"{$config['site']['vdarkborder']}\"> <TD CLASS=white width=25%> <center><B>Guild</B></center> </TD> <TD CLASS=white width=5%> <B>V/s</B> </TD> <TD CLASS=white width=25%> <center><B>Guild</B></center> </TD> <TD CLASS=white width=25%> <center><B>Started at</B></center> </TD> <TD CLASS=white width=20%> <center><B>Kills</B></center> </TD> </TR> $stats </TABLE> "; } ?> <?PHP $invitations = $SQL->query(" SELECT ig.name AS igname, i.name AS iname, i.id AS iid, ig.id AS igid FROM guilds AS i INNER JOIN guilds AS ig ON ig.id = i.invited_to ORDER BY iname ASC LIMIT 50; "); foreach ($invitations as $k=>$v) { $invi .=" <TR BGCOLOR=\"".$config['site'][($k % 2 == 1 ? 'light' : 'dark').'border']."\"> <TD> <center> <b> <a href='index.php?subtopic=guilds&action=show&guild=" . $v[iid] . "'>$v[iname]</a> </b> </center> </TD> <TD> <center> <b> <a href='index.php?subtopic=guilds&action=show&guild=" . $v[igid] . "'>$v[igname]</a> </b> </center> </TD> <TD></TD> </TR> "; } $main_content .= ' <center> <h1> Invitacoes Pendentes </h1> </center> '; if(!$invi) { $main_content .= ' <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR="'.$config['site']['vdarkborder'].'"> <TD CLASS=white> </TD> </TR> <TR BGCOLOR='.$config['site']['darkborder'].'> <TD> Nenhuma invitacao pendente no '.$config['server']['serverName'].'. </TD> </TR> </TABLE> <br> <div style="text-align: right; margin: 20px auto; font-size: 10px;"> Script by <a target="blank" href="http://otland.net/members/xampy/">Xampy</a> edited by <a href="http://www.xtibia.com/forum/allan1001-m205633.html">Allan</a></div> '; } else { $main_content .= " <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR=\"{$config['site']['vdarkborder']}\"> <TD CLASS=white width=50%> <center><B>Guild</B></center> </TD> <TD CLASS=white width=50%> <center><B>Invited guild</B></center> </TD> </TD> </TR> $invi </TABLE> "; } } //SHOW FRAGS ~~ if($action == 'show') { $guild = $ots->createObject('Guild'); $guild->load($_REQUEST['war']); $ranks = $SQL->query(" SELECT * FROM guild_ranks WHERE guild_id = ". $guild->getId() ."; "); foreach ($ranks as $y) { $Players = $SQL->query(" SELECT * FROM players WHERE rank_id = ". $y[id] ." ORDER BY name DESC;"); foreach ($Players as $v) { $totDeaths = 0; $deaths = $SQL->query(" SELECT COUNT(player_id) AS n FROM deaths_in_wars WHERE player_id = ". $v[id] ." GROUP BY player_id DESC LIMIT 1;"); foreach ($deaths as $q) { $totDeaths = $q[n]; } $membersDeaths .=" <center> <b> <a href='index.php?subtopic=characters&name=" . $v[name] . "'>$v[name]</a> ($totDeaths) </b> </center> "; } } $guild2 = $ots->createObject('Guild'); $guild2->load($guild->getCustomField(in_war_with)); $ranks2 = $SQL->query(" SELECT * FROM guild_ranks WHERE guild_id = ". $guild2->getId() ."; "); foreach ($ranks2 as $y) { $Players = $SQL->query(" SELECT * FROM players WHERE rank_id = ". $y[id] ." ORDER BY name DESC;"); foreach ($Players as $v) { $totDeaths2 = 0; $deaths = $SQL->query(" SELECT COUNT(player_id) AS n FROM deaths_in_wars WHERE player_id = ". $v[id] ." GROUP BY player_id DESC LIMIT 1;"); foreach ($deaths as $q) { $totDeaths2 = $q[n]; } $membersDeaths2 .=" <center> <b> <a href='index.php?subtopic=characters&name=" . $v[name] . "'>$v[name]</a> ($totDeaths2) </b> </center> "; } } $deathsG1 = $SQL->query(" SELECT * FROM deaths_in_wars WHERE killer_guild = ". $guild->getId() ." ORDER BY data DESC LIMIT ". $MaxShow .";"); $deathsG2 = $SQL->query(" SELECT * FROM deaths_in_wars WHERE killer_guild = ". $guild2->getId() ." ORDER BY data DESC LIMIT ". $MaxShow .";"); $Topfragger1 = $SQL->query(" SELECT killer, COUNT(killer) maximo FROM deaths_in_wars WHERE killer_guild = ". $guild->getId() ." GROUP BY killer ORDER BY maximo DESC LIMIT 1;"); foreach ($Topfragger1 as $y) { $name = $ots->createObject('Player'); $name->load($y[killer]); $TopFraggerName = $name->getName(); $numTop1 = $y[maximo]; } $Topfragger2 = $SQL->query(" SELECT killer, COUNT(killer) maximo FROM deaths_in_wars WHERE killer_guild = ". $guild2->getId() ." GROUP BY killer ORDER BY maximo DESC LIMIT 1;"); foreach ($Topfragger2 as $y) { $name = $ots->createObject('Player'); $name->load($y[killer]); $TopFraggerName2 = $name->getName(); $numTop2 = $y[maximo]; } $mostDead = $SQL->query(" SELECT player_id, COUNT(player_id) maximo FROM deaths_in_wars WHERE killer_guild = ". $guild->getId() ." GROUP BY player_id ORDER BY maximo DESC LIMIT 1;"); foreach ($mostDead as $y) { $name = $ots->createObject('Player'); $name->load($y[player_id]); $mostDeadName = $name->getName(); $mostDeadNum = $y[maximo]; } $mostDead2= $SQL->query(" SELECT player_id, COUNT(player_id) maximo FROM deaths_in_wars WHERE killer_guild = ". $guild2->getId() ." GROUP BY player_id ORDER BY maximo DESC LIMIT 1;"); foreach ($mostDead2 as $y) { $name = $ots->createObject('Player'); $name->load($y[player_id]); $mostDeadName2 = $name->getName(); $mostDeadNum2= $y[maximo]; } foreach ($deathsG1 as $k=>$v) { $killed = $ots->createObject('Player'); $killed->load($v[player_id]); $killedName = $killed->getName(); $killer = $ots->createObject('Player'); $killer->load($v[killer]); $killerName = $killer->getName(); $kills .=" <TR BGCOLOR=\"".$config['site'][($k % 2 == 1 ? 'light' : 'dark').'border']."\"> <TD> <center> <b> <a href='index.php?subtopic=characters&name=" . $killedName . "'>$killedName</a> </b> </center> </TD> <TD> <center> <b> <a href='index.php?subtopic=characters&name=" . $killerName . "'>$killerName</a> </b> </center> </TD> <TD> <center> " . data("d/m/y H:i:s", $v[data]) . " </center> </TD> </TR> "; } foreach ($deathsG2 as $k=>$v) { $killed = $ots->createObject('Player'); $killed->load($v[player_id]); $killedName = $killed->getName(); $killer = $ots->createObject('Player'); $killer->load($v[killer]); $killerName = $killer->getName(); $kills2 .=" <TR BGCOLOR=\"".$config['site'][($k % 2 == 1 ? 'light' : 'dark').'border']."\"> <TD> <center> <b> <a href='index.php?subtopic=characters&name=" . $killedName . "'>$killedName</a> </b> </center> </TD> <TD> <center> <b> <a href='index.php?subtopic=characters&name=" . $killerName . "'>$killerName</a> </b> </center> </TD> <TD> <center> " . data("d/m/y H:i:s", $v[data]) . " </center> </TD> </TR> "; } $main_content .= " <center> <b> <h2> Guilds em War <a href='index.php?subtopic=guilds&action=show&guild=" . $guild->getId() . "'> " . $guild->getName() . "</a> Versus <a href='index.php?subtopic=guilds&action=show&guild=" . $guild2->getId() . "'> " . $guild2->getName() . "</a> . </h2> <br> Iniciada em : </b>" . data("d/m/y H:i:s", $guild->getCustomField(war_time)) . " <br> <br> <b> Total Frags da " . $guild->getName() . " = " . $guild->getCustomField(kills) . " <br> <br> Total Frags da " . $guild2->getName() . " = " . $guild2->getCustomField(kills) . " <br> <br> Top fragger da " . $guild->getName() . " = <a href='index.php?subtopic=characters&name=" . $TopFraggerName . "'>" . $TopFraggerName . "</a> ($numTop1) <br> <br> Top fragger da " . $guild2->getName() . " = <a href='index.php?subtopic=characters&name=" . $TopFraggerName2 . "'>" . $TopFraggerName2 . "</a> ($numTop2) <br> <br> O mais noob da " . $guild->getName() . " = <a href='index.php?subtopic=characters&name=" . $mostDeadName . "'>" . $mostDeadName2 . "</a> ($mostDeadNum2) <br> <br> O mais noob da " . $guild2->getName() . " = <a href='index.php?subtopic=characters&name=" . $mostDeadName2 . "'>" . $mostDeadName . "</a> ($mostDeadNum) </b> </center> <br> <br> <br> "; $main_content .= " <center> <h1> Mortes dos Membros </h1> <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR=\"{$config['site']['vdarkborder']}\"> <TD CLASS=white width=50%> <center> <B> ". $guild->getName() ." </B> </center> </TD> <TD CLASS=white width=50%> <center> <B> ". $guild2->getName() ." </B> </center> </TD> </TR> <TR BGCOLOR=\"".$config['site']['darkborder']."\"> <TD> $membersDeaths </TD> <TD> $membersDeaths2 </TD> </TR> </TABLE> </center> <br> <br> <br> <center> <h1> Latest frags by ". $guild->getName() ." </h1> </center> <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR=\"{$config['site']['vdarkborder']}\"> <TD CLASS=white width=35%> <center> <B> Player </B> </center> </TD> <TD CLASS=white width=35%> <center> <B> Killed by </B> </center> </TD> <TD CLASS=white width=30%> <center> <B> Data </B> </center> </TD> </TR> $kills </TABLE> <center> <h1> Ultimo frag da ". $guild2->getName() ." </h1> </center> <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%> <TR BGCOLOR=\"{$config['site']['vdarkborder']}\"> <TD CLASS=white width=35%> <center> <B> Player </B> </center> </TD> <TD CLASS=white width=35%> <center> <B> Killed by </B> </center> </TD> <TD CLASS=white width=30%> <center> <B> Data </B> </center> </TD> </TR> $kills2 </TABLE> "; } ?>
6.01 Abra o index.php em: (C:/xampp/htdocs/)
Antes de:
case "buypoints"; $subtopic = "buypoints"; $topic = Buy Points"; include("buypoints.php"); break;
Adicione:
case "wars"; $subtopic = "wars"; $topic = "Wars"; include("wars.php"); break;
7.0 - Agora para ver a suas guerras entre em: http://localhost/index.php?subtopic=wars
Se você encontra qualquer erro, post-it aqui .
Se isso o ajudou, comente por favor.
Aproveitem! :smile_positivo:
Creditos:
· GeKirAh
·Nahruto
·christiandb
· Xampy