/[projectaxis]/projectaxis/projectAxis/src/blotchmaker/blotchmaker.h
ViewVC logotype

Diff of /projectaxis/projectAxis/src/blotchmaker/blotchmaker.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by vovansim, Wed Apr 23 00:33:19 2003 UTC revision 1.4 by vovansim, Sat May 17 19:52:29 2003 UTC
# Line 3  Line 3 
3  ====================  ====================
4  BlotchMaker.h  BlotchMaker.h
5  ====================  ====================
6  version 2.5.6  version 2.5.8
7  ====================  ====================
8    
9  BlotchMaker works with "Map" classes. While Map builds the map structure for the game,  BlotchMaker works with "Map" classes. While Map builds the map structure for the game,
# Line 40  the_map.PrintToScreen(); Line 40  the_map.PrintToScreen();
40    
41  TO-DO & EXPANSION LIST  TO-DO & EXPANSION LIST
42  ----------------------  ----------------------
 needs SetInit() & default intitilizer  
 map verification re-blotch if verification fails.  
43  SetAxisPalette() needs individual push and pop instead of a lump set of perams.  SetAxisPalette() needs individual push and pop instead of a lump set of perams.
44  option: pathcut bad maps or retry new map. timeout in 10 maps.  option: pathcut bad maps or re-blotch & timeout?
 Home base placement  
         - patterns for # of players or random locations? always corners?  
45  Path cutting for bad maps  Path cutting for bad maps
46  Waypoints for path cutting  Waypoints for path cutting
47  FULL mode infinite loop possible? or just get rid of full mode - check to see if still works even.  FULL mode infinite loop possible? or just get rid of full mode - check to see if still works even.
# Line 61  get rid of extra variables like num_blot Line 57  get rid of extra variables like num_blot
57    
58  CHANGELOG:  CHANGELOG:
59  ----------------------  ----------------------
60  2.5.6 - The default values for function's parameters should be set in the  2.5.8   - fixed reporting bug that said a bad map was good. caused by lowing attempts from 10 to 5.
61          header file, not the implementation file. Changed the signature of  2.5.7   - optimized the SearchSteps map verification timeout. It now takes less searched tiles to call it a bad map.
62                  SetAxisPalette to reflect that.  2.5.6   - added a few new private assistant variables:
63  2.5.5 - BM makes 10 attempts to make a good map with the current settings.                  hb_locs to record base locations
64                    num_players for an easy reference, recorded automatically after SetAxisPalette() has been invoked
65            - changed CreateHBs(). it now places the bases in patterns according tho the number of players in the game.
66            - VerifyMap() now uses less searches, depending on the number of players in the game. *Major speed improvement*
67            - slight change to the header file in SetAxisPalette(). Put var=0 defaults in the function proto instead of in the actual function :-)
68            - changed map attempts timout to 5 tries instead of 10
69    2.5.5   - BM makes 10 attempts to make a good map with the current settings.
70          the main munction StartBlotching() will return a zero if nothing could be produced and a 1 if it could.          the main munction StartBlotching() will return a zero if nothing could be produced and a 1 if it could.
71  2.5.4   - preliminary home base placement set up.  2.5.4   - preliminary home base placement set up.
72          - map verification via stlastarsearch.h and mapsearch.h          - map verification via stlastarsearch.h and mapsearch.h
# Line 80  CHANGELOG: Line 82  CHANGELOG:
82                  -> SetAxisPalette();                  -> SetAxisPalette();
83          - removed auto-allocation of some vars. this is a deprecated feature replaced by standard defaults at initialization time.          - removed auto-allocation of some vars. this is a deprecated feature replaced by standard defaults at initialization time.
84          - removed Hash brush types from the brushes enum          - removed Hash brush types from the brushes enum
85  2.5.3 - implemented Brush, Step, and Deterioration features.  2.5.3   - implemented Brush, Step, and Deterioration features.
86  2.5.2 - ditched old template-input system and put it into user-usable Set() functions which the prog can also use.  2.5.2   - ditched old template-input system and put it into user-usable Set() functions which the prog can also use.
87  2.5.1 - switched template blotch_types to array instead of hardcoded types  2.5.1   - switched template blotch_types to array instead of hardcoded types
88    
89    
90  ===============================================================  ===============================================================
# Line 192  public: Line 194  public:
194                  // loads the axis colors to place on the map - ints corespond to the equivelent obstacle enum numbers. (0 = BLOCK)                  // loads the axis colors to place on the map - ints corespond to the equivelent obstacle enum numbers. (0 = BLOCK)
195                  //      you cannot load colors seperately yet. you must do it all in one big lump.                  //      you cannot load colors seperately yet. you must do it all in one big lump.
196                  //      this also determines how many players are on the map.                  //      this also determines how many players are on the map.
197                  void SetAxisPalette(short int a,                  void SetAxisPalette(short int=0, short int=0, short int=0, short int=0, short int=0, short int=0, short int=0, short int=0);
                         short int b = 0,  
                         short int c = 0,  
                         short int d = 0,  
                         short int e = 0,  
                         short int f = 0,  
                         short int g = 0,  
                         short int h = 0);  
198          // *STRUCTORS          // *STRUCTORS
199                  Blotchmaker(Map &incoming_map);                  Blotchmaker(Map &incoming_map);
200                  ~Blotchmaker() {/*do nothing*/}                  ~Blotchmaker() {/*do nothing*/}
# Line 223  private: Line 218  private:
218          struct blotch_type_perams *blotch_type; // ptr - current blotch type in operation          struct blotch_type_perams *blotch_type; // ptr - current blotch type in operation
219          struct map_user_vars_package vars_template; // the template containing the user variables. determine which one to use later          struct map_user_vars_package vars_template; // the template containing the user variables. determine which one to use later
220    
221          short int hbsize; // square size of home bases          short int hbsize; // radius size of home bases. setting of 3 will produce a seed with 3 on each side, aka 7x7
222          short int hbplacement; // placement type of home bases, corners=0, sides, [random]          short int hbplacement; // placement type of home bases, corners=0, sides, [random]
223          obstacle hbtypes[8]; // a list of hb types to put on the map.          obstacle hbtypes[8]; // a list of hb types to put on the map.
224            pos hb_locs[4]; // x,y locations of home bases
225            short int num_players; //based on the number of home bases loaded
226    
227          obstacle map_init; // default initializer.          obstacle map_init; // default initializer.
228    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26