echo "<br /><h3>Gegenangriff</h3>"; //PLANETN ballern ZURUECL for ($i = 0; $i < sizeof($enemyfp); $i++) { $x = 0; $abort = false; $planet = new Planeten($enemyfp[$i]); $aua = new Schiffe($schiffe[$x]); while ($aua->besitzer->id == 2 && !$abort) { $x++; if ($x >= sizeof($schiffe)) { $abort = true; } $aua = new Schiffe($schiffe[$x]); } if (!$abort) { $planet->feuern($aua, 1); } } //SCHIFFE BALLERN zuruecl for ($i = 0; $i < sizeof($enemyf); $i++) { $x = 0; $abort = false; $schiff = new Schiffe($enemyf[$i]); $aua = new Schiffe($schiffe[$x]); while ($aua->besitzer->id == 2 && !$abort) { $x++; if ($x >= sizeof($schiffe)) { $abort = true; } $aua = new Schiffe($schiffe[$x]); }
public function kampftick($status, $ziel3) { $cfeld = new Weltraum($this->position->x, $this->position->y, $this->position->system->id, $this->position->system->id > 0); /* Statuscodierung 0=Alarmstufe Rot 1=Alarmstufe gelb 2 = reaktion beim beamen / scannen / etc 3 = gewaltsamer Fall 0 ( ohne bedingung rot ) * * defense = 0 phaser * defense = 1 photonen > phaser * defense = 2 quanten > photonen > phaser */ if ($cfeld->feld->hide) { return 0; } if ($status == 0) { //Alarmstufe Rot $sarray = array(); $parray = array(); $l = $cfeld->getShips(); for ($i = 0; $i < sizeof($l); $i++) { if ($l[$i]->energie >= 1 && $l[$i]->besitzer->id != $this->besitzer->id && $l[$i]->besitzer->id != 2 && $l[$i]->phaser < $l[$i]->maxphaser && $l[$i]->laser > 0 && $l[$i]->alarmstufe == 'red') { $sarray[] = $l[$i]; } } $abfrage = mysql_query("SELECT id FROM planeten WHERE x='" . $this->position->x . "' AND y='" . $this->position->y . "' AND system='" . $this->position->system->id . "' AND energie>=1 AND besitzer!=2 AND besitzer!='" . $this->besitzer->id . "' AND laser>0 AND alarmstufe='red'"); while ($row = mysql_fetch_array($abfrage)) { $parray[] = $row["id"]; } for ($i = 0; $i < sizeof($parray); $i++) { $shp = new Planeten($parray[$i]); if (($shp->besitzer->allianz->id == 0 || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id != $this->besitzer->allianz->id) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("nap")) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("verteidigung"))) { $shp->feuern($this, 1 + $shp->defense * 10); } } for ($i = 0; $i < sizeof($sarray); $i++) { $shp =& $sarray[$i]; if (($shp->besitzer->allianz->id == 0 || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id != $this->besitzer->allianz->id) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("nap")) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("verteidigung"))) { $shp->feuern($this, 1 + $shp->defense * 10); } } } //ENDE ALARM ROT if ($status == 3) { //Alarmstufe Rot 3 $sarray = array(); $parray = array(); //alle moegloichen schiffe ( in dem sektor ) in einem array sammelm $t_schiffe =& $cfeld->getShips(); for ($i = 0; $i < sizeof($t_schiffe); $i++) { if ($t_schiffe[$i]->energie > 0 && $t_schiffe[$i]->besitzer->id != 2 && $t_schiffe[$i]->besitzer->id != $this->besitzer->id && $t_schiffe[$i]->phaser < $t_schiffe[$i]->maxphaser && $t_schiffe[$i]->laser > 0) { $sarray[] = $t_schiffe[$i]; } } $abfrage = mysql_query("SELECT id FROM planeten WHERE x='" . $this->position->x . "' AND y='" . $this->position->y . "' AND system='" . $this->position->system->id . "' AND energie>=1 AND besitzer!=2 AND besitzer!='" . $this->besitzer->id . "' AND laser>0"); while ($row = mysql_fetch_array($abfrage)) { $parray[] = $row["id"]; } for ($i = 0; $i < sizeof($parray); $i++) { $shp = new Planeten($parray[$i]); if (($shp->besitzer->allianz->id == 0 || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id != $this->besitzer->allianz->id) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("nap")) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("verteidigung")) && (in_array($ziel3->besitzer->id, $shp->besitzer->vertrag("verteidigung")) || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id == $ziel3->besitzer->allianz->id || $shp->besitzer->id == $ziel3->besitzer->id)) { $shp->feuern($this, 1 + $shp->defense * 10); } } for ($i = 0; $i < sizeof($sarray); $i++) { $shp =& $sarray[$i]; if (($shp->besitzer->allianz->id == 0 || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id != $this->besitzer->allianz->id) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("nap")) && !in_array($this->besitzer->id, $shp->besitzer->vertrag("verteidigung")) && (in_array($ziel3->besitzer->id, $shp->besitzer->vertrag("verteidigung")) || $shp->besitzer->allianz->id > 0 && $shp->besitzer->allianz->id == $ziel3->besitzer->allianz->id || $shp->besitzer->id == $ziel3->besitzer->id)) { $shp->feuern($this, 1 + $shp->defense * 10); } } } //ENDE ALARM ROT 3 }