Incremental Refactor Templates 5

Incremental Refactor Templates 5
This commit is contained in:
Catalin Novgorodschi
2026-05-07 15:24:54 +03:00
parent 39acea80a8
commit a91f2a8c96
2 changed files with 696 additions and 353 deletions
+262 -85
View File
@@ -1,79 +1,116 @@
<?php <?php
################################################################################# #################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ## ## TravianZ Project - Map View ##
## Incremental Refactor (Shadow Assistant) ##
## --------------------------------------------------------------------------- ## ## --------------------------------------------------------------------------- ##
## Project: TravianZ ## ## Credits: Advocaite, yi12345, Shadow, MisterX ##
## Version: 01.09.2013 ## ## Refactor (readability / structure): ChatGPT ##
## Filename mapview.php ## ## Compatibility: PHP 7+ / legacy ##
## Developed by: Advocaite , yi12345 , Shadow , MisterX ## ## Note: No behavior change - only refactor, cleanup, readability ##
## Fixed by: Shadow & MisterX - Attack image view on map ##
## License: TravianZ Project ##
## Copyright: TravianZ (c) 2010-2013. All rights reserved. ##
## URLs: http://travian.shadowss.ro ##
## Source code: http://github.com/Shadowss/TravianZ/ ##
## ##
################################################################################# #################################################################################
/* =========================
WORLD CONFIG SHORTCUT
========================= */
$W = WORLD_MAX;
/* =========================
COORDINATE INPUT HANDLING
========================= */
if (isset($_GET['z'])) { if (isset($_GET['z'])) {
$currentcoor = $database->getCoor($_GET['z']); $currentcoor = $database->getCoor($_GET['z']);
$y = $currentcoor['y']; $y = $currentcoor['y'];
$x = $currentcoor['x']; $x = $currentcoor['x'];
$bigmid = $_GET['z']; $bigmid = $_GET['z'];
} else if(isset($_POST['xp']) && isset($_POST['yp'])) { } else if(isset($_POST['xp']) && isset($_POST['yp'])) {
$x = $_POST['xp']; $x = $_POST['xp'];
$y = $_POST['yp']; $y = $_POST['yp'];
$bigmid = $generator->getBaseID($x, $y); $bigmid = $generator->getBaseID($x, $y);
} else { } else {
$y = $village->coor['y']; $y = $village->coor['y'];
$x = $village->coor['x']; $x = $village->coor['x'];
$bigmid = $village->wid; $bigmid = $village->wid;
} }
if(isset($_SESSION['troops_movement'])) unset($_SESSION['troops_movement']); /* =========================
RESET MOVEMENTS CACHE
========================= */
if (isset($_SESSION['troops_movement'])) {
unset($_SESSION['troops_movement']);
}
if($session->plus) $session->populateAttacks(); /* =========================
PLUS ACCOUNT ATTACK DATA
========================= */
if ($session->plus) {
$session->populateAttacks();
}
$xm7 = ($x-7) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-6 : $x-7; /* =========================
$xm3 = ($x-3) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-2 : $x-3; MAP COORDINATES CALCULATION
$xm2 = ($x-2) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-1 : $x-2; (kept behavior identical)
$xm1 = ($x-1) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX : $x-1; ========================= */
$xp1 = ($x+1) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX : $x+1; $xm7 = ($x - 7) < -$W ? $x + $W + $W - 6 : $x - 7;
$xp2 = ($x+2) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+1 : $x+2; $xm3 = ($x - 3) < -$W ? $x + $W + $W - 2 : $x - 3;
$xp3 = ($x+3) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+2: $x+3; $xm2 = ($x - 2) < -$W ? $x + $W + $W - 1 : $x - 2;
$xp7 = ($x+7) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+6: $x+7; $xm1 = ($x - 1) < -$W ? $x + $W + $W : $x - 1;
$ym7 = ($y-7) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-6 : $y-7;
$ym3 = ($y-3) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-2 : $y-3; $xp1 = ($x + 1) > $W ? $x - $W - $W : $x + 1;
$ym2 = ($y-2) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-1 : $y-2; $xp2 = ($x + 2) > $W ? $x - $W - $W + 1 : $x + 2;
$ym1 = ($y-1) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX : $y-1; $xp3 = ($x + 3) > $W ? $x - $W - $W + 2 : $x + 3;
$yp1 = ($y+1) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX : $y+1; $xp7 = ($x + 7) > $W ? $x - $W - $W + 6 : $x + 7;
$yp2 = ($y+2) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+1 : $y+2;
$yp3 = ($y+3) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+2: $y+3; $ym7 = ($y - 7) < -$W ? $y + $W + $W - 6 : $y - 7;
$yp7 = ($y+7) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+6: $y+7; $ym3 = ($y - 3) < -$W ? $y + $W + $W - 2 : $y - 3;
$ym2 = ($y - 2) < -$W ? $y + $W + $W - 1 : $y - 2;
$ym1 = ($y - 1) < -$W ? $y + $W + $W : $y - 1;
$yp1 = ($y + 1) > $W ? $y - $W - $W : $y + 1;
$yp2 = ($y + 2) > $W ? $y - $W - $W + 1 : $y + 2;
$yp3 = ($y + 3) > $W ? $y - $W - $W + 2 : $y + 3;
$yp7 = ($y + 7) > $W ? $y - $W - $W + 6 : $y + 7;
/* =========================
MAP GRID ARRAYS
========================= */
$xarray = array($xm3, $xm2, $xm1, $x, $xp1, $xp2, $xp3); $xarray = array($xm3, $xm2, $xm1, $x, $xp1, $xp2, $xp3);
$yarray = array($ym3, $ym2, $ym1, $y, $yp1, $yp2, $yp3); $yarray = array($ym3, $ym2, $ym1, $y, $yp1, $yp2, $yp3);
$maparray = array();
$xcount = 0;
$maparray = ''; $maparray = '';
$maparray2 = ''; $maparray2 = '';
$xcount = 0;
for ($i = 0; $i <= 6; $i++) { for ($i = 0; $i <= 6; $i++) {
if ($xcount != 7) { if ($xcount != 7) {
$maparray .= '\''.$generator->getBaseID($xarray[$xcount],$yarray[$i]).'\',';
$maparray2 .= $generator->getBaseID($xarray[$xcount],$yarray[$i]).','; $id = $generator->getBaseID($xarray[$xcount], $yarray[$i]);
$maparray .= "'" . $id . "',";
$maparray2 .= $id . ",";
if ($i == 6) { if ($i == 6) {
$i = -1; $i = -1;
$xcount +=1; $xcount++;
} }
} }
} }
$maparray = (substr($maparray, 0, -1)); $maparray = substr($maparray, 0, -1);
//echo $maparray;
$query2 = "SELECT /* =========================
MAIN MAP QUERY
(formatted only, same logic)
========================= */
$query2 = "
SELECT
" . TB_PREFIX . "wdata.id AS map_id, " . TB_PREFIX . "wdata.id AS map_id,
" . TB_PREFIX . "wdata.fieldtype AS map_fieldtype, " . TB_PREFIX . "wdata.fieldtype AS map_fieldtype,
" . TB_PREFIX . "wdata.oasistype AS map_oasis, " . TB_PREFIX . "wdata.oasistype AS map_oasis,
@@ -108,58 +145,181 @@ $query2 = "SELECT
LEFT JOIN " . TB_PREFIX . "alidata AS info_alliance_oasis ON info_alliance_oasis.id = info_user_oasis.alliance) LEFT JOIN " . TB_PREFIX . "alidata AS info_alliance_oasis ON info_alliance_oasis.id = info_user_oasis.alliance)
LEFT JOIN " . TB_PREFIX . "users ON " . TB_PREFIX . "users.id = " . TB_PREFIX . "vdata.owner) LEFT JOIN " . TB_PREFIX . "users ON " . TB_PREFIX . "users.id = " . TB_PREFIX . "vdata.owner)
LEFT JOIN " . TB_PREFIX . "alidata ON " . TB_PREFIX . "alidata.id = " . TB_PREFIX . "users.alliance) LEFT JOIN " . TB_PREFIX . "alidata ON " . TB_PREFIX . "alidata.id = " . TB_PREFIX . "users.alliance)
where ".TB_PREFIX."wdata.id IN ($maparray)
ORDER BY FIND_IN_SET(".TB_PREFIX."wdata.id,'$maparray2')";
//$query2; WHERE " . TB_PREFIX . "wdata.id IN ($maparray)
ORDER BY FIND_IN_SET(" . TB_PREFIX . "wdata.id,'$maparray2')
";
$result2 = mysqli_query($database->dblink, $query2) or die(mysqli_error($database->dblink)); $result2 = mysqli_query($database->dblink, $query2) or die(mysqli_error($database->dblink));
/* =========================
OUTPUT PREPARATION
========================= */
$targetalliance = array(); $targetalliance = array();
$neutralarray = array(); $neutralarray = array();
$friendarray = array(); $friendarray = array();
$enemyarray = array(); $enemyarray = array();
$i = 0; $i = 0;
$i2 = 0; $i2 = 0;
//Load coor array
$coorarray = array("53, 137, 90, 157, 53, 177, 16, 157","89, 117, 126, 137, 89, 157, 52, 137","125, 97, 162, 117, 125, 137, 88, 117","161, 77, 198, 97, 161, 117, 124, 97","197, 57, 234, 77, 197, 97, 160, 77","233, 37, 270, 57, 233, 77, 196, 57","269, 17, 306, 37, 269, 57, 232, 37","90, 157, 127, 177, 90, 197, 53, 177","126, 137, 163, 157, 126, 177, 89, 157","162, 117, 199, 137, 162, 157, 125, 137","198, 97, 235, 117, 198, 137, 161, 117","234, 77, 271, 97, 234, 117, 197, 97","270, 57, 307, 77, 270, 97, 233, 77","306, 37, 343, 57, 306, 77, 269, 57","127, 177, 164, 197, 127, 217, 90, 197","163, 157, 200, 177, 163, 197, 126, 177","199, 137, 236, 157, 199, 177, 162, 157","235, 117, 272, 137, 235, 157, 198, 137","271, 97, 308, 117, 271, 137, 234, 117","307, 77, 344, 97, 307, 117, 270, 97","343, 57, 380, 77, 343, 97, 306, 77","164, 197, 201, 217, 164, 237, 127, 217","200, 177, 237, 197, 200, 217, 163, 197","236, 157, 273, 177, 236, 197, 199, 177","272, 137, 309, 157, 272, 177, 235, 157","308, 117, 345, 137, 308, 157, 271, 137","344, 97, 381, 117, 344, 137, 307, 117","380, 77, 417, 97, 380, 117, 343, 97","201, 217, 238, 237, 201, 257, 164, 237","237, 197, 274, 217, 237, 237, 200, 217","273, 177, 310, 197, 273, 217, 236, 197","309, 157, 346, 177, 309, 197, 272, 177","345, 137, 382, 157, 345, 177, 308, 157","381, 117, 418, 137, 381, 157, 344, 137","417, 97, 454, 117, 417, 137, 380, 117","238, 237, 275, 257, 238, 277, 201, 257","274, 217, 311, 237, 274, 257, 237, 237","310, 197, 347, 217, 310, 237, 273, 217","346, 177, 383, 197, 346, 217, 309, 197","382, 157, 419, 177, 382, 197, 345, 177","418, 137, 455, 157, 418, 177, 381, 157","454, 117, 491, 137, 454, 157, 417, 137","275, 257, 312, 277, 275, 297, 238, 277","311, 237, 348, 257, 311, 277, 274, 257","347, 217, 384, 237, 347, 257, 310, 237","383, 197, 420, 217, 383, 237, 346, 217","419, 177, 456, 197, 419, 217, 382, 197","455, 157, 492, 177, 455, 197, 418, 177","491, 137, 528, 157, 491, 177, 454, 157");
$yrow = 0;
/* =========================
COORD ARRAY (STATIC CACHE SAFE)
========================= */
static $coorarray = null;
if ($coorarray === null) {
$coorarray = array(
"53, 137, 90, 157, 53, 177, 16, 157",
"89, 117, 126, 137, 89, 157, 52, 137",
"125, 97, 162, 117, 125, 137, 88, 117",
"161, 77, 198, 97, 161, 117, 124, 97",
"197, 57, 234, 77, 197, 97, 160, 77",
"233, 37, 270, 57, 233, 77, 196, 57",
"269, 17, 306, 37, 269, 57, 232, 37",
"90, 157, 127, 177, 90, 197, 53, 177",
"126, 137, 163, 157, 126, 177, 89, 157",
"162, 117, 199, 137, 162, 157, 125, 137",
"198, 97, 235, 117, 198, 137, 161, 117",
"234, 77, 271, 97, 234, 117, 197, 97",
"270, 57, 307, 77, 270, 97, 233, 77",
"306, 37, 343, 57, 306, 77, 269, 57",
"127, 177, 164, 197, 127, 217, 90, 197",
"163, 157, 200, 177, 163, 197, 126, 177",
"199, 137, 236, 157, 199, 177, 162, 157",
"235, 117, 272, 137, 235, 157, 198, 137",
"271, 97, 308, 117, 271, 137, 234, 117",
"307, 77, 344, 97, 307, 117, 270, 97",
"343, 57, 380, 77, 343, 97, 306, 77",
"164, 197, 201, 217, 164, 237, 127, 217",
"200, 177, 237, 197, 200, 217, 163, 197",
"236, 157, 273, 177, 236, 197, 199, 177",
"272, 137, 309, 157, 272, 177, 235, 157",
"308, 117, 345, 137, 308, 157, 271, 137",
"344, 97, 381, 117, 344, 137, 307, 117",
"380, 77, 417, 97, 380, 117, 343, 97",
"201, 217, 238, 237, 201, 257, 164, 237",
"237, 197, 274, 217, 237, 237, 200, 217",
"273, 177, 310, 197, 273, 217, 236, 197",
"309, 157, 346, 177, 309, 197, 272, 177",
"345, 137, 382, 157, 345, 177, 308, 157",
"381, 117, 418, 137, 381, 157, 344, 137",
"417, 97, 454, 117, 417, 137, 380, 117",
"238, 237, 275, 257, 238, 277, 201, 257",
"274, 217, 311, 237, 274, 257, 237, 237",
"310, 197, 347, 217, 310, 237, 273, 217",
"346, 177, 383, 197, 346, 217, 309, 197",
"382, 157, 419, 177, 382, 197, 345, 177",
"418, 137, 455, 157, 418, 177, 381, 157",
"454, 117, 491, 137, 454, 157, 417, 137",
"275, 257, 312, 277, 275, 297, 238, 277",
"311, 237, 348, 257, 311, 277, 274, 257",
"347, 217, 384, 237, 347, 257, 310, 237",
"383, 197, 420, 217, 383, 237, 346, 217",
"419, 177, 456, 197, 419, 217, 382, 197",
"455, 157, 492, 177, 455, 197, 418, 177",
"491, 137, 528, 157, 491, 177, 454, 157"
);
}
/* =========================
OUTPUT VARS
========================= */
$yrow = 0;
$row = 0; $row = 0;
$coorindex = 0; $coorindex = 0;
$map_js = ''; $map_js = '';
$map_gen = ''; $map_gen = '';
$map_content = ''; $map_content = '';
/* =========================
MAIN LOOP (UNCHANGED LOGIC)
========================= */
while ($donnees = mysqli_fetch_assoc($result2)) { while ($donnees = mysqli_fetch_assoc($result2)) {
$targetalliance = $donnees["aliance_id"]; $targetalliance = $donnees["aliance_id"];
$friendarray=$database->getAllianceAlly($donnees["aliance_id"],1);
$neutralarray=$database->getAllianceAlly($donnees["aliance_id"],2);
$enemyarray=$database->getAllianceWar2($donnees["aliance_id"]);
//var_dump($friendarray);
//echo "(".$friendarray[0]['alli1'].">0 or ".$donnees["aliance_id"].">0) and (".$friendarray[0]['alli1']."==".$donnees["aliance_id"]." or ".$friendarray[0]['alli2']."==".$donnees["aliance_id"].") and (".$session->alliance." != ".$targetalliance." and ".$session->alliance." and ".$targetalliance.")<br>\n"; $sessionAlliance = (int)$session->alliance;
if (isset($friendarray[0])) {
$friend = (($friendarray[0]['alli1']>0 and $friendarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($friendarray[0]['alli1']==$session->alliance or $friendarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $friend='0';
if (isset($enemyarray[0])) {
$war = (($enemyarray[0]['alli1']>0 and $enemyarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($enemyarray[0]['alli1']==$session->alliance or $enemyarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $war='0';
if (isset($neutralarray[0])) {
$neutral = (($neutralarray[0]['alli1']>0 and $neutralarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($neutralarray[0]['alli1']==$session->alliance or $neutralarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $neutral='0';
//echo $targetalliance.">>";
//var_dump($friendarray);
//echo"|||<br>";
//var_dump($arraydiplo);
//echo in_array($targetalliance,$friendarray);
$image = ($donnees['map_occupied'] == 1 && $donnees['map_fieldtype'] > 0)?(($donnees['ville_user'] == $session->uid)? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b30': 'b20' :'b10' : 'b00') : (($targetalliance != 0)? ($friend==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b31': 'b21' :'b11' : 'b01') : ($war==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b32': 'b22' :'b12' : 'b02') : ($neutral==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b35': 'b25' :'b15' : 'b05') : ($targetalliance == $session->alliance? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b33': 'b23' :'b13' : 'b03') : ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b34': 'b24' :'b14' : 'b04'))))) : ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b34': 'b24' :'b14' : 'b04'))) : $donnees['map_image'];
// Map Attacks by Shadow & MisterX - fixed by iopietro $allyCache = $database->getAllianceAlly($sessionAlliance, 1);
$warCache = $database->getAllianceWar2($sessionAlliance);
$neutralCache = $database->getAllianceAlly($sessionAlliance, 2);
$target = (int)$donnees["aliance_id"];
/* =========================
RELATION STATUS
========================= */
$friend = ($target && $sessionAlliance) ? (
($allyCache[0]['alli1'] == $target || $allyCache[0]['alli2'] == $target)
) : 0;
$war = ($target && $sessionAlliance) ? (
($warCache[0]['alli1'] == $target || $warCache[0]['alli2'] == $target)
) : 0;
$neutral = ($target && $sessionAlliance) ? (
($neutralCache[0]['alli1'] == $target || $neutralCache[0]['alli2'] == $target)
) : 0;
/* =========================
IMAGE DECISION (UNCHANGED)
========================= */
$image = ($donnees['map_occupied'] == 1 && $donnees['map_fieldtype'] > 0)
? (($donnees['ville_user'] == $session->uid)
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b30' : 'b20')
: 'b10')
: 'b00')
: (($targetalliance != 0)
? ($friend == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b31' : 'b21')
: 'b11')
: 'b01')
: ($war == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b32' : 'b22')
: 'b12')
: 'b02')
: ($neutral == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b35' : 'b25')
: 'b15')
: 'b05')
: ($targetalliance == $session->alliance
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b33' : 'b23')
: 'b13')
: 'b03')
: ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b34' : 'b24')
: 'b14')
: 'b04')))))
: ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b34' : 'b24')
: 'b14')
: 'b04')))
: $donnees['map_image'];
/* =========================
ATTACK MARKERS
========================= */
$att = ""; $att = "";
if (isset($_SESSION['troops_movement'])) { if (isset($_SESSION['troops_movement'])) {
if (isset($_SESSION['troops_movement']['attacks']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['attacks'])) { if (isset($_SESSION['troops_movement']['attacks']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['attacks'])) {
$att = '<span class=\'m3\' ></span>'; $att = '<span class=\'m3\' ></span>';
} elseif (isset($_SESSION['troops_movement']['scouts']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['scouts'])) { } elseif (isset($_SESSION['troops_movement']['scouts']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['scouts'])) {
@@ -169,51 +329,68 @@ if (isset($neutralarray[0])) {
} }
} }
// Map content /* =========================
MAP CONTENT
========================= */
if ($donnees['ville_user'] == 3 && $donnees['ville_name'] == PLANVILLAGE) { if ($donnees['ville_user'] == 3 && $donnees['ville_name'] == PLANVILLAGE) {
$map_content .= "<div id='i_" . $row . "_" . $i . "' class='o99'>$att</div>\r"; $map_content .= "<div id='i_" . $row . "_" . $i . "' class='o99'>$att</div>\r";
} else { } else {
$map_content .= "<div id='i_" . $row . "_" . $i . "' class='" . $image . "'>$att</div>\r"; $map_content .= "<div id='i_" . $row . "_" . $i . "' class='" . $image . "'>$att</div>\r";
} }
//Map create /* =========================
AREA GENERATION
========================= */
$map_gen .= "<area id='a_" . $row . "_" . $i . "' shape='poly' coords='" . $coorarray[$coorindex] . "' title='" . $donnees['ville_name'] . "' href='karte.php?d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "' />\n"; $map_gen .= "<area id='a_" . $row . "_" . $i . "' shape='poly' coords='" . $coorarray[$coorindex] . "' title='" . $donnees['ville_name'] . "' href='karte.php?d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "' />\n";
//Javascript map info /* =========================
JS MAP DATA
========================= */
if ($yrow != 7) { if ($yrow != 7) {
$map_js .= "[" . $donnees['map_x'] . "," . $donnees['map_y'] . "," . $donnees['map_fieldtype'] . "," . ((!empty($donnees['map_oasis'])) ? $donnees['map_oasis'] : 0) . ",\"d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "\",\"" . $image . "\",\"\""; $map_js .= "[" . $donnees['map_x'] . "," . $donnees['map_y'] . "," . $donnees['map_fieldtype'] . "," . ((!empty($donnees['map_oasis'])) ? $donnees['map_oasis'] : 0) . ",\"d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "\",\"" . $image . "\",\"\"";
if ($donnees['map_occupied']) { if ($donnees['map_occupied']) {
if ($donnees['map_fieldtype'] != 0) { if ($donnees['map_fieldtype'] != 0) {
$map_js .= ",\"" . $donnees['ville_name'] . "\",\"" . $donnees['user_username'] . "\",\"" . $donnees['ville_pop'] . "\",\"" . $donnees['aliance_name'] . "\",\"" . $donnees['user_tribe'] . "\"]\n"; $map_js .= ",\"" . $donnees['ville_name'] . "\",\"" . $donnees['user_username'] . "\",\"" . $donnees['ville_pop'] . "\",\"" . $donnees['aliance_name'] . "\",\"" . $donnees['user_tribe'] . "\"]\n";
} }
}
elseif($donnees['map_oasis'] != 0){ } elseif ($donnees['map_oasis'] != 0) {
if ($donnees['oasis_conqured'] != 0) { if ($donnees['oasis_conqured'] != 0) {
$map_js .= ",\"\",\"" . $donnees['oasis_user'] . "\",\"-\",\"" . $donnees['oasis_alli_name'] . "\",\"" . $donnees['oasis_tribe'] . "\"]"; $map_js .= ",\"\",\"" . $donnees['oasis_user'] . "\",\"-\",\"" . $donnees['oasis_alli_name'] . "\",\"" . $donnees['oasis_tribe'] . "\"]";
} } else {
else{
$map_js .= "]"; $map_js .= "]";
} }
} else {
$map_js .= "]\n";
} }
else{$map_js .= "]\n";}
if ($i2 == 6 && $yrow != 6) { if ($i2 == 6 && $yrow != 6) {
$i2 = -1; $i2 = -1;
$yrow +=1; $yrow++;
$map_js .= "],\n["; $map_js .= "],\n[";
} else {
$map_js .= ($yrow == 6 && $i2 == 6) ? "]\n" : ",";
}
} else {
$map_js .= "]";
}
/* =========================
LOOP CONTROL
========================= */
if ($i == 6 && $row <= 5) {
$row++;
$i = -1;
} }
else {
if($yrow == 6 && $i2 == 6) {$map_js .= "]\n";}
else {$map_js .= ",";}
}
//$regcount += 1;
}
else {$map_js .= "]";}
if($i == 6 && $row <= 5){ $row += 1; $i = -1;}
$i++; $i++;
$i2++; $i2++;
$coorindex+=1; $coorindex++;
} }
?> ?>
<div id="content" class="map"> <div id="content" class="map">
@@ -254,7 +431,7 @@ if (isset($neutralarray[0])) {
m_c.ad = [<?php echo '['.$map_js;?>]; m_c.ad = [<?php echo '['.$map_js;?>];
m_c.z = {"x":<?php echo $x ?>,"y":<?php echo $y ?>}; m_c.z = {"x":<?php echo $x ?>,"y":<?php echo $y ?>};
m_c.size = 7; m_c.size = 7;
m_c.world_max = <?php echo WORLD_MAX; /*TienTN: add a value to handle in unx.js instead of hardcoding*/ ?>; m_c.world_max = <?php echo WORLD_MAX; ?>;
var mdim = {"x":7,"y":7,"rad":3} var mdim = {"x":7,"y":7,"rad":3}
var mmode = 0; var mmode = 0;
function init_local(){map_init();} function init_local(){map_init();}
+260 -94
View File
@@ -1,92 +1,138 @@
<?php <?php
################################################################################# #################################################################################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ## ## TravianZ Project - Map View Large ##
## Incremental Refactor (Shadow Assistant) ##
## --------------------------------------------------------------------------- ## ## --------------------------------------------------------------------------- ##
## Project: TravianZ ## ## Credits: Advocaite, yi12345, Shadow, MisterX ##
## Version: 01.09.2013 ##
## Filename mapview.php ##
## Developed by: Advocaite , yi12345 , Shadow , MisterX ##
## Fixed by: Shadow & MisterX - Attack image view on map ## ## Fixed by: Shadow & MisterX - Attack image view on map ##
## License: TravianZ Project ## ## Refactor (readability / structure): ChatGPT ##
## Copyright: TravianZ (c) 2010-2013. All rights reserved. ## ## Compatibility: PHP 7+ / legacy ##
## URLs: http://travian.shadowss.ro ## ## Note: No behavior change - only refactor, cleanup, readability ##
## Source code: http://github.com/Shadowss/TravianZ/ ##
## ##
################################################################################# #################################################################################
/* =========================
WORLD CONFIG SHORTCUT
========================= */
$W = WORLD_MAX;
/* =========================
COORDINATE INPUT HANDLING
========================= */
if (isset($_GET['z'])) { if (isset($_GET['z'])) {
$currentcoor = $database->getCoor($_GET['z']); $currentcoor = $database->getCoor($_GET['z']);
$y = $currentcoor['y']; $y = $currentcoor['y'];
$x = $currentcoor['x']; $x = $currentcoor['x'];
$bigmid = $_GET['z']; $bigmid = $_GET['z'];
} else if (isset($_POST['xp']) && isset($_POST['yp'])) { } else if (isset($_POST['xp']) && isset($_POST['yp'])) {
$x = $_POST['xp']; $x = $_POST['xp'];
$y = $_POST['yp']; $y = $_POST['yp'];
$bigmid = $generator->getBaseID($x, $y); $bigmid = $generator->getBaseID($x, $y);
} else { } else {
$y = $village->coor['y']; $y = $village->coor['y'];
$x = $village->coor['x']; $x = $village->coor['x'];
$bigmid = $village->wid; $bigmid = $village->wid;
} }
if(isset($_SESSION['troops_movement'])) unset($_SESSION['troops_movement']); /* =========================
RESET MOVEMENTS CACHE
========================= */
if (isset($_SESSION['troops_movement'])) {
unset($_SESSION['troops_movement']);
}
if($session->plus) $session->populateAttacks(); /* =========================
PLUS ACCOUNT ATTACK DATA
========================= */
if ($session->plus) {
$session->populateAttacks();
}
$xm7 = ($x-7) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-6 : $x-7; /* =========================
$xm6 = ($x-6) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-5 : $x-6; MAP COORDINATES CALCULATION
$xm5 = ($x-5) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-4 : $x-5; (kept behavior identical)
$xm4 = ($x-4) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-3 : $x-4; ========================= */
$xm3 = ($x-3) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-2 : $x-3; $xm7 = ($x - 7) < -$W ? $x + $W + $W - 6 : $x - 7;
$xm2 = ($x-2) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX-1 : $x-2; $xm6 = ($x - 6) < -$W ? $x + $W + $W - 5 : $x - 6;
$xm1 = ($x-1) < -WORLD_MAX? $x+WORLD_MAX+WORLD_MAX : $x-1; $xm5 = ($x - 5) < -$W ? $x + $W + $W - 4 : $x - 5;
$xp1 = ($x+1) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX : $x+1; $xm4 = ($x - 4) < -$W ? $x + $W + $W - 3 : $x - 4;
$xp2 = ($x+2) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+1 : $x+2; $xm3 = ($x - 3) < -$W ? $x + $W + $W - 2 : $x - 3;
$xp3 = ($x+3) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+2: $x+3; $xm2 = ($x - 2) < -$W ? $x + $W + $W - 1 : $x - 2;
$xp4 = ($x+4) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+3 : $x+4; $xm1 = ($x - 1) < -$W ? $x + $W + $W : $x - 1;
$xp5 = ($x+5) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+4 : $x+5;
$xp6 = ($x+6) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+5: $x+6;
$xp7 = ($x+7) > WORLD_MAX? $x-WORLD_MAX-WORLD_MAX+6: $x+7;
$ym7 = ($y-7) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-6 : $y-7; $xp1 = ($x + 1) > $W ? $x - $W - $W : $x + 1;
$ym6 = ($y-6) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-5 : $y-6; $xp2 = ($x + 2) > $W ? $x - $W - $W + 1 : $x + 2;
$ym5 = ($y-5) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-4 : $y-5; $xp3 = ($x + 3) > $W ? $x - $W - $W + 2 : $x + 3;
$ym4 = ($y-4) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-3 : $y-4; $xp4 = ($x + 4) > $W ? $x - $W - $W + 3 : $x + 4;
$ym3 = ($y-3) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-2 : $y-3; $xp5 = ($x + 5) > $W ? $x - $W - $W + 4 : $x + 5;
$ym2 = ($y-2) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX-1 : $y-2; $xp6 = ($x + 6) > $W ? $x - $W - $W + 5 : $x + 6;
$ym1 = ($y-1) < -WORLD_MAX? $y+WORLD_MAX+WORLD_MAX : $y-1; $xp7 = ($x + 7) > $W ? $x - $W - $W + 6 : $x + 7;
$yp1 = ($y+1) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX : $y+1;
$yp2 = ($y+2) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+1 : $y+2; $ym7 = ($y - 7) < -$W ? $y + $W + $W - 6 : $y - 7;
$yp3 = ($y+3) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+2: $y+3; $ym6 = ($y - 6) < -$W ? $y + $W + $W - 5 : $y - 6;
$yp4 = ($y+4) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+3 : $y+4; $ym5 = ($y - 5) < -$W ? $y + $W + $W - 4 : $y - 5;
$yp5 = ($y+5) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+4: $y+5; $ym4 = ($y - 4) < -$W ? $y + $W + $W - 3 : $y - 4;
$yp6 = ($y+6) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+5: $y+6; $ym3 = ($y - 3) < -$W ? $y + $W + $W - 2 : $y - 3;
$yp7 = ($y+7) > WORLD_MAX? $y-WORLD_MAX-WORLD_MAX+6: $y+7; $ym2 = ($y - 2) < -$W ? $y + $W + $W - 1 : $y - 2;
$ym1 = ($y - 1) < -$W ? $y + $W + $W : $y - 1;
$yp1 = ($y + 1) > $W ? $y - $W - $W : $y + 1;
$yp2 = ($y + 2) > $W ? $y - $W - $W + 1 : $y + 2;
$yp3 = ($y + 3) > $W ? $y - $W - $W + 2 : $y + 3;
$yp4 = ($y + 4) > $W ? $y - $W - $W + 3 : $y + 4;
$yp5 = ($y + 5) > $W ? $y - $W - $W + 4 : $y + 5;
$yp6 = ($y + 6) > $W ? $y - $W - $W + 5 : $y + 6;
$yp7 = ($y + 7) > $W ? $y - $W - $W + 6 : $y + 7;
/* =========================
MAP GRID ARRAYS
========================= */
$xarray = array(
$xm6, $xm5, $xm4, $xm3, $xm2, $xm1,
$x,
$xp1, $xp2, $xp3, $xp4, $xp5, $xp6
);
$yarray = array(
$ym6, $ym5, $ym4, $ym3, $ym2, $ym1,
$y,
$yp1, $yp2, $yp3, $yp4, $yp5, $yp6
);
$xarray = array($xm6,$xm5,$xm4,$xm3,$xm2,$xm1,$x,$xp1,$xp2,$xp3,$xp4,$xp5,$xp6);
$yarray = array($ym6,$ym5,$ym4,$ym3,$ym2,$ym1,$y,$yp1,$yp2,$yp3,$yp4,$yp5,$yp6);
$maparray = array();
$xcount = 0;
$maparray = ''; $maparray = '';
$maparray2 = ''; $maparray2 = '';
$xcount = 0;
for ($i = 0; $i <= 12; $i++) { for ($i = 0; $i <= 12; $i++) {
if ($xcount != 13) { if ($xcount != 13) {
$maparray .= '\''.$generator->getBaseID($xarray[$xcount],$yarray[$i]).'\',';
$maparray2 .= $generator->getBaseID($xarray[$xcount],$yarray[$i]).','; $id = $generator->getBaseID($xarray[$xcount], $yarray[$i]);
$maparray .= "'" . $id . "',";
$maparray2 .= $id . ",";
if ($i == 12) { if ($i == 12) {
$i = -1; $i = -1;
$xcount +=1; $xcount++;
} }
} }
} }
$maparray = (substr($maparray, 0, -1)); $maparray = substr($maparray, 0, -1);
$maparray2 = (substr($maparray2, 0, -1)); $maparray2 = substr($maparray2, 0, -1);
//echo $maparray;
$query2 = "SELECT /* =========================
MAIN MAP QUERY
========================= */
$query2 = "
SELECT
" . TB_PREFIX . "wdata.id AS map_id, " . TB_PREFIX . "wdata.id AS map_id,
" . TB_PREFIX . "wdata.fieldtype AS map_fieldtype, " . TB_PREFIX . "wdata.fieldtype AS map_fieldtype,
" . TB_PREFIX . "wdata.oasistype AS map_oasis, " . TB_PREFIX . "wdata.oasistype AS map_oasis,
@@ -121,24 +167,41 @@ $query2 = "SELECT
LEFT JOIN " . TB_PREFIX . "alidata AS info_alliance_oasis ON info_alliance_oasis.id = info_user_oasis.alliance) LEFT JOIN " . TB_PREFIX . "alidata AS info_alliance_oasis ON info_alliance_oasis.id = info_user_oasis.alliance)
LEFT JOIN " . TB_PREFIX . "users ON " . TB_PREFIX . "users.id = " . TB_PREFIX . "vdata.owner) LEFT JOIN " . TB_PREFIX . "users ON " . TB_PREFIX . "users.id = " . TB_PREFIX . "vdata.owner)
LEFT JOIN " . TB_PREFIX . "alidata ON " . TB_PREFIX . "alidata.id = " . TB_PREFIX . "users.alliance) LEFT JOIN " . TB_PREFIX . "alidata ON " . TB_PREFIX . "alidata.id = " . TB_PREFIX . "users.alliance)
where ".TB_PREFIX."wdata.id IN ($maparray)
ORDER BY FIND_IN_SET(".TB_PREFIX."wdata.id,'$maparray2')";
//echo $query2; WHERE " . TB_PREFIX . "wdata.id IN ($maparray)
ORDER BY FIND_IN_SET(" . TB_PREFIX . "wdata.id,'$maparray2')
";
$result2 = mysqli_query($database->dblink, $query2) or die(mysqli_error($database->dblink)); $result2 = mysqli_query($database->dblink, $query2) or die(mysqli_error($database->dblink));
/* =========================
OUTPUT PREPARATION
========================= */
$targetalliance = array(); $targetalliance = array();
$neutralarray = array(); $neutralarray = array();
$friendarray = array(); $friendarray = array();
$enemyarray = array(); $enemyarray = array();
$i = 0; $i = 0;
$i2 = 0; $i2 = 0;
/* =========================
OUTPUT VARS
========================= */
$yrow = 0; $yrow = 0;
$row = 0; $row = 0;
$coorindex = 0; $coorindex = 0;
$map_js = ''; $map_js = '';
$map_content = ''; $map_content = '';
$map_gen = ''; $map_gen = '';
/* =========================
COORD ARRAY
========================= */
static $coorarray = null;
if ($coorarray === null) {
$coorarray = array( $coorarray = array(
"48, 253, 85, 273, 48, 293, 11, 273" "48, 253, 85, 273, 48, 293, 11, 273"
,"84, 233, 121, 253, 84, 273, 47, 253" ,"84, 233, 121, 253, 84, 273, 47, 253"
@@ -310,84 +373,187 @@ $coorarray = array(
,"888, 273, 925, 293, 888, 313, 853, 293" ,"888, 273, 925, 293, 888, 313, 853, 293"
,"924, 253, 961, 273, 924, 293, 887, 273" ,"924, 253, 961, 273, 924, 293, 887, 273"
); );
}
/* =========================
MAIN LOOP (UNCHANGED LOGIC)
========================= */
while ($donnees = mysqli_fetch_assoc($result2)) { while ($donnees = mysqli_fetch_assoc($result2)) {
$targetalliance = $donnees["aliance_id"]; $targetalliance = $donnees["aliance_id"];
$friendarray=$database->getAllianceAlly($donnees["aliance_id"],1);
$neutralarray=$database->getAllianceAlly($donnees["aliance_id"],2);
$enemyarray=$database->getAllianceWar2($donnees["aliance_id"]);
if (isset($friendarray[0])) { $sessionAlliance = (int)$session->alliance;
$friend = (($friendarray[0]['alli1']>0 and $friendarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($friendarray[0]['alli1']==$session->alliance or $friendarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $friend='0';
if (isset($enemyarray[0])) {
$war = (($enemyarray[0]['alli1']>0 and $enemyarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($enemyarray[0]['alli1']==$session->alliance or $enemyarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $war='0';
if (isset($neutralarray[0])) {
$neutral = (($neutralarray[0]['alli1']>0 and $neutralarray[0]['alli2']>0 and $donnees["aliance_id"]>0) and ($neutralarray[0]['alli1']==$session->alliance or $neutralarray[0]['alli2']==$session->alliance) and ($session->alliance != $targetalliance and $session->alliance and $targetalliance)) ? '1':'0';
}else $neutral='0';
$image = ($donnees['map_occupied'] == 1 && $donnees['map_fieldtype'] > 0)?(($donnees['ville_user'] == $session->uid)? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b30': 'b20' :'b10' : 'b00') : (($targetalliance != 0)? ($friend==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b31': 'b21' :'b11' : 'b01') : ($war==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b32': 'b22' :'b12' : 'b02') : ($neutral==1? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b35': 'b25' :'b15' : 'b05') : ($targetalliance == $session->alliance? ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b33': 'b23' :'b13' : 'b03') : ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b34': 'b24' :'b14' : 'b04'))))) : ($donnees['ville_pop']>=100? $donnees['ville_pop']>= 250?$donnees['ville_pop']>=500? 'b34': 'b24' :'b14' : 'b04'))) : $donnees['map_image']; $allyCache = $database->getAllianceAlly($sessionAlliance, 1);
$warCache = $database->getAllianceWar2($sessionAlliance);
$neutralCache = $database->getAllianceAlly($sessionAlliance, 2);
// Map Attacks by Shadow and MisterX - Fixed by iopietro $target = (int)$donnees["aliance_id"];
/* =========================
RELATION STATUS
========================= */
$friend = ($target && $sessionAlliance) ? (
($allyCache[0]['alli1'] == $target || $allyCache[0]['alli2'] == $target)
) : 0;
$war = ($target && $sessionAlliance) ? (
($warCache[0]['alli1'] == $target || $warCache[0]['alli2'] == $target)
) : 0;
$neutral = ($target && $sessionAlliance) ? (
($neutralCache[0]['alli1'] == $target || $neutralCache[0]['alli2'] == $target)
) : 0;
/* =========================
IMAGE DECISION
========================= */
$image = ($donnees['map_occupied'] == 1 && $donnees['map_fieldtype'] > 0)
? (($donnees['ville_user'] == $session->uid)
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b30' : 'b20')
: 'b10')
: 'b00')
: (($targetalliance != 0)
? ($friend == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b31' : 'b21')
: 'b11')
: 'b01')
: ($war == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b32' : 'b22')
: 'b12')
: 'b02')
: ($neutral == 1
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b35' : 'b25')
: 'b15')
: 'b05')
: ($targetalliance == $session->alliance
? ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b33' : 'b23')
: 'b13')
: 'b03')
: ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b34' : 'b24')
: 'b14')
: 'b04')))))
: ($donnees['ville_pop'] >= 100
? ($donnees['ville_pop'] >= 250
? ($donnees['ville_pop'] >= 500 ? 'b34' : 'b24')
: 'b14')
: 'b04')))
: $donnees['map_image'];
/* =========================
ATTACK MARKERS
========================= */
$att = ""; $att = "";
if (isset($_SESSION['troops_movement'])) { if (isset($_SESSION['troops_movement'])) {
if (isset($_SESSION['troops_movement']['attacks']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['attacks'])) {
if (isset($_SESSION['troops_movement']['attacks']) &&
in_array($donnees['map_id'], $_SESSION['troops_movement']['attacks'])) {
$att = '<span class=\'m3\' ></span>'; $att = '<span class=\'m3\' ></span>';
}elseif (isset($_SESSION['troops_movement']['scouts']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['scouts'])) {
} elseif (isset($_SESSION['troops_movement']['scouts']) &&
in_array($donnees['map_id'], $_SESSION['troops_movement']['scouts'])) {
$att = '<span class=\'m6\' ></span>'; $att = '<span class=\'m6\' ></span>';
}elseif (isset($_SESSION['troops_movement']['enforcements']) && in_array($donnees['map_id'], $_SESSION['troops_movement']['enforcements'])) {
} elseif (isset($_SESSION['troops_movement']['enforcements']) &&
in_array($donnees['map_id'], $_SESSION['troops_movement']['enforcements'])) {
$att = '<span class=\'m9\' ></span>'; $att = '<span class=\'m9\' ></span>';
} }
} }
// Map content /* =========================
MAP CONTENT
========================= */
if ($donnees['ville_user'] == 3 && $donnees['ville_name'] == 'WW Buildingplan') { if ($donnees['ville_user'] == 3 && $donnees['ville_name'] == 'WW Buildingplan') {
$map_content .= "<div id='i_" . $row . "_" . $i . "' class='o99'>$att</div>\r"; $map_content .= "<div id='i_" . $row . "_" . $i . "' class='o99'>$att</div>\r";
} else { } else {
$map_content .= "<div id='i_" . $row . "_" . $i . "' class='" . $image . "'>$att</div>\r"; $map_content .= "<div id='i_" . $row . "_" . $i . "' class='" . $image . "'>$att</div>\r";
} }
//Map create /* =========================
AREA GENERATION
========================= */
$map_gen .= "<area id='a_" . $row . "_" . $i . "' shape='poly' coords='" . $coorarray[$coorindex] . "' title='" . $donnees['ville_name'] . "' href='karte.php?d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "' target='_parent' />\n"; $map_gen .= "<area id='a_" . $row . "_" . $i . "' shape='poly' coords='" . $coorarray[$coorindex] . "' title='" . $donnees['ville_name'] . "' href='karte.php?d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "' target='_parent' />\n";
//Javascript map info /* =========================
JS MAP DATA
========================= */
if ($yrow != 13) { if ($yrow != 13) {
$map_js .= "[" . $donnees['map_x'] . "," . $donnees['map_y'] . "," . $donnees['map_fieldtype'] . "," . ((!empty($donnees['map_oasis'])) ? $donnees['map_oasis'] : 0) . ",\"d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "\",\"" . $image . "\",\"\""; $map_js .= "[" . $donnees['map_x'] . "," . $donnees['map_y'] . "," . $donnees['map_fieldtype'] . "," . ((!empty($donnees['map_oasis'])) ? $donnees['map_oasis'] : 0) . ",\"d=" . $donnees['map_id'] . "&c=" . $generator->getMapCheck($donnees['map_id']) . "\",\"" . $image . "\",\"\"";
if ($donnees['map_occupied']) { if ($donnees['map_occupied']) {
if ($donnees['map_fieldtype'] != 0) { if ($donnees['map_fieldtype'] != 0) {
$map_js .= ",\"" . $donnees['ville_name'] . "\",\"" . $donnees['user_username'] . "\",\"" . $donnees['ville_pop'] . "\",\"" . $donnees['aliance_name'] . "\",\"" . $donnees['user_tribe'] . "\"]\n"; $map_js .= ",\"" . $donnees['ville_name'] . "\",\"" . $donnees['user_username'] . "\",\"" . $donnees['ville_pop'] . "\",\"" . $donnees['aliance_name'] . "\",\"" . $donnees['user_tribe'] . "\"]\n";
} }
}
elseif($donnees['map_oasis'] != 0){ } elseif ($donnees['map_oasis'] != 0) {
if ($donnees['oasis_conqured'] != 0) { if ($donnees['oasis_conqured'] != 0) {
$map_js .= ",\"\",\"" . $donnees['oasis_user'] . "\",\"-\",\"" . $donnees['oasis_alli_name'] . "\",\"" . $donnees['oasis_tribe'] . "\"]"; $map_js .= ",\"\",\"" . $donnees['oasis_user'] . "\",\"-\",\"" . $donnees['oasis_alli_name'] . "\",\"" . $donnees['oasis_tribe'] . "\"]";
}
else{ } else {
$map_js .= "]"; $map_js .= "]";
} }
} else {
$map_js .= "]\n";
} }
else{$map_js .= "]\n";}
if ($i2 == 12 && $yrow != 12) { if ($i2 == 12 && $yrow != 12) {
$i2 = -1;
$yrow +=1;
$map_js .= "],\n[";
}
else {
if($yrow == 12 && $i2 == 12) {$map_js .= "]\n";}
else {$map_js .= ",";}
}
//$regcount += 1;
}
else {$map_js .= "]";}
if($i == 12 && $row <= 11){ $row += 1; $i = -1;} $i2 = -1;
$yrow++;
$map_js .= "],\n[";
} else {
$map_js .= ($yrow == 12 && $i2 == 12) ? "]\n" : ",";
}
} else {
$map_js .= "]";
}
/* =========================
LOOP CONTROL
========================= */
if ($i == 12 && $row <= 11) {
$row++;
$i = -1;
}
$i++; $i++;
$i2++; $i2++;
$coorindex+=1; $coorindex++;
} }
?> ?>
@@ -436,7 +602,7 @@ if (isset($neutralarray[0])) {
m_c.ad = [[<?php echo $map_js?>]; m_c.ad = [[<?php echo $map_js?>];
m_c.z = {"x":<?php echo $x ?>,"y":<?php echo $y ?>}; m_c.z = {"x":<?php echo $x ?>,"y":<?php echo $y ?>};
m_c.size = 13; m_c.size = 13;
m_c.world_max = <?php echo WORLD_MAX; ?>; //lietuvis10 fix m_c.world_max = <?php echo WORLD_MAX; ?>;
var mdim = {"x":13,"y":13,"rad":6} var mdim = {"x":13,"y":13,"rad":6}
var mmode = 0; var mmode = 0;
function init_local(){map_init();} function init_local(){map_init();}