* @version 0.0.0 * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software * @license GNU GPL 3.0 or any newer version * @link http://www.ship-simu.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 . */ class BaseDeckStructure extends BaseStructure { // Anzahl Decks private $numDecks = 0; // Konstruktor private function __construct ($class) { // Call parent constructor parent::constructor($class); // Debug message if (((defined('DEBUG_STRUCTURE')) || (defined('DEBUG_ALL'))) && (defined('DEBUG_CONSTRUCT'))) { $this->getDebugInstance()->output(sprintf("[%s:%d] Konstruktor erreicht.
\n", __CLASS__, __LINE__ )); } // Set description $this->setPartDescr("Deckstruktur"); } /** * Calls the private constructor * * @param $class The class' name * @return void */ public function constructor ($class) { $this->__construct($class); } // Deckstruktur dem Schiff hinzufuegen public function addShipPartToShip (ConstructableShip $shipInstance, ConstructableShipPart $deckInstance) { if ((defined('DEBUG_STRUCTURE')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Das Deck %s wird für das Schiff %s konstruiert.
\n", __CLASS__, __LINE__, $deckInstance->getPartDescr(), $shipInstance->getShipName() )); // Eltern-Methode aufrufen parent::addShipPartToShip($shipInstance, $deckInstance); // Andere Daten uebertragen und von der Quelle loeschen $this->setNumDecks($deckInstance->getNumDecks()); $deckInstance->removeNumDecks(); if ((defined('DEBUG_STRUCTURE')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Das Deck %s wurde in das Schiff %s eingebaut.
\n", __CLASS__, __LINE__, $deckInstance->getPartDescr(), $shipInstance->getShipName() )); } // Deckanzahl entfernen public function removeNumDecks() { if ((defined('DEBUG_STRUCTURE')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Anzahl Decks wurde gelöscht.
\n", __CLASS__, __LINE__ )); unset($this->numDecks); } // Setter-Methode fuer Anzahl Decks public final function setNumDecks($numDecks) { $this->numDecks = (int) $numDecks; } // Getter-Methode fuer Anzahl Decks public final function getNumDecks() { return $this->numDecks; } } // [EOF] ?>