mirror of
https://github.com/zeldaret/ss
synced 2026-08-09 10:53:09 -04:00
more matches
This commit is contained in:
@@ -30,7 +30,55 @@ drawOpa__11dShpProc1_cFv = .text:0x00002990; // type:function size:0x4
|
||||
@272@__dt__15dCcD_Linked_SphFv = .text:0x000029A0; // type:function size:0x8
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
lbl_14_rodata_0 = .rodata:0x00000000; // type:object size:0xC4 data:float
|
||||
lbl_14_rodata_0 = .rodata:0x00000000; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_4 = .rodata:0x00000004; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_8 = .rodata:0x00000008; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_c = .rodata:0x0000000C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_18 = .rodata:0x00000018; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_1c = .rodata:0x0000001C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_20 = .rodata:0x00000020; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_28 = .rodata:0x00000028; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_2c = .rodata:0x0000002C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_30 = .rodata:0x00000030; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_34 = .rodata:0x00000034; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_38 = .rodata:0x00000038; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_3c = .rodata:0x0000003C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_40 = .rodata:0x00000040; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_44 = .rodata:0x00000044; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_48 = .rodata:0x00000048; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_4c = .rodata:0x0000004C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_50 = .rodata:0x00000050; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_54 = .rodata:0x00000054; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_58 = .rodata:0x00000058; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_5c = .rodata:0x0000005C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_60 = .rodata:0x00000060; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_64 = .rodata:0x00000064; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_68 = .rodata:0x00000068; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_6c = .rodata:0x0000006C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_70 = .rodata:0x00000070; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_74 = .rodata:0x00000074; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_78 = .rodata:0x00000078; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_7c = .rodata:0x0000007C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_80 = .rodata:0x00000080; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_84 = .rodata:0x00000084; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_88 = .rodata:0x00000088; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_8c = .rodata:0x0000008C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_90 = .rodata:0x00000090; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_94 = .rodata:0x00000094; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_98 = .rodata:0x00000098; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_9c = .rodata:0x0000009C; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_a0 = .rodata:0x000000A0; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_a4 = .rodata:0x000000A4; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_a8 = .rodata:0x000000A8; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_ac = .rodata:0x000000AC; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_b0 = .rodata:0x000000B0; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_b4 = .rodata:0x000000B4; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_b8 = .rodata:0x000000B8; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_bc = .rodata:0x000000BC; // type:object size:0x4 data:float
|
||||
lbl_14_rodata_c0 = .rodata:0x000000C0; // type:object size:0x4 data:float
|
||||
g_profile_NPC_BEE = .data:0x00000000; // type:object size:0x10 data:4byte
|
||||
beeColliderSrc = .data:0x00000010; // type:object size:0x2C
|
||||
lbl_14_data_3C = .data:0x0000003C; // type:object size:0x6 data:string
|
||||
@@ -39,7 +87,10 @@ lbl_14_data_4C = .data:0x0000004C; // type:object size:0x7 data:string
|
||||
lbl_14_data_54 = .data:0x00000054; // type:object size:0x7 data:string
|
||||
@LOCAL@createHeap__11dAcNpcBee_cFv@sModelNames = .data:0x00000060; // type:object size:0x10 data:4byte
|
||||
lbl_14_data_70 = .data:0x00000070; // type:object size:0x4 data:string
|
||||
lbl_14_data_74 = .data:0x00000074; // type:object size:0x28
|
||||
lbl_14_data_74 = .data:0x00000074; // type:object size:0x19 data:string
|
||||
lbl_14_data_90 = .data:0x00000090; // type:object size:0x4
|
||||
lbl_14_data_94 = .data:0x00000094; // type:object size:0x4
|
||||
lbl_14_data_98 = .data:0x00000098; // type:object size:0x4
|
||||
__vt__11dAcNpcBee_c = .data:0x0000009C; // type:object size:0x8C
|
||||
__vt__15dCcD_Linked_Sph = .data:0x00000128; // type:object size:0x70
|
||||
__vt__11dShpProc1_c = .data:0x00000198; // type:object size:0x58
|
||||
|
||||
@@ -40,6 +40,14 @@
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(NPC_BEE, dAcNpcBee_c, fProfile::NPC_BEE, 0x123, 0, 0);
|
||||
|
||||
static dCcD_SrcSph beeColliderSrc = {
|
||||
/* mObjInf */ {/* mObjAt */ {AT_TYPE_0x2000000, 0x20000F, {0, 0, 0}, 1, 0, 0, 0, 0, 0},
|
||||
/* mObjTg */ {AT_TYPE_BUGNET | AT_TYPE_BELLOWS | AT_TYPE_BOMB, 0x00004011, {0, 00, 0x40F}, 8, 0},
|
||||
/* mObjCo */ {0}},
|
||||
/* mSphInf */
|
||||
{15.0f}
|
||||
};
|
||||
|
||||
bool dAcNpcBee_c::createHeap() {
|
||||
mRes = nw4r::g3d::ResFile(getOarcResFile("Bee"));
|
||||
static const char *sModelNames[4] = {
|
||||
@@ -55,15 +63,7 @@ bool dAcNpcBee_c::createHeap() {
|
||||
}
|
||||
return SUCCEEDED;
|
||||
}
|
||||
static dCcD_SrcSph beeColliderSrc = {
|
||||
/* mObjInf */ {/* mObjAt */ {AT_TYPE_0x2000000, 0x20000F, {0, 0, 0}, 1, 0, 0, 0, 0, 0},
|
||||
/* mObjTg */ {AT_TYPE_BUGNET | AT_TYPE_BELLOWS | AT_TYPE_BOMB, 0x00004011, {0, 00, 0x40F}, 8, 0},
|
||||
/* mObjCo */ {0}},
|
||||
/* mSphInf */
|
||||
{15.0f}
|
||||
};
|
||||
|
||||
// non matching
|
||||
int dAcNpcBee_c::create() {
|
||||
mSceneflag = getFromParams(0x10, 0xFF);
|
||||
// mRoom regalloc
|
||||
@@ -85,9 +85,8 @@ int dAcNpcBee_c::create() {
|
||||
bee->mHide = 1;
|
||||
}
|
||||
}
|
||||
// probably inline here, regswaps
|
||||
setInteractionFlags(0x80);
|
||||
mStts.SetRank(3);
|
||||
mInteractionFlags |= 0x80;
|
||||
mColliderList.SetStts(mStts);
|
||||
mFrameCounter = cM::rndF(65536);
|
||||
dAcObjBase_c *honeycomb =
|
||||
@@ -156,12 +155,13 @@ void dAcNpcBee_c::actuallyUpdateSwarmBees() {
|
||||
int beeModelIndex = 0;
|
||||
static mVec3_c colliderDisabledPos(10000.f, -20000.f, 50000.f);
|
||||
dCamera_c *camera = dScGame_c::getCamera();
|
||||
bool hideBee;
|
||||
bool isFirst = true;
|
||||
int flyingBeeCount = 0;
|
||||
mAttackActorDistFromHome = mStartingPos.distance(mAttackActor->mPositionCopy2);
|
||||
mPosition = mStartingPos;
|
||||
for (int i = 0; i < mSwarmBeeCount; i++, bee++) {
|
||||
bool hideBee = true;
|
||||
for (u32 i = 0; (s32)i < mSwarmBeeCount; i++, bee++) {
|
||||
hideBee = true;
|
||||
mMtx_c mtx;
|
||||
if (bee->mBeeState != dAcNpcBeeSingleBee::BEE_STATE_DEAD) {
|
||||
beesAlive++;
|
||||
@@ -513,8 +513,8 @@ void dAcNpcBee_c::handleBeeFlyingStates(dAcNpcBeeSingleBee *bee) {
|
||||
if (distToTarget > 500.f) {
|
||||
distToTarget = 500.f;
|
||||
}
|
||||
// weird mul vs slwi
|
||||
offsetToTarget.x += distToTarget * nw4r::math::SinIdx(bee->mTimer * 0x300);
|
||||
// seems fake, I suspenct there is an inline that takes s16
|
||||
offsetToTarget.x += distToTarget * nw4r::math::SinIdx((s16)(bee->mTimer * 0x400));
|
||||
offsetToTarget.y += distToTarget * nw4r::math::CosIdx(bee->mTimer * 0x300) * 0.5f;
|
||||
offsetToTarget.z += distToTarget * nw4r::math::CosIdx(bee->mTimer * 0x500);
|
||||
}
|
||||
@@ -529,9 +529,8 @@ void dAcNpcBee_c::handleBeeFlyingStates(dAcNpcBeeSingleBee *bee) {
|
||||
} else {
|
||||
s32 fVar17 = nw4r::math::SinIdx(bee->mTimer * 0xDAC) * 1500.f;
|
||||
s32 fVar16 = nw4r::math::SinIdx(bee->mTimer * 3000) * 1500.f;
|
||||
// non match
|
||||
sLib::addCalcAngle(bee->mCrawlingRotation.y.ref(), fVar17 + offsetToTarget.atan2sX_Z(), 1, 0x1000);
|
||||
sLib::addCalcAngle(bee->mCrawlingRotation.x.ref(), fVar16 - offsetToTarget.atan2sY_XZ(), 1, 0x1000);
|
||||
sLib::addCalcAngle(bee->mCrawlingRotation.y.ref(), fVar17 + cM::atan2s(offsetToTarget.x, offsetToTarget.z), 1, 0x1000);
|
||||
sLib::addCalcAngle(bee->mCrawlingRotation.x.ref(), fVar16 - cM::atan2s(offsetToTarget.y, offsetToTarget.absXZ()), 1, 0x1000);
|
||||
}
|
||||
}
|
||||
mtx.YrotS(bee->mCrawlingRotation.y);
|
||||
|
||||
Reference in New Issue
Block a user