Esempio n. 1
0
    echo $szDisabled;
    ?>
 type="text" name="init_roids[<?php 
    echo $r['id'];
    ?>
]" value="" class="right" size="4" maxlength="3" style="padding:1px 2px;" /></td>
	<td class="right bl"><?php 
    echo nummertje($p = applyRDChange('income_' . $r['id'], 0));
    ?>
</td>
	<td class="right"><?php 
    echo nummertje($a = res_per_type($r['asteroids']));
    ?>
</td>
	<td class="right"><?php 
    echo nummertje(($t = applyRDChange('income_' . $r['id'], res_per_type($r['asteroids']))) - $a - $p);
    ?>
</td>
	<th class="right"><?php 
    echo nummertje($t);
    ?>
</th>
</tr>
<?php 
}
?>
<tr class="bt">
	<th class="right">Inactive</th>
	<td class="right" id="roids_amount_inactive"><?php 
echo nummertje($g_arrUser['inactive_asteroids']);
?>
Esempio n. 2
0
 if ($u = array_flip(array_flip(db_select_fields('d_all_units', 'id,unit_plural', 'r_d_required_id = ' . (int) $r['id'])))) {
     $szEnables = ' title="Enables `' . implode('`, `', $u) . '`"';
 }
 // Name
 echo '<td width="100%"' . $szEnables . '><i onclick="var d=this.parentNode.getElementsByTagName(\'div\')[0].style;d.display=\'none\'!=d.display?\'none\':\'\';" style="cursor:pointer;">' . $r['name'] . ($szExcludes ? ' ' . $szRDExcludes : '') . '</i><div style="display:none;">' . $r['explanation'] . $szExcludes . '</div></td>';
 $szEta = isset($arrPlanetRD[$r['id']]) ? $arrPlanetRD[$r['id']] : ($HAVOC_RESDEV ? $HAVOC_RESDEV_ETA : applyRDChange('r_d_eta', (int) $r['eta']));
 // ETA
 echo '<td align="center">' . $szEta . '</td>';
 // Progress
 echo '<td align="right">' . (isset($arrPlanetRD[$r['id']]) ? round(($r['eta'] - $arrPlanetRD[$r['id']]) / max(1, $r['eta']) * 100) . ' %' : '-') . '</td>';
 // Action
 echo '<td align="center">' . (!isset($arrPlanetRD[$r['id']]) ? $bInProgess ? '-' : '<a onclick="return R(this);" href="?r_d_id=' . $r['id'] . '">start</a>' : '-') . '</td>';
 $arrPreCosts = db_select_fields('d_r_d_costs', 'resource_id,amount', '0 < amount AND r_d_id = ' . (int) $r['id'] . ' ORDER BY resource_id ASC');
 $arrCosts = array();
 foreach ($arrPreCosts as $iResourceId => $iAmount) {
     $iAmount = max(0, applyRDChange('r_d_costs', (int) $iAmount));
     $arrCosts[] = '<span style="color:' . $g_arrResources[$iResourceId]['color'] . ';">' . nummertje($iAmount) . '&nbsp;' . strtolower($g_arrResources[$iResourceId]['resource']) . '</span>';
 }
 $szCosts = $arrCosts ? implode('<br />', $arrCosts) : '-';
 // Costs
 echo '<td align="right">' . $szCosts . '</td>';
 $arrRequiredSkills = db_select_fields('d_skills s, d_skills_per_r_d r', 's.id,concat(s.skill,\': \',r.required_value)', 'r.skill_id = s.id AND r.r_d_id = ' . (int) $r['id'] . ' AND 0 < required_value');
 foreach ($arrRequiredSkills as $iSkill => &$szSkill) {
     $x = explode(':', $szSkill);
     $iValue = (int) trim($x[1]);
     if ((double) $arrSkills[$iSkill] < (double) $iValue) {
         $szSkill = '<span style="color:red;">' . $szSkill . '</span>';
     }
     unset($szSkill);
 }
 $szSkills = $arrRequiredSkills ? implode('<br />', $arrRequiredSkills) : '-';
