mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 09:21:36 +00:00
Newer tile selector from Mapfun and some other stuff
git-svn-id: https://svn.eduke32.com/eduke32@534 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
2440ab75b9
commit
62ae233489
7 changed files with 1413 additions and 94 deletions
|
@ -55,7 +55,7 @@ void OSD_ResizeDisplay(int w,int h);
|
||||||
void OSD_CaptureInput(int cap);
|
void OSD_CaptureInput(int cap);
|
||||||
|
|
||||||
// sets the console version string
|
// sets the console version string
|
||||||
void OSD_SetVersionString(const char *version);
|
void OSD_SetVersionString(const char *version, int shade, int pal);
|
||||||
|
|
||||||
// shows or hides the onscreen display
|
// shows or hides the onscreen display
|
||||||
void OSD_ShowDisplay(int onf);
|
void OSD_ShowDisplay(int onf);
|
||||||
|
|
|
@ -90,8 +90,8 @@ short brightness = 0;
|
||||||
long zlock = 0x7fffffff, zmode = 0, whitecol, kensplayerheight = 32;
|
long zlock = 0x7fffffff, zmode = 0, whitecol, kensplayerheight = 32;
|
||||||
short defaultspritecstat = 0;
|
short defaultspritecstat = 0;
|
||||||
|
|
||||||
static short localartfreq[MAXTILES];
|
short localartfreq[MAXTILES];
|
||||||
static short localartlookup[MAXTILES], localartlookupnum;
|
short localartlookup[MAXTILES], localartlookupnum;
|
||||||
|
|
||||||
char tempbuf[4096];
|
char tempbuf[4096];
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,8 @@ static void _internal_onshowosd(int);
|
||||||
static char osdtext[TEXTSIZE];
|
static char osdtext[TEXTSIZE];
|
||||||
static char osdversionstring[32];
|
static char osdversionstring[32];
|
||||||
static int osdversionstringlen;
|
static int osdversionstringlen;
|
||||||
|
static int osdversionstringshade;
|
||||||
|
static int osdversionstringpal;
|
||||||
static int osdpos=0; // position next character will be written at
|
static int osdpos=0; // position next character will be written at
|
||||||
static int osdlines=1; // # lines of text in the buffer
|
static int osdlines=1; // # lines of text in the buffer
|
||||||
static int osdrows=20; // # lines of the buffer that are visible
|
static int osdrows=20; // # lines of the buffer that are visible
|
||||||
|
@ -773,7 +775,7 @@ void OSD_Draw(void)
|
||||||
clearbackground(osdcols,osdrowscur+1);
|
clearbackground(osdcols,osdrowscur+1);
|
||||||
|
|
||||||
if (osdversionstring[0])
|
if (osdversionstring[0])
|
||||||
drawosdstr(osdcols-osdversionstringlen,osdrowscur,osdversionstring,osdversionstringlen,0,2);
|
drawosdstr(osdcols-osdversionstringlen,osdrowscur,osdversionstring,osdversionstringlen,osdversionstringshade,osdversionstringpal);
|
||||||
|
|
||||||
for (; lines>0; lines--, row--) {
|
for (; lines>0; lines--, row--) {
|
||||||
drawosdstr(0,row,osdtext+topoffs,osdcols,osdtextshade,osdtextpal);
|
drawosdstr(0,row,osdtext+topoffs,osdcols,osdtextshade,osdtextpal);
|
||||||
|
@ -1051,12 +1053,14 @@ int OSD_RegisterFunction(const char *name, const char *help, int (*func)(const o
|
||||||
//
|
//
|
||||||
// OSD_SetVersionString()
|
// OSD_SetVersionString()
|
||||||
//
|
//
|
||||||
void OSD_SetVersionString(const char *version)
|
void OSD_SetVersionString(const char *version, int shade, int pal)
|
||||||
{
|
{
|
||||||
if (!osdinited) OSD_Init();
|
if (!osdinited) OSD_Init();
|
||||||
|
|
||||||
strcpy(osdversionstring,version);
|
Bstrcpy(osdversionstring,version);
|
||||||
osdversionstringlen = strlen(osdversionstring);
|
osdversionstringlen = Bstrlen(osdversionstring);
|
||||||
|
osdversionstringshade = shade;
|
||||||
|
osdversionstringpal = pal;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -102,7 +102,7 @@ extern int32 numlumps;
|
||||||
static FILE *frecfilep = (FILE *)NULL;
|
static FILE *frecfilep = (FILE *)NULL;
|
||||||
|
|
||||||
int restorepalette,screencapt;
|
int restorepalette,screencapt;
|
||||||
static int nomorelogohack;
|
static int nomorelogohack, nologo = 0;
|
||||||
static int sendmessagecommand = -1;
|
static int sendmessagecommand = -1;
|
||||||
|
|
||||||
char defaultduke3dgrp[BMAX_PATH] = "duke3d.grp";
|
char defaultduke3dgrp[BMAX_PATH] = "duke3d.grp";
|
||||||
|
@ -8715,6 +8715,12 @@ static void checkcommandline(int argc,char **argv)
|
||||||
i++;
|
i++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if (!Bstrcasecmp(c+1,"nologo"))
|
||||||
|
{
|
||||||
|
nologo = 1;
|
||||||
|
i++;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
#if !defined(_WIN32)
|
#if !defined(_WIN32)
|
||||||
if (!Bstrcasecmp(c+1,"usecwd"))
|
if (!Bstrcasecmp(c+1,"usecwd"))
|
||||||
{
|
{
|
||||||
|
@ -9022,7 +9028,7 @@ static void Logo(void)
|
||||||
MUSIC_StopSong();
|
MUSIC_StopSong();
|
||||||
FX_StopAllSounds(); // JBF 20031228
|
FX_StopAllSounds(); // JBF 20031228
|
||||||
clearsoundlocks(); // JBF 20031228
|
clearsoundlocks(); // JBF 20031228
|
||||||
if (ud.multimode < 2 && (logoflags & LOGO_FLAG_ENABLED))
|
if (ud.multimode < 2 && (logoflags & LOGO_FLAG_ENABLED) && !nologo)
|
||||||
{
|
{
|
||||||
if (VOLUMEALL && (logoflags & LOGO_FLAG_PLAYANIM))
|
if (VOLUMEALL && (logoflags & LOGO_FLAG_PLAYANIM))
|
||||||
{
|
{
|
||||||
|
@ -10064,7 +10070,7 @@ while (findfiles) { Bsprintf(tempbuf,"autoload/%s",findfiles->name); initprintf(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (quitevent) return;
|
if (quitevent) return;
|
||||||
if (!loaddefinitionsfile(duke3ddef)) initprintf("Definitions file loaded.\n");
|
if (!loaddefinitionsfile(duke3ddef)) initprintf("Definitions file '%s' loaded.\n",duke3ddef);
|
||||||
|
|
||||||
// initprintf("numplayers=%i\n",numplayers);
|
// initprintf("numplayers=%i\n",numplayers);
|
||||||
|
|
||||||
|
@ -10119,7 +10125,7 @@ while (findfiles) { Bsprintf(tempbuf,"autoload/%s",findfiles->name); initprintf(
|
||||||
GAME_onshowosd
|
GAME_onshowosd
|
||||||
);
|
);
|
||||||
OSD_SetParameters(0,2, 0,0, 4,0);
|
OSD_SetParameters(0,2, 0,0, 4,0);
|
||||||
OSD_SetVersionString(HEAD2);
|
OSD_SetVersionString(HEAD2,0,2);
|
||||||
registerosdcommands();
|
registerosdcommands();
|
||||||
|
|
||||||
if (setgamemode(ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP) < 0)
|
if (setgamemode(ScreenMode,ScreenWidth,ScreenHeight,ScreenBPP) < 0)
|
||||||
|
|
|
@ -28,6 +28,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
extern int g_i,g_p;
|
extern int g_i,g_p;
|
||||||
|
|
||||||
|
static void ResetPointerVars(void);
|
||||||
|
|
||||||
static void FreeGameVars(void)
|
static void FreeGameVars(void)
|
||||||
{
|
{
|
||||||
// call this function as many times as needed.
|
// call this function as many times as needed.
|
||||||
|
@ -129,6 +131,8 @@ int ReadGameVars(long fil)
|
||||||
// else nothing 'extra...'
|
// else nothing 'extra...'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ResetPointerVars();
|
||||||
|
|
||||||
// Bsprintf(g_szBuf,"CP:%s %d",__FILE__,__LINE__);
|
// Bsprintf(g_szBuf,"CP:%s %d",__FILE__,__LINE__);
|
||||||
// AddLog(g_szBuf);
|
// AddLog(g_szBuf);
|
||||||
if (kdfread(apScriptGameEvent,sizeof(apScriptGameEvent),1,fil) != 1) goto corrupt;
|
if (kdfread(apScriptGameEvent,sizeof(apScriptGameEvent),1,fil) != 1) goto corrupt;
|
||||||
|
@ -1256,3 +1260,75 @@ void InitGameVarPointers(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ResetPointerVars(void)
|
||||||
|
{
|
||||||
|
aGameVars[GetGameID("RESPAWN_MONSTERS")].lValue = (long)&ud.respawn_monsters;
|
||||||
|
aGameVars[GetGameID("RESPAWN_ITEMS")].lValue = (long)&ud.respawn_items;
|
||||||
|
aGameVars[GetGameID("RESPAWN_INVENTORY")].lValue = (long)&ud.respawn_inventory;
|
||||||
|
aGameVars[GetGameID("MONSTERS_OFF")].lValue = (long)&ud.monsters_off;
|
||||||
|
aGameVars[GetGameID("MARKER")].lValue = (long)&ud.marker;
|
||||||
|
aGameVars[GetGameID("FFIRE")].lValue = (long)&ud.ffire;
|
||||||
|
aGameVars[GetGameID("LEVEL")].lValue = (long)&ud.level_number;
|
||||||
|
aGameVars[GetGameID("VOLUME")].lValue = (long)&ud.volume_number;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("COOP")].lValue = (long)&ud.coop;
|
||||||
|
aGameVars[GetGameID("MULTIMODE")].lValue = (long)&ud.multimode;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("myconnectindex")].lValue = (long)&myconnectindex;
|
||||||
|
aGameVars[GetGameID("screenpeek")].lValue = (long)&screenpeek;
|
||||||
|
aGameVars[GetGameID("currentweapon")].lValue = (long)&g_currentweapon;
|
||||||
|
aGameVars[GetGameID("gs")].lValue = (long)&g_gs;
|
||||||
|
aGameVars[GetGameID("looking_arc")].lValue = (long)&g_looking_arc;
|
||||||
|
aGameVars[GetGameID("gun_pos")].lValue = (long)&g_gun_pos;
|
||||||
|
aGameVars[GetGameID("weapon_xoffset")].lValue = (long)&g_weapon_xoffset;
|
||||||
|
aGameVars[GetGameID("weaponcount")].lValue = (long)&g_kb;
|
||||||
|
aGameVars[GetGameID("looking_angSR1")].lValue = (long)&g_looking_angSR1;
|
||||||
|
aGameVars[GetGameID("xdim")].lValue = (long)&xdim;
|
||||||
|
aGameVars[GetGameID("ydim")].lValue = (long)&ydim;
|
||||||
|
aGameVars[GetGameID("windowx1")].lValue = (long)&windowx1;
|
||||||
|
aGameVars[GetGameID("windowx2")].lValue = (long)&windowx2;
|
||||||
|
aGameVars[GetGameID("windowy1")].lValue = (long)&windowy1;
|
||||||
|
aGameVars[GetGameID("windowy2")].lValue = (long)&windowy2;
|
||||||
|
aGameVars[GetGameID("totalclock")].lValue = (long)&totalclock;
|
||||||
|
aGameVars[GetGameID("lastvisinc")].lValue = (long)&lastvisinc;
|
||||||
|
aGameVars[GetGameID("numsectors")].lValue = (long)&numsectors;
|
||||||
|
aGameVars[GetGameID("numplayers")].lValue = (long)&numplayers;
|
||||||
|
aGameVars[GetGameID("viewingrange")].lValue = (long)&viewingrange;
|
||||||
|
aGameVars[GetGameID("yxaspect")].lValue = (long)&yxaspect;
|
||||||
|
aGameVars[GetGameID("gravitationalconstant")].lValue = (long)&gc;
|
||||||
|
aGameVars[GetGameID("gametype_flags")].lValue = (long)&gametype_flags[ud.coop];
|
||||||
|
aGameVars[GetGameID("framerate")].lValue = (long)&framerate;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("camerax")].lValue = (long)&ud.camerax;
|
||||||
|
aGameVars[GetGameID("cameray")].lValue = (long)&ud.cameray;
|
||||||
|
aGameVars[GetGameID("cameraz")].lValue = (long)&ud.cameraz;
|
||||||
|
aGameVars[GetGameID("cameraang")].lValue = (long)&ud.cameraang;
|
||||||
|
aGameVars[GetGameID("camerahoriz")].lValue = (long)&ud.camerahoriz;
|
||||||
|
aGameVars[GetGameID("camerasect")].lValue = (long)&ud.camerasect;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("myx")].lValue = (long)&myx;
|
||||||
|
aGameVars[GetGameID("myy")].lValue = (long)&myy;
|
||||||
|
aGameVars[GetGameID("myz")].lValue = (long)&myz;
|
||||||
|
aGameVars[GetGameID("omyx")].lValue = (long)&omyx;
|
||||||
|
aGameVars[GetGameID("omyy")].lValue = (long)&omyy;
|
||||||
|
aGameVars[GetGameID("omyz")].lValue = (long)&omyz;
|
||||||
|
aGameVars[GetGameID("myxvel")].lValue = (long)&myxvel;
|
||||||
|
aGameVars[GetGameID("myyvel")].lValue = (long)&myyvel;
|
||||||
|
aGameVars[GetGameID("myzvel")].lValue = (long)&myzvel;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("myhoriz")].lValue = (long)&myhoriz;
|
||||||
|
aGameVars[GetGameID("myhorizoff")].lValue = (long)&myhorizoff;
|
||||||
|
aGameVars[GetGameID("omyhoriz")].lValue = (long)&omyhoriz;
|
||||||
|
aGameVars[GetGameID("omyhorizoff")].lValue = (long)&omyhorizoff;
|
||||||
|
aGameVars[GetGameID("myang")].lValue = (long)&myang;
|
||||||
|
aGameVars[GetGameID("omyang")].lValue = (long)&omyang;
|
||||||
|
aGameVars[GetGameID("mycursectnum")].lValue = (long)&mycursectnum;
|
||||||
|
aGameVars[GetGameID("myjumpingcounter")].lValue = (long)&myjumpingcounter;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("myjumpingtoggle")].lValue = (long)&myjumpingtoggle;
|
||||||
|
aGameVars[GetGameID("myonground")].lValue = (long)&myonground;
|
||||||
|
aGameVars[GetGameID("myhardlanding")].lValue = (long)&myhardlanding;
|
||||||
|
aGameVars[GetGameID("myreturntocenter")].lValue = (long)&myreturntocenter;
|
||||||
|
|
||||||
|
aGameVars[GetGameID("display_mirror")].lValue = (long)&display_mirror;
|
||||||
|
}
|
||||||
|
|
|
@ -156,3 +156,188 @@ void ResetKeys();
|
||||||
|
|
||||||
extern void fixspritesectors(void);
|
extern void fixspritesectors(void);
|
||||||
#define KEY_PRESSED(sc) KB_KeyPressed((sc))
|
#define KEY_PRESSED(sc) KB_KeyPressed((sc))
|
||||||
|
|
||||||
|
// REM : This file should be included in file BUILD.C _ONLY_
|
||||||
|
|
||||||
|
#include "names.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// This table defines the various zoom levels, the numbers being the pixel width
|
||||||
|
// and height of the sprite when plotted on the screen. Probably zooms in too far
|
||||||
|
// for some, but I'm a blind old git :-(
|
||||||
|
|
||||||
|
#define FUCKING_GOOD_EYESIGHT 16
|
||||||
|
|
||||||
|
static const long ZoomToThumbSize[] =
|
||||||
|
{
|
||||||
|
FUCKING_GOOD_EYESIGHT, 32, 64, 128, 192, 256, 384, 512
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_ZOOMS (sizeof(ZoomToThumbSize)/sizeof(ZoomToThumbSize[0]))
|
||||||
|
|
||||||
|
#define INITIAL_ZOOM 2
|
||||||
|
|
||||||
|
|
||||||
|
// If I wasn't a lazy sod I'd have made these loadable from external config files.
|
||||||
|
|
||||||
|
///////////////////
|
||||||
|
// ACTOR SPRITES //
|
||||||
|
///////////////////
|
||||||
|
|
||||||
|
static const long s_idActors[] =
|
||||||
|
{
|
||||||
|
LIZTROOP, LIZTROOPRUNNING, LIZTROOPSTAYPUT, LIZTROOPSHOOT, LIZTROOPJETPACK,
|
||||||
|
LIZTROOPONTOILET, LIZTROOPJUSTSIT, LIZTROOPDUCKING,
|
||||||
|
PIGCOP, PIGCOPSTAYPUT, PIGCOPDIVE,
|
||||||
|
LIZMAN, LIZMANSTAYPUT, LIZMANSPITTING, LIZMANFEEDING, LIZMANJUMP,
|
||||||
|
COMMANDER, COMMANDERSTAYPUT,
|
||||||
|
OCTABRAIN, OCTABRAINSTAYPUT,
|
||||||
|
ORGANTIC,
|
||||||
|
NEWBEAST, NEWBEASTSTAYPUT, NEWBEASTJUMP,
|
||||||
|
EGG, GREENSLIME, ROTATEGUN, RECON, TANK, BOUNCEMINE,
|
||||||
|
FLOORFLAME,
|
||||||
|
// FEMS
|
||||||
|
FEM1, FEM2, FEM3, FEM4, FEM5, FEM6, FEM7, FEM8, FEM9, FEM10, NAKED1,
|
||||||
|
// Lil' critters
|
||||||
|
SHARK,
|
||||||
|
// BIG critters
|
||||||
|
BOSS1, BOSS1STAYPUT, BOSS1SHOOT, BOSS1LOB,
|
||||||
|
BOSS2,
|
||||||
|
BOSS3,
|
||||||
|
BOSS4, BOSS4STAYPUT
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_ACTORS (sizeof(s_idActors)/sizeof(s_idActors[0]))
|
||||||
|
|
||||||
|
/////////////////
|
||||||
|
// DOOR TILES ///
|
||||||
|
/////////////////
|
||||||
|
|
||||||
|
// Not all of these are tuely door tiles but are useable as such
|
||||||
|
|
||||||
|
static const long s_idDoors[] =
|
||||||
|
{
|
||||||
|
DOORTILE1, DOORTILE2, DOORTILE3, DOORTILE4, DOORTILE5,
|
||||||
|
DOORTILE6, DOORTILE7, DOORTILE8, DOORTILE9, DOORTILE10,
|
||||||
|
312, 313, 314, 345,
|
||||||
|
DOORTILE22, DOORTILE18, DOORTILE19, DOORTILE20,
|
||||||
|
450, 455, 457, 458, 459, 469, 470, 477,
|
||||||
|
DOORTILE14,
|
||||||
|
719, 735, 771,
|
||||||
|
DOORTILE16,
|
||||||
|
843, 858, 883,
|
||||||
|
DOORTILE15, DOORTILE21,
|
||||||
|
1173,
|
||||||
|
DOORTILE11,DOORTILE12,
|
||||||
|
353, 355,
|
||||||
|
// Related items
|
||||||
|
DOORSHOCK, ACCESSCARD
|
||||||
|
};
|
||||||
|
|
||||||
|
#define NUM_DOORS (sizeof(s_idDoors)/sizeof(s_idDoors[0]))
|
||||||
|
|
||||||
|
//////////////////
|
||||||
|
// SWITCH TILES //
|
||||||
|
//////////////////
|
||||||
|
|
||||||
|
static const long s_idSwitches[] =
|
||||||
|
{
|
||||||
|
ACCESSSWITCH,ACCESSSWITCH2, SLOTDOOR, LIGHTSWITCH, SPACEDOORSWITCH, SPACELIGHTSWITCH,
|
||||||
|
FRANKENSTINESWITCH, MULTISWITCH,
|
||||||
|
DIPSWITCH, DIPSWITCH2, DIPSWITCH3, TECHSWITCH,
|
||||||
|
LIGHTSWITCH2, LIGHTSWITCH2+1,
|
||||||
|
POWERSWITCH1, LOCKSWITCH1, POWERSWITCH2, HANDSWITCH, PULLSWITCH,
|
||||||
|
ALIENSWITCH, HANDPRINTSWITCH, NUKEBUTTON,
|
||||||
|
TARGET,
|
||||||
|
4083, 4954 // Busted switches (Atomic)
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_SWITCHES (sizeof(s_idSwitches)/sizeof(s_idSwitches[0]))
|
||||||
|
|
||||||
|
///////////////////
|
||||||
|
// GOODIES TILES //
|
||||||
|
///////////////////
|
||||||
|
|
||||||
|
static const long s_idGoodies[] =
|
||||||
|
{
|
||||||
|
// Ammo
|
||||||
|
AMMO,SHOTGUNAMMO, BATTERYAMMO, RPGAMMO, HEAVYHBOMB, FREEZEAMMO, GROWAMMO, CRYSTALAMMO,
|
||||||
|
DEVISTATORAMMO, HBOMBAMMO,
|
||||||
|
|
||||||
|
// Items (health,etc)
|
||||||
|
COLA, SIXPAK, FIRSTAID, SHIELD, STEROIDS, AIRTANK, JETPACK, HEATSENSOR, ACCESSCARD,
|
||||||
|
BOOTS, ATOMICHEALTH,
|
||||||
|
|
||||||
|
// Weapons
|
||||||
|
FIRSTGUNSPRITE, CHAINGUNSPRITE, RPGSPRITE, FREEZESPRITE, SHRINKERSPRITE,
|
||||||
|
TRIPBOMBSPRITE, SHOTGUNSPRITE, DEVISTATORSPRITE
|
||||||
|
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_GOODIES (sizeof(s_idGoodies)/sizeof(s_idGoodies[0]))
|
||||||
|
|
||||||
|
////////////////////////
|
||||||
|
// ITEMS THAT RESPAWN //
|
||||||
|
////////////////////////
|
||||||
|
|
||||||
|
// Thought there were more than just these :-(
|
||||||
|
|
||||||
|
static const long s_idRespawns[] =
|
||||||
|
{
|
||||||
|
CANWITHSOMETHING, CANWITHSOMETHING2, CANWITHSOMETHING3, CANWITHSOMETHING4,
|
||||||
|
// FEMS
|
||||||
|
FEM1, FEM2, FEM3, FEM4, FEM5, FEM6, FEM7, FEM8, FEM9, FEM10, NAKED1,
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_RESPAWNS (sizeof(s_idRespawns)/sizeof(s_idRespawns[0]))
|
||||||
|
|
||||||
|
////////////////////////
|
||||||
|
// EXPLOSION AND FIRE //
|
||||||
|
////////////////////////
|
||||||
|
|
||||||
|
static const long s_idExplosions[] =
|
||||||
|
{
|
||||||
|
CRACK1, CRACK2, CRACK3, CRACK4,
|
||||||
|
FIREEXT, SEENINE, OOZFILTER,
|
||||||
|
EXPLODINGBARREL, EXPLODINGBARREL2, FIREBARREL, GUNPOWDERBARREL,
|
||||||
|
REACTOR2SPARK, BOLT1, SIDEBOLT1,
|
||||||
|
CEILINGSTEAM,
|
||||||
|
FIREVASE, 2066, BURNING, FIRE, BURNING2, FIRE2
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_EXPLOSIONS (sizeof(s_idExplosions)/sizeof(s_idExplosions[0]))
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////
|
||||||
|
// BUILD STRUCTURE USED IN SELECTING ONE OF ABOVE LTILE LISTS //
|
||||||
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
const struct
|
||||||
|
{
|
||||||
|
const long *pIds ; // ptr to list of tile Ids
|
||||||
|
long nIds ; // num of tile ids
|
||||||
|
char key1 ; // key1 and key2 are two alternative keypresses used to
|
||||||
|
char key2 ; // select tile set. Bodge to do eary upper/lower case handling
|
||||||
|
char *szText ; // description to present to user.
|
||||||
|
} s_TileGroups[] =
|
||||||
|
{
|
||||||
|
{ s_idActors, NUM_ACTORS, 'A', 'a', "(A) Actor group" },
|
||||||
|
{ s_idDoors, NUM_DOORS, 'D', 'd', "(D) Door group" },
|
||||||
|
{ s_idGoodies, NUM_GOODIES, 'G', 'g', "(G) Goodies (ammo, weapons, etc)" },
|
||||||
|
{ s_idRespawns, NUM_RESPAWNS, 'R', 'r', "(R) Respawning Items" },
|
||||||
|
{ s_idSwitches, NUM_SWITCHES, 'S', 's', "(S) Switch group" },
|
||||||
|
{ s_idExplosions, NUM_EXPLOSIONS, 'X', 'x', "(X) eXplosions, fire, sparks, etc" }
|
||||||
|
} ;
|
||||||
|
|
||||||
|
#define NUM_TILE_GROUPS (sizeof(s_TileGroups)/sizeof(s_TileGroups[0]))
|
||||||
|
|
||||||
|
|
||||||
|
#define FIRST_USER_ART_TILE 3584
|
||||||
|
// Some atomic tiles are sprinkled in the V1.3d's area but
|
||||||
|
// this is where the main atomic tiles start :-
|
||||||
|
#define FIRST_ATOMIC_TILE 4096
|
||||||
|
|
||||||
|
extern short localartfreq[MAXTILES];
|
||||||
|
extern short localartlookup[MAXTILES], localartlookupnum;
|
||||||
|
extern long lockclock;
|
||||||
|
extern void clearkeys(void);
|
||||||
|
|
Loading…
Reference in a new issue