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

📄 d_player.h

📁 Nxdoom真的满好用的
💻 H
字号:
// Emacs style mode select   -*- C++ -*- //-----------------------------------------------------------------------------//// $Id: d_player.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://////-----------------------------------------------------------------------------#ifndef __D_PLAYER__#define __D_PLAYER__// The player data structure depends on a number// of other structs: items (internal inventory),// animation states (closely tied to the sprites// used to represent them, unfortunately).#include "d_items.h"#include "p_pspr.h"// In addition, the player is just a special// case of the generic moving object/actor.#include "p_mobj.h"// Finally, for odd reasons, the player input// is buffered within the player data struct,// as commands per game tick.#include "d_ticcmd.h"#ifdef __GNUG__#pragma interface#endif//// Player states.//typedef enum{    // Playing or camping.    PST_LIVE,    // Dead on the ground, view follows killer.    PST_DEAD,    // Ready to restart/respawn???    PST_REBORN		} playerstate_t;//// Player internal flags, for cheats and debug.//typedef enum{    // No clipping, walk through barriers.    CF_NOCLIP		= 1,    // No damage, no health loss.    CF_GODMODE		= 2,    // Not really a cheat, just a debug aid.    CF_NOMOMENTUM	= 4} cheat_t;//// Extended player object info: player_t//typedef struct player_s{    mobj_t*		mo;    playerstate_t	playerstate;    ticcmd_t		cmd;    // Determine POV,    //  including viewpoint bobbing during movement.    // Focal origin above r.z    fixed_t		viewz;    // Base height above floor for viewz.    fixed_t		viewheight;    // Bob/squat speed.    fixed_t         	deltaviewheight;    // bounded/scaled total momentum.    fixed_t         	bob;	    // This is only used between levels,    // mo->health is used during levels.    int			health;	    int			armorpoints;    // Armor type is 0-2.    int			armortype;	    // Power ups. invinc and invis are tic counters.    int			powers[NUMPOWERS];    boolean		cards[NUMCARDS];    boolean		backpack;        // Frags, kills of other players.    int			frags[MAXPLAYERS];    weapontype_t	readyweapon;        // Is wp_nochange if not changing.    weapontype_t	pendingweapon;    boolean		weaponowned[NUMWEAPONS];    int			ammo[NUMAMMO];    int			maxammo[NUMAMMO];    // True if button down last tic.    int			attackdown;    int			usedown;    // Bit flags, for cheats and debug.    // See cheat_t, above.    int			cheats;		    // Refired shots are less accurate.    int			refire;		     // For intermission stats.    int			killcount;    int			itemcount;    int			secretcount;    // Hint messages.    char*		message;	        // For screen flashing (red or bright).    int			damagecount;    int			bonuscount;    // Who did damage (NULL for floors/ceilings).    mobj_t*		attacker;        // So gun flashes light up areas.    int			extralight;    // Current PLAYPAL, ???    //  can be set to REDCOLORMAP for pain, etc.    int			fixedcolormap;    // Player skin colorshift,    //  0-3 for which color to draw player.    int			colormap;	    // Overlay view sprites (gun, etc).    pspdef_t		psprites[NUMPSPRITES];    // True if secret level has been done.    boolean		didsecret;	} player_t;//// INTERMISSION// Structure passed e.g. to WI_Start(wb)//typedef struct{    boolean	in;	// whether the player is in game        // Player stats, kills, collected items etc.    int		skills;    int		sitems;    int		ssecret;    int		stime;     int		frags[4];    int		score;	// current score on entry, modified on return  } wbplayerstruct_t;typedef struct{    int		epsd;	// episode # (0-2)    // if true, splash the secret level    boolean	didsecret;        // previous and next levels, origin 0    int		last;    int		next;	        int		maxkills;    int		maxitems;    int		maxsecret;    int		maxfrags;    // the par time    int		partime;        // index of this player in game    int		pnum;	    wbplayerstruct_t	plyr[MAXPLAYERS];} wbstartstruct_t;#endif//-----------------------------------------------------------------------------//// $Log: d_player.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:51  jeffw// nxdoom initial entry -- No nxdoom/Makefile so it won't build automatically//////-----------------------------------------------------------------------------

⌨️ 快捷键说明

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