- Timestamp:
- May 2, 2012, 1:22:20 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/newlevel2012/src/modules/towerdefense/TowerDefense.cc
r9142 r9143 26 26 * 27 27 *NACHRICHT: 28 * Ich habe die Klasse Deathmatch einfach per Copy&Paste&Rename als Vorlage für euren Deathmatch genommen.29 * Ein Deathmatch erbt vom Gametype. Der einzige Unterschied zum Gametype ist, dass hier ein bisschen30 * Textausgabe stattfindet. Sollte das Später nicht erwünscht sein, könnt ihr einfach die Gametype-Klasse31 * an die Stelle von Deathmatch setzten.32 28 * 33 29 * Hier empfehle ich euch die gesamte Spielogik unter zu bringen. Viele Funktionen werden automatisch … … 52 48 * z.B: WaypointPatrolController. Wenn kein Team zugewiesen wurde bekämpft ein WaypointPatrolController alles, 53 49 * was in seiner Reichweite liegt. 50 * 51 * 52 *HUD: 53 * Ein Gametype kann ein HUD (Head up Display haben.) Z.B: hat Pong eine Anzeige welcher Spieler wieviele Punkte hat. 54 * Generell kann man a) Grafiken oder b) Zeichen in einer HUD anzeigen. 55 * Fuer den ersten Schritt reicht reiner Text. 56 * 57 * a) 58 * PongScore.cc uebernehmen und eigene Klasse draus machen. 59 * Wenn ihr bloss anzeigen wollt wieviele Punkte der Spieler bereits erspielt hat (Punkte = Kapital fuer neue Tuerme) dann orientiert ihr euch an 60 * TetrisScore.cc (im pCuts branch): http://www.orxonox.net/browser/code/branches/pCuts/src/modules/tetris/TetrisScore.cc 61 * Ich habe TetrisScore lediglich dazu gebraucht, um eine Variable auf dem HUD auszugeben. Ein Objekt fuer statischen Text gibt es bereits. 62 * 63 * b) 64 * Im naesten Schritt erstellt man die Vorlage fuer das HUD-Objekt: siehe /data/overlays/pongHUD 65 * OverlayText ist eine Vorlage fuer statischen text zb: "Points Scored:". Aus mir nicht erklaerlichen Gruenden sollte man die OverlayText 66 * Objekte immer erst nach dem PongScore anlegen. 67 * 68 * c) Im TowerDefense gamtype muss im Constructor noch das HUD-Template gesetzt werden. 69 * 70 * d) in CMakeLists.txt noch das Module includen das fuer die Overlays zustaendig ist. Siehe das gleiche File im Pong module. 71 * 72 * 54 73 * 55 74 */ … … 119 138 120 139 ChatManager::message("Use the console command addTower x y to add towers"); 140 141 //TODO: let the player control his controllable entity && TODO: create a new ControllableEntity for the player 142 121 143 } 122 144 … … 131 153 void TowerDefense::addTower(int x, int y) 132 154 { 133 if (x > 15 || y > 15 || x < 0 || y < 0) 155 if (x > 15 || y > 15 || x < 0 || y < 0)//Hard coded: TODO: let this depend on the centerpoint's height, width and fieldsize (fieldsize doesn't exist yet) 134 156 { 135 157 orxout() << "Can not add Tower: x and y should be between 0 and 15" << endl; … … 146 168 newTower->setPosition(x-8,y-8,0); 147 169 newTower->setGame(this); 170 //TODO: Save the Tower in a Vector. I would suggest std::vector< std::vector<Tower*> > towers_ as a protected member variable; 148 171 149 172 // TODO: create Tower mesh
Note: See TracChangeset
for help on using the changeset viewer.