⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 doomdata.h

📁 PIXIL is a small footprint operating environment, complete with PDA PIM applications, a browser and
💻 H
字号:
// Emacs style mode select   -*- C++ -*- //-----------------------------------------------------------------------------//// $Id: doomdata.h,v 1.2 2003/09/08 22:34:27 jasonk Exp $//// Copyright (C) 1993-1996 by id Software, Inc.//// This source is available for distribution and/or modification// only under the terms of the DOOM Source Code License as// published by id Software. All rights reserved.//// The source is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License// for more details.//// DESCRIPTION://  all external data is defined here//  most of the data is loaded into different structures at run time//  some internal structures shared by many modules are here////-----------------------------------------------------------------------------#ifndef __DOOMDATA__#define __DOOMDATA__// The most basic types we use, portability.#include "doomtype.h"// Some global defines, that configure the game.#include "doomdef.h"//// Map level types.// The following data structures define the persistent format// used in the lumps of the WAD files.//// Lump order in a map WAD: each map needs a couple of lumps// to provide a complete scene geometry description.enum{  ML_LABEL,		// A separator, name, ExMx or MAPxx  ML_THINGS,		// Monsters, items..  ML_LINEDEFS,		// LineDefs, from editing  ML_SIDEDEFS,		// SideDefs, from editing  ML_VERTEXES,		// Vertices, edited and BSP splits generated  ML_SEGS,		// LineSegs, from LineDefs split by BSP  ML_SSECTORS,		// SubSectors, list of LineSegs  ML_NODES,		// BSP nodes  ML_SECTORS,		// Sectors, from editing  ML_REJECT,		// LUT, sector-sector visibility	  ML_BLOCKMAP		// LUT, motion clipping, walls/grid element};// A single Vertex.typedef struct{  short		x;  short		y;} mapvertex_t;// A SideDef, defining the visual appearance of a wall,// by setting textures and offsets.typedef struct{  short		textureoffset;  short		rowoffset;  char		toptexture[8];  char		bottomtexture[8];  char		midtexture[8];  // Front sector, towards viewer.  short		sector;} mapsidedef_t;// A LineDef, as used for editing, and as input// to the BSP builder.typedef struct{  short		v1;  short		v2;  short		flags;  short		special;  short		tag;  // sidenum[1] will be -1 if one sided  short		sidenum[2];		} maplinedef_t;//// LineDef attributes.//// Solid, is an obstacle.#define ML_BLOCKING		1// Blocks monsters only.#define ML_BLOCKMONSTERS	2// Backside will not be present at all//  if not two sided.#define ML_TWOSIDED		4// If a texture is pegged, the texture will have// the end exposed to air held constant at the// top or bottom of the texture (stairs or pulled// down things) and will move with a height change// of one of the neighbor sectors.// Unpegged textures allways have the first row of// the texture at the top pixel of the line for both// top and bottom textures (use next to windows).// upper texture unpegged#define ML_DONTPEGTOP		8// lower texture unpegged#define ML_DONTPEGBOTTOM	16	// In AutoMap: don't map as two sided: IT'S A SECRET!#define ML_SECRET		32// Sound rendering: don't let sound cross two of these.#define ML_SOUNDBLOCK		64// Don't draw on the automap at all.#define ML_DONTDRAW		128// Set if already seen, thus drawn in automap.#define ML_MAPPED		256// Sector definition, from editing.typedef	struct{  short		floorheight;  short		ceilingheight;  char		floorpic[8];  char		ceilingpic[8];  short		lightlevel;  short		special;  short		tag;} mapsector_t;// SubSector, as generated by BSP.typedef struct{  short		numsegs;  // Index of first one, segs are stored sequentially.  short		firstseg;	} mapsubsector_t;// LineSeg, generated by splitting LineDefs// using partition lines selected by BSP builder.typedef struct{  short		v1;  short		v2;  short		angle;		  short		linedef;  short		side;  short		offset;} mapseg_t;// BSP node structure.// Indicate a leaf.#define	NF_SUBSECTOR	0x8000typedef struct{  // Partition line from (x,y) to x+dx,y+dy)  short		x;  short		y;  short		dx;  short		dy;  // Bounding box for each child,  // clip against view frustum.  short		bbox[2][4];  // If NF_SUBSECTOR its a subsector,  // else it's a node of another subtree.  unsigned short	children[2];} mapnode_t;// Thing definition, position, orientation and type,// plus skill/visibility flags and attributes.typedef struct{    short		x;    short		y;    short		angle;    short		type;    short		options;} mapthing_t;#endif			// __DOOMDATA__//-----------------------------------------------------------------------------//// $Log: doomdata.h,v $// Revision 1.2  2003/09/08 22:34:27  jasonk// Updated files because this fucker won't build for no fucking good reason.//// Revision 1.1.1.1  2003/09/04 21:08:12  jasonk// Initial import//// Revision 1.1  2000/12/08 21:07:53  jeffw// nxdoom initial entry -- No nxdoom/Makefile so it won't build automatically//////-----------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -