mirror of
https://github.com/Shadowss/TravianZ.git
synced 2026-09-22 09:56:39 +08:00
Refactor + BugFix
1. Fix a bug in Admin Panel that you can edit by yourself your rank, now you cannot edit your rank anymore. 2. Now Alliance Leader can edit his own Position 3. Fix negative value on Demolition Building, now in database at lvl is appear new level not -1 4. Refactor Ajax map, now all is alligned (Ajax folder and Map folder) 5. Fix bug from Palace (when change capital now Automation recount population automaticaly on old capital and new capital)
This commit is contained in:
+72
-145
@@ -1,154 +1,81 @@
|
||||
<?php
|
||||
$bid = $village->resarray[ 'f' . $id . 't' ];
|
||||
$bindicate = $building->canBuild( $id, $bid );
|
||||
$wwlevel = $village->resarray['f99'];
|
||||
if ( $wwlevel >= 50 ) {
|
||||
$needed_plan = 1;
|
||||
} else {
|
||||
$needed_plan = 0;
|
||||
// wwupgrade.tpl
|
||||
global $village, $building, $database, $generator, $session, $id;
|
||||
|
||||
$bid = (int)$village->resarray['f'.$id.'t'];
|
||||
$bindicate = $building->canBuild($id, $bid);
|
||||
$wwlevel = (int)$village->resarray['f99'];
|
||||
$needed_plan = $wwlevel >= 50? 1 : 0;
|
||||
|
||||
if (!$building->allowWwUpgrade()) {
|
||||
echo $needed_plan == 0
|
||||
? '<p><span class="none">'.NEED_WWCONSTRUCTION_PLAN.'.</span></p>'
|
||||
: '<p><span class="none">'.NEED_MORE_WWCONSTRUCTION_PLAN.'.</span></p>';
|
||||
return;
|
||||
}
|
||||
|
||||
if ( $building->allowWwUpgrade() ) {
|
||||
if ( $bindicate == 1 ) {
|
||||
echo "<p><span class=\"none\">" . MAX_LEVEL . "</span></p>";
|
||||
} else if ( $bindicate == 10 ) {
|
||||
echo "<p><span class=\"none\">" . BUILDING_MAX_LEVEL_UNDER . "</span></p>";
|
||||
} else if ( $bindicate == 11 ) {
|
||||
echo "<p><span class=\"none\">" . BUILDING_BEING_DEMOLISHED . "</span></p>";
|
||||
} else {
|
||||
$loopsame = ( $building->isCurrent( $id ) || $building->isLoop( $id ) ) ? 1 : 0;
|
||||
$doublebuild = ( $building->isCurrent( $id ) && $building->isLoop( $id ) ) ? 1 : 0;
|
||||
$master = count( $database->getMasterJobsByField( $village->wid, $id ) );
|
||||
$uprequire = $building->resourceRequired( $id, $village->resarray[ 'f' . $id . 't' ], 1 + $loopsame + $doublebuild + $master );
|
||||
if ($bindicate == 1) {
|
||||
echo '<p><span class="none">'.MAX_LEVEL.'</span></p>'; return;
|
||||
}
|
||||
if ($bindicate == 10) {
|
||||
echo '<p><span class="none">'.BUILDING_MAX_LEVEL_UNDER.'</span></p>'; return;
|
||||
}
|
||||
if ($bindicate == 11) {
|
||||
echo '<p><span class="none">'.BUILDING_BEING_DEMOLISHED.'</span></p>'; return;
|
||||
}
|
||||
|
||||
$loopsame = ($building->isCurrent($id) || $building->isLoop($id))? 1 : 0;
|
||||
$doublebuild = ($building->isCurrent($id) && $building->isLoop($id))? 1 : 0;
|
||||
$master = count($database->getMasterJobsByField($village->wid, $id));
|
||||
$nextLevel = (int)$village->resarray['f'.$id] + 1 + $loopsame + $doublebuild + $master;
|
||||
$uprequire = $building->resourceRequired($id, $bid, 1 + $loopsame + $doublebuild + $master);
|
||||
$total_required = (int)($uprequire['wood'] + $uprequire['clay'] + $uprequire['iron'] + $uprequire['crop']);
|
||||
?>
|
||||
<p id="contract">
|
||||
<b><?php echo COSTS_UPGRADING_LEVEL; ?> <?php echo $village->resarray[ 'f' . $id ] + 1 + $loopsame + $doublebuild + $master; ?>
|
||||
:<br/>
|
||||
<img class="r1" src="img/x.gif" alt="Lumber" title="Lumber"/><span
|
||||
class="little_res"><?php echo $uprequire['wood']; ?></span> | <img class="r2" src="img/x.gif" alt="Clay"
|
||||
title="Clay"/><span
|
||||
class="little_res"><?php echo $uprequire['clay']; ?></span> | <img class="r3" src="img/x.gif" alt="Iron"
|
||||
title="Iron"/><span
|
||||
class="little_res"><?php echo $uprequire['iron']; ?></span> | <img class="r4" src="img/x.gif" alt="Crop"
|
||||
title="Crop"/><span
|
||||
class="little_res"><?php echo $uprequire['crop']; ?></span> | <img class="r5" src="img/x.gif"
|
||||
alt="Crop consumption"
|
||||
title="Crop consumption"/><?php echo $uprequire['pop']; ?>
|
||||
| <img class="clock" src="img/x.gif" alt="duration"
|
||||
title="duration"/><?php echo $generator->getTimeFormat( $uprequire['time'] );
|
||||
//-- If available resources combined are not enough, remove NPC button
|
||||
$total_required = (int)($uprequire['wood'] + $uprequire['clay'] + $uprequire['iron'] + $uprequire['crop']);
|
||||
if ( $session->userinfo['gold'] >= 3 && $building->getTypeLevel( 17 ) >= 1 && $village->atotal >= $total_required) {
|
||||
echo "|<a href=\"build.php?gid=17&t=3&r1=" . $uprequire['wood'] . "&r2=" . $uprequire['clay'] . "&r3=" . $uprequire['iron'] . "&r4=" . $uprequire['crop'] . "\" title=\"NPC trade\"><img class=\"npc\" src=\"img/x.gif\" alt=\"NPC trade\" title=\"NPC trade\" /></a>";
|
||||
} ?><br/>
|
||||
<?php
|
||||
if ( $bindicate == 2 ) {
|
||||
echo "<span class=\"none\">" . WORKERS_ALREADY_WORK . "</span>";
|
||||
if ( $session->goldclub == 1 ) {
|
||||
?> </br>
|
||||
<?php
|
||||
if ( $id <= 18 ) {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf1.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
} else {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf2.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if ( $bindicate == 3 ) {
|
||||
echo "<span class=\"none\">" . WORKERS_ALREADY_WORK_WAITING . "</span>";
|
||||
if ( $session->goldclub == 1 ) {
|
||||
?> </br>
|
||||
<?php
|
||||
if ( $id <= 18 ) {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf1.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
} else {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf2.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if ( $bindicate == 4 ) {
|
||||
echo "<span class=\"none\">" . ENOUGH_FOOD_EXPAND_CROPLAND . "</span>";
|
||||
} else if ( $bindicate == 5 ) {
|
||||
echo "<span class=\"none\">" . UPGRADE_WAREHOUSE . ".</span>";
|
||||
} else if ( $bindicate == 6 ) {
|
||||
echo "<span class=\"none\">" . UPGRADE_GRANARY . ".</span>";
|
||||
} else if ( $bindicate == 7 ) {
|
||||
if ( $village->allcrop > 0 ) {
|
||||
$neededtime = $building->calculateAvaliable( $id, $village->resarray[ 'f' . $id . 't' ], 1 + $loopsame + $doublebuild + $master );
|
||||
echo "<span class=\"none\">" . ENOUGH_RESOURCES . " " . $neededtime[0] . " at " . $neededtime[1] . "</span>";
|
||||
} else {
|
||||
echo "<span class=\"none\">" . YOUR_CROP_NEGATIVE . "</span>";
|
||||
}
|
||||
if ( $session->goldclub == 1 ) {
|
||||
?> </br>
|
||||
<?php
|
||||
if ( $id <= 18 ) {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf1.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
} else {
|
||||
if ( $session->gold >= 1 && $village->master == 0 ) {
|
||||
echo "<a class=\"build\" href=\"dorf2.php?master=$bid&id=$id\">" . CONSTRUCTING_MASTER_BUILDER . " </a>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
} else {
|
||||
echo "<span class=\"none\">" . CONSTRUCTING_MASTER_BUILDER . "</span>";
|
||||
echo '<font color="#B3B3B3">(' . COSTS . ': <img src="' . GP_LOCATE . 'img/a/gold_g.gif" alt="Gold" title="' . GOLD . '"/>1)</font>';
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if ( $bindicate == 8 ) {
|
||||
if ( $session->access == BANNED ) {
|
||||
echo "<a class=\"build\" href=\"banned.php\">" . UPGRADE_LEVEL . " ";
|
||||
} else if ( $id <= 18 ) {
|
||||
echo "<a class=\"build\" href=\"dorf1.php?a=$id&c=$session->checker\">" . UPGRADE_LEVEL . " ";
|
||||
<b><?php echo COSTS_UPGRADING_LEVEL;?> <?php echo $nextLevel;?>:</b><br />
|
||||
<img class="r1" src="img/x.gif" title="Lumber"/><span class="little_res"><?php echo $uprequire['wood'];?></span> |
|
||||
<img class="r2" src="img/x.gif" title="Clay"/><span class="little_res"><?php echo $uprequire['clay'];?></span> |
|
||||
<img class="r3" src="img/x.gif" title="Iron"/><span class="little_res"><?php echo $uprequire['iron'];?></span> |
|
||||
<img class="r4" src="img/x.gif" title="Crop"/><span class="little_res"><?php echo $uprequire['crop'];?></span> |
|
||||
<img class="r5" src="img/x.gif" title="Crop consumption"/><?php echo $uprequire['pop'];?> |
|
||||
<img class="clock" src="img/x.gif" title="duration"/><?php echo $generator->getTimeFormat($uprequire['time']);?>
|
||||
<?php if ($session->userinfo['gold'] >= 3 && $building->getTypeLevel(17) >= 1 && $village->atotal >= $total_required):?>
|
||||
| <a href="build.php?gid=17&t=3&r1=<?php echo $uprequire['wood'];?>&r2=<?php echo $uprequire['clay'];?>&r3=<?php echo $uprequire['iron'];?>&r4=<?php echo $uprequire['crop'];?>" title="NPC trade"><img class="npc" src="img/x.gif" alt="NPC trade"/></a>
|
||||
<?php endif;?>
|
||||
<br />
|
||||
<?php
|
||||
switch ($bindicate) {
|
||||
case 2: echo '<span class="none">'.WORKERS_ALREADY_WORK.'</span>'; break;
|
||||
case 3: echo '<span class="none">'.WORKERS_ALREADY_WORK_WAITING.'</span>'; break;
|
||||
case 4: echo '<span class="none">'.ENOUGH_FOOD_EXPAND_CROPLAND.'</span>'; break;
|
||||
case 5: echo '<span class="none">'.UPGRADE_WAREHOUSE.'.</span>'; break;
|
||||
case 6: echo '<span class="none">'.UPGRADE_GRANARY.'.</span>'; break;
|
||||
case 7:
|
||||
if ($village->allcrop > 0) {
|
||||
$neededtime = $building->calculateAvaliable($id, $bid, 1 + $loopsame + $doublebuild + $master);
|
||||
echo '<span class="none">'.ENOUGH_RESOURCES.' '.$neededtime[0].' at '.$neededtime[1].'</span>';
|
||||
} else {
|
||||
echo "<a class=\"build\" href=\"dorf2.php?a=$id&c=$session->checker\">" . UPGRADE_LEVEL . " ";
|
||||
echo '<span class="none">'.YOUR_CROP_NEGATIVE.'</span>';
|
||||
}
|
||||
echo $village->resarray[ 'f' . $id ] + 1;
|
||||
echo ".</a>";
|
||||
} else if ( $bindicate == 9 ) {
|
||||
if ( $session->access == BANNED ) {
|
||||
echo "<a class=\"build\" href=\"banned.php\">" . UPGRADE_LEVEL . " ";
|
||||
} else if ( $id <= 18 ) {
|
||||
echo "<a class=\"build\" href=\"dorf1.php?a=$id&c=$session->checker\">" . UPGRADE_LEVEL . " ";
|
||||
} else {
|
||||
echo "<a class=\"build\" href=\"dorf2.php?a=$id&c=$session->checker\">" . UPGRADE_LEVEL . " ";
|
||||
}
|
||||
echo $village->resarray[ 'f' . $id ] + ( $loopsame > 0 ? 2 : 1 );
|
||||
echo ".</a> <span class=\"none\">" . WAITING . "</span> ";
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
case 9:
|
||||
$href = $session->access == BANNED? 'banned.php' : (($id <= 18)? "dorf1.php?a=$id&c=$session->checker" : "dorf2.php?a=$id&c=$session->checker");
|
||||
$lvl = $bindicate == 8? $village->resarray['f'.$id] + 1 : $village->resarray['f'.$id] + ($loopsame > 0? 2 : 1);
|
||||
echo '<a class="build" href="'.$href.'">'.UPGRADE_LEVEL.' '.$lvl.'.</a>';
|
||||
if ($bindicate == 9) echo ' <span class="none">'.WAITING.'</span>';
|
||||
break;
|
||||
}
|
||||
|
||||
if (in_array($bindicate, [2,3,7]) && $session->goldclub == 1) {
|
||||
echo '<br/>';
|
||||
$masterHref = ($id <= 18? 'dorf1.php' : 'dorf2.php'). "?master=$bid&id=$id&c=$session->checker";
|
||||
if ($session->gold >= 1 && $village->master == 0) {
|
||||
echo '<a class="build" href="'.$masterHref.'">'.CONSTRUCTING_MASTER_BUILDER.'</a>';
|
||||
} else {
|
||||
if ( $needed_plan == 0 ) {
|
||||
echo "<span class=\"none\">" . NEED_WWCONSTRUCTION_PLAN . ".</span>";
|
||||
} else {
|
||||
echo "<span class=\"none\">" . NEED_MORE_WWCONSTRUCTION_PLAN . ".</span>";
|
||||
}
|
||||
echo '<span class="none">'.CONSTRUCTING_MASTER_BUILDER.'</span>';
|
||||
}
|
||||
?>
|
||||
echo ' <font color="#B3B3B3">('.COSTS.': <img src="'.GP_LOCATE.'img/a/gold_g.gif" alt="Gold" title="'.GOLD.'"/>1)</font>';
|
||||
}
|
||||
?>
|
||||
</p>
|
||||
Reference in New Issue
Block a user