123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910 |
- /*
- ===========================================================================
- Doom 3 BFG Edition GPL Source Code
- Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company.
- This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code").
- Doom 3 BFG Edition Source Code is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- Doom 3 BFG Edition Source Code is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with Doom 3 BFG Edition Source Code. If not, see <http://www.gnu.org/licenses/>.
- In addition, the Doom 3 BFG Edition Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the Doom 3 BFG Edition Source Code. If not, please request a copy in writing from id Software at the address below.
- If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
- ===========================================================================
- */
- // the all-important zone //
- memzone_t* mainzone;
- idFile * wadFileHandles[MAXWADFILES];
- int numWadFiles;
- // am_map.vars begin //
- int cheating ;
- int grid ;
- int leveljuststarted ;
- qboolean automapactive ;
- int finit_width ;
- int finit_height ;
- int f_x;
- int f_y;
- int f_w;
- int f_h;
- int lightlev; // used for funky strobing effect
- byte* fb; // pseudo-frame buffer
- int amclock;
- mpoint_t m_paninc; // how far the window pans each tic (map coords)
- fixed_t mtof_zoommul; // how far the window zooms in each tic (map coords)
- fixed_t ftom_zoommul; // how far the window zooms in each tic (fb coords)
- fixed_t m_x, m_y; // LL x,y where the window is on the map (map coords)
- fixed_t m_x2, m_y2; // UR x,y where the window is on the map (map coords)
- fixed_t m_w;
- fixed_t m_h;
- fixed_t min_x;
- fixed_t min_y;
- fixed_t max_x;
- fixed_t max_y;
- fixed_t max_w; // max_x-min_x,
- fixed_t max_h; // max_y-min_y
- fixed_t min_w;
- fixed_t min_h;
- fixed_t min_scale_mtof; // used to tell when to stop zooming out
- fixed_t max_scale_mtof; // used to tell when to stop zooming in
- fixed_t old_m_w, old_m_h;
- fixed_t old_m_x, old_m_y;
- mpoint_t f_oldloc;
- fixed_t scale_mtof ;
- fixed_t scale_ftom;
- player_t *amap_plr; // the player represented by an arrow
- patch_t *marknums[10]; // numbers used for marking by the automap
- mpoint_t markpoints[AM_NUMMARKPOINTS]; // where the points are
- int markpointnum ;
- int followplayer ;
- qboolean stopped ;
- int lastlevel ;
- int lastepisode ;
- int cheatstate;
- int bigstate;
- char buffer[20];
- int nexttic ;
- int litelevelscnt ;
- // am_map.vars end //
- // doomlib.vars begin //
- fixed_t realoffset;
- fixed_t viewxoffset;
- fixed_t viewyoffset;
- // doomlib.vars end //
- // doomstat.vars begin //
- GameMode_t gamemode ;
- int gamemission ;
- Language_t language ;
- qboolean modifiedgame;
- // doomstat.vars end //
- // d_main.vars begin //
- qboolean devparm; // started game with -devparm
- qboolean nomonsters; // checkparm of -nomonsters
- qboolean respawnparm; // checkparm of -respawn
- qboolean fastparm; // checkparm of -fast
- qboolean drone;
- qboolean singletics ;
- skill_t startskill;
- int startepisode;
- int startmap;
- qboolean autostart;
- FILE* debugfile;
- qboolean advancedemo;
- char wadfile[1024]; // primary wad file
- char mapdir[1024]; // directory of development maps
- char basedefault[1024]; // default file
- event_t events[MAXEVENTS];
- int eventhead;
- int eventtail;
- gamestate_t wipegamestate ;
- qboolean viewactivestate ;
- qboolean menuactivestate ;
- qboolean inhelpscreensstate ;
- qboolean fullscreen ;
- int borderdrawcount;
- qboolean wipe ;
- int wipestart;
- qboolean wipedone;
- int demosequence;
- int pagetic;
- char *pagename;
- char title[128];
- // d_main.vars end //
- // d_net.vars begin //
- doomcom_t doomcom;
- doomdata_t* netbuffer; // points inside doomcom
- ticcmd_t localcmds[BACKUPTICS];
- ticcmd_t netcmds[MAXPLAYERS][BACKUPTICS];
- int nettics[MAXNETNODES];
- qboolean nodeingame[MAXNETNODES]; // set false as nodes leave game
- qboolean remoteresend[MAXNETNODES]; // set when local needs tics
- int resendto[MAXNETNODES]; // set when remote needs tics
- int resendcount[MAXNETNODES];
- int nodeforplayer[MAXPLAYERS];
- int maketic;
- int lastnettic;
- int skiptics;
- int ticdup;
- int maxsend; // BACKUPTICS/(2*ticdup)-1
- qboolean reboundpacket;
- doomdata_t reboundstore;
- char exitmsg[80];
- int gametime;
- qboolean gotinfo[MAXNETNODES];
- int frametics[4];
- int frameon;
- int frameskip[4];
- int oldnettics;
- int oldtrt_entertics;
- int trt_phase ;
- int trt_lowtic;
- int trt_entertic;
- int trt_realtics;
- int trt_availabletics;
- int trt_counts;
- int trt_numplaying;
- // d_net.vars end //
- // f_finale.vars begin //
- int finalestage;
- int finalecount;
- int castnum;
- int casttics;
- state_t* caststate;
- qboolean castdeath;
- int castframes;
- int castonmelee;
- int caststartmenu;
- qboolean castattacking;
- int laststage;
- // f_finale.vars end //
- // f_wipe.vars begin //
- qboolean go ;
- byte* wipe_scr_start;
- byte* wipe_scr_end;
- byte* wipe_scr;
- void *g_tempPointer;
- int* wipe_y;
- // f_wipe.vars end //
- // g_game.vars begin //
- gameaction_t gameaction;
- gamestate_t gamestate;
- gamestate_t oldgamestate;
- skill_t gameskill;
- qboolean respawnmonsters;
- int gameepisode;
- int gamemap;
- qboolean paused;
- qboolean sendpause; // send a pause event next tic
- qboolean sendsave; // send a save event next tic
- qboolean usergame; // ok to save / end game
- qboolean timingdemo; // if true, exit with report on completion
- qboolean nodrawers; // for comparative timing purposes
- qboolean noblit; // for comparative timing purposes
- int starttime; // for comparative timing purposes
- qboolean viewactive;
- qboolean deathmatch; // only if started as net death
- qboolean netgame; // only true if packets are broadcast
- qboolean playeringame[MAXPLAYERS];
- player_t players[MAXPLAYERS];
- int consoleplayer; // player taking events and displaying
- int displayplayer; // view being displayed
- int gametic;
- int levelstarttic; // gametic at level start
- int totalkills, totalitems, totalsecret; // for intermission
- char demoname[32];
- qboolean demoplayback;
- qboolean demorecording;
- qboolean netdemo;
- byte* demobuffer;
- byte* demo_p;
- byte* demoend;
- qboolean singledemo; // quit after playing a demo from cmdline
- qboolean precache ;
- wbstartstruct_t wminfo; // parms for world map / intermission
- short consistancy[MAXPLAYERS][BACKUPTICS];
- byte* savebuffer;
- int savebufferSize;
- int key_right;
- int key_left;
- int key_up;
- int key_down;
- int key_strafeleft;
- int key_straferight;
- int key_fire;
- int key_use;
- int key_strafe;
- int key_speed;
- int mousebfire;
- int mousebstrafe;
- int mousebforward;
- int joybfire;
- int joybstrafe;
- int joybuse;
- int joybspeed;
- fixed_t forwardmove[2];
- fixed_t sidemove[2];
- fixed_t angleturn[3];
- qboolean gamekeydown[NUMKEYS];
- int turnheld; // for accelerative turning
- qboolean mousearray[4];
- qboolean* mousebuttons ;
- int mousex;
- int mousey;
- int dclicktime;
- int dclickstate;
- int dclicks;
- int dclicktime2;
- int dclickstate2;
- int dclicks2;
- int joyxmove;
- int joyymove;
- qboolean joyarray[5];
- qboolean* joybuttons ;
- int savegameslot;
- char savedescription[32];
- mobj_t* bodyque[BODYQUESIZE];
- int bodyqueslot;
- char turbomessage[80];
- qboolean secretexit;
- char savename[256];
- skill_t d_skill;
- int d_episode;
- int d_map;
- int d_mission;
- char* defdemoname;
- // g_game.vars end //
- // hu_lib.vars begin //
- qboolean lastautomapactive ;
- // hu_lib.vars end //
- // hu_stuff.vars begin //
- char chat_char; // remove later.
- player_t* plr;
- patch_t* hu_font[HU_FONTSIZE];
- hu_textline_t w_title;
- qboolean chat_on;
- hu_itext_t w_chat;
- qboolean always_off ;
- char chat_dest[MAXPLAYERS];
- hu_itext_t w_inputbuffer[MAXPLAYERS];
- qboolean message_on;
- qboolean message_dontfuckwithme;
- qboolean message_nottobefuckedwith;
- hu_stext_t w_message;
- int message_counter;
- qboolean headsupactive ;
- char chatchars[QUEUESIZE];
- int head ;
- int tail ;
- char lastmessage[HU_MAXLINELENGTH+1];
- qboolean shiftdown ;
- qboolean altdown ;
- int num_nobrainers ;
- // hu_stuff.vars end //
- // i_input.vars begin //
- InputEvent mouseEvents[2];
- InputEvent joyEvents[18];
- // i_input.vars end //
- // i_net_xbox.vars begin //
- int sendsocket;
- int insocket;
- struct sockaddr_in sendaddress[MAXNETNODES];
- // i_net_xbox.vars end //
- // i_system.vars begin //
- int mb_used ;
- ticcmd_t emptycmd;
- int current_time ;
- // i_system.vars end //
- // i_video_xbox.vars begin //
- unsigned int XColorMap[256];
- unsigned int *ImageBuff;
- unsigned int *ImageBuffs[2];
- // i_video_xbox.vars end //
- // m_argv.vars begin //
- int myargc;
- char** myargv;
- // m_argv.vars end //
- // m_cheat.vars begin //
- int firsttime ;
- unsigned char cheat_xlate_table[256];
- unsigned char cheatbuffer[256];
- int usedcheatbuffer ;
- // m_cheat.vars end //
- // m_menu.vars begin //
- int mouseSensitivity; // has default
- int showMessages;
- int detailLevel;
- int screenblocks; // has default
- int screenSize;
- int quickSaveSlot;
- int messageToPrint;
- char* messageString;
- int messx;
- int messy;
- int messageLastMenuActive;
- qboolean messageNeedsInput;
- messageRoutine_t messageRoutine;
- int saveStringEnter;
- int saveSlot; // which slot to save in
- int saveCharIndex; // which char we're editing
- char saveOldString[SAVESTRINGSIZE];
- qboolean inhelpscreens;
- qboolean menuactive;
- char savegamestrings[10][SAVESTRINGSIZE];
- char savegamepaths[10][MAX_PATH];
- char endstring[160];
- short itemOn; // menu item skull is on
- short skullAnimCounter; // skull animation counter
- short whichSkull; // which skull to draw
- menu_t* currentMenu;
- menuitem_t MainMenu[5];
- menu_t QuitDef;
- menuitem_t QuitMenu[3];
- menu_t MainDef;
- menuitem_t EpisodeMenu[4];
- menu_t EpiDef;
- menuitem_t ExpansionMenu[2];
- menu_t ExpDef;
- menuitem_t NewGameMenu[5];
- menu_t NewDef;
- menuitem_t OptionsMenu[8];
- menu_t OptionsDef;
- menuitem_t SoundMenu[4];
- menu_t SoundDef;
- menuitem_t LoadMenu[6];
- menu_t LoadDef;
- menuitem_t LoadExpMenu[2];
- menu_t LoadExpDef;
- menuitem_t SaveMenu[6];
- menu_t SaveDef;
- char tempstring[80];
- int epi;
- int exp;
- int quitsounds[8];
- int quitsounds2[8];
- int joywait ;
- int mousewait ;
- int mmenu_mousey ;
- int lasty ;
- int mmenu_mousex ;
- int lastx ;
- short md_x;
- short md_y;
- // m_menu.vars end //
- // m_misc.vars begin //
- const char * g_pszSaveFile ;
- const char * g_pszImagePath ;
- const char * g_pszImageMeta ;
- int usemouse;
- int usejoystick;
- char* mousetype;
- char* mousedev;
- default_t defaults[35];
- int numdefaults;
- const char* defaultfile;
- // m_misc.vars end //
- // m_random.vars begin //
- int rndindex ;
- int prndindex ;
- // m_random.vars end //
- // p_ceilng.vars begin //
- ceiling_t* activeceilings[MAXCEILINGS];
- // p_ceilng.vars end //
- // p_enemy.vars begin //
- mobj_t* soundtarget;
- int TRACEANGLE ;
- mobj_t* corpsehit;
- mobj_t* vileobj;
- fixed_t viletryx;
- fixed_t viletryy;
- mobj_t* braintargets[32];
- int numbraintargets;
- int braintargeton;
- int easy ;
- // p_enemy.vars end //
- // p_map.vars begin //
- fixed_t tmbbox[4];
- mobj_t* tmthing;
- int tmflags;
- fixed_t tmx;
- fixed_t tmy;
- qboolean floatok;
- fixed_t tmfloorz;
- fixed_t tmceilingz;
- fixed_t tmdropoffz;
- line_t* ceilingline;
- line_t* spechit[MAXSPECIALCROSS];
- int numspechit;
- fixed_t bestslidefrac;
- fixed_t secondslidefrac;
- line_t* bestslideline;
- line_t* secondslideline;
- mobj_t* slidemo;
- fixed_t tmxmove;
- fixed_t tmymove;
- mobj_t* linetarget; // who got hit (or NULL)
- mobj_t* shootthing;
- fixed_t shootz;
- int la_damage;
- fixed_t attackrange;
- fixed_t aimslope;
- mobj_t* usething;
- mobj_t* bombsource;
- mobj_t* bombspot;
- int bombdamage;
- qboolean crushchange;
- qboolean nofit;
- // p_map.vars end //
- // p_maputl.vars begin //
- fixed_t opentop;
- fixed_t openbottom;
- fixed_t openrange;
- fixed_t lowfloor;
- intercept_t intercepts[MAXINTERCEPTS];
- intercept_t* intercept_p;
- divline_t trace;
- qboolean earlyout;
- int ptflags;
- // p_maputl.vars end //
- // p_mobj.vars begin //
- int test;
- mapthing_t itemrespawnque[ITEMQUESIZE];
- int itemrespawntime[ITEMQUESIZE];
- int iquehead;
- int iquetail;
- // p_mobj.vars end //
- // p_plats.vars begin //
- plat_t* activeplats[MAXPLATS];
- // p_plats.vars end //
- // p_pspr.vars begin //
- fixed_t swingx;
- fixed_t swingy;
- fixed_t bulletslope;
- // p_pspr.vars end //
- // p_saveg.vars begin //
- byte* save_p;
- // p_saveg.vars end //
- // p_setup.vars begin //
- int numvertexes;
- vertex_t* vertexes;
- int numsegs;
- seg_t* segs;
- int numsectors;
- sector_t* sectors;
- int numsubsectors;
- subsector_t* subsectors;
- int numnodes;
- node_t* nodes;
- int numlines;
- line_t* lines;
- int numsides;
- side_t* sides;
- int bmapwidth;
- int bmapheight; // size in mapblocks
- short* blockmap; // int for larger maps
- short* blockmaplump;
- fixed_t bmaporgx;
- fixed_t bmaporgy;
- mobj_t** blocklinks;
- mapthing_t deathmatchstarts[MAX_DEATHMATCH_STARTS];
- mapthing_t* deathmatch_p;
- mapthing_t playerstarts[MAXPLAYERS];
- // p_setup.vars end //
- // p_sight.vars begin //
- fixed_t sightzstart; // eye z of looker
- fixed_t topslope;
- fixed_t bottomslope; // slopes to top and bottom of target
- divline_t strace; // from t1 to t2
- fixed_t t2x;
- fixed_t t2y;
- int sightcounts[2];
- // p_sight.vars end //
- // p_spec.vars begin //
- anim_t2 anims[MAXANIMS];
- anim_t2* lastanim;
- qboolean levelTimer;
- int levelTimeCount;
- int levelFragCount;
- short numlinespecials;
- line_t* linespeciallist[MAXLINEANIMS];
- // p_spec.vars end //
- // p_switch.vars begin //
- int switchlist[MAXSWITCHES * 2];
- int numswitches;
- button_t buttonlist[MAXBUTTONS];
- // p_switch.vars end //
- // p_tick.vars begin //
- int leveltime;
- thinker_t thinkercap;
- // p_tick.vars end //
- // p_user.vars begin //
- qboolean onground;
- // p_user.vars end //
- // r_bsp.vars begin //
- seg_t* curline;
- side_t* sidedef;
- line_t* linedef;
- sector_t* frontsector;
- sector_t* backsector;
- drawseg_t drawsegs[MAXDRAWSEGS];
- drawseg_t* ds_p;
- cliprange_t* newend;
- cliprange_t solidsegs[MAXSEGS];
- int checkcoord[12][4];
- // r_bsp.vars end //
- // r_data.vars begin //
- int firstflat;
- int lastflat;
- int numflats;
- int firstpatch;
- int lastpatch;
- int numpatches;
- int firstspritelump;
- int lastspritelump;
- int numspritelumps;
- int* flattranslation;
- int* texturetranslation;
- fixed_t* spritewidth;
- fixed_t* spriteoffset;
- fixed_t* spritetopoffset;
- lighttable_t *colormaps;
- int flatmemory;
- int texturememory;
- int spritememory;
- // r_data.vars end //
- // r_draw.vars begin //
- byte* viewimage;
- int viewwidth;
- int scaledviewwidth;
- int viewheight;
- int viewwindowx;
- int viewwindowy;
- byte* ylookup[MAXHEIGHT];
- int columnofs[MAXWIDTH];
- byte translations[3][256];
- lighttable_t* dc_colormap;
- int dc_x;
- int dc_yl;
- int dc_yh;
- fixed_t dc_iscale;
- fixed_t dc_texturemid;
- byte* dc_source;
- int dccount;
- int fuzzoffset[FUZZTABLE];
- int fuzzpos ;
- byte* dc_translation;
- byte* translationtables;
- int ds_y;
- int ds_x1;
- int ds_x2;
- lighttable_t* ds_colormap;
- fixed_t ds_xfrac;
- fixed_t ds_yfrac;
- fixed_t ds_xstep;
- fixed_t ds_ystep;
- byte* ds_source;
- int dscount;
- // r_draw.vars end //
- // r_main.vars begin //
- int viewangleoffset;
- int validcount ;
- lighttable_t* fixedcolormap;
- int centerx;
- int centery;
- fixed_t centerxfrac;
- fixed_t centeryfrac;
- fixed_t projection;
- int framecount;
- int sscount;
- int linecount;
- int loopcount;
- fixed_t viewx;
- fixed_t viewy;
- fixed_t viewz;
- angle_t viewangle;
- fixed_t viewcos;
- fixed_t viewsin;
- player_t* viewplayer;
- int detailshift;
- angle_t clipangle;
- int viewangletox[FINEANGLES/2];
- angle_t xtoviewangle[SCREENWIDTH+1];
- lighttable_t* scalelight[LIGHTLEVELS][MAXLIGHTSCALE];
- lighttable_t* scalelightfixed[MAXLIGHTSCALE];
- lighttable_t* zlight[LIGHTLEVELS][MAXLIGHTZ];
- int extralight;
- qboolean setsizeneeded;
- int setblocks;
- int setdetail;
- // r_main.vars end //
- // r_plane.vars begin //
- planefunction_t floorfunc;
- planefunction_t ceilingfunc;
- short openings[MAXOPENINGS];
- short* lastopening;
- short floorclip[SCREENWIDTH];
- short ceilingclip[SCREENWIDTH];
- int spanstart[SCREENHEIGHT];
- int spanstop[SCREENHEIGHT];
- lighttable_t** planezlight;
- fixed_t planeheight;
- fixed_t yslope[SCREENHEIGHT];
- fixed_t distscale[SCREENWIDTH];
- fixed_t basexscale;
- fixed_t baseyscale;
- fixed_t cachedheight[SCREENHEIGHT];
- fixed_t cacheddistance[SCREENHEIGHT];
- fixed_t cachedxstep[SCREENHEIGHT];
- fixed_t cachedystep[SCREENHEIGHT];
- // r_plane.vars end //
- // r_segs.vars begin //
- qboolean segtextured;
- qboolean markfloor;
- qboolean markceiling;
- qboolean maskedtexture;
- int toptexture;
- int bottomtexture;
- int midtexture;
- angle_t rw_normalangle;
- int rw_angle1;
- int rw_x;
- int rw_stopx;
- angle_t rw_centerangle;
- fixed_t rw_offset;
- fixed_t rw_distance;
- fixed_t rw_scale;
- fixed_t rw_scalestep;
- fixed_t rw_midtexturemid;
- fixed_t rw_toptexturemid;
- fixed_t rw_bottomtexturemid;
- int worldtop;
- int worldbottom;
- int worldhigh;
- int worldlow;
- fixed_t pixhigh;
- fixed_t pixlow;
- fixed_t pixhighstep;
- fixed_t pixlowstep;
- fixed_t topfrac;
- fixed_t topstep;
- fixed_t bottomfrac;
- fixed_t bottomstep;
- lighttable_t** walllights;
- short* maskedtexturecol;
- // r_segs.vars end //
- // r_sky.vars begin //
- int skyflatnum;
- int skytexture;
- int skytexturemid;
- // r_sky.vars end //
- // r_things.vars begin //
- fixed_t pspritescale;
- fixed_t pspriteiscale;
- lighttable_t** spritelights;
- short negonearray[SCREENWIDTH];
- short screenheightarray[SCREENWIDTH];
- spritedef_t* sprites;
- int numsprites;
- spriteframe_t sprtemp[29];
- int maxframe;
- vissprite_t vissprites[MAXVISSPRITES];
- vissprite_t* vissprite_p;
- int newvissprite;
- vissprite_t overflowsprite;
- short* mfloorclip;
- short* mceilingclip;
- fixed_t spryscale;
- fixed_t sprtopscreen;
- vissprite_t vsprsortedhead;
- // r_things.vars end //
- // sounds.vars begin //
- musicinfo_t S_music[80];
- // sounds.vars end //
- // st_lib.vars begin //
- patch_t* sttminus;
- // st_lib.vars end //
- // st_stuff.vars begin //
- player_t* plyr;
- qboolean st_firsttime;
- int veryfirsttime ;
- int lu_palette;
- unsigned int st_clock;
- int st_msgcounter;
- st_chatstateenum_t st_chatstate;
- st_stateenum_t st_gamestate;
- qboolean st_statusbaron;
- qboolean st_chat;
- qboolean st_oldchat;
- qboolean st_cursoron;
- qboolean st_notdeathmatch;
- qboolean st_armson;
- qboolean st_fragson;
- patch_t* sbar; // AffLANHACK IGNORE
- patch_t* tallnum[10]; // AffLANHACK IGNORE
- patch_t* tallpercent; // AffLANHACK IGNORE
- patch_t* shortnum[10]; // AffLANHACK IGNORE
- patch_t* keys[NUMCARDS]; // AffLANHACK IGNORE
- patch_t* faces[ST_NUMFACES]; // AffLANHACK IGNORE
- patch_t* faceback; // AffLANHACK IGNORE
- patch_t* armsbg; // AffLANHACK IGNORE
- patch_t* arms[6][2]; // AffLANHACK IGNORE
- st_number_t w_ready;
- st_number_t w_frags;
- st_percent_t w_health;
- st_binicon_t w_armsbg;
- st_multicon_t w_arms[6];
- st_multicon_t w_faces;
- st_multicon_t w_keyboxes[3];
- st_percent_t w_armor;
- st_number_t w_ammo[4];
- st_number_t w_maxammo[4];
- int st_fragscount;
- int st_oldhealth ;
- qboolean oldweaponsowned[NUMWEAPONS];
- int st_facecount ;
- int st_faceindex ;
- int keyboxes[3];
- int st_randomnumber;
- cheatseq_t cheat_powerup[7];
- int lastcalc;
- int oldhealth ;
- int lastattackdown ;
- int priority ;
- int largeammo ;
- int st_palette ;
- qboolean st_stopped ;
- // st_stuff.vars end //
- // s_sound.vars begin //
- channel_t* channels;
- qboolean mus_paused;
- qboolean mus_looping;
- musicinfo_t* mus_playing;
- int numChannels;
- int nextcleanup;
- // s_sound.vars end //
- // v_video.vars begin //
- byte* screens[5];
- int dirtybox[4];
- int usegamma;
- // v_video.vars end //
- // wi_stuff.vars begin //
- anim_t epsd0animinfo[10];
- anim_t epsd1animinfo[9];
- anim_t epsd2animinfo[6];
- anim_t* wi_stuff_anims[NUMEPISODES];
- int NUMANIMS[NUMEPISODES];
- const char* chat_macros[10];
- int acceleratestage;
- int me;
- stateenum_t state;
- wbstartstruct_t* wbs;
- int cnt;
- int bcnt;
- int firstrefresh;
- int cnt_kills[MAXPLAYERS];
- int cnt_items[MAXPLAYERS];
- int cnt_secret[MAXPLAYERS];
- int cnt_time;
- int cnt_par;
- int cnt_pause;
- int NUMCMAPS;
- patch_t* colon;
- qboolean snl_pointeron ;
- int dm_state;
- int dm_frags[MAXPLAYERS][MAXPLAYERS];
- int dm_totals[MAXPLAYERS];
- int cnt_frags[MAXPLAYERS];
- int dofrags;
- int ng_state;
- int sp_state;
- // wi_stuff.vars end //
- // w_wad.vars begin //
- int reloadlump;
- // w_wad.vars end //
- // z_zone.vars begin //
- int sizes[NUM_ZONES+1];
- memzone_t* zones[NUM_ZONES] ;
- int NumAlloc ;
- // z_zone.vars end //
- // info vars begin //
- state_t states[NUMSTATES];
- // info vars end //
- // p_local begin //
- byte* rejectmatrix;
- // p_local end //
- // r_data begin //
- int s_numtextures;
- texture_t** s_textures;
- int* s_texturewidthmask;
- // needed for texture pegging
- fixed_t* s_textureheight;
- short** s_texturecolumnlump;
- unsigned short** s_texturecolumnofs;
- byte** s_texturecomposite;
- int* s_texturecompositesize;
- // r_data end //
- // r_plane begin //
- visplane_t visplanes[MAXVISPLANES];
- visplane_t* lastvisplane;
- visplane_t* floorplane;
- visplane_t* ceilingplane;
- // r_plane end //
- // wi_stuff
- // background (map of levels).
- patch_t* bg;
- // You Are Here graphic
- patch_t* yah[2];
- // splat
- patch_t* splat;
- // %, : graphics
- patch_t* percent;
- // 0-9 graphic
- patch_t* num[10];
- // minus sign
- patch_t* wiminus;
- // "Finished!" graphics
- patch_t* finished;
- // "Entering" graphic
- patch_t* entering;
- // "secret"
- patch_t* sp_secret;
- // "Kills", "Scrt", "Items", "Frags"
- patch_t* kills;
- patch_t* secret;
- patch_t* items;
- patch_t* wistuff_frags;
- // Time sucks.
- patch_t* time;
- patch_t* par;
- patch_t* sucks;
- // "killers", "victims"
- patch_t* killers;
- patch_t* victims;
- // "Total", your face, your dead face
- patch_t* total;
- patch_t* star;
- patch_t* bstar;
- // "red P[1..MAXPLAYERS]"
- patch_t* wistuff_p[MAXPLAYERS];
- // "gray P[1..MAXPLAYERS]"
- patch_t* wistuff_bp[MAXPLAYERS];
- // Name graphics of each level (centered)
- patch_t** lnames;
- const char* spritename;
|