SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
CollisionCategorizedKeeper.cpp
1#include "Game/Map/CollisionCategorizedKeeper.hpp"
2#include "Game/Map/CollisionParts.hpp"
3
4TVec3f CollisionParts::getTrans() {
5 TVec3f translation;
6 mBaseMatrix.getTransInline(translation);
7
8 return translation;
9}
10
11void CollisionCategorizedKeeper::addToZone(CollisionParts *pParts, s32 zone) {
12 mZones[zone]->addParts(pParts);
13 mZoneCount++;
14}
15
16void CollisionCategorizedKeeper::removeFromZone(CollisionParts *pParts, s32 zone) {
17 mZones[zone]->eraseParts(pParts);
18 mZoneCount--;
19}
20
21void CollisionCategorizedKeeper::addToGlobal(CollisionParts *pParts) {
22 mZones[0]->addParts(pParts);
23 mZoneCount++;
24}
25
26void CollisionCategorizedKeeper::removeFromGlobal(CollisionParts *pParts) {
27 mZones[0]->eraseParts(pParts);
28 mZoneCount--;
29}
30
31CollisionZone::CollisionZone(s32 zoneID)
32 : mZoneID(zoneID), mNumParts(0), _808(0, 0, 0), mRadius(0.0f), _818(0, 0, 0), _824(0, 0, 0) {
33}
34
35void CollisionZone::addParts(CollisionParts* pParts) {
36 s32 cnt = mNumParts;
37 mNumParts++;
38 mPartsArray[cnt] = pParts;
39
40 if (mZoneID) {
41 calcMinMaxAndRadius();
42 }
43}