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 "build.h" 25 #include "common.h" 26 #include "common_game.h" 27 28 #include "blood.h" 29 #include "db.h" 30 #include "eventq.h" 31 #include "dude.h" 32 #include "player.h" 33 34 enum BUSYID { 35 BUSYID_0 = 0, 36 BUSYID_1, 37 BUSYID_2, 38 BUSYID_3, 39 BUSYID_4, 40 BUSYID_5, 41 BUSYID_6, 42 BUSYID_7, 43 }; 44 45 #define kMaxBusyCount 128 46 struct BUSY { 47 int at0; 48 int at4; 49 int at8; 50 BUSYID atc; 51 }; 52 53 extern BUSY gBusy[kMaxBusyCount]; 54 extern int gBusyCount; 55 56 void trTriggerSector(unsigned int nSector, XSECTOR *pXSector, int command); 57 void trMessageSector(unsigned int nSector, EVENT event); 58 void trTriggerWall(unsigned int nWall, XWALL *pXWall, int command); 59 void trMessageWall(unsigned int nWall, EVENT event); 60 void trTriggerSprite(unsigned int nSprite, XSPRITE *pXSprite, int command); 61 void trMessageSprite(unsigned int nSprite, EVENT event); 62 void trProcessBusy(void); 63 void trInit(void); 64 void trTextOver(int nId); 65 char SetSpriteState(int nSprite, XSPRITE* pXSprite, int nState); 66 char SetWallState(int nWall, XWALL* pXWall, int nState); 67 char SetSectorState(int nSector, XSECTOR* pXSector, int nState); 68 void TeleFrag(int nKiller, int nSector); 69 void SectorStartSound(int nSector, int nState); 70 void SectorEndSound(int nSector, int nState);