summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxMotis <mr.maxmotis@gmail.com>2026-03-01 22:56:18 +0100
committerMaxMotis <mr.maxmotis@gmail.com>2026-03-01 22:56:18 +0100
commit4f2a4d3f40f7ef440895d720d509655f95bf28c8 (patch)
tree5ca13c2f42983441b2ee93d0d004f1ba592484b4
parentd08e4bfc382f7fe50000d98b75def06cf7ab4905 (diff)
d_t_event OK
-rw-r--r--config/SOUE01/symbols.txt2
-rw-r--r--include/d/t/d_t_event.h8
-rw-r--r--src/d/tg/d_t_event.cpp50
3 files changed, 30 insertions, 30 deletions
diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt
index 67b9ad09..f507bb0f 100644
--- a/config/SOUE01/symbols.txt
+++ b/config/SOUE01/symbols.txt
@@ -14512,7 +14512,7 @@ fn_80274350 = .text:0x80274350; // type:function size:0x18
setViewClipVals = .text:0x80274370; // type:function size:0x10
fn_80274380 = .text:0x80274380; // type:function size:0x5C
dTgSw_c_classInit__Fv = .text:0x802743E0; // type:function size:0xBC
-__dt__5dTg_cFv = .text:0x802744A0; // type:function size:0x58 scope:weak
+__dt__19sFState_c<7dTgSw_c>Fv = .text:0x802744A0; // type:function size:0x58 scope:weak
__dt__22sFStateFct_c<7dTgSw_c>Fv = .text:0x80274500; // type:function size:0x6C scope:weak
__dt__75sStateMgr_c<7dTgSw_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x80274570; // type:function size:0xA0 scope:weak
__dt__45sFStateMgr_c<7dTgSw_c,20sStateMethodUsr_FI_c>Fv = .text:0x80274610; // type:function size:0xA4 scope:weak
diff --git a/include/d/t/d_t_event.h b/include/d/t/d_t_event.h
index c4e9f1fa..6a5f2484 100644
--- a/include/d/t/d_t_event.h
+++ b/include/d/t/d_t_event.h
@@ -24,10 +24,10 @@ private:
/* 0x0FC */ ActorEventRelated mActorEvent;
/* 0x14C */ mMtx_c mMatrix;
/* 0x17C */ u32 mEventId;
- /* 0x180 */ u32 setSceneflag;
- /* 0x184 */ u32 trigSceneflag;
- /* 0x188 */ u32 subtype;
- /* 0x18C */ u32 unkParamFlag;
+ /* 0x180 */ u32 mSetSceneflag;
+ /* 0x184 */ u32 mTrigSceneflag;
+ /* 0x188 */ u32 mSubtype;
+ /* 0x18C */ u32 mUnkParamFlag;
};
#endif
diff --git a/src/d/tg/d_t_event.cpp b/src/d/tg/d_t_event.cpp
index b91c1221..f462ec5a 100644
--- a/src/d/tg/d_t_event.cpp
+++ b/src/d/tg/d_t_event.cpp
@@ -1,33 +1,32 @@
#include "d/t/d_t_event.h"
+#include "d/a/d_a_player.h"
#include "d/flag/sceneflag_manager.h"
#include "f/f_base.h"
#include "toBeSorted/area_math.h"
-#include "d/a/d_a_player.h"
#include "toBeSorted/event.h"
-
SPECIAL_ACTOR_PROFILE(EVENT_TAG, dTgEvent_c, fProfile::EVENT_TAG, 0X13, 0, 0);
-
-int dTgEvent_c::create()
-{
- matrixCreateFromPosRotYScale(mMatrix, mPosition, mRotation.y, mScale, 0x0, 0.0f);
- mEventId = mParams & 0xFF;
- setSceneflag = mParams >> 8 & 0xFF;
- trigSceneflag = mParams >> 0x10 & 0xFF;
- subtype = mParams >> 0x18 & 0x3;
- unkParamFlag = mParams >> 0x1A & 1;
- return SUCCEEDED;
+int dTgEvent_c::create() {
+ matrixCreateFromPosRotYScale(mMatrix, mPosition, mRotation.y, mScale, 0x0, 0.0f);
+ mEventId = getFromParams(0, 0xFF);
+ mSetSceneflag = getFromParams(8, 0xFF);
+ mTrigSceneflag = getFromParams(16, 0xFF);
+ mSubtype = getFromParams(24, 0x3);
+ mUnkParamFlag = getFromParams(26, 0x1);
+ return SUCCEEDED;
}
int dTgEvent_c::doDelete() {
return SUCCEEDED;
-}
+}
inline u32 fun(const u32 &flag, const u32 &returnFlag) {
u32 b = 0;
- if (flag & 1) b = returnFlag;
+ if (flag & 1) {
+ b = returnFlag;
+ }
return b;
}
@@ -40,11 +39,12 @@ inline bool dTgEvent_c::isValidFlag(u16 flag) {
}
int dTgEvent_c::actorExecute() {
- if (!isValidFlag(trigSceneflag) || checkUncommittedFlag(trigSceneflag)) {
- if ((subtype != 0 && !(isValidFlag(setSceneflag) && checkUncommittedFlag(setSceneflag))) || (subtype == 0 && (isValidFlag(setSceneflag) && checkUncommittedFlag(setSceneflag)))) {
- if (checkIfVec3fInMatrix(mMatrix,dAcPy_c::LINK->mPosition)) {
- Event EStack_48 = Event(mEventId, mRoomID, fun(unkParamFlag, 0x1),0,0);
- mActorEvent.scheduleEvent(EStack_48,0);
+ if (!isValidFlag(mTrigSceneflag) || checkUncommittedFlag(mTrigSceneflag)) {
+ if ((mSubtype != 0 && !(isValidFlag(mSetSceneflag) && checkUncommittedFlag(mSetSceneflag))) ||
+ (mSubtype == 0 && (isValidFlag(mSetSceneflag) && checkUncommittedFlag(mSetSceneflag)))) {
+ if (checkIfVec3fInMatrix(mMatrix, dAcPy_c::LINK->mPosition)) {
+ Event EStack_48 = Event(mEventId, mRoomID, fun(mUnkParamFlag, 0x1), 0, 0);
+ mActorEvent.scheduleEvent(EStack_48, 0);
}
}
}
@@ -54,13 +54,13 @@ int dTgEvent_c::actorExecute() {
int dTgEvent_c::actorExecuteInEvent() {
if (mActorEvent.isThisActorInEvent() != 0) {
mActorEvent.advanceNext();
- if (subtype != 0 && isValidFlag(setSceneflag) && !checkUncommittedFlag(setSceneflag)) {
- SceneflagManager::sInstance->setFlag(mRoomID, setSceneflag);
- } else if (subtype == 0 && isValidFlag(setSceneflag) && checkUncommittedFlag(setSceneflag)) {
- SceneflagManager::sInstance->unsetFlag(mRoomID, setSceneflag);
+ if (mSubtype != 0 && isValidFlag(mSetSceneflag) && !checkUncommittedFlag(mSetSceneflag)) {
+ SceneflagManager::sInstance->setFlag(mRoomID, mSetSceneflag);
+ } else if (mSubtype == 0 && isValidFlag(mSetSceneflag) && checkUncommittedFlag(mSetSceneflag)) {
+ SceneflagManager::sInstance->unsetFlag(mRoomID, mSetSceneflag);
}
- }
- return SUCCEEDED;
+ }
+ return SUCCEEDED;
}
int dTgEvent_c::draw() {