More renamed
[shipsimu.git] / application / ship-simu / main / ships / passenger / class_PassengerShip.php
index 23a6c3eacba2a95e52da65b5a8ddd3fae9665ca0..70fa5ed56b79e7e333d934a8e81f19d2e8bb2c51 100644 (file)
@@ -3,11 +3,11 @@
  * A passenger ship with one or more decks, cabins, bridge (replacement for the
  * captain) and many more
  *
  * A passenger ship with one or more decks, cabins, bridge (replacement for the
  * captain) and many more
  *
- * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @author             Roland Haeder <webmaster@shipsimu.org>
  * @version            0.0.0
  * @version            0.0.0
- * @copyright  Copyright(c) 2007, 2008 Roland Haeder, this is free software
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team
  * @license            GNU GPL 3.0 or any newer version
  * @license            GNU GPL 3.0 or any newer version
- * @link               http://www.ship-simu.org
+ * @link               http://www.shipsimu.org
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
  * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
  */
-class PassengerShip extends BaseShip implements ConstructableShip, LimitableObject {
+class PassengerShip extends BaseShip implements ConstructableShip {
        // Konstruktor
        // Konstruktor
-       private function __construct () {
+       protected function __construct () {
                // Eltern-Kontruktor aufrufen
                // Eltern-Kontruktor aufrufen
-               parent::constructor(__CLASS__);
-
-               // Debug message
-               if (((defined('DEBUG_SHIP')) || (defined('DEBUG_ALL'))) && (defined('DEBUG_CONSTRUCT'))) {
-                       $this->getDebugInstance()->output(sprintf("[%s:%d] Konstruktor erreicht.<br />\n",
-                               __CLASS__,
-                               __LINE__
-                       ));
-               }
-
-               // Set description
-               $this->setPartDescr("Passagier-Schiff");
-
-               // Generate unique ID number
-               $this->createUniqueID();
-
-               // Clean up a little
-               $this->removeSystemArray();
+               parent::__construct(__CLASS__);
        }
 
        // Passagier-Schiff erstellen
        }
 
        // Passagier-Schiff erstellen
-       public static function createPassengerShip ($shipName) {
+       public static final function createPassengerShip ($shipName) {
                // Get new instance
                $passInstance = new PassengerShip();
 
                // Get new instance
                $passInstance = new PassengerShip();
 
-               // Debug message
-               if ((defined('DEBUG_SHIP')) || (defined('DEBUG_ALL'))) {
-                       $passInstance->getDebugInstance()->output(sprintf("[%s:%d] Ein Passagier-Schiff wird erstellt.<br />\n",
-                               __CLASS__,
-                               __LINE__
-                       ));
-               }
-
-               // Set ship's name
+               // Set ship name
                $passInstance->setShipName($shipName);
 
                // Instanz zurueckgeben
                $passInstance->setShipName($shipName);
 
                // Instanz zurueckgeben
@@ -67,14 +42,14 @@ class PassengerShip extends BaseShip implements ConstructableShip, LimitableObje
        }
 
        // Anzahl Betten ermitteln
        }
 
        // Anzahl Betten ermitteln
-       final function calcTotalBeds () {
+       public final function calcTotalBeds () {
                // Struktur-Array holen
                $struct = $this->getStructuresArray();
 
                if (is_null($struct)) {
                        // Empty structures list!
                        throw new EmptyStructuresListException($this, self::EXCEPTION_EMPTY_STRUCTURES_ARRAY);
                // Struktur-Array holen
                $struct = $this->getStructuresArray();
 
                if (is_null($struct)) {
                        // Empty structures list!
                        throw new EmptyStructuresListException($this, self::EXCEPTION_EMPTY_STRUCTURES_ARRAY);
-               }
+               } // END - if
 
                // Anzahl Betten auf 0 setzen
                $numBeds = 0;
 
                // Anzahl Betten auf 0 setzen
                $numBeds = 0;
@@ -97,55 +72,15 @@ class PassengerShip extends BaseShip implements ConstructableShip, LimitableObje
                                        $cab = $el->getPartInstance();
                                        if (!is_null($cab)) {
                                                // Kabinenbeschreibung holen
                                        $cab = $el->getPartInstance();
                                        if (!is_null($cab)) {
                                                // Kabinenbeschreibung holen
-                                               $cabType = $cab->getPartDescr();
-                                       }
-
-                                       // Debug-Meldung ausgeben
-                                       $this->getDebugInstance()->output(sprintf("[%s:%d] Es stehen <strong>%d</strong> Betten vom Kabinen-Typ <strong>%s</strong> bereit.<br />\n",
-                                               __CLASS__,
-                                               __LINE__,
-                                               $total,
-                                               $cabType
-                                       ));
-                               }
-                       } else {
-                               // Keine Kabine!
-                               if ((defined('DEBUG_SHIP')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] <strong>%s</strong> ist keine Kabine.<br />\n",
-                                       __CLASS__,
-                                       __LINE__,
-                                       $el->getPartDescr()
-                               ));
-                       }
-               }
-
-               if ((defined('DEBUG_SHIP')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Das <strong>%s</strong> mit dem Namen <strong>%s</strong> hat <strong>%d</strong> Betten.<br />\n",
-                       __CLASS__,
-                       __LINE__,
-                       $this->getPartDescr(),
-                       $this->getShipName(),
-                       $numBeds
-               ));
+                                               $cabType = $cab->getObjectDescription();
+                                       } // END - if
+                               } // END - if
+                       } // END - if
+               } // END - for
 
                // Anzahl zurueckliefern
                return $numBeds;
        }
 
                // Anzahl zurueckliefern
                return $numBeds;
        }
-
-       /**
-        * Stub!
-        */
-       public function saveObjectToDatabase () {
-               $this->getDebugInstance()->output(sprintf("[%s:] Stub <strong>%s</strong> erreicht.",
-                       $this->__toString(),
-                       __FUNCTION__
-               ));
-       }
-
-       /**
-        * Limits this object with an ObjectLimits instance
-        */
-       public function limitObject (ObjectLimits $limitInstance) {
-               ApplicationEntryPoint::app_die("".__METHOD__." reached! Stub!");
-       }
 }
 
 // [EOF]
 }
 
 // [EOF]