This is EmPlayer.h in view mode; [Download] [Up]
// // $Id: EmPlayer.h,v 1.9 1997/10/31 04:51:45 nygard Exp $ // // // This file is a part of Empire, a game of exploration and conquest. // Copyright (C) 1996 Steve Nygard // // 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 2 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, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // // You may contact the author by: // e-mail: nygard@telusplanet.net // #import <AppKit/AppKit.h> #import "Empire.h" @class City; @class GameManager; @class Map; @class MapView; @class Unit; //====================================================================== @interface EmPlayer : NSObject { GameManager *gameManager; Player playerNumber; NSString *playerName; Map *map; int productionEfficiency; int combatEfficiency; NSNumber *savedCookie; NSMutableArray *cityList; NSMutableArray *unitList; NSMutableArray *newUnitList; NSMutableArray *unitsAwaitingMovement; Unit *selectedUnit; // Statistics int destroyedUnits[UNIT_TYPE_COUNT]; int lostUnits[UNIT_TYPE_COUNT]; // End of game maps. p_neutral represents the true location of all units. Map *finalMaps[4]; BOOL gameOver; } - initWithName:(NSString *)aName number:(Player)number world:(Map *)aMap capital:(City *)capitalCity withEfficiencies:(int)pe:(int)ce gameManager:(GameManager *)theGameManager; - (void) dealloc; //====================================================================== // General data access //====================================================================== - (GameManager *) gameManager; - (NSString *) playerName; - (Player) playerNumber; - (Map *) map; - (int) productionEfficiency; - (int) combatEfficiency; - (NSArray *) cityList; - (City *) cityAtLocation:(EMMapLocation)target; - (City *) ourCityNearestToLocation:(EMMapLocation)target; - (NSArray *) unitList; - (NSArray *) newUnitList; //====================================================================== // Turn phases //====================================================================== - (void) yourTurn:(int)turn withCookie:(NSNumber *)aCookie; - (void) yourTurn:(int)turn; // scr - (void) turnDone; - (void) initialPhase; - (void) addUnit:(Unit *)newUnit; - (void) capturedCity:(City *)aCity; - (void) lostCity:(City *)aCity; - (void) updateMapAroundCities; //====================================================================== // Map Updating //====================================================================== - (void) unitIconHasChanged:(Unit *)aUnit; - (void) cityProductionChanged:(City *)aCity; //====================================================================== // Statistics //====================================================================== - (WarStatistics) warStatistics; - (int) cityCount; //====================================================================== // End of player //====================================================================== - (BOOL) hasPlayerLost; - (void) gameStopped:(int)activePlayers; - (BOOL) playerHasWon:(int)activePlayers; - (void) playerHasLost:(int)activePlayers; - (void) playerHasResigned:(int)activePlayers; - (void) createFinalMaps:(int)activePlayers; //====================================================================== // Movement //====================================================================== - (Unit *) nextUnitAwaitingMovement; - (Unit *) selectedUnit; - (Unit *) unitWithType:(UnitType)unitType atLocation:(EMMapLocation)target; - (Unit *) primaryUnitAtLocation:(EMMapLocation)target; //====================================================================== // Commands //====================================================================== - (MoveResult) moveSelectedUnitInDirection:(Direction)dir; - (BOOL) moveResultDidMove:(MoveResult)moveResult; - (BOOL) tryToMoveSelectedUnitInDirection:(Direction)dir; - (void) activateThisUnit:(Unit *)aUnit; - (void) waitUnit:(Unit *)aUnit; //====================================================================== // Other //====================================================================== - (void) destroyUnit:(Unit *)aUnit wasDisbanded:(BOOL)disbanded; - (void) showExplosions:(int)count atLocation:(EMMapLocation)target; //====================================================================== // Game Resignation //====================================================================== - (NSArray *) remainingCities; - (void) aPlayerHasResigned:(Player)number; - (void) resign; //====================================================================== // Subclass Responsibilities //====================================================================== - (void) selectedUnitTriedToMove:(MoveResult)moveResult; @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.