edgen.h

Go to the documentation of this file.
00001 
00005 //     $Id: edgen.h,v 1.11 2009-04-18 13:48:37 mbickel Exp $
00006 //
00007 //     $Log: not supported by cvs2svn $
00008 //     Revision 1.10  2007/04/13 16:15:53  mbickel
00009 //      Merged ASC2 branch
00010 //
00011 //     Revision 1.8.2.2  2006/06/15 14:15:57  mbickel
00012 //      Fixed compilation warnings
00013 //      Added new building subwindows
00014 //      removed weathersystem
00015 //
00016 //     Revision 1.8.2.1  2006/03/01 21:00:50  mbickel
00017 //      Clean up of source
00018 //      Fixed to construction icons
00019 //
00020 //     Revision 1.8  2004/07/12 18:15:05  mbickel
00021 //      Lots of tweaks and fixed for more portability and compilation with mingw
00022 //
00023 //     Revision 1.7  2001/01/28 14:04:13  mbickel
00024 //      Some restructuring, documentation and cleanup
00025 //      The resource network functions are now it their own files, the dashboard
00026 //       as well
00027 //      Updated the TODO list
00028 //
00029 //     Revision 1.6  2000/12/23 13:19:46  mbickel
00030 //      Made ASC compileable with Borland C++ Builder
00031 //
00032 //     Revision 1.5  2000/08/12 12:52:46  mbickel
00033 //      Made DOS-Version compile and run again.
00034 //
00035 //     Revision 1.4  2000/05/23 20:40:44  mbickel
00036 //      Removed boolean type
00037 //
00038 //     Revision 1.3  2000/03/29 09:58:45  mbickel
00039 //      Improved memory handling for DOS version
00040 //      Many small changes I can't remember ;-)
00041 //
00042 //     Revision 1.2  1999/11/16 03:41:32  tmwilson
00043 //      Added CVS keywords to most of the files.
00044 //      Started porting the code to Linux (ifdef'ing the DOS specific stuff)
00045 //      Wrote replacement routines for kbhit/getch for Linux
00046 //      Cleaned up parts of the code that gcc barfed on (char vs unsigned char)
00047 //      Added autoconf/automake capabilities
00048 //      Added files used by 'automake --gnu'
00049 //
00050 //
00051 /*
00052     This file is part of Advanced Strategic Command; http://www.asc-hq.de
00053     Copyright (C) 1994-2010  Martin Bickel  and  Marc Schellenberger
00054 
00055     This program is free software; you can redistribute it and/or modify
00056     it under the terms of the GNU General Public License as published by
00057     the Free Software Foundation; either version 2 of the License, or
00058     (at your option) any later version.
00059 
00060     This program is distributed in the hope that it will be useful,
00061     but WITHOUT ANY WARRANTY; without even the implied warranty of
00062     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00063     GNU General Public License for more details.
00064 
00065     You should have received a copy of the GNU General Public License
00066     along with this program; see the file COPYING. If not, write to the 
00067     Free Software Foundation, Inc., 59 Temple Place, Suite 330, 
00068     Boston, MA  02111-1307  USA
00069 */
00070 
00071 #define maxtilevals 7
00072 
00073 #define cverydeepwater 30
00074 #define cdeepwater 29
00075 #define cwater 28
00076 #define cshallowwater 27
00077 #define cland 43
00078 #define cmount darkgray
00079 
00080 #define cforest 44
00081 
00082 #define cdesert 34
00083 
00084 #define cfewmaterial 21
00085 #define cmediummaterial 22
00086 #define cmuchmaterial 23
00087 
00088 #define cfewfuel 181
00089 #define cmediumfuel 182
00090 #define cmuchfuel 183
00091 
00092 #define numofbdts 12
00093 
00094 #define ctransparent 255
00095 
00096 #define clland 0
00097 #define clforest 1
00098 #define cldesert 2
00099 #define clmaterial 3
00100 #define clfuel 4
00101 
00102 
00103 struct tmemoryblock {
00104    int *mempointer;
00105    int maxset,actpres;
00106    int res;
00107    int color[maxtilevals+1];
00108    int tileval[maxtilevals];
00109    char bordername[maxtilevals][20];
00110    char generated;
00111    int startblocksize;
00112    int tilevalcount,acttile;
00113    };
00114 
00115 typedef tmemoryblock *pmemoryblock;
00116 
00117 class tplasma {
00118     public :
00119         int maxx,maxy,maxvalue;
00120         char flip;
00121         int blockcount;
00122         pmemoryblock memblock;
00123         tplasma(void);
00124         void membar(int x1 ,int y1 ,int x2 ,int y2, int color );
00125         int getmem(int x, int y);
00126         int creatememblock(void);
00127         void setmemory(int x, int y, int color);
00128         /*void preview(int sx, int sy,int barsize);
00129         void process(int sx, int sy,int barsize);*/
00130         void generateplasma(char resettile);
00131 
00132         int xsymm, ysymm;
00133    };
00134 
00135 
00136 extern int random(int max);
00137 extern int mapgenerator(void);

Generated on Mon May 21 01:26:31 2012 for Advanced Strategic Command by  doxygen 1.5.1