ref: 14257941774d9c6e8fbff6632ba7cf02d1ce9c10
dir: /src/_rt_play.h/
/* Copyright (C) 1994-1995 Apogee Software, Ltd. Copyright (C) 2002-2015 icculus.org, GNU/Linux port Copyright (C) 2017-2018 Steven LeVesque This program 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 2 of the License, or (at your option) any later version. 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. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. */ #ifndef _rt_playr_private #define _rt_playr_private #include "watcom.h" //double dTopYZANGLELIMIT; in winrott.c #define TopYZANGLELIMIT (44*FINEANGLES/360)//bna added #define YZANGLELIMIT (80*FINEANGLES/360)//bna--(30*FINEANGLES/360) /* //bna++ had to limit this or the sky would fuck up #define TopYZANGLELIMIT (6*FINEANGLES/360)//bna added #define YZANGLELIMIT (40*FINEANGLES/360)//bna--(30*FINEANGLES/360) //partly fixed you can now se up but not down very much see rt_playr.c TopYZANGLELIMIT */ #define YZTILTSPEED 20*4//*2 = bna added #define SNAPBACKSPEED 10*15//*2 = bna added #define YZHORIZONSPEED 4*5//*2 = bna added #define HORIZONYZOFFSET (FINEANGLES/4) #define SetPlayerHorizon(ps,hlevel) \ { \ if ((hlevel)>YZANGLELIMIT) \ (ps)->horizon=HORIZONYZOFFSET+YZANGLELIMIT;\ else if ((hlevel)<-YZANGLELIMIT) \ (ps)->horizon=HORIZONYZOFFSET-YZANGLELIMIT;\ else \ (ps)->horizon=HORIZONYZOFFSET+(hlevel);\ } #define StartWeaponChange \ {\ SD_PlaySoundRTP(SD_SELECTWPNSND,ob->x,ob->y);\ pstate->weapondowntics = WEAPONS[pstate->weapon].screenheight/GMOVE;\ if ((ob==player) && SHOW_BOTTOM_STATUS_BAR() )\ DrawBarAmmo (false); \ } #define BULLETHOLEOFFSET 0x700 #define M_DIST(x1,x2,y1,y2) (((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2))) #define W_CHANGE(x) ((x->weapondowntics) || (x->weaponuptics)) #define NOMOM ((!ob->momentumx) && (!ob->momentumy)) #define DISTOK(p1,p2,d) (abs((p1)-(p2)) <= d) #define Fix(a) (a &= (FINEANGLES-1)) #define REMOTEPKTSIZE (sizeof(MoveType)) #define BJRUNSPEED 2048 #define BJJUMPSPEED 680 #define PROJECTILESIZE 0xc000l #define MOVESCALE 150l #define BACKMOVESCALE 100l #define EXTRAPOINTS 40000 #define JETPACKTHRUST (64) #define RUNMOVE 0xa00 #define BASEMOVE 0x600 #define ANGLEMOVE 0x100000 #define SGN(x) (x>0 ? 1 : -1) #define NETMOM (BASEMOVE+0x10000) #define DISTANCE(x1,x2,y1,y2) (FixedMulShift((x1-x2),(x1-x2),16)+FixedMulShift((y1-y2),(y1-y2),16)) #define TILTLIMIT 95 #define PLAYERSTEPTIME 0xf000 #define HITWALLSPEED 0x2800 #define GODVIEWANGLE FINEANGLES/150 #define GODOFFSET 10 #define DOGOFFSET 46 #define KESTICS 70 #define BBTIME 105 #define KEYBOARDNORMALTURNAMOUNT (0x160000) //#define KEYBOARDPREAMBLETURNAMOUNT (0xe0000) #define KEYBOARDPREAMBLETURNAMOUNT (0xa0000) #define TURBOTURNTIME (5) #define TURBOTURNAMOUNT (0x1e000) #define TURNAROUNDSPEED ((ANG180<<16)/15) #define VR_INPUT_SERVICE (0x30) #define VR_FEEDBACK_SERVICE (0x31) #define VR_RUNBUTTON (0) #define VR_STRAFELEFTBUTTON (1) #define VR_STRAFERIGHTBUTTON (2) #define VR_ATTACKBUTTON (3) #define VR_LOOKUPBUTTON (4) #define VR_LOOKDOWNBUTTON (5) #define VR_SWAPWEAPONBUTTON (6) #define VR_USEBUTTON (7) #define VR_HORIZONUPBUTTON (8) #define VR_HORIZONDOWNBUTTON (9) #define VR_MAPBUTTON (10) #define VR_PISTOLBUTTON (11) #define VR_DUALPISTOLBUTTON (12) #define VR_MP40BUTTON (13) #define VR_MISSILEWEAPONBUTTON (14) #define VR_RECORDBUTTON (15) #define STEPADJUST 3 void BatAttack(objtype*ob); void T_DogLick (objtype *ob); #endif