summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
authorElijah Thomas <42302100+elijah-thomas774@users.noreply.github.com>2025-11-23 02:29:49 -0500
committerGitHub <noreply@github.com>2025-11-23 02:29:49 -0500
commit57557d11285aeff9ffd86c6e57fdc09b62b391d1 (patch)
tree9381837b90d062335cf1fd9a87c86822c568abd8 /src/d
parent3492eac0b23272356b07268ff547494941158e89 (diff)
parent167ee588e064a771e9b581f2c20090ebe8c3c27a (diff)
Merge pull request #272 from elijah-thomas774/mAng
change mAng to template operators
Diffstat (limited to 'src/d')
-rw-r--r--src/d/a/d_a_insect.cpp2
-rw-r--r--src/d/a/obj/d_a_obj_fairy.cpp10
-rw-r--r--src/d/d_cs_game.cpp6
-rw-r--r--src/d/d_pad.cpp16
-rw-r--r--src/d/d_player_mdl.cpp2
-rw-r--r--src/d/lyt/d_lyt_map_markers.cpp14
-rw-r--r--src/d/lyt/msg_window/d_lyt_msg_window_select_btn.cpp38
7 files changed, 46 insertions, 42 deletions
diff --git a/src/d/a/d_a_insect.cpp b/src/d/a/d_a_insect.cpp
index 0360de38..93511653 100644
--- a/src/d/a/d_a_insect.cpp
+++ b/src/d/a/d_a_insect.cpp
@@ -219,7 +219,7 @@ bool dAcOInsect_c::fn_8018FAD0() {
void dAcOInsect_c::fn_8018FDF0(const mVec3_c &point) {
mMtx_c mtx;
field_0x360 = point;
- mtx.setAxisRotation(field_0x360, mRotation.y.radian2());
+ mtx.setAxisRotation(field_0x360, mRotation.y.radian_c());
// TODO
f32 a_comparision = 0.99f;
}
diff --git a/src/d/a/obj/d_a_obj_fairy.cpp b/src/d/a/obj/d_a_obj_fairy.cpp
index 0cdb8c84..22824411 100644
--- a/src/d/a/obj/d_a_obj_fairy.cpp
+++ b/src/d/a/obj/d_a_obj_fairy.cpp
@@ -130,7 +130,7 @@ int dAcOFairy_c::create() {
if (isWithinPlayerRadius(200.0f) && getXZAngleToPlayer().absDiff(mAng::fromVec(mVelocity)) < 0x2000) {
mVelocity.rotY(0x8000);
- mAngle.y += 0x8000;
+ mAngle.y += mAng(0x8000);
}
mModel.setAnm("PutFairy_fly", m3d::PLAY_MODE_4, 0.0f);
@@ -210,9 +210,7 @@ int dAcOFairy_c::actorExecute() {
}
if (!field_0xB89) {
- mEffects[0].holdEffect(
- PARTICLE_RESOURCE_ID_MAPPING_331_, mPosition, nullptr, nullptr, nullptr, nullptr
- );
+ mEffects[0].holdEffect(PARTICLE_RESOURCE_ID_MAPPING_331_, mPosition, nullptr, nullptr, nullptr, nullptr);
if (!isCuring() && !dAcPy_c::GetLink()->checkActionFlagsCont(0x400000)) {
holdSound(SE_O_FAIRY_FLY_LEV);
}
@@ -237,9 +235,7 @@ int dAcOFairy_c::actorExecute() {
}
if (isCuring() && !field_0xB89) {
- mEffects[1].holdEffect(
- PARTICLE_RESOURCE_ID_MAPPING_327_, mPosition, nullptr, nullptr, nullptr, nullptr
- );
+ mEffects[1].holdEffect(PARTICLE_RESOURCE_ID_MAPPING_327_, mPosition, nullptr, nullptr, nullptr, nullptr);
}
if (!mStateMgr.isState(StateID_CatchDemo) && !isCuring()) {
diff --git a/src/d/d_cs_game.cpp b/src/d/d_cs_game.cpp
index 77bf266a..38d06764 100644
--- a/src/d/d_cs_game.cpp
+++ b/src/d/d_cs_game.cpp
@@ -770,9 +770,7 @@ void dCsGame_c::lytItemCursor_c::lytDowsingCsr_c::updateEffects() {
mVec2_c csPos = dPad::getDpdPosScreen();
mVec3_c effectPos(csPos.x, csPos.y, 0.0f);
mVec3_c effectScale(sHio.field_0x3C, sHio.field_0x3C, 1.0f);
- mEffects1.holdUIEffect(
- PARTICLE_RESOURCE_ID_MAPPING_725_, mVec3_c::Zero, nullptr, nullptr, nullptr, nullptr
- );
+ mEffects1.holdUIEffect(PARTICLE_RESOURCE_ID_MAPPING_725_, mVec3_c::Zero, nullptr, nullptr, nullptr, nullptr);
mEffects2.holdUIEffect(
PARTICLE_RESOURCE_ID_MAPPING_726_, effectPos, &mAng3_c::Zero, &effectScale, nullptr, nullptr
);
@@ -813,7 +811,7 @@ void dCsGame_c::lytItemCursor_c::lytDowsingCsr_c::execute() {
mpDowsingPane->SetScale(mVec2_c(scale, scale));
mVec3_c rot = mpRingAllPane->GetRotate();
- rot.z = -mRotZ.degree2();
+ rot.z = -mRotZ.degree_c();
mpRingAllPane->SetRotate(rot);
mStateMgr.executeState();
diff --git a/src/d/d_pad.cpp b/src/d/d_pad.cpp
index 3b5b8791..d20ec8f5 100644
--- a/src/d/d_pad.cpp
+++ b/src/d/d_pad.cpp
@@ -179,7 +179,7 @@ void beginPad_BR() {
mVec3_c baseY;
mVec3_c baseZ;
KPADVec kpadvec;
- m.XrotS(mAng::deg2short(-30.f));
+ m.XrotS(mAng::d2s(-30.f));
baseZ.z = m.m[2][2];
baseZ.y = m.m[1][2];
baseZ.x = m.m[0][2];
@@ -247,11 +247,19 @@ void beginPad_BR() {
ex.mFSStick.x = mPad::getCore(0)->getFreeStickX();
ex.mFSStick.y = mPad::getCore(0)->getFreeStickY();
ex.mFSStickDistance = ex.mFSStick.length();
- ex.mFSStickAngle = -ex.mFSStick.ang();
+ ex.mFSStickAngle = (s32)-ex.mFSStick.ang();
ex.calcFSStickDirMask();
-
- bool isMpls = mPad::isMpls(0) || mPad::isMplsPtFS(0);
+ // I think compiler flags or some inlining optimization ruins this.
+ // This needs to be done separate from EGG as it will break other code
+ // Changing TBuffer::checkRange() as below fixes it.
+ // From:
+ // return 0 <= i && i < mSize;
+ // To:
+ // bool low = 0 <= i;
+ // bool high = i < mSize;
+ // return low && high;
+ bool isMpls = mPad::isMpls(0) || mPad::isMplsPtFS(0) ? true : false;
if (isMpls) {
ex.mMPLSVelocity.copyFrom(&mPad::getCore(0)->getCoreStatus()->mpls_rot);
ex.mMPLS.mX.copyFrom(&mPad::getCore(0)->getCoreStatus()->mpls_basis_x);
diff --git a/src/d/d_player_mdl.cpp b/src/d/d_player_mdl.cpp
index 06ebc427..78e1e1bb 100644
--- a/src/d/d_player_mdl.cpp
+++ b/src/d/d_player_mdl.cpp
@@ -1177,7 +1177,7 @@ void daPlayerModelBase_c::adjustMainModelChrAnm(PlayerMainModelNode_e nodeId, nw
if (nodeId == PLAYER_MAIN_NODE_HAND_R) {
static const mVec3_c v1(1.0f, 1.0f, 0.0f);
mMtx_c rotMtx;
- rotMtx.setAxisRotation(v1, mRightHandRotation.radian2());
+ rotMtx.setAxisRotation(v1, mRightHandRotation.radian_c());
mtx += rotMtx;
}
}
diff --git a/src/d/lyt/d_lyt_map_markers.cpp b/src/d/lyt/d_lyt_map_markers.cpp
index ab0ab0b0..d07d235a 100644
--- a/src/d/lyt/d_lyt_map_markers.cpp
+++ b/src/d/lyt/d_lyt_map_markers.cpp
@@ -897,9 +897,9 @@ void dLytMapIcon01_c::draw() {
mVec3_c rotate(0.0f, 0.0f, 0.0f);
if (dLytMapGlobal_c::GetInstance()->getField_0x55() != 0) {
dAcPy_c *link = getLinkPtr();
- rotate.z = mAng(link->mRotation.y + link->vt_0x19C() + -mapRot).degree2();
+ rotate.z = mAng(link->mRotation.y + link->vt_0x19C() + -mapRot).degree_c();
} else {
- rotate.z = mAng(field_0x0D3A + -mapRot).degree2();
+ rotate.z = mAng(field_0x0D3A + -mapRot).degree_c();
}
pane->SetRotate(rotate);
pane = pane->GetParent();
@@ -907,7 +907,7 @@ void dLytMapIcon01_c::draw() {
}
case MAP_ICON_01_PANE_DOOR_000:
case MAP_ICON_01_PANE_START_000: {
- mVec3_c rotate(0.0f, 0.0f, mAng(-mapRot + commandRot).degree2());
+ mVec3_c rotate(0.0f, 0.0f, mAng(-mapRot + commandRot).degree_c());
pane->SetRotate(rotate);
pane = mpPanes[paneIdx]->GetParent();
break;
@@ -920,7 +920,7 @@ void dLytMapIcon01_c::draw() {
case MAP_ICON_01_PANE_UTA_000:
case MAP_ICON_01_PANE_MUSI_000:
case MAP_ICON_01_PANE_SKYLOFT_000: {
- mVec3_c rotate(0.0f, 0.0f, (-mapRot).degree2());
+ mVec3_c rotate(0.0f, 0.0f, (-mapRot).degree_c());
pane->SetRotate(rotate);
pane = mpPanes[paneIdx]->GetParent();
break;
@@ -953,7 +953,7 @@ void dLytMapIcon01_c::draw() {
} else if (dScGame_c::isCurrentStage("F023")) {
setCloud(2, pane);
}
- mVec3_c rotate(0.0f, 0.0f, (-mapRot).degree2());
+ mVec3_c rotate(0.0f, 0.0f, (-mapRot).degree_c());
pane->SetRotate(rotate);
pane = mpPanes[paneIdx]->GetParent();
}
@@ -1054,7 +1054,7 @@ static const char *sMapPrefix = "MAP_";
void dLytMapIcon01_c::resetDrawCommands() {
for (int i = 0; i < (int)ARRAY_LENGTH(mCommands); i++) {
mCommands[i].position.set(0.0f, 0.0f);
- mCommands[i].rotation.setF(0.0f);
+ mCommands[i].rotation = 0.0f;
mCommands[i].paneIdx = MAP_ICON_01_NUM_PANES;
mCommands[i].passIdx = 35;
field_0x0D4B[i] = ARRAY_LENGTH(mCommands);
@@ -1732,7 +1732,7 @@ void dLytMapIcon00_c::draw() {
void dLytMapIcon00_c::resetDrawCommands() {
for (int i = 0; i < (int)ARRAY_LENGTH(mCommands); i++) {
mCommands[i].position.set(0.0f, 0.0f);
- mCommands[i].rotation.setF(0.0f);
+ mCommands[i].rotation = 0.0f;
mCommands[i].paneIdx = 39;
mCommands[i].passIdx = 35;
field_0x0F20[i] = ARRAY_LENGTH(mCommands);
diff --git a/src/d/lyt/msg_window/d_lyt_msg_window_select_btn.cpp b/src/d/lyt/msg_window/d_lyt_msg_window_select_btn.cpp
index 0dc84e66..fdc7155e 100644
--- a/src/d/lyt/msg_window/d_lyt_msg_window_select_btn.cpp
+++ b/src/d/lyt/msg_window/d_lyt_msg_window_select_btn.cpp
@@ -64,8 +64,8 @@ void SelectBtnHelper::remove() {
}
void SelectBtnHelper::resetCursor() {
- mAngX = mAngXCenter = mAng::ang2deg_c(dPad::ex_c::getInstance()->mMPLS.getHorizontalAngle());
- mAngY = mAngYCenter = mAng::ang2deg_c(dPad::ex_c::getInstance()->mMPLS.getVerticalAngle());
+ mAngX = mAngXCenter = mAng::s2d_c(dPad::ex_c::getInstance()->mMPLS.getHorizontalAngle());
+ mAngY = mAngYCenter = mAng::s2d_c(dPad::ex_c::getInstance()->mMPLS.getVerticalAngle());
}
u8 SelectBtnHelper::execute() {
@@ -111,8 +111,8 @@ bool SelectBtnHelper::handleCursorInput() {
return true;
}
- mAngX = mAng::ang2deg_c(dPad::ex_c::getInstance()->mMPLS.getHorizontalAngle());
- mAngY = mAng::ang2deg_c(dPad::ex_c::getInstance()->mMPLS.getVerticalAngle());
+ mAngX = mAng::s2d_c(dPad::ex_c::getInstance()->mMPLS.getHorizontalAngle());
+ mAngY = mAng::s2d_c(dPad::ex_c::getInstance()->mMPLS.getVerticalAngle());
mVec2_c screenPos = dPad::getDpdPosScreen();
if (mCursorSelectTimer > 0) {
@@ -133,8 +133,8 @@ bool SelectBtnHelper::handleCursorInput() {
mPad::getCore()->startPatternRumble("**-*----", 0, false);
}
fn_8011E110(screenPos);
- // TODO additional stack stores
field_0x2C = dPad::getDpdPosScreen();
+ screenPos = field_0x2C;
mAngXCenter = mAngX;
mAngYCenter = mAngY;
}
@@ -162,19 +162,22 @@ bool SelectBtnHelper::handleCursorInput() {
if (selected != -1) {
nw4r::math::MTX34 mtx0 = getRootPane()->GetGlobalMtx();
- mVec2_c pos0 = mVec2_c(mtx0._03, mtx0._13);
+ mVec2_c pos0(mtx0._03, mtx0._13);
+
nw4r::math::MTX34 mtxi = getPosPane(selected)->GetGlobalMtx();
- mVec2_c posi = mVec2_c(mtxi._03, mtxi._13);
+ mVec2_c posi(mtxi._03, mtxi._13);
+
mVec2_c d1 = posi - pos0;
- s16 ang = d1.ang();
+ mAng ang = cM::atan2s(d1.y, d1.x);
+
+ v.x *= dLyt_HIO_c::getInstance()->getField0x770();
+ v.y *= dLyt_HIO_c::getInstance()->getField0x774();
+
+ mVec2_c d2 = posi + v - pos0;
- mVec2_c adj;
- adj.x = v.x * dLyt_HIO_c::getInstance()->getField0x770();
- adj.y = v.y * dLyt_HIO_c::getInstance()->getField0x774();
- mVec2_c d2 = posi + adj - pos0;
- s16 ang2 = d2.ang();
+ mAng ang2 = cM::atan2s(d2.y, d2.x);
- angle = mAng::ang2deg_c(ang2) - mAng::ang2deg_c(ang);
+ angle = ang2.degree_c() - ang.degree_c();
length = d2.length() / d1.length();
}
if (length > 1.0f) {
@@ -338,8 +341,7 @@ bool SelectBtnHelper::handleButtonInput() {
#undef IS
if (btn == -1) {
- // TODO
- btn = field_0x4C != -1 ? field_0x4C : 0;
+ btn = field_0x4C != -1 ? (s8)field_0x4C : (s8)0;
}
}
@@ -417,8 +419,8 @@ bool SelectBtnHelper::hasNewFSStickButtonSelect() const {
break;
case MODE_3_UP:
if (((TRIG(UP) || TRIG(UP_RIGHT) || TRIG(UP_LEFT)) && mSelectedBtnIdx == 0) ||
- ((TRIG(DOWN) || TRIG(DOWN_RIGHT) || TRIG(DOWN_LEFT)) && (mSelectedBtnIdx == 1 || mSelectedBtnIdx == 2)
- ) ||
+ ((TRIG(DOWN) || TRIG(DOWN_RIGHT) || TRIG(DOWN_LEFT)) &&
+ (mSelectedBtnIdx == 1 || mSelectedBtnIdx == 2)) ||
((TRIG(RIGHT) || TRIG(UP_RIGHT) || TRIG(DOWN_RIGHT)) && mSelectedBtnIdx == 1) ||
((TRIG(LEFT) || TRIG(UP_LEFT) || TRIG(DOWN_LEFT)) && mSelectedBtnIdx == 2)) {
return false;