raze-gles/polymer/eduke32/source/gamedefs.h

195 lines
3.7 KiB
C

//-------------------------------------------------------------------------
/*
Copyright (C) 2010 EDuke32 developers and contributors
This file is part of EDuke32.
EDuke32 is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License version 2
as published by the Free Software Foundation.
This program 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 this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
//-------------------------------------------------------------------------
//****************************************************************************
//
// gamedefs.h
//
// common defines between the game and the setup program
//
//****************************************************************************
#ifndef _gamedefs_public_
#define _gamedefs_public_
#ifdef EXTERNC
{
#endif
//****************************************************************************
//
// DEFINES
//
//****************************************************************************
//
// Setup program defines
//
#define SETUPFILENAME "eduke32.cfg"
// Max number of players
#define MAXPLAYERS 16
// Number of Mouse buttons
#define MAXMOUSEBUTTONS 10
// Number of JOY buttons
#define MAXJOYBUTTONS (32+4)
// Number of EXTERNAL buttons
//#define MAXEXTERNALBUTTONS 6
//
// modem string defines
//
#define MAXMODEMSTRING 50
// MACRO defines
#define MAXMACROS 10
#define MAXMACROLENGTH 34
// Phone list defines
#define PHONENUMBERLENGTH 28
#define PHONENAMELENGTH 16
#define MAXPHONEENTRIES 10
// length of program functions
#define MAXFUNCTIONLENGTH 30
// length of axis functions
#define MAXAXISFUNCTIONLENGTH 30
// Max Player Name length
#define MAXPLAYERNAMELENGTH 11
// Max RTS Name length
#define MAXRTSNAMELENGTH 15
// Number of Mouse Axes
#define MAXMOUSEAXES 2
// Number of JOY axes
#define MAXJOYAXES 8
// MIN/MAX scale value for controller scales
#define MAXCONTROLSCALEVALUE (1<<19)
// DEFAULT scale value for controller scales
#define DEFAULTCONTROLSCALEVALUE (1<<16)
// base value for controller scales
#define BASECONTROLSCALEVALUE (1<<16)
// DEFAULT mouse sensitivity scale
#define DEFAULTMOUSESENSITIVITY 7
#define DEFAULTMOUSEANALOGUESCALE 65536
// DEFAULT joystick settings
#if defined(GEKKO)
#define DEFAULTJOYSTICKANALOGUESCALE 16384
#define DEFAULTJOYSTICKANALOGUEDEAD 1000
#define DEFAULTJOYSTICKANALOGUESATURATE 9500
#else
#define DEFAULTJOYSTICKANALOGUESCALE 65536
#define DEFAULTJOYSTICKANALOGUEDEAD 1000
#define DEFAULTJOYSTICKANALOGUESATURATE 9500
#endif
enum
{
gametype_network=3,
gametype_serial=1,
gametype_modem=2
};
enum
{
connecttype_dialing=0,
connecttype_answer=1,
connecttype_alreadyconnected=2
};
enum
{
screenbuffer_320x200,
screenbuffer_640x400,
screenbuffer_640x480,
screenbuffer_800x600,
screenbuffer_1024x768,
screenbuffer_1280x1024,
screenbuffer_1600x1200
};
enum
{
vesa_320x200,
vesa_360x200,
vesa_320x240,
vesa_360x240,
vesa_320x400,
vesa_360x400,
vesa_640x350,
vesa_640x400,
vesa_640x480,
vesa_800x600,
vesa_1024x768,
vesa_1280x1024,
vesa_1600x1200
};
enum
{
screenmode_chained,
screenmode_vesa,
screenmode_buffered,
screenmode_tseng,
screenmode_paradise,
screenmode_s3,
screenmode_crystal,
screenmode_redblue,
};
#ifdef EXTERNC
};
#endif
#endif