weapon.h
1 //------------------------------------------------------------------------- 2 /* 3 Copyright (C) 2010-2019 EDuke32 developers and contributors 4 Copyright (C) 2019 Nuke.YKT 5 6 This file is part of NBlood. 7 8 NBlood is free software; you can redistribute it and/or 9 modify it under the terms of the GNU General Public License version 2 10 as published by the Free Software Foundation. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 15 16 See the GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this program; if not, write to the Free Software 20 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 21 */ 22 //------------------------------------------------------------------------- 23 #pragma once 24 #include "common_game.h" 25 #include "blood.h" 26 #include "db.h" 27 #include "player.h" 28 #include "qav.h" 29 30 31 extern QAV* weaponQAV[]; 32 33 char checkLitSprayOrTNT(PLAYER *pPlayer); 34 char BannedUnderwater(int nWeapon); 35 void WeaponInit(void); 36 void WeaponDraw(PLAYER *pPlayer, int a2, int a3, int a4, int a5); 37 void WeaponRaise(PLAYER *pPlayer); 38 void WeaponLower(PLAYER *pPlayer); 39 char WeaponIsEquipable(PLAYER *pPlayer, int nWeapon, char checkUnderwater = true); 40 char WeaponUpgrade(PLAYER *pPlayer, char newWeapon); 41 char WeaponFindNext(PLAYER *pPlayer, int *a2, char bDir); 42 char WeaponFindLoaded(PLAYER *pPlayer, int *a2); 43 void WeaponProcess(PLAYER *pPlayer); 44 void WeaponUpdateState(PLAYER* pPlayer); 45 void teslaHit(spritetype *pMissile, int a2); 46 void StartQAV(PLAYER* pPlayer, int nWeaponQAV, int a3 = -1, char a4 = 0); 47 void WeaponPrecache(void);