// SONIC ROBO BLAST 2 //----------------------------------------------------------------------------- // Copyright (C) 1993-1996 by id Software, Inc. // Copyright (C) 1998-2000 by DooM Legacy Team. // Copyright (C) 1999-2018 by Sonic Team Junior. // // This program is free software distributed under the // terms of the GNU General Public License, version 2. // See the 'LICENSE' file for more details. //----------------------------------------------------------------------------- /// \file p_pspr.h /// \brief Sprite animation /// Frame flags: /// handles maximum brightness (torches, muzzle flare, light sources) // we use the upper 16 bits of the frame field for effects. #ifndef __P_PSPR__ #define __P_PSPR__ // Basic data types. // Needs fixed point, and BAM angles. #include "m_fixed.h" #include "tables.h" // // Needs to include the precompiled // sprite animation tables. // Header generated by multigen utility. // This includes all the data for thing animation, // i.e. the Thing Atrributes table // and the Frame Sequence table. #include "info.h" #ifdef __GNUG__ #pragma interface #endif /// \brief Frame flags: only the frame number #define FF_FRAMEMASK 0x1ff /// \brief Frame flags: Thin, paper-like sprite (for collision equivalent, see MF_PAPERCOLLISION) #define FF_PAPERSPRITE 0x800 /// \brief Frame flags: Simple stateless animation #define FF_ANIMATE 0x4000 /// \brief Frame flags: frame always appears full bright #define FF_FULLBRIGHT 0x8000 /// \brief Frame flags: 0 = no trans(opaque), 1-15 = transl. table #define FF_TRANSMASK 0xf0000 /// \brief shift for FF_TRANSMASK #define FF_TRANSSHIFT 16 /// \brief preshifted translucency flags #define FF_TRANS10 (tr_trans10<