summaryrefslogtreecommitdiff
path: root/include/d
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2026-05-02 23:50:58 +0200
committerrobojumper <robojumper@gmail.com>2026-05-10 20:05:48 +0200
commitf9754e2edad7e1b69718970b66b07b4194c511ec (patch)
tree87b49cd0d4b83809aaedef487be5e2af496b5a0f /include/d
parent0aa06252f6456cbe9179ff53e71bbe3228bb3e91 (diff)
dAcItem_c::executeState_Wait almost OK
Diffstat (limited to 'include/d')
-rw-r--r--include/d/a/d_a_base.h1
-rw-r--r--include/d/a/d_a_item.h26
-rw-r--r--include/d/col/c/c_cc_d.h5
3 files changed, 30 insertions, 2 deletions
diff --git a/include/d/a/d_a_base.h b/include/d/a/d_a_base.h
index f063e4e2..5bfb0c53 100644
--- a/include/d/a/d_a_base.h
+++ b/include/d/a/d_a_base.h
@@ -238,6 +238,7 @@ public:
void setParams2Upper_ignoreLower(u32 val);
int getParams2UpperByte();
void setParams2UpperByte(u32 val);
+ bool isFirstBitParams2NotSet();
static u32 buildParams2(u32 lower, u32 upper);
u32 getParams2Lower() const;
u32 getFirstBitParams2() const;
diff --git a/include/d/a/d_a_item.h b/include/d/a/d_a_item.h
index c6a22cd1..98952d59 100644
--- a/include/d/a/d_a_item.h
+++ b/include/d/a/d_a_item.h
@@ -100,6 +100,8 @@ public:
virtual u16 getItemIdFromParams() override;
virtual void setItemId(u16 id);
+ virtual bool shouldDespawn();
+ virtual bool isItemSmallKeyOrHeartPieceOrStaminaFruit();
STATE_FUNC_DECLARE(dAcItem_c, Wait);
STATE_FUNC_DECLARE(dAcItem_c, Carry);
@@ -242,6 +244,9 @@ private:
typedef bool (dAcItem_c::*sStaticPtmf)();
static const sStaticPtmf sStaticPtmfs[];
+ static dAcRef_c<dAcObjBase_c> sItemListHead;
+ static dAcRef_c<dAcObjBase_c> sItemListTail;
+
static const ItemInitStruct *getItemInitStructForId(u16 itemId);
const ItemInitStruct *getItemInitStruct() const;
bool isItemDropFromEnemy() const;
@@ -262,6 +267,23 @@ private:
void setFreestandingYOffset(f32);
void fn_8024DF30(u32 flags);
+ bool fn_80255CF0();
+ bool fn_802574A0();
+ void addToGetQueue();
+ static bool fn_8024A230();
+ void unsetHaveNoGravity();
+ void fn_80252A80();
+ void tickDespawnTimer();
+ void fn_80253D50();
+ bool fn_802577A0();
+ void fn_80256F20();
+ bool fn_80256E80();
+ bool fn_80255C50(u32 specialCode);
+ bool fn_80255CA0(u32 specialCode);
+ void getCurrentModelScale(f32 *scale);
+ void makeLinkLookTowardItem();
+ void fn_80254CA0();
+
// static PTMF callbacks
bool fn_80248020();
bool fn_80248010();
@@ -548,8 +570,8 @@ private:
/* 0xD40 */ mAng mMdlRotY;
/* 0xD42 */ s16 field_0xD42;
/* 0xD44 */ u16 mRealItemId;
- /* 0xD46 */ s16 mDespawnTimer;
- /* 0xD48 */ u16 field_0xD48;
+ /* 0xD46 */ u16 mDespawnTimer;
+ /* 0xD48 */ mAng field_0xD48;
/* 0xD4A */ u8 field_0xD4A;
/* 0xD4B */ u8 field_0xD4B;
/* 0xD4C */ u8 field_0xD4C;
diff --git a/include/d/col/c/c_cc_d.h b/include/d/col/c/c_cc_d.h
index 23e88d40..d5fa19bb 100644
--- a/include/d/col/c/c_cc_d.h
+++ b/include/d/col/c/c_cc_d.h
@@ -833,6 +833,11 @@ public:
mCo.OnSPrm(f);
}
+ void OffTgCoFlag(u32 f) {
+ mTg.OffSPrm(f);
+ mCo.OffSPrm(f);
+ }
+
void SetAtType(u32 type) {
mAt.SetType(type);
}