Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

race_sl.h

00001 // $Id: race__sl_8h-source.html,v 1.1 2002/06/20 17:09:51 mkrohn5 Exp $
00002 
00003 // Race SL Header File
00004 // Written by: Marco Krohn, <marco.krohn@gmx.de>
00005 
00006 // Copyright (C) 2001 - , Marco Krohn, <marco.krohn@gmx.de>
00007 //
00008 // This program is free software; you can redistribute it and/or modify
00009 // it under the terms of the GNU General Public License as published by
00010 // the Free Software Foundation; either version 1, or (at your option)
00011 // any later version.
00012 //
00013 // This program is distributed in the hope that it will be useful,
00014 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 // GNU General Public License for more details.
00017 
00018 #ifndef __RACE_SL_INCLUDED
00019 #define __RACE_SL_INCLUDED
00020 
00021 #include "gamelogic/race.h"
00022 
00023 
00024 
00025 
00026 
00027 //----------------------------------------  class TRaceSL  ----------------------------------------
00028 
00029 class TRaceSL : public TRace
00030 {
00031   public:
00032     static const int NONE = -1;
00033 
00035     enum                                                   // primary racial traits
00036     {
00037       AR = 0,                                              // alternate reality
00038       CA,                                                  // claim adjuster
00039       HE,                                                  // hyper expansion
00040       IS,                                                  // inner strength
00041       IT,                                                  // interstellar traveller
00042       JOAT,                                                // jack of all trades
00043       PP,                                                  // packet physics
00044       SD,                                                  // space demolition
00045       SS,                                                  // super stealth
00046       WM                                                   // war monger
00047     };
00049     static const int MAX_PRT = 10;
00051     enum
00052     {
00053       ARM = 0,                                             // advanced remote mining
00054       CE,                                                  // cheap engines
00055       IFE                                                  // improved fuel efficiency
00056     };
00058     static const int MAX_LRT = 3;
00059 
00063     TRaceSL();
00064 
00068     virtual double getFleetEngineFailure() const;
00072     int2 getPRT() const;
00077     bool hasLRT( int2 lrt ) const;
00084     virtual bool load( TDataPackageList* in );
00091     virtual bool save( TDataPackageList* out ) const;
00099     bool setPRT( int prt );
00100 
00101   private:
00103     int2 fPRT;
00105     bool fLRT[MAX_LRT];
00106 };
00107 
00108 
00109 
00110 
00111 
00112 #endif        // __RACE_SL_INCLUDED

Generated on Thu Jun 20 18:13:16 2002 for Stellar Legacy by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001