Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

spfst.h

Go to the documentation of this file.
00001 
00007 /*
00008     This file is part of Advanced Strategic Command; http://www.asc-hq.de
00009     Copyright (C) 1994-1999  Martin Bickel  and  Marc Schellenberger
00010 
00011     This program is free software; you can redistribute it and/or modify
00012     it under the terms of the GNU General Public License as published by
00013     the Free Software Foundation; either version 2 of the License, or
00014     (at your option) any later version.
00015 
00016     This program is distributed in the hope that it will be useful,
00017     but WITHOUT ANY WARRANTY; without even the implied warranty of
00018     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019     GNU General Public License for more details.
00020 
00021     You should have received a copy of the GNU General Public License
00022     along with this program; see the file COPYING. If not, write to the 
00023     Free Software Foundation, Inc., 59 Temple Place, Suite 330, 
00024     Boston, MA  02111-1307  USA
00025 */
00026 
00027 #ifndef spfstH
00028   #define spfstH
00029 
00030  #include <sigc++/sigc++.h>
00031   
00032   
00033   #include "newfont.h"
00034   #include "typen.h"
00035   #include "gamemap.h"
00036 
00037    struct Schriften {
00038                pfont        smallarial;
00039                pfont        smallsystem;
00040                pfont        large;
00041                pfont        arial8; 
00042                pfont        guifont;
00043                pfont        guicolfont;
00044                pfont        monogui;
00045             } ; 
00046    extern Schriften schriften;
00047 
00048 
00049   extern GameMap* actmap; 
00050 
00052 extern tfield* getfield(int x, int y);
00053 
00054 
00055 // ! returns the diplomatic status between actmap->actplayer and the player with color b (note that the color is playernum*8 ) 
00056 //extern int getdiplomaticstatus( int b );
00057 
00058 // ! returns the diplomatic status between the players with color c and b (note that the color is playernum*8 ) 
00059 // extern int getdiplomaticstatus2( int c, int b);
00060 
00061 extern void  putbuilding( const MapCoordinate& entryPosition,
00062                          int          color,
00063                          const BuildingType* buildingtyp,
00064                          int          completion,
00065                          int          ignoreunits = 0 ); // f?r Kartened
00066 
00067 extern void  putbuilding2( const MapCoordinate& entryPosition,
00068                           int color,
00069                           BuildingType* buildingtyp);  // f?r Spiel
00070 
00071 
00073 extern void  calculateallobjects( GameMap* m = actmap );
00074 
00082 extern void  calculateobject(int  x,
00083                              int  y,
00084                              bool mof,
00085                              const ObjectType* obj,
00086                              GameMap* gamemap = actmap );
00087 
00088 extern void  calculateobject( const MapCoordinate& pos, 
00089                              bool mof,
00090                              const ObjectType* obj,
00091                              GameMap* gamemap = actmap );
00092 
00093 
00094 
00102 extern int fieldAccessible( const tfield*        field,
00103                             const Vehicle*     vehicle,
00104                             int  uheight = -2,
00105                             const bool* attacked = NULL,
00106                             bool ignoreVisibility = false );
00107 
00108 
00111 extern void  checkunitsforremoval ( void );
00112 
00114 extern void checkobjectsforremoval ( void );
00115 
00117 extern int          getmaxwindspeedforunit ( const Vehicle* eht );
00118 
00122 extern int          getwindheightforunit   ( const Vehicle* eht, int uheight = -1 );
00123 
00124 
00133 extern int          terrainaccessible (  const tfield* field, const Vehicle* vehicle, int uheight = -1 );
00134 
00147 extern int          terrainaccessible2 ( const tfield*        field, const Vehicle* vehicle, int uheight = -1 );
00148 
00149 
00159 int          terrainaccessible2 ( const tfield*        field, const TerrainAccess& terrainAccess, int uheight );
00160 
00161 
00168 
00169 extern int getheightdelta ( int height1, int height2 );
00170 extern int getheightdelta ( const ContainerBase* c1, const ContainerBase* c2 );
00172 
00178 
00179   extern bool fieldvisiblenow( const tfield* pe, int player = actmap->actplayer, GameMap* map = actmap );
00180   extern bool fieldvisiblenow( const tfield* pe, Vehicle* veh, int player = actmap->actplayer  );
00182 
00188 
00189   extern VisibilityStates fieldVisibility  ( const tfield* pe, int player = actmap->actplayer );
00190   extern VisibilityStates fieldVisibility  ( const tfield* pe, int player, GameMap* gamemap );
00192 
00193 
00194 extern SigC::Signal0<void> repaintMap;
00195 extern SigC::Signal0<void> repaintDisplay;
00196 extern SigC::Signal0<void> updateFieldInfo;
00197 extern SigC::Signal0<void> cursorMoved;
00198 
00200 extern SigC::Signal0<void> viewChanged;
00201 extern SigC::Signal1<void,GameMap*> mapChanged;
00202 extern SigC::Signal1<void,ContainerBase*> showContainerInfo;
00203 extern SigC::Signal1<void,Vehicletype*> showVehicleTypeInfo;
00204 extern SigC::Signal0<bool> idleEvent;
00205 
00206 extern void displaymap();
00207 
00208 
00209 #endif
00210 
00211 

Generated on Tue Jun 24 01:27:52 2008 for Advanced Strategic Command by  doxygen 1.4.2