Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions include/JSystem/J3DGraphBase/J3DTransform.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ struct J3DTransformInfo {
asm {
psq_l var_f31, 0x0(var_r31), 0, 0
psq_st var_f31, 0x0(var_r30), 0, 0
lfs var_f0, 0x8(var_r31)
stfs var_f0, 0x8(var_r30)
lfs var_f31, 0x8(var_r31)
stfs var_f31, 0x8(var_r30)
lwz var_r0, 0xc(var_r31)
stw var_r0, 0xc(var_r30)
lha var_r0, 0x10(var_r31)
Expand Down
9 changes: 6 additions & 3 deletions include/d/actor/d_a_obj_crope.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,13 @@ class daObjCrope_c : public fopAc_ac_c {
void onOutFlg() { mOutFlg = true; }
void setFrontJoint(int i_jointNo) { mFrontJoint = i_jointNo; }
void setBackJoint(int i_jointNo) { mBackJoint = i_jointNo; }

f32 getStartRate(const cXyz* param_0) {
return field_0x714 ? field_0x724 * (param_0->x - getRopeStartPos()->x) :
field_0x724 * (param_0->z - getRopeStartPos()->z);
if (field_0x714) {
return field_0x724 * (param_0->x - getRopeStartPos()->x);
} else {
return field_0x724 * (param_0->z - getRopeStartPos()->z);
}
}

void rideKeep() {
Expand Down
26 changes: 12 additions & 14 deletions src/d/actor/d_a_alink.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4466,12 +4466,11 @@ BOOL daAlink_c::checkHorseStart(u32 pLastMode, int pStartMode) {
}

/* 800A551C-800A5CC8 09FE5C 07AC+00 1/1 0/0 0/0 .text setStartProcInit__9daAlink_cFv */
// small regalloc, equivalent
int daAlink_c::setStartProcInit() {
BOOL sp10 = 0;
int start_mode = getStartMode();
u32 last_mode = getLastSceneMode();
daHorse_c* horsep = dComIfGp_getHorseActor();
daHorse_c* horsep = (daHorse_c*)dComIfGp_getHorseActor();
BOOL horse_start = checkHorseStart(last_mode, start_mode);

setDamagePoint(getLastSceneDamage(), last_mode == 4, 0, 1);
Expand Down Expand Up @@ -6616,15 +6615,14 @@ void daAlink_c::setFrameCtrl(daPy_frameCtrl_c* i_ctrl, u8 i_attr, s16 i_start, s
i_ctrl->setFrameCtrl(i_attr, i_start, i_end, i_rate, i_frame);
}

/* 80453278-80453280 001878 0008+00 1/1 0/0 0/0 .sdata2 kandelaarAnm$62207 */
static const daAlink_BckData kandelaarAnm[2] = {
{0x026A, 0x0268}, // waits, waitk
{0x0266, 0x0264}, // waiths, waithk
};

/* 800AC450-800AC558 0A6D90 0108+00 23/23 0/0 0/0 .text
* getMainBckData__9daAlink_cCFQ29daAlink_c11daAlink_ANM */
const daAlink_BckData* daAlink_c::getMainBckData(daAlink_c::daAlink_ANM i_anmID) const {
static const daAlink_BckData kandelaarAnm[2] = {
{0x026A, 0x0268}, // waits, waitk
{0x0266, 0x0264}, // waiths, waithk
};

if (mEquipItem == fpcNm_ITEM_KANTERA) {
if (i_anmID == ANM_WAIT) {
return &kandelaarAnm[0];
Expand Down Expand Up @@ -11178,11 +11176,10 @@ void daAlink_c::orderPeep() {
}
}

/* 804532B0-804532B4 0018B0 0004+00 1/1 0/0 0/0 .sdata2 itemTalkType$67468 */
static const u16 itemTalkType[2] = {6, 7};

/* 800B7BF8-800B7D4C 0B2538 0154+00 13/13 0/0 0/0 .text orderTalk__9daAlink_cFi */
int daAlink_c::orderTalk(int i_checkZTalk) {
static const u16 itemTalkType[2] = {6, 7};

if (notTalk()) {
return 0;
}
Expand Down Expand Up @@ -18712,7 +18709,6 @@ bool daAlink_c::checkItemDraw() {

/* 800CB694-800CBA38 0C5FD4 03A4+00 0/0 0/0 1/1 .text initShadowScaleLight__9daAlink_cFv
*/
// NONMATCHING - float stuff
int daAlink_c::initShadowScaleLight() {
dKy_shadow_mode_set(4);

Expand Down Expand Up @@ -18770,8 +18766,10 @@ int daAlink_c::initShadowScaleLight() {
field_0x375c.x = current.pos.x - (var_f31 * temp_f29);
field_0x375c.z = current.pos.z - (var_f31 * temp_f28);
} else {
field_0x375c.x = current.pos.x - (-30.0f * temp_f29) - (65.0f * temp_f28);
field_0x375c.z = current.pos.z - (-30.0f * temp_f28) + (65.0f * temp_f29);
field_0x375c.x = current.pos.x - (temp_f29 * -30.0f) - (temp_f28 * 65.0f);
// likely fakematch - debug indicates there probably isn't a temp
f32 temp = current.pos.z - (temp_f28 * -30.0f);
field_0x375c.z = temp + (temp_f29 * 65.0f);
}

if (checkReinRide()) {
Expand Down
13 changes: 7 additions & 6 deletions src/d/actor/d_a_alink_crawl.inc
Original file line number Diff line number Diff line change
Expand Up @@ -28,25 +28,26 @@ f32 daAlink_c::getCrawlMoveSpeed() {

/* 800F7CE8-800F7E48 0F2628 0160+00 4/4 0/0 0/0 .text setCrawlMoveDirectionArrow__9daAlink_cFv */
void daAlink_c::setCrawlMoveDirectionArrow() {
static const u8 data_80452F38[2] = {1, 4};
static const u8 data_80452F38[1] = {1};
static const u8 data_80452F39[1] = {4};

u8 direction = 0;
camera_class* camera = dComIfGp_getCamera(field_0x317c);
camera_class* camera = (camera_class*)dComIfGp_getCamera(field_0x317c);
BOOL bvar = cLib_distanceAngleS(fopCamM_GetAngleY(camera), shape_angle.y) > 0x4000;

if (field_0x3198 & 4) {
if (!bvar) {
direction = data_80452F38[0];
direction = *data_80452F38;
} else {
direction = data_80452F38[1];
direction = *data_80452F39;
}
}

if (field_0x3198 & 8) {
if (!bvar) {
direction |= data_80452F38[1];
direction |= *data_80452F39;
} else {
direction |= data_80452F38[0];
direction |= *data_80452F38;
}
}

Expand Down
7 changes: 3 additions & 4 deletions src/d/actor/d_a_alink_cut.inc
Original file line number Diff line number Diff line change
Expand Up @@ -1696,9 +1696,8 @@ int daAlink_c::procCutTurnInit(int param_0, int param_1) {

setSingleAnime(anmID, anm_data->mSpeed, var_f31, anm_data->mEndFrame, morf);

int var_r29_3;
if (checkCutLargeTurnState()) {
var_r29_3 = 4;
param_1 = 4;
field_0x32cc = Z2SE_AL_KAITEN_L_SLASH;
setSwordVoiceSe(Z2SE_AL_V_KAITENGIRI_L);
field_0x3478 = cutData->mLargeAttackRadius;
Expand All @@ -1710,7 +1709,7 @@ int daAlink_c::procCutTurnInit(int param_0, int param_1) {
setCutType(CUT_TYPE_LARGE_TURN_LEFT);
}
} else {
var_r29_3 = 3;
param_1 = 3;
field_0x32cc = Z2SE_AL_KAITENGIRI;
setSwordVoiceSe(Z2SE_AL_V_KAITEN);

Expand Down Expand Up @@ -1738,7 +1737,7 @@ int daAlink_c::procCutTurnInit(int param_0, int param_1) {
mNormalSpeed = 0.0f;
mProcVar5.field_0x3012 = 0;
setCutWaterDropEffect();
initCutTurnAt(field_0x347c, var_r29_3);
initCutTurnAt(field_0x347c, param_1);
return 1;
}

Expand Down
9 changes: 4 additions & 5 deletions src/d/actor/d_a_alink_damage.inc
Original file line number Diff line number Diff line change
Expand Up @@ -177,27 +177,26 @@ f32 daAlink_c::damageMagnification(int i_checkZoraMag, int param_1) {
}

/* 800D72BC-800D7478 0D1BFC 01BC+00 6/6 1/1 0/0 .text setDamagePoint__9daAlink_cFiiii */
// NONMATCHING - regalloc
int daAlink_c::setDamagePoint(int i_dmgAmount, int i_checkZoraMag, int i_setDmgTimer, int param_3) {
if (i_dmgAmount <= 0) {
dComIfGp_setItemLifeCount(-i_dmgAmount, 0);
return 0;
}

f32 magnified_dmgF = (f32)i_dmgAmount * damageMagnification(i_checkZoraMag, param_3);
int magnified_dmg = magnified_dmgF;
i_dmgAmount = magnified_dmgF;
if ((int)(magnified_dmgF * 10.0f) % 10 != 0) {
magnified_dmg++;
i_dmgAmount++;
}

if (checkWolf()) {
offWolfEyeUp();
}

if (checkMagicArmorNoDamage()) {
dComIfGp_setItemRupeeCount(-magnified_dmg * 10);
dComIfGp_setItemRupeeCount(-i_dmgAmount * 10);
} else {
dComIfGp_setItemLifeCount(-magnified_dmg, 0);
dComIfGp_setItemLifeCount(-i_dmgAmount, 0);
}

onResetFlg1(RFLG1_DAMAGE_IMPACT);
Expand Down
Loading