initial.c

Go to the documentation of this file.
00001 /*
00002   Initialization of adventure play variables
00003 */
00004 #include        <string.h>
00005 #include        <stdio.h>
00006 #include        "advent.h"              /* #define preprocessor equates  */
00007 #define EXTERN                          /* define, not declare, in advdec.h */
00008 #include        "advdec.h"
00009 
00010 int plac[MAXOBJ] = {
00011       0,   0,   3,   8,  10,  11,   0,  14,   0, 148,   /*   0 -   9 */
00012      96,  19,  17, 101, 103,   0, 106,   0,   0, 238,   /*  10 -  19 */
00013     238, 117, 190, 109,  25,  23, 111,  35,   0,  97,   /*  20 -  29 */
00014       0, 119,   0, 117,   0, 130,   0, 126, 140,   0,   /*  30 -  39 */
00015      96,  94, 158, 160, 188,   0, 155, 174, 166, 228,   /*  40 -  49 */
00016      18, 204,  27,  29,  30,   0,  92, 168,  97, 100,   /*  50 -  59 */
00017     101,   0, 119, 127, 130, 141, 144, 205,  28, 182,   /*  60 -  69 */
00018     225, 230,   0, 147, 241, 248,   0,   0,   0,   0,   /*  70 -  79 */
00019       0,   0,   0,   0,   0,   0,   0, 193, 102,   0,   /*  80 -  89 */
00020     159, 141, 172, 188, 189,   0,   0, 193, 227, 174,   /*  90 -  99 */
00021       0,  13, 238, 217, 171,   0, 146, 159,   3,   0,   /* 100 - 109 */
00022       0,   0,   0,   3, 180,  39,   5,   0, 110, 169,   /* 110 - 119 */
00023     200
00024 };
00025 
00026 int fixd[MAXOBJ] = {
00027       0,   0,   0,   9,   0,   0,   0,  15,   0,   0,   /*   0 -   9 */
00028       0,  -1,  27,  -1,   0,   0,   0,  -1,   0,   0,   /*  10 -  19 */
00029       0, 122, 235,  -1,  -1,  67,  -1, 110,   0,  -1,   /*  20 -  29 */
00030      -1, 121,   0, 122,   0,  -1,  -1,  -1,  -1,   0,   /*  30 -  39 */
00031      -1,  -1, 166, 167, 189,   0,   0,  -1,   0, 229,   /*  40 -  49 */
00032       0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   /*  50 -  59 */
00033       0,   0, 121,   0,  -1,   0,   0,   0,   0,   0,   /*  60 -  69 */
00034       0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   /*  70 -  79 */
00035       0,   0,   0,   0,   0,   0,   0,  -1, 194,  -1,   /*  80 -  89 */
00036       0,  -1, 174,  -1,  -1,   0,   0,  -1,  -1,  -1,   /*  90 -  99 */
00037       0,   0,   0,  -1,  -1,  -1,   0,   0,   0,   0,   /* 100 - 109 */
00038       0,   0,  -1,   0,   0,  -1,  -1,   0,   0,   0,   /* 110 - 119 */
00039       0
00040 };
00041 
00042 struct playinfo g = {
00043     0,                                                  /* turns */
00044     1,                                                  /* loc */
00045     1,                                                  /* oldloc */
00046     1,                                                  /* oldloc2 */
00047     1,                                                  /* newloc */
00048     {                                                   /* loc_attrib[MAXLOC] */
00049           0,   73,   65,   73,   73,                    /*   0 -   4 */
00050          65,   65,   73, 1601,   33,                    /*   5 -   9 */
00051          32,   32,   32, 1824,   32,                    /*  10 -  14 */
00052           0,    2,    0,    0, 2816,                    /*  15 -  19 */
00053           2,    2,    2,    0,   10,                    /*  20 -  24 */
00054           0,    2,    0,    0,    0,                    /*  25 -  29 */
00055           0,    2,    2,    8,    0,                    /*  30 -  34 */
00056           0,    0,    0,    8,    0,                    /*  35 -  39 */
00057           2,    0,  256,  256,  256,                    /*  40 -  44 */
00058         256,  272,  272,  272,  256,                    /*  45 -  49 */
00059         256,    0,  256,  256,  272,                    /*  50 -  54 */
00060         256,  272,    0,   16,    2,                    /*  55 -  59 */
00061           0,    0,    0,    0,    0,                    /*  60 -  64 */
00062           0,    0,    0,    0,    0,                    /*  65 -  69 */
00063           0,    0,    0,    0,    0,                    /*  70 -  74 */
00064           0,    0,    0,    0,    2,                    /*  75 -  79 */
00065         256,  256,  272,    0,    0,                    /*  80 -  84 */
00066          16,  272,    0,    0,    2,                    /*  85 -  89 */
00067           2,    0,    0,    0,    0,                    /*  90 -  94 */
00068           8,    0,    0, 1280,  513,                    /*  95 -  99 */
00069         513,  512,    0,    0,    0,                    /*  00 -  04 */
00070           0,    0,    0,  768,    0,                    /* 105 - 109 */
00071           0,    0,    0,    8,    0,                    /* 110 - 114 */
00072           1,    1,    0,    0,    0,                    /* 115 - 119 */
00073           0,    0,   16,   16,   16,                    /* 120 - 124 */
00074          16,   17,   16,   16,   16,                    /* 125 - 129 */
00075          16,    0,    0,    0,    0,                    /* 130 - 134 */
00076           0,    0,    0,    0,    0,                    /* 135 - 139 */
00077           0, 1040,   16,    0,    0,                    /* 140 - 144 */
00078           2,   65,   65,   65,   65,                    /* 145 - 149 */
00079          65,   65,   65,   65,   65,                    /* 150 - 154 */
00080          65,    3, 2625, 2113,   65,                    /* 155 - 159 */
00081          65,    3,    3,    3,    3,                    /* 160 - 164 */
00082           3,   41,   41,    9,    9,                    /* 165 - 169 */
00083           0,    0,    0,    0,    0,                    /* 170 - 174 */
00084           0,    0,    0,    2,    0,                    /* 175 - 179 */
00085           0,    2,    0,    0,    0,                    /* 180 - 184 */
00086           0,    0,    0,    0,   16,                    /* 185 - 189 */
00087           0,    0,    9,    0,    0,                    /* 190 - 194 */
00088           0,    0,    0,    9,    2,                    /* 195 - 199 */
00089           1,    1, 2304,    0,    0,                    /* 200 - 204 */
00090           0,    8,    8,    8,    0,                    /* 205 - 209 */
00091           0,    0,    1,    0,    9,                    /* 210 - 214 */
00092           0,    0,   12,    0,    0,                    /* 215 - 219 */
00093           0,    0,    0,    0,    0,                    /* 220 - 224 */
00094           0,    2, 2625,   73,   73,                    /* 225 - 229 */
00095           0,    2,    2,    2,    2,                    /* 230 - 234 */
00096           0,    0,    2,   65, 3137,                    /* 235 - 239 */
00097          65,   65,   65,   65,   65,                    /* 240 - 244 */
00098          65,   65,   65,   65                           /* 245 - 249 */
00099     },                                                  /* loc_attrib[MAXLOC] */
00100     {0 },                                               /* place[MAXOBJ] */
00101     {0 },                                               /* fixed[MAXOBJ] */
00102     {                                                   /* weight[MAXOBJ] */
00103         0, 0, 1, 0, 1, 2, 2, 0, 0, 2,                   /*   0 -   9 */
00104         1, 0, 0, 0, 7, 7, 1, 0, 0, 2,                   /*  10 -  19 */
00105         1, 0, 0, 0, 0, 0, 0, 0, 3, 0,                   /*  20 -  29 */
00106         0, 0, 0, 0, 0, 0, 0, 0, 0, 3,                   /*  30 -  39 */
00107         0, 0, 0, 0, 0, 0, 1, 1, 0, 0,                   /*  40 -  49 */
00108         6, 1, 2, 2, 3, 5, 4, 3, 2, 3,                   /*  50 -  59 */
00109         4, 1, 3, 1, 3, 2, 1, 1, 2, 2,                   /*  60 -  69 */
00110         2, 3, 1, 1, 3, 1, 0, 0, 0, 0,                   /*  70 -  79 */
00111         0, 2, 2, 2, 2, 2, 2, 0, 0, 0,                   /*  70 -  79 */
00112         1, 0, 0, 0, 0, 3, 2, 0, 0, 0,                   /*  80 -  89 */
00113         0, 2, 1, 0, 0, 0, 1, 1, 2, 0,                   /* 100 - 109 */
00114         3, 3, 0, 1, 1, 0, 0, 0, 3, 1,                   /* 110 - 119 */
00115         2, 0, 0                                         /* 120 - 129 */
00116     },                                                  /* weight[MAXOBJ] */
00117     {0 },                                               /* atloc[MAXLOC] */
00118     {0 },                                               /* link[MAXOBJ * 2] */
00119     {0 },                                               /* holder[MAXOBJ] */
00120     {0 },                                               /* hlink[MAXOBJ] */
00121     {0 },                                               /* visited[MAXLOC] */
00122     {0 },                                               /* prop[MAXOBJ] */
00123     {                                                   /* obj_state[MAXOBJ] */
00124             0,     0, 32800,    26, 32770,              /*   0 -   4 */
00125            32,    32,  8192,     0,     0,              /*   5 -   9 */
00126            32,   512,     0,   256,   770,              /*  10 -  14 */
00127           770,   288,   512,     0,   160,              /*  15 -  19 */
00128         32802,     0,     0,     0,   128,              /*  20 -  24 */
00129             0,     0,     0,    32,  8192,              /*  25 -  29 */
00130           512,   512,     0,   512,     0,              /*  30 -  34 */
00131           512,   256,     0, 32768,  8224,              /*  35 -  39 */
00132             0,    18,    26,    26,     2,              /*  40 -  44 */
00133             0,  8320, 18464, 32768,     0,              /*  45 -  49 */
00134         16384, 16416, 16416, 26656, 24608,              /*  50 -  54 */
00135         49240, 24608, 16384, 49184, 16416,              /*  55 -  59 */
00136         16416, 16416, 16384, 16544, 16442,              /*  60 -  64 */
00137         16416, 18464, 26656, 16416, 16416,              /*  65 -  69 */
00138         49184, 49154, 18464, 18464, 16416,              /*  70 -  74 */
00139         16416,     0,     0,     0,     0,              /*  75 -  79 */
00140             0,     0,     0,     0,     0,              /*  80 -  84 */
00141             0,     0,  8704,     0,     0,              /*  85 -  89 */
00142             0,     0,     0,     0, 32768,              /*  90 -  94 */
00143             0,   128,     0,     0,     0,              /*  95 -  99 */
00144             0,   160,  8224,     0,     0,              /* 100 - 104 */
00145             0,  8352,  8352, 32870,     0,              /* 105 - 109 */
00146         16674,   258, 32858,   288,    32,              /* 110 - 114 */
00147           256,     0,     0, 32866, 16416,              /* 115 - 119 */
00148         16416,     0,     0                             /* 120 - 123 */
00149     },                                                  /* obj_state[MAXOBJ] */
00150     {                                                   /* points[MAXOBJ] */
00151            0,        0,        0,        0,        0,   /*   0 -   4 */
00152            0,        0,        0,        0,        0,   /*   5 -   9 */
00153            0,        0,        0,        0,        0,   /*  10 -  14 */
00154            0,  1000108,        0,        0,        0,   /*  15 -  19 */
00155            0,        0,        0,        0,        0,   /*  20 -  24 */
00156            0,        0,        0,        0,        0,   /*  25 -  29 */
00157            0,        0,        0,        0,        0,   /*  30 -  34 */
00158            0,        0,        0,        0,        0,   /*  35 -  39 */
00159            0,        0,        0,        0,        0,   /*  40 -  44 */
00160            0,        0, -3000112,        0,        0,   /*  45 -  49 */
00161     -2000055, -2000112, -2000112, -1000112, -5000112,   /*  50 -  54 */
00162      5000003, -3000112, -2000055,  2000003, -3000112,   /*  55 -  59 */
00163     -4000112, -4000112,  3000003, -1000112, -4000112,   /*  60 -  64 */
00164     -4000112, -2000112, -3000112, -1000112, -1000112,   /*  65 -  69 */
00165     -2000112, -3012055, -4000112, -1000112, -5000112,   /*  70 -  74 */
00166     -5000112,        0,        0,        0,        0,   /*  75 -  79 */
00167            0,        0,        0,        0,        0,   /*  80 -  84 */
00168            0,        0,        0,        0,        0,   /*  85 -  89 */
00169            0,        0,        0,        0,        0,   /*  90 -  94 */
00170            0,        0,        0,        0,        0,   /*  95 -  99 */
00171            0,        0,        0,        0,        0,   /* 100 - 104 */
00172            0,        0,        0,        0,        0,   /* 105 - 109 */
00173     -2000112,        0,        0,        0,        0,   /* 110 - 114 */
00174            0,        0,        0,        0, -4000118,   /* 115 - 119 */
00175     -2000112,        0                                  /* 120 - 122 */
00176     },                                                  /* points[MAXOBJ] */
00177     {0 },                                               /* hinted[HNTMAX+1] */
00178     {                                                   /* hints[HNTMAX+1][5] */
00179         {    0,    0,   0,   0,   0 },                  /*  0 */
00180         {    0, 9999,   4,   0,   0 },                  /*  1 */
00181         {    0, 9999,  10,   0,   0 },                  /*  2 */
00182         {    0, 9999,   5,   0,   0 },                  /*  3 */
00183         {    0,    0,   0,   0,   0 },                  /*  4 */
00184         {    0,    0,   0,   0,   0 },                  /*  5 */
00185         {    0,    0,   0,   0,   0 },                  /*  6 */
00186         {    0,   15,   4, 176, 177 },                  /*  7 */
00187         {    0,    8,   5, 178, 179 },                  /*  8 */
00188         {    0,   13,   3, 180, 181 },                  /*  9 */
00189         {    0,    6,  10, 211, 212 },                  /* 10 */
00190         {    0,    6,   5, 213, 214 },                  /* 11 */
00191         {    0,    4,   2,  62,  63 },                  /* 12 */
00192         {    0,    5,   2,  18,  19 },                  /* 13 */
00193         {    0,    4,   2,  62, 233 },                  /* 14 */
00194         {    0,    6,   5, 274, 275 },                  /* 15 */
00195         {    0,   10,   5, 289, 290 },                  /* 16 */
00196         {    0,    8,   2,  20,  21 },                  /* 17 */
00197         {    0,    5,   2, 404, 405 }                   /* 18 */
00198     },                                                  /* hints[HNTMAX+1][5] */
00199     {0 },                                               /* hintlc[HNTMAX+1] */
00200     0,                                                  /* tally */
00201     0,                                                  /* tally2 */
00202     0,                                                  /* limit */
00203     0,                                                  /* lmwarn */
00204     0,                                                  /* wzdark */
00205     0,                                                  /* closing */
00206     0,                                                  /* closed */
00207     0,                                                  /* holding */
00208     0,                                                  /* detail */
00209     0,                                                  /* knfloc */
00210     30,                                                 /* clock */
00211     50,                                                 /* clock2 */
00212     0,                                                  /* panic */
00213     { 0, 19, 27, 33, 44, 64, 114 },                     /* dloc[DWARFMAX+1] */
00214     0,                                                  /* dflag */
00215     { 0, 0, 0, 0, 0, 0, 0 },                            /* dseen[DWARFMAX+1] */
00216     { 0, 0, 0, 0, 0, 0, 0 },                            /* odloc[DWARFMAX+1] */
00217     18,                                                 /* daltloc */
00218     0,                                                  /* dkill */
00219     114,                                                /* chloc */
00220     140,                                                /* chloc2 */
00221     0,                                                  /* bonus */
00222     0,                                                  /* numdie */
00223     0,                                                  /* foobar */
00224     0,                                                  /* combo */
00225     0,                                                  /* terse */
00226     5,                                                  /* abbnum */
00227     100,                                                /* health */
00228     0,                                                  /* chase */
00229     FALSE,                                              /* flg239 */
00230     0                                                   /* lastglob */
00231 };
00232 
00233 /*
00234   Initialization of adventure play variables
00235 */
00236 void initialize()
00237 {
00238     int i;
00239 
00240     for (i = MAXOBJ; i > 0; i--) {
00241         g.fixed[i] = fixd[i];
00242         if (fixd[i] > 0) {
00243             drop(i + MAXOBJ, fixd[i]);
00244             drop(i, plac[i]);
00245         }
00246         if ((plac[i] != 0) && (fixd[i] <= 0))
00247             drop(i, plac[i]);
00248     }
00249 
00250     for (i = 1; i <= MAXOBJ; i++) {
00251         if (treasr(i)) {
00252             g.prop[i] = -1;
00253             g.tally++;
00254         }
00255     }
00256 
00257     newtravel = TRUE;
00258     g.place[BOOK] = -1;
00259     insert(BOOK, SAFE);
00260     g.place[WATER] = -1;
00261     insert(WATER, BOTTLE);
00262     g.prop[BOTTLE] = 8;
00263     return;
00264 }

Generated on Fri Apr 14 22:56:39 2006 for minix by  doxygen 1.4.6