mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-12 07:34:50 +00:00
106 lines
2 KiB
C
106 lines
2 KiB
C
|
// Emacs style mode select -*- C++ -*-
|
||
|
//-----------------------------------------------------------------------------
|
||
|
//
|
||
|
// $Id:$
|
||
|
//
|
||
|
// 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_EVENT_H__
|
||
|
#define __D_EVENT_H__
|
||
|
|
||
|
|
||
|
#include "doomtype.h"
|
||
|
|
||
|
|
||
|
//
|
||
|
// Event handling.
|
||
|
//
|
||
|
|
||
|
// Input event types.
|
||
|
enum EGenericEvent
|
||
|
{
|
||
|
EV_None,
|
||
|
EV_KeyDown, // data1: scan code, data2: Qwerty ASCII code
|
||
|
EV_KeyUp, // same
|
||
|
EV_Mouse, // x, y: mouse movement deltas
|
||
|
EV_GUI_Event // subtype specifies actual event
|
||
|
};
|
||
|
|
||
|
// Event structure.
|
||
|
struct event_t
|
||
|
{
|
||
|
BYTE type;
|
||
|
BYTE subtype;
|
||
|
SWORD data1; // keys / mouse/joystick buttons
|
||
|
SWORD data2;
|
||
|
SWORD data3;
|
||
|
int x; // mouse/joystick x move
|
||
|
int y; // mouse/joystick y move
|
||
|
};
|
||
|
|
||
|
|
||
|
typedef enum
|
||
|
{
|
||
|
ga_nothing,
|
||
|
ga_loadlevel,
|
||
|
ga_newgame,
|
||
|
ga_newgame2,
|
||
|
ga_loadgame,
|
||
|
ga_savegame,
|
||
|
ga_autosave,
|
||
|
ga_playdemo,
|
||
|
ga_completed,
|
||
|
ga_slideshow,
|
||
|
ga_worlddone,
|
||
|
ga_screenshot,
|
||
|
ga_togglemap,
|
||
|
ga_fullconsole,
|
||
|
} gameaction_t;
|
||
|
|
||
|
|
||
|
|
||
|
//
|
||
|
// Button/action code definitions.
|
||
|
//
|
||
|
typedef enum
|
||
|
{
|
||
|
BT_ATTACK = 1, // Press "Fire".
|
||
|
BT_USE = 2, // Use button, to open doors, activate switches.
|
||
|
BT_JUMP = 4,
|
||
|
BT_DUCK = 8, // Unimplemented
|
||
|
BT_TURN180 = 16,
|
||
|
BT_ALTATTACK = 32, // Press your other "Fire".
|
||
|
} buttoncode_t;
|
||
|
|
||
|
#define IMP_WEAPONSLOT
|
||
|
|
||
|
|
||
|
//
|
||
|
// GLOBAL VARIABLES
|
||
|
//
|
||
|
#define MAXEVENTS 128
|
||
|
|
||
|
extern event_t events[MAXEVENTS];
|
||
|
extern int eventhead;
|
||
|
extern int eventtail;
|
||
|
|
||
|
extern gameaction_t gameaction;
|
||
|
|
||
|
|
||
|
#endif
|