Esempio n. 3
0
//print_r($g_arrUnits);
$allusers = db_select('galaxies g, planets p', 'p.galaxy_id = g.id ORDER BY x ASC, y ASC, z ASC');
foreach ($allusers as $arrUser) {
    $id = (int) $arrUser['id'];
    // R & D NEWS
    if ('1' === $GAMEPREFS['news_for_done_rd']) {
        $arrNames = array('d' => 'constructing', 'r' => 'researching');
        $arrRD = db_select('d_r_d_available a, planet_r_d p', 'a.id = p.r_d_id AND p.eta = 1 AND p.planet_id = ' . $id);
        foreach ($arrRD as $rd) {
            AddNews(NEWS_SUBJECT_R_D, 'Your technicians have finished researching <b>' . $rd['name'] . '</b>.', $id);
        }
        db_update('planet_r_d', 'eta = eta-1', 'eta > 0 AND planet_id = ' . $id);
    }
    // RESOURCES
    foreach (db_select('planet_resources', 'planet_id = ' . $id) as $arrResource) {
        $iGain = applyRDChange('income_' . $arrResource['resource_id'], res_per_type($arrResource['asteroids']), $id);
        if (0 < $iGain) {
            db_update('planet_resources', 'amount = amount + ' . $iGain, 'planet_id = ' . $id . ' AND resource_id = ' . $arrResource['resource_id']);
        }
    }
    #continue;
    // COMBAT // SECTION F
    // De info van de personen die $id AANVALLEN | $id = battlefield
    $szAWhere = 'destination_planet_id = ' . $id . ' AND eta = 0 AND action = \'attack\' AND actiontime > 0 AND activated = \'1\'';
    $arrAttackingFleets = db_select_by_field('fleets', 'id', $szAWhere);
    if (0 < count($arrAttackingFleets)) {
        $iAttackingOwners = db_select_one('fleets', 'COUNT(DISTINCT owner_planet_id)', $szAWhere);
        $szDWhere = '(destination_planet_id = ' . $id . ' AND eta = 0 AND action = \'defend\' AND actiontime > 0 AND activated = \'1\') OR (owner_planet_id = ' . $id . ' AND ((destination_planet_id IS NULL AND eta = 0) OR activated != \'1\'))';
        $arrDefendingFleets = db_select_by_field('fleets', 'id', $szDWhere);
        $iDefendingOwners = db_select_one('fleets', 'COUNT(DISTINCT owner_planet_id)', $szDWhere);
        if (empty($_GET['special'])) {
Esempio n. 4
0
function getFleetMatrix($f_iPlanetId = PLANET_ID, $f_bPrintDetails = true)
{
    global $NUM_OUTGOING_FLEETS, $FLEETNAMES, $showcolors, $t_arrFleetNames, $t_arrShipNames;
    $arrShips = db_fetch('
SELECT
	u.*,
	s.id AS ship_id,
	IFNULL((SELECT
			SUM(amount)
		FROM
			fleets f,
			ships_in_fleets sf
		WHERE
			f.owner_planet_id = ' . $f_iPlanetId . ' AND
			f.id = sf.fleet_id AND
			sf.ship_id = s.id AND
			f.fleetname = \'0\'
	),0) AS num_units
FROM
	d_all_units u,
	d_ships s
WHERE
	s.id = u.id AND
	u.r_d_required_id IN (
		SELECT
			rdpp.r_d_id
		FROM
			planet_r_d rdpp
		WHERE
			rdpp.planet_id = ' . $f_iPlanetId . ' AND
			rdpp.eta = 0
	)
ORDER BY
	s.id ASC;
');
    $szHtml = '';
    $szHtml .= '<table class="fleets" border="0" cellpadding="2" cellspacing="0"' . (!$f_bPrintDetails ? ' align="center"' : '') . '><tr class="bb"><td>&nbsp;</td>';
    $t_arrFleetNames = $t_arrShipNames = array();
    for ($iFleetName = 0; $iFleetName <= $NUM_OUTGOING_FLEETS; $iFleetName++) {
        $arrFleetETAs[$iFleetName] = $arrFleetCostsPerTick[$iFleetName] = 0;
        $arrFleet = db_select('fleets', 'owner_planet_id = ' . $f_iPlanetId . ' AND fleetname = \'' . $iFleetName . '\'');
        $arrFleet = $arrFleet[0];
        $szFleetAction = $arrFleet['action'];
        if (!$szFleetAction) {
            $t_arrFleetNames[$iFleetName] = $FLEETNAMES[(int) $iFleetName];
            $szTxtColor = '';
        } else {
            $szTxtColor = ' style="color:' . $showcolors[$szFleetAction] . ';"';
        }
        $szHtml .= '<th' . $szTxtColor . ' width="70" nowrap="nowrap" class="right" title="' . $arrFleet['id'] . '" id="fleetmatrix_fleet_' . $iFleetName . '">' . $FLEETNAMES[(int) $iFleetName] . '</th>';
    }
    $szHtml .= '</tr>';
    foreach ($arrShips as $k => $arrShip) {
        $t_arrShipNames[(int) $arrShip['ship_id']] = $arrShip['unit_plural'];
        $szHtml .= '<tr class="bt' . ($f_bPrintDetails && $k == count($arrShips) - 1 ? ' bb' : '') . '">';
        $szHtml .= '<td nowrap="nowrap" title="' . $arrShip['id'] . ': ETA = ' . $arrShip['move_eta'] . ', Fuel use = ' . $arrShip['fuel'] . '">' . htmlspecialchars($arrShip['unit_plural']) . '</td>';
        $szHtml .= '<td align="right">' . nummertje($arrShip['num_units']) . '</td>';
        for ($iFleetName = 1; $iFleetName <= $NUM_OUTGOING_FLEETS; $iFleetName++) {
            $iShips = shipsInFleet($arrShip['ship_id'], $iFleetName, $f_iPlanetId);
            #			if ( 0 < $iShips && $arrShip['move_eta'] > $arrFleetETAs[$iFleetName] ) {
            #				$arrFleetETAs[$iFleetName] = $arrShip['move_eta'];
            #			}
            #			$arrFleetCostsPerTick[$iFleetName] += $iShips * $arrShip['fuel'];
            $szHtml .= '<td align="right">' . nummertje($iShips) . '</td>';
        }
        $szHtml .= '</tr>';
    }
    if ($f_bPrintDetails) {
        $szHtml .= '<tr class="bt">';
        $szHtml .= '<td colspan="2" class="right">Min. ETA:</td>';
        //		$szHtml .= '<td>&nbsp;</td>'; // Home fleet
        $arrEtas = array();
        for ($iFleetName = 1; $iFleetName <= $NUM_OUTGOING_FLEETS; $iFleetName++) {
            $iEta = db_select_one('d_ships s, ships_in_fleets sif, fleets f, d_all_units u', 'max(u.move_eta)', 'u.id = s.id AND s.id = sif.ship_id AND sif.fleet_id = f.id AND f.fleetname = \'' . (int) $iFleetName . '\' AND f.owner_planet_id = ' . $f_iPlanetId . ' AND sif.amount > 0');
            $iEta = applyRDChange('travel_eta', $iEta, $f_iPlanetId);
            $szHtml .= '<td align="right">' . $iEta . '</td>';
            $arrEtas[$iFleetName] = $iEta;
        }
        $szHtml .= '</tr>';
        $szHtml .= '<tr class="bb">';
        $szHtml .= '<td colspan="2" class="right" nowrap="1" wrap="off">Min. Fuel use:</td>';
        //		$szHtml .= '<td>&nbsp;</td>'; // Home fleet
        for ($iFleetName = 1; $iFleetName <= $NUM_OUTGOING_FLEETS; $iFleetName++) {
            $iFuelUsePerTick = db_select_one('d_ships s, ships_in_fleets sif, fleets f, d_all_units u', 'sum(u.fuel*sif.amount)', 'u.id = s.id AND s.id = sif.ship_id AND sif.fleet_id = f.id AND f.fleetname = \'' . (int) $iFleetName . '\' AND f.owner_planet_id = ' . $f_iPlanetId . ' AND sif.amount > 0');
            $szHtml .= '<td align="right" style="color:' . $showcolors['energy'] . ';">' . nummertje($arrEtas[$iFleetName] * $iFuelUsePerTick) . '</td>';
        }
        $szHtml .= '</tr>';
    }
    $szHtml .= '</table>';
    return $szHtml;
}