<?php
-// Premier-Kabinen
-class PremierCabin extends BaseCabin implements ItemIsTradeable, ConstructableShipPart {
+/**
+ * So-called "premier class" cabins are constructed with this class (medium class)
+ *
+ * @author Roland Haeder <webmaster@shipsimu.org>
+ * @version 0.0.0
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Ship-Simu Developer Team
+ * @license GNU GPL 3.0 or any newer version
+ * @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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * 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/>.
+ */
+class PremierCabin extends BaseCabin implements TradeableItem, ConstructableShipPart {
// Konstruktor
- private function __construct () {
+ protected function __construct () {
// Call parent constructor
- parent::constructor(__CLASS__);
-
- // Debug message
- if (((defined('DEBUG_CABIN')) || (defined('DEBUG_ALL'))) && (defined('DEBUG_CONSTRUCT'))) $this->getDebugInstance()->output(sprintf("[PremierCabin:] Konstruktor erreicht.<br />\n",
- __CLASS__,
- __LINE__
- ));
-
- // Set description
- $this->setPartDescr("Premier-Class-Kabine");
-
- // Generate unique ID number
- $this->createUniqueID();
-
- // Clean up a little
- $this->removeSystemArray();
+ parent::__construct(__CLASS__);
}
// Premier-Kabine erstellen
- public static function createPremierCabin ($numLuxury, $numRooms, $numBeds, $dim) {
+ public static final function createPremierCabin ($numLuxury, $numRooms, $numBeds, $dim) {
// Get new instance
$premierInstance = new PremierCabin();
- // Debug message
- if ((defined('DEBUG_CABIN')) || (defined('DEBUG_ALL'))) $premierInstance->getDebugInstance()->output("[PremierCabin:] Eine Premier-Kabine wird konstruiert...<br />\n");
-
// Abmasse extrahieren
$premierInstance->extractDimensions($dim);
return $premierInstance;
}
- // Loesch-Methode fuer Anzahl Betten
- public function removeNumBeds() {
- if ((defined('DEBUG_CABIN')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Anzahl Betten gelöscht.<br />\n",
- __CLASS__,
- __LINE__
- ));
- unset($this->numBeds);
- parent::removeNumBeds();
- }
-
- // Loesch-Methode fuer Anzahl Kabinen
- public function removeNumCabin() {
- if ((defined('DEBUG_CABIN')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Anzahl Kabinen gelöscht.<br />\n",
- __CLASS__,
- __LINE__
- ));
- unset($this->numCabin);
- parent::removeNumCabin();
- }
-
- // Loesch-Methode fuer Anzahl Raeume
- public function removeNumRooms() {
- if ((defined('DEBUG_CABIN')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Anzahl Räume gelöscht.<br />\n",
- __CLASS__,
- __LINE__
- ));
- unset($this->numRooms);
- parent::removeNumRooms();
- }
-
// Overwritten method for tradeable items
public function isTradeable () {
return true;
}
-
- /**
- * Limits this object with an ObjectLimits instance
- */
- public function limitObject (ObjectLimits $limitInstance) {
- ApplicationEntryPoint::app_die("".__METHOD__." reached! Stub!");
- }
}
// [EOF]