New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
BgUnitCode.h
Go to the documentation of this file.
1#pragma once
2
3#include <basis/seadTypes.h>
4
6{
7public:
56
63
65 {
67 };
68
70 {
71 cHitType_None = 0, // Collision is not solid
72 cHitType_Full = 1, // Collision is completely solid (filled)
73 cHitType_Half = 2, // Collision is solid on the outer surface (line)
74 cHitType_HalfCeiling = 3, // Collision is solid on the inner surface (line)
75 cHitType_HalfBoth = 4 // Collision is solid on the outer and inner surfaces (line, TODO: verify that this is valid)
76 };
77
79 {
80 cSlipAttr_Normal = 0, // Player can slide while colliding when crouching
81 cSlipAttr_Slip = 1, // Player instantly enters sliding state when colliding
82 cSlipAttr_NoSuberu = 2, // Player cannot slide while colliding
88 };
89
90 enum Attr
91 {
92 cNone = 0,
93 cIce = 1,
94 cSnow = 2,
95 cNuma = 3,
96 cSand = 4,
97 cGrass = 5,
98 cCloud = 6,
99 cBeachSand = 7, // Unused
100 cManta = 8, // Unused
102 cWood = 10,
103 cWater = 11,
104 cCarpet = 12 // Now used for Beanstalk Leaf
105 };
106
107 static const u64 cPanelTypeMask = 0x000000000000FFFF;
108 static const u64 cPanelTypeInfoMask = 0x0000000000FF0000;
109 static const u64 cPanelTypeOptionMask = 0x00000000FF000000;
110 static const u64 cPanelHitTypeMask = 0x0000000F00000000;
111 static const u64 cPanelSlipAttrMask = 0x000000F000000000;
112 static const u64 cPanelAttrMask = 0x0000FF0000000000;
113
123
125 HitType hit_type,
126 Attr attr,
127 SlipAttr slip_attr,
128 Type type,
129 TypeInfo type_info,
130 TypeOpt type_option)
131 {
132 u64 data = 0;
133 setHitType(data, hit_type);
134 setAttr(data, attr);
135 setSlipAttr(data, slip_attr);
136 setType(data, type);
137 setTypeInfo(data, type_info);
138 setTypeOption(data, type_option);
139 return data;
140 }
141
142 static Type getType(u64 data)
143 {
144 return Type((data & cPanelTypeMask) >> cShift_Type);
145 }
146
147 static void setType(u64& data, Type type)
148 {
149 data &= ~cPanelTypeMask;
150 data |= (u64(type) << cShift_Type) & cPanelTypeMask;
151 }
152
153 static TypeInfo getTypeInfo(u64 data)
154 {
155 return TypeInfo((data & cPanelTypeInfoMask) >> cShift_TypeInfo);
156 }
157
158 static void setTypeInfo(u64& data, TypeInfo type_info)
159 {
160 data &= ~cPanelTypeInfoMask;
161 data |= (u64(type_info) << cShift_TypeInfo) & cPanelTypeInfoMask;
162 }
163
164 static TypeOpt getTypeOption(u64 data)
165 {
166 return TypeOpt((data & cPanelTypeOptionMask) >> cShift_TypeOption);
167 }
168
169 static void setTypeOption(u64& data, TypeOpt type_option)
170 {
171 data &= ~cPanelTypeOptionMask;
172 data |= (u64(type_option) << cShift_TypeOption) & cPanelTypeOptionMask;
173 }
174
175 static HitType getHitType(u64 data)
176 {
177 return HitType((data & cPanelHitTypeMask) >> cShift_HitType);
178 }
179
180 static void setHitType(u64& data, HitType hit_type)
181 {
182 data &= ~cPanelHitTypeMask;
183 data |= (u64(hit_type) << cShift_HitType) & cPanelHitTypeMask;
184 }
185
186 static SlipAttr getSlipAttr(u64 data)
187 {
188 return SlipAttr((data & cPanelSlipAttrMask) >> cShift_SlipAttr);
189 }
190
191 static void setSlipAttr(u64& data, SlipAttr slip_attr)
192 {
193 data &= ~cPanelSlipAttrMask;
194 data |= (u64(slip_attr) << cShift_SlipAttr) & cPanelSlipAttrMask;
195 }
196
197 static Attr getAttr(u64 data)
198 {
199 return Attr((data & cPanelAttrMask) >> cShift_Attr);
200 }
201
202 static void setAttr(u64& data, Attr attr)
203 {
204 data &= ~cPanelAttrMask;
205 data |= (u64(attr) << cShift_Attr) & cPanelAttrMask;
206 }
207
208 // -------------------------------------
209
216
224
230
239
246
270
294
304
319
321 {
322 cTypeInfo_Dokan_0, // Vert. Top Entrance Left
323 cTypeInfo_Dokan_1, // Vert. Top Entrance Right
324 cTypeInfo_Dokan_2, // Vert. Bottom Entrance Left
325 cTypeInfo_Dokan_3, // Vert. Bottom Entrance Right
326 cTypeInfo_Dokan_4, // Horiz. Left Entrance Top
327 cTypeInfo_Dokan_5, // Horiz. Left Entrance Bottom
328 cTypeInfo_Dokan_6, // Horiz. Right Entrance Top
329 cTypeInfo_Dokan_7, // Horiz. Right Entrance Bottom
330 cTypeInfo_Dokan_Mame0, // Vert. Mini Pipe Top
331 cTypeInfo_Dokan_Mame1, // Vert. Mini Pipe Bottom
332 cTypeInfo_Dokan_Mame2, // Horiz. Mini Pipe Left
333 cTypeInfo_Dokan_Mame3, // Horiz. Mini Pipe Right
334 cTypeInfo_Dokan_Pipe0, // Vert. Center Left
335 cTypeInfo_Dokan_Pipe1, // Vert. Center Right
336 cTypeInfo_Dokan_Pipe2, // Vert. Intersection Left
337 cTypeInfo_Dokan_Pipe3, // Vert. Intersection Right
338 cTypeInfo_Dokan_Pipe4, // Horiz. Center Top
339 cTypeInfo_Dokan_Pipe5, // Horiz. Center Bottom
340 cTypeInfo_Dokan_Pipe6, // Horiz. Intersection Top
341 cTypeInfo_Dokan_Pipe7, // Horiz. Intersection Bottom
345 cTypeInfo_Dokan_MamePipe0, // Vert. Mini Pipe Center
346 cTypeInfo_Dokan_MamePipe1, // Horiz. Mini Pipe Center
358 cTypeInfo_Dokan_MamePipe2, // Vert. Mini Pipe Intersection
359 cTypeInfo_Dokan_MamePipe3, // Horiz. Mini Pipe Intersection
361 };
362
368
377
386
394
403};
Definition BgUnitCode.h:6
TypeInfo_Water
Definition BgUnitCode.h:296
@ cTypeInfo_Water_Normal
Definition BgUnitCode.h:297
@ cTypeInfo_Water_Numa
Definition BgUnitCode.h:301
@ cTypeInfo_Water_Air
Definition BgUnitCode.h:298
@ cTypeInfo_Water_Num
Definition BgUnitCode.h:302
@ cTypeInfo_Water_Doku
Definition BgUnitCode.h:300
@ cTypeInfo_Water_Lava
Definition BgUnitCode.h:299
static const u64 cPanelTypeMask
Definition BgUnitCode.h:107
HitType
Definition BgUnitCode.h:70
@ cHitType_HalfBoth
Definition BgUnitCode.h:75
@ cHitType_HalfCeiling
Definition BgUnitCode.h:74
@ cHitType_Half
Definition BgUnitCode.h:73
@ cHitType_Full
Definition BgUnitCode.h:72
@ cHitType_None
Definition BgUnitCode.h:71
static void setHitType(u64 &data, HitType hit_type)
Definition BgUnitCode.h:180
static const u64 cPanelTypeInfoMask
Definition BgUnitCode.h:108
static const u64 cPanelHitTypeMask
Definition BgUnitCode.h:110
static void setAttr(u64 &data, Attr attr)
Definition BgUnitCode.h:202
TypeInfo_WakuCoin
Definition BgUnitCode.h:211
@ TypeInfo_WakuCoin_Multi
Definition BgUnitCode.h:213
@ cTypeInfo_WakuCoin_Num
Definition BgUnitCode.h:214
@ cTypeInfo_WakuCoin_Normal
Definition BgUnitCode.h:212
TypeInfo_ClearCoin
Definition BgUnitCode.h:226
@ cTypeInfo_ClearCoin_Num
Definition BgUnitCode.h:228
@ cTypeInfo_ClearCoin_Blue
Definition BgUnitCode.h:227
TypeInfo_Vine
Definition BgUnitCode.h:388
@ cTypeInfo_Vine_Rock
Definition BgUnitCode.h:390
@ cTypeInfo_Vine_Wire
Definition BgUnitCode.h:391
@ cTypeInfo_Vine_Ivy
Definition BgUnitCode.h:389
@ cTypeInfo_Vine_Num
Definition BgUnitCode.h:392
TypeInfo_Dokan
Definition BgUnitCode.h:321
@ cTypeInfo_Dokan_MamePipe1
Definition BgUnitCode.h:346
@ cTypeInfo_Dokan_Pipe6
Definition BgUnitCode.h:340
@ cTypeInfo_Dokan_Break1
Definition BgUnitCode.h:348
@ cTypeInfo_Dokan_2
Definition BgUnitCode.h:324
@ cTypeInfo_Dokan_Pipe5
Definition BgUnitCode.h:339
@ cTypeInfo_Dokan_6
Definition BgUnitCode.h:328
@ cTypeInfo_Dokan_Mame2
Definition BgUnitCode.h:332
@ cTypeInfo_Dokan_3
Definition BgUnitCode.h:325
@ cTypeInfo_Dokan_MamePipe0
Definition BgUnitCode.h:345
@ cTypeInfo_Dokan_MamePipe2
Definition BgUnitCode.h:358
@ cTypeInfo_Dokan_Pipe8
Definition BgUnitCode.h:342
@ cTypeInfo_Dokan_Num
Definition BgUnitCode.h:360
@ cTypeInfo_Dokan_Break6
Definition BgUnitCode.h:353
@ cTypeInfo_Dokan_Pipe2
Definition BgUnitCode.h:336
@ cTypeInfo_Dokan_Mame0
Definition BgUnitCode.h:330
@ cTypeInfo_Dokan_MameBreak0
Definition BgUnitCode.h:355
@ cTypeInfo_Dokan_0
Definition BgUnitCode.h:322
@ cTypeInfo_Dokan_Pipe0
Definition BgUnitCode.h:334
@ cTypeInfo_Dokan_Break5
Definition BgUnitCode.h:352
@ cTypeInfo_Dokan_Mame1
Definition BgUnitCode.h:331
@ cTypeInfo_Dokan_Pipe9
Definition BgUnitCode.h:343
@ cTypeInfo_Dokan_Pipe7
Definition BgUnitCode.h:341
@ cTypeInfo_Dokan_MameBreak1
Definition BgUnitCode.h:356
@ cTypeInfo_Dokan_Tunagi
Definition BgUnitCode.h:357
@ cTypeInfo_Dokan_Mame3
Definition BgUnitCode.h:333
@ cTypeInfo_Dokan_5
Definition BgUnitCode.h:327
@ cTypeInfo_Dokan_Pipe4
Definition BgUnitCode.h:338
@ cTypeInfo_Dokan_PipeB
Definition BgUnitCode.h:344
@ cTypeInfo_Dokan_Break2
Definition BgUnitCode.h:349
@ cTypeInfo_Dokan_Break7
Definition BgUnitCode.h:354
@ cTypeInfo_Dokan_Break0
Definition BgUnitCode.h:347
@ cTypeInfo_Dokan_Pipe1
Definition BgUnitCode.h:335
@ cTypeInfo_Dokan_Break4
Definition BgUnitCode.h:351
@ cTypeInfo_Dokan_1
Definition BgUnitCode.h:323
@ cTypeInfo_Dokan_4
Definition BgUnitCode.h:326
@ cTypeInfo_Dokan_7
Definition BgUnitCode.h:329
@ cTypeInfo_Dokan_MamePipe3
Definition BgUnitCode.h:359
@ cTypeInfo_Dokan_Break3
Definition BgUnitCode.h:350
@ cTypeInfo_Dokan_Pipe3
Definition BgUnitCode.h:337
static void setSlipAttr(u64 &data, SlipAttr slip_attr)
Definition BgUnitCode.h:191
TypeInfo_BeltConveyor
Definition BgUnitCode.h:370
@ cTypeInfo_BeltConveyor_Right
Definition BgUnitCode.h:372
@ cTypeInfo_BeltConveyor_Left_High
Definition BgUnitCode.h:373
@ cTypeInfo_BeltConveyor_Right_High
Definition BgUnitCode.h:374
@ cTypeInfo_BeltConveyor_Num
Definition BgUnitCode.h:375
@ cTypeInfo_BeltConveyor_Left
Definition BgUnitCode.h:371
static Attr getAttr(u64 data)
Definition BgUnitCode.h:197
TypeInfo_Tenjou
Definition BgUnitCode.h:272
@ cTypeInfo_Tenjou_03
Definition BgUnitCode.h:276
@ cTypeInfo_Tenjou_01
Definition BgUnitCode.h:274
@ cTypeInfo_Tenjou_0B
Definition BgUnitCode.h:284
@ cTypeInfo_Tenjou_12
Definition BgUnitCode.h:291
@ cTypeInfo_Tenjou_10
Definition BgUnitCode.h:289
@ cTypeInfo_Tenjou_05
Definition BgUnitCode.h:278
@ cTypeInfo_Tenjou_04
Definition BgUnitCode.h:277
@ cTypeInfo_Tenjou_11
Definition BgUnitCode.h:290
@ cTypeInfo_Tenjou_08
Definition BgUnitCode.h:281
@ cTypeInfo_Tenjou_0D
Definition BgUnitCode.h:286
@ cTypeInfo_Tenjou_0F
Definition BgUnitCode.h:288
@ cTypeInfo_Tenjou_09
Definition BgUnitCode.h:282
@ cTypeInfo_Tenjou_Num
Definition BgUnitCode.h:292
@ cTypeInfo_Tenjou_0A
Definition BgUnitCode.h:283
@ cTypeInfo_Tenjou_06
Definition BgUnitCode.h:279
@ cTypeInfo_Tenjou_00
Definition BgUnitCode.h:273
@ cTypeInfo_Tenjou_07
Definition BgUnitCode.h:280
@ cTypeInfo_Tenjou_0C
Definition BgUnitCode.h:285
@ cTypeInfo_Tenjou_02
Definition BgUnitCode.h:275
@ cTypeInfo_Tenjou_0E
Definition BgUnitCode.h:287
static void setTypeInfo(u64 &data, TypeInfo type_info)
Definition BgUnitCode.h:158
static void setTypeOption(u64 &data, TypeOpt type_option)
Definition BgUnitCode.h:169
Shift
Definition BgUnitCode.h:115
@ cShift_Attr
Definition BgUnitCode.h:121
@ cShift_TypeOption
Definition BgUnitCode.h:118
@ cShift_SlipAttr
Definition BgUnitCode.h:120
@ cShift_HitType
Definition BgUnitCode.h:119
@ cShift_Type
Definition BgUnitCode.h:116
@ cShift_TypeInfo
Definition BgUnitCode.h:117
SlipAttr
Definition BgUnitCode.h:79
@ cSlipAttr_Num
Definition BgUnitCode.h:87
@ cSlipAttr_Slip
Definition BgUnitCode.h:81
@ cSlipAttr_SlideSlope
Definition BgUnitCode.h:86
@ cSlipAttr_SakaLowPow
Definition BgUnitCode.h:84
@ cSlipAttr_NoSuberu
Definition BgUnitCode.h:82
@ cSlipAttr_Normal
Definition BgUnitCode.h:80
@ cSlipAttr_IceLowSlip
Definition BgUnitCode.h:83
@ cSlipAttr_SlipFlatAngle
Definition BgUnitCode.h:85
static Type getType(u64 data)
Definition BgUnitCode.h:142
Type
Definition BgUnitCode.h:9
@ cType_Dokan
Definition BgUnitCode.h:28
@ cType_Kani
Definition BgUnitCode.h:32
@ cType_BreakIce
Definition BgUnitCode.h:39
@ cType_Manta
Definition BgUnitCode.h:42
@ cType_Pole
Definition BgUnitCode.h:34
@ cType_TrplnCloud
Definition BgUnitCode.h:45
@ cType_MouseHole
Definition BgUnitCode.h:40
@ cType_Saka
Definition BgUnitCode.h:23
@ cType_WaterStream
Definition BgUnitCode.h:41
@ cType_DrcBlock
Definition BgUnitCode.h:46
@ cType_Chikuwa
Definition BgUnitCode.h:30
@ cType_LineTrain
Definition BgUnitCode.h:53
@ cType_Damage
Definition BgUnitCode.h:27
@ cType_Coin
Definition BgUnitCode.h:15
@ cType_Hold
Definition BgUnitCode.h:33
@ cType_CaveEnter
Definition BgUnitCode.h:31
@ cType_WakuCoin
Definition BgUnitCode.h:14
@ cType_Block
Definition BgUnitCode.h:17
@ cType_PalmTree
Definition BgUnitCode.h:43
@ Clear_Q_Block
Definition BgUnitCode.h:22
@ cType_BreakBlock
Definition BgUnitCode.h:18
@ cType_SenLift
Definition BgUnitCode.h:13
@ cType_PoleRope
Definition BgUnitCode.h:38
@ cType_BigBlock
Definition BgUnitCode.h:51
@ cType_TensenBlock
Definition BgUnitCode.h:20
@ cType_Tenjou
Definition BgUnitCode.h:24
@ cType_RemoconBalanceRideOff
Definition BgUnitCode.h:52
@ cType_None
Definition BgUnitCode.h:12
@ cType_Big_Q_Block
Definition BgUnitCode.h:50
@ cType_Unira
Definition BgUnitCode.h:54
@ cType_BigBreakBlock
Definition BgUnitCode.h:49
@ cType_WoodBarrel
Definition BgUnitCode.h:44
@ cType_Water
Definition BgUnitCode.h:25
@ cType_BeltConveyor
Definition BgUnitCode.h:29
@ cType_QuarterBlock
Definition BgUnitCode.h:21
@ cType_AirshipHand
Definition BgUnitCode.h:47
@ cType_ClearCoin
Definition BgUnitCode.h:16
@ cType_Vine
Definition BgUnitCode.h:26
@ cType_Q_Block
Definition BgUnitCode.h:19
@ cType_WaterGeyser
Definition BgUnitCode.h:48
static TypeOpt getTypeOption(u64 data)
Definition BgUnitCode.h:164
TypeInfo_Coin
Definition BgUnitCode.h:218
@ cTypeInfo_Coin_Blue
Definition BgUnitCode.h:221
@ cTypeInfo_Coin_Red
Definition BgUnitCode.h:220
@ cTypeInfo_CoinNum
Definition BgUnitCode.h:222
@ cTypeInfo_Coin_Yellow
Definition BgUnitCode.h:219
TypeInfo
Definition BgUnitCode.h:58
@ cTypeInfo_Num
Definition BgUnitCode.h:61
@ cTypeInfo_VineStop
Definition BgUnitCode.h:60
@ cTypeInfo_None
Definition BgUnitCode.h:59
TypeInfo_Block
Definition BgUnitCode.h:232
@ cTypeInfo_Block_Wood
Definition BgUnitCode.h:235
@ cTypeInfo_Block_Red
Definition BgUnitCode.h:236
@ cTypeInfo_Block_Num
Definition BgUnitCode.h:237
@ cTypeInfo_Block_Brown
Definition BgUnitCode.h:233
@ cTypeInfo_Block_Stone
Definition BgUnitCode.h:234
TypeOpt_DokanColor
Definition BgUnitCode.h:396
@ cTypeOpt_DokanColor_Num
Definition BgUnitCode.h:401
@ cTypeOpt_DokanColor_Blue
Definition BgUnitCode.h:400
@ cTypeOpt_DokanColor_Red
Definition BgUnitCode.h:398
@ cTypeOpt_DokanColor_Green
Definition BgUnitCode.h:397
@ cTypeOpt_DokanColor_Yellow
Definition BgUnitCode.h:399
TypeInfo_Damage
Definition BgUnitCode.h:306
@ cTypeInfo_Damage_Right
Definition BgUnitCode.h:311
@ cTypeInfo_Damage_Die
Definition BgUnitCode.h:314
@ cTypeInfo_Damage_Num
Definition BgUnitCode.h:317
@ cTypeInfo_Damage_Turara11
Definition BgUnitCode.h:309
@ cTypeInfo_Damage_Doku
Definition BgUnitCode.h:316
@ cTypeInfo_Damage_Turara00
Definition BgUnitCode.h:307
@ cTypeInfo_Damage_Turara10
Definition BgUnitCode.h:308
@ cTypeInfo_Damage_Lava
Definition BgUnitCode.h:315
@ cTypeInfo_Damage_Left
Definition BgUnitCode.h:310
@ cTypeInfo_Damage_Bottom
Definition BgUnitCode.h:313
@ cTypeInfo_Damage_Top
Definition BgUnitCode.h:312
TypeInfo_Saka
Definition BgUnitCode.h:248
@ cTypeInfo_Saka_0A
Definition BgUnitCode.h:259
@ cTypeInfo_Saka_0D
Definition BgUnitCode.h:262
@ cTypeInfo_Saka_0E
Definition BgUnitCode.h:263
@ cTypeInfo_Saka_01
Definition BgUnitCode.h:250
@ cTypeInfo_Saka_05
Definition BgUnitCode.h:254
@ cTypeInfo_Saka_02
Definition BgUnitCode.h:251
@ cTypeInfo_Saka_07
Definition BgUnitCode.h:256
@ cTypeInfo_Saka_11
Definition BgUnitCode.h:266
@ cTypeInfo_Saka_09
Definition BgUnitCode.h:258
@ cTypeInfo_Saka_Num
Definition BgUnitCode.h:268
@ cTypeInfo_Saka_04
Definition BgUnitCode.h:253
@ cTypeInfo_Saka_03
Definition BgUnitCode.h:252
@ cTypeInfo_Saka_06
Definition BgUnitCode.h:255
@ cTypeInfo_Saka_00
Definition BgUnitCode.h:249
@ cTypeInfo_Saka_0B
Definition BgUnitCode.h:260
@ cTypeInfo_Saka_0F
Definition BgUnitCode.h:264
@ cTypeInfo_Saka_12
Definition BgUnitCode.h:267
@ cTypeInfo_Saka_10
Definition BgUnitCode.h:265
@ cTypeInfo_Saka_08
Definition BgUnitCode.h:257
@ cTypeInfo_Saka_0C
Definition BgUnitCode.h:261
TypeInfo_Chikuwa
Definition BgUnitCode.h:364
@ cTypeInfo_Chikuwa_Num
Definition BgUnitCode.h:366
@ cTypeInfo_Chikuwa_Normal
Definition BgUnitCode.h:365
static const u64 cPanelTypeOptionMask
Definition BgUnitCode.h:109
static HitType getHitType(u64 data)
Definition BgUnitCode.h:175
static void setType(u64 &data, Type type)
Definition BgUnitCode.h:147
static SlipAttr getSlipAttr(u64 data)
Definition BgUnitCode.h:186
Attr
Definition BgUnitCode.h:91
@ cSnow
Definition BgUnitCode.h:94
@ cPalmTree
Definition BgUnitCode.h:101
@ cWater
Definition BgUnitCode.h:103
@ cCloud
Definition BgUnitCode.h:98
@ cCarpet
Definition BgUnitCode.h:104
@ cGrass
Definition BgUnitCode.h:97
@ cManta
Definition BgUnitCode.h:100
@ cNuma
Definition BgUnitCode.h:95
@ cWood
Definition BgUnitCode.h:102
@ cNone
Definition BgUnitCode.h:92
@ cBeachSand
Definition BgUnitCode.h:99
@ cIce
Definition BgUnitCode.h:93
@ cSand
Definition BgUnitCode.h:96
static TypeInfo getTypeInfo(u64 data)
Definition BgUnitCode.h:153
TypeInfo_SenLift
Definition BgUnitCode.h:379
@ cTypeInfo_SenLift_Yoko
Definition BgUnitCode.h:381
@ cTypeInfo_SenLift_Tate
Definition BgUnitCode.h:382
@ cTypeInfo_SenLift_Num
Definition BgUnitCode.h:384
@ cTypeInfo_SenLift_Nuki
Definition BgUnitCode.h:383
TypeInfo_TensenBlock
Definition BgUnitCode.h:241
@ cTypeInfo_TensenBlock_Num
Definition BgUnitCode.h:244
@ cTypeInfo_TensenBlock_1
Definition BgUnitCode.h:243
@ cTypeInfo_TensenBlock_0
Definition BgUnitCode.h:242
static u64 makeBgUnitCode(HitType hit_type, Attr attr, SlipAttr slip_attr, Type type, TypeInfo type_info, TypeOpt type_option)
Definition BgUnitCode.h:124
TypeOpt
Definition BgUnitCode.h:65
@ cTypeOpt_None
Definition BgUnitCode.h:66
static const u64 cPanelSlipAttrMask
Definition BgUnitCode.h:111
static const u64 cPanelAttrMask
Definition BgUnitCode.h:112