1 // SuperTux 2 // Copyright (C) 2006 Matthias Braun <matze@braunis.de> 3 // 2018 Ingo Ruhnke <grumbel@gmail.com> 4 // 5 // This program is free software: you can redistribute it and/or modify 6 // it under the terms of the GNU General Public License as published by 7 // the Free Software Foundation, either version 3 of the License, or 8 // (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // You should have received a copy of the GNU General Public License 16 // along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18 #ifndef HEADER_SUPERTUX_COLLISION_COLLISION_GROUP_HPP 19 #define HEADER_SUPERTUX_COLLISION_COLLISION_GROUP_HPP 20 21 enum CollisionGroup { 22 /** Objects in DISABLED group are not tested for collisions */ 23 COLGROUP_DISABLED = 0, 24 25 /** Tested against: 26 - tiles + attributes 27 - static obstacles 28 - touchables 29 - other moving objects 30 and it counts as an obstacle during static collision phase. 31 32 Use for kinematic moving objects like platforms and rocks. */ 33 COLGROUP_MOVING_STATIC, 34 35 /** Tested against: 36 - tiles + attributes 37 - static obstacles 38 - touchables 39 - other moving objects 40 41 Use for ordinary objects. */ 42 COLGROUP_MOVING, 43 44 /** Tested against: 45 - tiles + attributes 46 - static obstacles 47 48 Use for interactive particles and decoration. */ 49 COLGROUP_MOVING_ONLY_STATIC, 50 51 /** Tested against: 52 - moving objects 53 and it counts as an obstacle during static collision phase. 54 55 Use for static obstacles that Tux walks on. */ 56 COLGROUP_STATIC, 57 58 /** Tested against: 59 - moving objects 60 61 Use for triggers like spikes/areas or collectibles like coins. */ 62 COLGROUP_TOUCHABLE 63 }; 64 65 #endif 66 67 /* EOF */ 68