mirror of
https://github.com/zeldaret/st
synced 2026-10-09 05:51:25 -04:00
89dedbb3d1
* actor prog from overlay 0 * fix build issues * ActorBomb OK for eur * ActorBomb OK for eur1, usa and jp * fix regressions
65 lines
1.1 KiB
C++
65 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include "MapObject/MapObjectManager.hpp"
|
|
#include "global.h"
|
|
#include "math.hpp"
|
|
#include "types.h"
|
|
|
|
struct MapObject;
|
|
|
|
struct MapObjRef {
|
|
union {
|
|
struct {
|
|
union {
|
|
struct {
|
|
/* 00 */ u8 unk_00;
|
|
/* 01 */ u8 unk_01;
|
|
};
|
|
u16 unk_00_u16;
|
|
};
|
|
/* 02 */ Vec2b unk_02;
|
|
/* 04 */
|
|
};
|
|
u32 data;
|
|
};
|
|
|
|
MapObjRef() {}
|
|
|
|
MapObjRef(u32 value) {
|
|
this->data = value;
|
|
}
|
|
|
|
void Reset() {
|
|
this->data = 0;
|
|
}
|
|
|
|
const bool operator==(const MapObjRef &other) const {
|
|
return other.data == this->data;
|
|
}
|
|
|
|
const bool operator!=(const MapObjRef &other) const {
|
|
return !(*this == other);
|
|
}
|
|
|
|
void operator=(const MapObjRef &other) {
|
|
this->data = other.data;
|
|
}
|
|
|
|
const u32 Get32() const {
|
|
return this->data;
|
|
}
|
|
|
|
Vec2bCpp &GetUnk02() {
|
|
return *(Vec2bCpp *) &this->unk_02;
|
|
}
|
|
};
|
|
|
|
// for arrays
|
|
struct MapObjRefElem {
|
|
MapObjRef ref;
|
|
|
|
MapObjRefElem() {
|
|
this->ref.Reset();
|
|
}
|
|
};
|