diff options
| author | TakaRikka <takarikka@outlook.com> | 2022-06-01 04:23:39 -0700 |
|---|---|---|
| committer | TakaRikka <takarikka@outlook.com> | 2022-06-01 04:23:39 -0700 |
| commit | 32cea78625839c5285a5f22eec6e7bbeef005c3c (patch) | |
| tree | 6171308ac96c3cbb1917c43167ac09dc86135df1 /libs/JSystem | |
| parent | 3f22fa448376893fffd83815ecd4cdccb197f1a4 (diff) | |
format
Diffstat (limited to 'libs/JSystem')
| -rw-r--r-- | libs/JSystem/JParticle/JPADynamicsBlock.cpp | 58 | ||||
| -rw-r--r-- | libs/JSystem/JUtility/JUTGamePad.cpp | 41 |
2 files changed, 64 insertions, 35 deletions
diff --git a/libs/JSystem/JParticle/JPADynamicsBlock.cpp b/libs/JSystem/JParticle/JPADynamicsBlock.cpp index a4576e4903..8a6129ba55 100644 --- a/libs/JSystem/JParticle/JPADynamicsBlock.cpp +++ b/libs/JSystem/JParticle/JPADynamicsBlock.cpp @@ -4,8 +4,8 @@ // #include "JSystem/JParticle/JPADynamicsBlock.h" -#include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JMath/JMATrigonometric.h" +#include "JSystem/JParticle/JPAParticle.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -64,7 +64,8 @@ SECTION_SDATA2 static f32 lit_2289[1 + 1 /* padding */] = { // bug in diff.py preventing me from seeing what's wrong void JPAVolumePoint(JPAEmitterWorkData* work) { work->mVolumePos.zero(); - work->mVelOmni.set(work->mpEmtr->get_r_zh(), work->mpEmtr->get_r_zh(), work->mpEmtr->get_r_zh()); + work->mVelOmni.set(work->mpEmtr->get_r_zh(), work->mpEmtr->get_r_zh(), + work->mpEmtr->get_r_zh()); work->mVelAxis.set(work->mVelOmni.x, 0.0f, work->mVelOmni.z); } @@ -91,7 +92,9 @@ SECTION_SDATA2 static f64 lit_2321 = 4503601774854144.0 /* cast s32 to float */; // bug in diff.py preventing me from seeing what's wrong void JPAVolumeLine(JPAEmitterWorkData* work) { if (work->mpEmtr->checkFlag(JPADynFlag_FixedInterval)) { - work->mVolumePos.set(0.0f, 0.0f, work->mVolumeSize * (s32)((work->mVolumeEmitIdx / (work->mEmitCount - 1.0f) - 0.5f))); + work->mVolumePos.set(0.0f, 0.0f, + work->mVolumeSize * + (s32)((work->mVolumeEmitIdx / (work->mEmitCount - 1.0f) - 0.5f))); work->mVolumeEmitIdx++; } else { work->mVolumePos.set(0.0f, 0.0f, work->mVolumeSize * work->mpEmtr->get_r_zh()); @@ -158,7 +161,8 @@ static asm void JPAVolumeCircle(JPAEmitterWorkData* param_0) { // bug in diff.py preventing me from seeing what's wrong void JPAVolumeCube(JPAEmitterWorkData* work) { f32 size = work->mVolumeSize; - work->mVolumePos.set(size * work->mpEmtr->get_r_zh(), size * work->mpEmtr->get_r_zh(), size * work->mpEmtr->get_r_zh()); + work->mVolumePos.set(size * work->mpEmtr->get_r_zh(), size * work->mpEmtr->get_r_zh(), + size * work->mpEmtr->get_r_zh()); work->mVelOmni.mul(work->mVolumePos, work->mGlobalScl); work->mVelAxis.set(work->mVolumePos.x, 0.0f, work->mVolumePos.z); } @@ -224,25 +228,39 @@ JPADynamicsBlock::JPADynamicsBlock(u8 const* data) { } enum { - VOL_Cube = 0x00, - VOL_Sphere = 0x01, + VOL_Cube = 0x00, + VOL_Sphere = 0x01, VOL_Cylinder = 0x02, - VOL_Torus = 0x03, - VOL_Point = 0x04, - VOL_Circle = 0x05, - VOL_Line = 0x06, + VOL_Torus = 0x03, + VOL_Point = 0x04, + VOL_Circle = 0x05, + VOL_Line = 0x06, }; /* 8027BB4C-8027BBE8 27648C 009C+00 2/1 0/0 0/0 .text init__16JPADynamicsBlockFv */ void JPADynamicsBlock::init() { switch (getVolumeType()) { - case VOL_Cube: mpCalcVolumeFunc = &JPAVolumeCube; break; - case VOL_Sphere: mpCalcVolumeFunc = &JPAVolumeSphere; break; - case VOL_Cylinder: mpCalcVolumeFunc = &JPAVolumeCylinder; break; - case VOL_Torus: mpCalcVolumeFunc = &JPAVolumeTorus; break; - case VOL_Point: mpCalcVolumeFunc = &JPAVolumePoint; break; - case VOL_Circle: mpCalcVolumeFunc = &JPAVolumeCircle; break; - case VOL_Line: mpCalcVolumeFunc = &JPAVolumeLine; break; + case VOL_Cube: + mpCalcVolumeFunc = &JPAVolumeCube; + break; + case VOL_Sphere: + mpCalcVolumeFunc = &JPAVolumeSphere; + break; + case VOL_Cylinder: + mpCalcVolumeFunc = &JPAVolumeCylinder; + break; + case VOL_Torus: + mpCalcVolumeFunc = &JPAVolumeTorus; + break; + case VOL_Point: + mpCalcVolumeFunc = &JPAVolumePoint; + break; + case VOL_Circle: + mpCalcVolumeFunc = &JPAVolumeCircle; + break; + case VOL_Line: + mpCalcVolumeFunc = &JPAVolumeLine; + break; } } @@ -269,13 +287,15 @@ void JPADynamicsBlock::create(JPAEmitterWorkData* work) { work->mVolumeEmitIdx = 0; } else { - f32 newPtclCount = work->mpEmtr->mRate * (getRateRndm() * work->mpEmtr->get_r_zp() + 1.0f); + f32 newPtclCount = + work->mpEmtr->mRate * (getRateRndm() * work->mpEmtr->get_r_zp() + 1.0f); f32 newEmitCount = work->mpEmtr->mEmitCount + newPtclCount; work->mpEmtr->mEmitCount = newEmitCount; emitCount = (s32)newEmitCount; work->mpEmtr->mEmitCount -= emitCount; - if (work->mpEmtr->checkStatus(JPAEmtrStts_FirstEmit) && 0.0f < newPtclCount && newPtclCount < 1.0f) + if (work->mpEmtr->checkStatus(JPAEmtrStts_FirstEmit) && 0.0f < newPtclCount && + newPtclCount < 1.0f) emitCount = 1; } diff --git a/libs/JSystem/JUtility/JUTGamePad.cpp b/libs/JSystem/JUtility/JUTGamePad.cpp index a92a50544d..92d6f91cc3 100644 --- a/libs/JSystem/JUtility/JUTGamePad.cpp +++ b/libs/JSystem/JUtility/JUTGamePad.cpp @@ -4,9 +4,9 @@ // #include "JSystem/JUtility/JUTGamePad.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Forward References: @@ -129,7 +129,7 @@ u8 JUTGamePad::mPadAssign[4]; JUTGamePad::JUTGamePad(EPadPort port) : mRumble(this), mLink(this) { mPortNum = port; if (mPortNum >= 0) { - mPadAssign[port]++; + mPadAssign[port]++; } initList(); @@ -224,8 +224,12 @@ u32 JUTGamePad::read() { for (int i = 0; i < 4; i++) { u32 mask_tmp = 0x80000000 >> i; if (mPadStatus[i].error == 0) { - u32 m_stick = mPadMStick[i].update(mPadStatus[i].stick_x, mPadStatus[i].stick_y, sStickMode, WS_MAIN_STICK, mPadButton[i].mButton) << 0x18; - u32 s_stick = mPadSStick[i].update(mPadStatus[i].substick_x, mPadStatus[i].substick_y, sStickMode, WS_SUB_STICK, mPadButton[i].mButton) << 0x10; + u32 m_stick = mPadMStick[i].update(mPadStatus[i].stick_x, mPadStatus[i].stick_y, + sStickMode, WS_MAIN_STICK, mPadButton[i].mButton) + << 0x18; + u32 s_stick = mPadSStick[i].update(mPadStatus[i].substick_x, mPadStatus[i].substick_y, + sStickMode, WS_SUB_STICK, mPadButton[i].mButton) + << 0x10; u32 tmp = m_stick | s_stick; mPadButton[i].update(&mPadStatus[i], tmp); } else if (mPadStatus[i].error == -1) { @@ -248,8 +252,12 @@ u32 JUTGamePad::read() { if (pad->getPadReplay() && pad->getPadReplay()->mActive) { PADStatus status; pad->getPadReplay()->unk1(&status); - u32 m_stick = pad->mMainStick.update(status.stick_x, status.stick_y, sStickMode, WS_MAIN_STICK, pad->mButton.mButton) << 0x18; - u32 s_stick = pad->mSubStick.update(status.substick_x, status.substick_y, sStickMode, WS_SUB_STICK, pad->mButton.mButton) << 0x10; + u32 m_stick = pad->mMainStick.update(status.stick_x, status.stick_y, sStickMode, + WS_MAIN_STICK, pad->mButton.mButton) + << 0x18; + u32 s_stick = pad->mSubStick.update(status.substick_x, status.substick_y, sStickMode, + WS_SUB_STICK, pad->mButton.mButton) + << 0x10; pad->mButton.update(&status, m_stick | s_stick); } else { if (pad->mPortNum == -1) { @@ -369,7 +377,8 @@ void JUTGamePad::update() { mErrorStatus = mPadStatus[mPortNum].error; } - if (field_0xa8 == 0 || (mButton.mButton & C3ButtonReset::sResetMaskPattern) != C3ButtonReset::sResetPattern) { + if (field_0xa8 == 0 || + (mButton.mButton & C3ButtonReset::sResetMaskPattern) != C3ButtonReset::sResetPattern) { mButtonReset.mReset = false; } else if (!struct_80451501) { if (mButtonReset.mReset == true) { @@ -423,7 +432,7 @@ void JUTGamePad::checkResetSwitch() { if (struct_80451500 == true) { struct_80451501 = true; C3ButtonReset::sResetOccurredPort = -1; - + if (C3ButtonReset::sCallback != NULL) { C3ButtonReset::sCallback(-1, C3ButtonReset::sCallbackArg); } @@ -465,21 +474,22 @@ void JUTGamePad::CButton::update(PADStatus const* padStatus, u32 stickStatus) { } else { buttons = 0; } - + buttons = stickStatus | buttons; mRepeat = 0; - + if (field_0x28 != 0 && field_0x24 != 0) { u32 repeatButton = buttons & field_0x24; mRepeat = 0; - + if (repeatButton == 0) { field_0x20 = 0; field_0x1c = 0; } else if (field_0x20 == repeatButton) { field_0x1c++; - - if (field_0x1c == field_0x28 || (field_0x1c > field_0x28 && (field_0x1c - field_0x28) % field_0x2c == 0)) { + + if (field_0x1c == field_0x28 || + (field_0x1c > field_0x28 && (field_0x1c - field_0x28) % field_0x2c == 0)) { mRepeat = repeatButton; } } else { @@ -521,7 +531,7 @@ void JUTGamePad::CStick::clear() { /* 802E1238-802E1500 2DBB78 02C8+00 1/1 0/0 0/0 .text * update__Q210JUTGamePad6CStickFScScQ210JUTGamePad10EStickModeQ210JUTGamePad11EWhichStickUl */ u32 JUTGamePad::CStick::update(s8 x_val, s8 y_val, JUTGamePad::EStickMode mode, - JUTGamePad::EWhichStick stick, u32 buttons) { + JUTGamePad::EWhichStick stick, u32 buttons) { s32 clamp; switch (sClampMode) { case 1: @@ -689,7 +699,7 @@ asm void JUTGamePad::CRumble::stopPatternedRumbleAtThePeriod() { /* 802E199C-802E19D8 2DC2DC 003C+00 1/1 1/1 0/0 .text getGamePad__10JUTGamePadFi */ JUTGamePad* JUTGamePad::getGamePad(int padNo) { JSUListIterator<JUTGamePad> pad(mPadList.getFirst()); - + for (; pad != mPadList.getEnd(); pad++) { if (padNo == pad->mPortNum) { return pad.getObject(); @@ -736,7 +746,6 @@ bool JUTGamePad::recalibrate(u32 mask) { return PADRecalibrate((PADMask)mask); } - /* 802E1AFC-802E1B60 2DC43C 0064+00 1/1 0/0 0/0 .text checkCallback__19JUTGamePadLongPressFiUl */ void JUTGamePadLongPress::checkCallback(int port, u32 timer) { if (port >= 0 && timer >= field_0x1c) { |
