1 /** @file mapspot.h Map spot where a Thing will be spawned. 2 * 3 * @authors Copyright (c) 2016-2017 Jaakko Keränen <jaakko.keranen@iki.fi> 4 * 5 * @par License 6 * GPL: http://www.gnu.org/licenses/gpl.html 7 * 8 * <small>This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by the 10 * Free Software Foundation; either version 2 of the License, or (at your 11 * option) any later version. This program is distributed in the hope that it 12 * will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty 13 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 14 * Public License for more details. You should have received a copy of the GNU 15 * General Public License along with this program; if not, see: 16 * http://www.gnu.org/licenses</small> 17 */ 18 19 #ifndef LIBGAMEFW_MAPSPOT_H 20 #define LIBGAMEFW_MAPSPOT_H 21 22 #include "libgamefw.h" 23 #include <de/libcore.h> 24 25 typedef uint32_t gfw_mapspot_flags_t; 26 27 /* 28 * Universal mapspot flags. 29 * - The least significant byte control the presence of the object. 30 * - The second byte controls the appearance of the object. 31 * - The third byte controls the behavior of the object. 32 */ 33 34 #define GFW_MAPSPOT_SINGLE 0x00000001 35 #define GFW_MAPSPOT_DM 0x00000002 36 #define GFW_MAPSPOT_COOP 0x00000004 37 #define GFW_MAPSPOT_CLASS1 0x00000008 38 #define GFW_MAPSPOT_CLASS2 0x00000010 39 #define GFW_MAPSPOT_CLASS3 0x00000020 40 41 #define GFW_MAPSPOT_TRANSLUCENT 0x00000100 42 #define GFW_MAPSPOT_INVISIBLE 0x00000200 43 44 #define GFW_MAPSPOT_DEAF 0x00010000 45 #define GFW_MAPSPOT_DORMANT 0x00020000 46 #define GFW_MAPSPOT_STANDING 0x00040000 47 #define GFW_MAPSPOT_MBF_FRIEND 0x00080000 48 #define GFW_MAPSPOT_STRIFE_ALLY 0x00100000 49 50 #ifdef __cplusplus 51 extern "C" { 52 #endif 53 54 LIBGAMEFW_PUBLIC int gfw_MapSpot_TranslateFlagsToInternal(gfw_mapspot_flags_t mapSpotFlags); 55 56 LIBGAMEFW_PUBLIC gfw_mapspot_flags_t gfw_MapSpot_TranslateFlagsFromInternal(int internalFlags); 57 58 #ifdef __cplusplus 59 } // extern "C" 60 #endif 61 62 #endif // LIBGAMEFW_MAPSPOT_H 63