summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2026-05-03 21:26:44 +0200
committerrobojumper <robojumper@gmail.com>2026-05-10 20:06:12 +0200
commit02bab6f41fc616ca7d9aa77f4a81782d65b16200 (patch)
tree9d1e6ec8a84faaabe9a14f78e413d71d60dc74de /src/d
parent9843fc692291bf7532d0b26430d306e2dc47098d (diff)
Fixes
Diffstat (limited to 'src/d')
-rw-r--r--src/d/a/d_a_item.cpp32
-rw-r--r--src/d/a/obj/d_a_obj_arrow.cpp2
-rw-r--r--src/d/a/obj/d_a_obj_tbox.cpp6
3 files changed, 19 insertions, 21 deletions
diff --git a/src/d/a/d_a_item.cpp b/src/d/a/d_a_item.cpp
index ec833cfb..5781c44c 100644
--- a/src/d/a/d_a_item.cpp
+++ b/src/d/a/d_a_item.cpp
@@ -260,7 +260,7 @@ static const GlitteringSporeRupeeChance sSporeRupeeChances[] = {
static const dCcD_SrcCyl sSrcCyl = {
{{0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
- {~(AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 0x08, 0x407}, 0, 0},
+ {~(AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x111, {0, 0x08, 0x407}, 0, 0},
{0xE9}},
{40.0f, 60.0f}
};
@@ -988,7 +988,7 @@ int dAcItem_c::create() {
if (isAnyTear()) {
s32 type = getTearSubtype((ITEM_ID)mId);
if (type == TEAR_MAX) {
- type = TEAR_0;
+ type = TEAR_FARON;
}
dAcObjBase_c *forceSign =
dAcObjBase_c::create(this, fProfile::OBJ_FORCE_SIGN, type & 0xFF, nullptr, nullptr, nullptr, nullptr, 0x3F);
@@ -1299,7 +1299,7 @@ void dAcItem_c::initializeState_Wait() {
mSpeed = 0.0f;
mVelocity.y = 0.0f;
}
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
field_0xD5B = 0;
field_0xD38 = field_0xD3A = field_0xD3C = 0;
fn_80253E20();
@@ -1415,8 +1415,7 @@ void dAcItem_c::executeState_Wait() {
return;
}
- // Glittering Spores?
- if (mCyl.ChkTgAtHitType(AT_TYPE_0x80000)) {
+ if (mCyl.ChkTgAtHitType(AT_TYPE_GLITTERING_SPORES)) {
if (isHeart()) {
if (fn_8024A230()) {
mVec3_c spawnPos(mPosition.x, mPosition.y + 30.0f, mPosition.z);
@@ -1451,7 +1450,7 @@ void dAcItem_c::executeState_Wait() {
}
}
setItemId(sSporeRupeeChances[i].itemId);
- mpMdl->vt_0x20(sSporeRupeeChances[i].itemId);
+ mpMdl->changeItemId(sSporeRupeeChances[i].itemId);
unsetHaveNoGravity();
mVelocity.y = 10.0f;
fn_80252A80();
@@ -1653,10 +1652,9 @@ void dAcItem_c::executeState_Wait() {
}
}
dir *= -40.0f;
- // TODO - for some reason the argument vector is at an entirely wrong stack position...
- // Fixing this wil probably fix the rest of the stack position issues in this function.
+ mVec3_c efPos = offsetPos + dir;
mEff_0x928.holdEffect(
- PARTICLE_RESOURCE_ID_MAPPING_821_, offsetPos + dir, nullptr, &scale, nullptr, nullptr
+ PARTICLE_RESOURCE_ID_MAPPING_821_, efPos, nullptr, &scale, nullptr, nullptr
);
}
makeLinkLookTowardItem();
@@ -1678,7 +1676,7 @@ void dAcItem_c::finalizeState_Wait() {
}
void dAcItem_c::initializeState_Carry() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
mSpeed = 0.0f;
mVelocity.y = 0.0f;
unsetHaveNoGravity();
@@ -1738,7 +1736,7 @@ void dAcItem_c::finalizeState_Carry() {
}
void dAcItem_c::initializeState_GetBeetle() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
field_0xD0C = 0.0f;
@@ -1821,7 +1819,7 @@ void dAcItem_c::finalizeState_WaitGet() {
}
void dAcItem_c::initializeState_Get() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
performCollection();
if (isAnyTear()) {
mVec3_c tmp;
@@ -1856,7 +1854,7 @@ void dAcItem_c::finalizeState_Get() {
}
void dAcItem_c::initializeState_WaitGetDemo() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setObjectProperty(OBJ_PROP_0x200);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
@@ -1892,7 +1890,7 @@ void dAcItem_c::executeState_WaitGetDemo() {
void dAcItem_c::finalizeState_WaitGetDemo() {}
void dAcItem_c::initializeState_WaitForcedGetDemo() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setObjectProperty(OBJ_PROP_0x200);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
@@ -1913,7 +1911,7 @@ void dAcItem_c::executeState_WaitForcedGetDemo() {
void dAcItem_c::finalizeState_WaitForcedGetDemo() {}
void dAcItem_c::initializeState_GetDemo() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
switch (getItemId()) {
case ITEM_FARON_GRASSHOPPER: sCollectionCurrentCount = getFaronGrasshooperCounter(); break;
case ITEM_WOODLAND_RHINO_BEETLE: sCollectionCurrentCount = getWoodlandRhinoBeetleCounter(); break;
@@ -2034,7 +2032,7 @@ void dAcItem_c::finalizeState_GetDemo() {
}
void dAcItem_c::initializeState_WaitTBoxGetDemo() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_2);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Get);
setNotWaiting();
field_0xD38 = field_0xD3A = field_0xD3C = 0;
setObjectProperty(OBJ_PROP_0x200);
@@ -2052,7 +2050,7 @@ void dAcItem_c::executeState_WaitTBoxGetDemo() {
void dAcItem_c::finalizeState_WaitTBoxGetDemo() {}
void dAcItem_c::initializeState_ResurgeWait() {
- mpMdl->vt_0x10(dItemMdl_c::ITEM_MDL_UNK0x14_1);
+ mpMdl->setDrawMode(dItemMdl_c::DrawMode_Put);
// TODO FPR swap
mPosition = mPositionCopy;
mRotation = mRotationCopy;
diff --git a/src/d/a/obj/d_a_obj_arrow.cpp b/src/d/a/obj/d_a_obj_arrow.cpp
index ae95ba89..f17c71bc 100644
--- a/src/d/a/obj/d_a_obj_arrow.cpp
+++ b/src/d/a/obj/d_a_obj_arrow.cpp
@@ -17,7 +17,7 @@ STATE_DEFINE(dAcArrow_c, Bound);
cCcD_SrcGObj dAcArrow_c::sCcSrcInf = {
{AT_TYPE_ARROW, 0x8BB, {0x15,0, 0}, 0, 0, 0, 0, 0, 0},
{
- ~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_ARROW | AT_TYPE_0x100 | AT_TYPE_WIND | AT_TYPE_SLINGSHOT),
+ ~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_ARROW | AT_TYPE_0x100 | AT_TYPE_WIND | AT_TYPE_SLINGSHOT),
0x210, {0, 0, 0x407}, 0, 0
},
{0},
diff --git a/src/d/a/obj/d_a_obj_tbox.cpp b/src/d/a/obj/d_a_obj_tbox.cpp
index 931dc459..bcacf40d 100644
--- a/src/d/a/obj/d_a_obj_tbox.cpp
+++ b/src/d/a/obj/d_a_obj_tbox.cpp
@@ -92,7 +92,7 @@ static char *const sOpenEventNames[] = {
// TODO just copied from somewhere
const cCcD_SrcGObj dAcTbox_c::sColSrc = {
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
- /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0, {0, 0, 0x407}, 0, 0},
+ /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0, {0, 0, 0x407}, 0, 0},
/* mObjCo */ {0xE9}
};
// clang-format on
@@ -1079,7 +1079,7 @@ int dAcTbox_c::create() {
// clang-format off
static const dCcD_SrcUnk s3 = {{
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
- /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {7, 0x407}, 0, 0},
+ /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {7, 0x407}, 0, 0},
/* mObjCo */ {0x0}},
{0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f},
};
@@ -1090,7 +1090,7 @@ int dAcTbox_c::create() {
// clang-format off
static const dCcD_SrcUnk s4 = {{
/* mObjAt */ {0, 0, {0, 0, 0}, 0, 0, 0, 0, 0, 0},
- /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_0x80000 | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {6, 0x407}, 0, 0},
+ /* mObjTg */ {~(AT_TYPE_BUGNET | AT_TYPE_BEETLE | AT_TYPE_GLITTERING_SPORES | AT_TYPE_0x8000 | AT_TYPE_WIND), 0x1010111, {6, 0x407}, 0, 0},
/* mObjCo */ {0x0}},
{0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f},
};