A reimplementation of Mario Kart Wii's physics engine in C++
Loading...
Searching...
No Matches
ObjectId.hh
1#pragma once
2
3#include <Common.hh>
4
5namespace Field {
6
7enum class ObjectId {
8 DummyPole = 0x066,
9 WLWallGC = 0xcb,
10 Boble = 0xdd,
11 DokanSFC = 0x12e,
12 CastleTree1c = 0x130,
13 ObakeBlockSFCc = 0x13c,
14 WLDokanGC = 0x13f,
15 PalmTree = 0x145,
16 DKtreeA64c = 0x158,
17 TownTreeDsc = 0x15b,
18 OilSFC = 0x15d,
19 ParasolR = 0x16e,
20 ObakeBlock2SFCc = 0x16f,
21 ObakeBlock3SFCc = 0x170,
22 Kuribo = 0x191,
23 WLFirebarGC = 0x195,
24 WLFireRingGC = 0x1a1,
25 PuchiPakkun = 0x1aa,
26 KinokoUd = 0x1f5,
27 KinokoBend = 0x1f6,
28 KinokoNm = 0x1fa,
29 Aurora = 0x204,
30 Mdush = 0x217,
31};
32
33enum class BlacklistedObjectId {
34 Itembox = 0x65,
35 Hanabi = 0x16a,
36};
37
38static constexpr bool IsObjectBlacklisted(u16 id) {
39 BlacklistedObjectId objectId = static_cast<BlacklistedObjectId>(id);
40 switch (objectId) {
41 // Disabled collision
42 case BlacklistedObjectId::Itembox:
43 return true;
44
45 // No collision
46 case BlacklistedObjectId::Hanabi:
47 return true;
48
49 default:
50 return false;
51 }
52}
53
54} // namespace Field
This header houses common data types such as our integral types and enums.
Pertains to collision.