mirror of
https://github.com/zeldaret/tp
synced 2026-05-24 07:11:06 -04:00
a6e76c0841
* some wii OS fixes * remove old dol2asm comments * remove dol2asm.h * remove function address comments * normalize ATTRIBUTE_ALIGN usage * DECL_WEAK macro * fix gcc attribute weak macro * wrap more mwcc specific things in ifdefs * fixes * fix revo sdk version flags * fixes
190 lines
4.3 KiB
C++
190 lines
4.3 KiB
C++
#include "d/dolzel.h" // IWYU pragma: keep
|
|
|
|
#include "d/d_save_HIO.h"
|
|
#include "d/d_com_inf_game.h"
|
|
|
|
dSvBit_childSwPerfectionHIO_c::dSvBit_childSwPerfectionHIO_c() {
|
|
for (int i = 0; i < 0x80; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x85[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childSwPerfectionHIO_c::init() {
|
|
for (int i = 0; i < 0x80; i++) {
|
|
field_0x5[i] = dComIfGs_isSaveSwitch(i);
|
|
field_0x85[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childSwDungeonHIO_c::dSvBit_childSwDungeonHIO_c() {
|
|
for (int i = 0; i < 0x40; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x45[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childSwDungeonHIO_c::init() {
|
|
for (int i = 0; i < 0x40; i++) {
|
|
field_0x5[i] = dComIfGs_isSaveDunSwitch(i);
|
|
field_0x45[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childSwZoneHIO_c::dSvBit_childSwZoneHIO_c() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x25[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childSwZoneHIO_c::init() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x25[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childSwOneZoneHIO_c::dSvBit_childSwOneZoneHIO_c() {
|
|
for (int i = 0; i < 0x10; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x15[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childSwOneZoneHIO_c::init() {
|
|
for (int i = 0; i < 0x10; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x15[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childItPerfectionHIO_c::dSvBit_childItPerfectionHIO_c() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x25[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childItPerfectionHIO_c::init() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = dComIfGs_isSaveItem(i);
|
|
field_0x25[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childItDungeonHIO_c::dSvBit_childItDungeonHIO_c() {
|
|
for (int i = 0; i < 0x80; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x85[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childItDungeonHIO_c::init() {
|
|
for (int i = 0; i < 0x80; i++) {
|
|
field_0x5[i] = dComIfGs_isSaveDunItem(i);
|
|
field_0x85[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childItZoneHIO_c::dSvBit_childItZoneHIO_c() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x25[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childItZoneHIO_c::init() {
|
|
for (int i = 0; i < 0x20; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x25[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childItOneZoneHIO_c::dSvBit_childItOneZoneHIO_c() {
|
|
for (int i = 0; i < 0x10; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x15[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childItOneZoneHIO_c::init() {
|
|
for (int i = 0; i < 0x10; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x15[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childTbPerfectionHIO_c::dSvBit_childTbPerfectionHIO_c() {
|
|
for (int i = 0; i < 0x40; i++) {
|
|
field_0x5[i] = 0;
|
|
field_0x45[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childTbPerfectionHIO_c::init() {
|
|
for (int i = 0; i < 0x40; i++) {
|
|
field_0x5[i] = dComIfGs_isTbox(i);
|
|
field_0x45[i] = field_0x5[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childDarknessHIO_c::dSvBit_childDarknessHIO_c() {
|
|
for (int i = 0; i < 6; i++) {
|
|
TW[i] = 0;
|
|
field_0xB[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childDarknessHIO_c::init() {
|
|
for (int i = 0; i < 6; i++) {
|
|
TW[i] = dComIfGs_isDarkClearLV(i);
|
|
field_0xB[i] = TW[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childTransformHIO_c::dSvBit_childTransformHIO_c() {
|
|
for (int i = 0; i < 4; i++) {
|
|
WF[i] = 0;
|
|
field_0x9[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childTransformHIO_c::init() {
|
|
for (int i = 0; i < 4; i++) {
|
|
WF[i] = dComIfGs_isTransformLV(i);
|
|
field_0x9[i] = WF[i];
|
|
}
|
|
}
|
|
|
|
dSvBit_childOtherHIO_c::dSvBit_childOtherHIO_c() {
|
|
mDropNum = 0;
|
|
field_0x6 = 0;
|
|
for (int i = 0; i < 4; i++) {
|
|
mLightVessel[i] = 0;
|
|
field_0xb[i] = 0;
|
|
}
|
|
}
|
|
|
|
void dSvBit_childOtherHIO_c::init() {
|
|
mDropNum = dComIfGs_getLightDropNum(dComIfGp_getStartStageDarkArea());
|
|
field_0x6 = mDropNum;
|
|
for (int i = 0; i < 4; i++) {
|
|
mLightVessel[i] = dComIfGs_isLightDropGetFlag(i);
|
|
field_0xb[i] = mLightVessel[i];
|
|
}
|
|
}
|
|
|
|
void dSvBit_HIO_c::init() {
|
|
mSwitch.init();
|
|
mItem.init();
|
|
mTreasure.init();
|
|
mDarkness.init();
|
|
mTransform.init();
|
|
mOther.init();
|
|
/* Main Event - Get shadow crystal (can now transform) */
|
|
mTransformFlag = field_0x49d = dComIfGs_isEventBit(dSv_event_flag_c::M_077);
|
|
}
|
|
|
|
dSvBit_HIO_c g_save_bit_HIO;
|