mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
Misc. framework/d/ improvements (#2572)
This commit is contained in:
@@ -21819,7 +21819,8 @@ m_mode__7dDemo_c = .sbss:0x80450E38; // type:object size:0x4 scope:global align:
|
||||
m_status__7dDemo_c = .sbss:0x80450E3C; // type:object size:0x4 scope:global align:4 data:4byte
|
||||
m_branchType__7dDemo_c = .sbss:0x80450E40; // type:object size:0x2 scope:global align:2 data:2byte
|
||||
m_branchData__7dDemo_c = .sbss:0x80450E44; // type:object size:0x4 scope:global align:4 data:4byte
|
||||
struct_80450E48 = .sbss:0x80450E48; // type:object size:0x4 scope:local align:4 data:byte
|
||||
init$1867 = .sbss:0x80450E48; // type:object size:0x1 scope:local align:1 data:byte
|
||||
init$1870 = .sbss:0x80450E49; // type:object size:0x1 scope:local align:1 data:byte
|
||||
it = .sbss:0x80450E4C; // type:object size:0x4 scope:local align:4 data:4byte
|
||||
init$1672 = .sbss:0x80450E50; // type:object size:0x1 scope:local align:1 data:byte
|
||||
mNowStayFloorNo__10dMapInfo_c = .sbss:0x80450E58; // type:object size:0x1 scope:global align:1 data:byte
|
||||
|
||||
+1
-1
@@ -548,7 +548,7 @@ config.libs = [
|
||||
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_a_item_static.cpp"),
|
||||
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_a_shop_item_static.cpp"),
|
||||
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_a_horse_static.cpp"),
|
||||
Object(NonMatching, "d/d_demo.cpp"),
|
||||
Object(MatchingFor("GZ2E01"), "d/d_demo.cpp"),
|
||||
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_door_param2.cpp", extra_cflags=['-pragma "nosyminline on"']),
|
||||
Object(NonMatching, "d/d_resorce.cpp"),
|
||||
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_map_path.cpp"),
|
||||
|
||||
@@ -160,7 +160,7 @@ public:
|
||||
void setGlobalParticleScale(f32 scaleX, f32 scaleY) {
|
||||
mGlobalPScl.set(scaleX, scaleY);
|
||||
}
|
||||
void getGlobalParticleScale(JGeometry::TVec3<f32>& scale) {
|
||||
void getGlobalParticleScale(JGeometry::TVec3<f32>& scale) const {
|
||||
scale.set(mGlobalPScl.x, mGlobalPScl.y, 1.0f);
|
||||
}
|
||||
void setGlobalScale(const JGeometry::TVec3<f32>& scale) {
|
||||
|
||||
+16
-16
@@ -94,19 +94,8 @@ public:
|
||||
cMtx_copy(mModel->getAnmMtx((u16)param_0), param_1);
|
||||
return true;
|
||||
}
|
||||
/* 8003A0D8 */ virtual void JSGGetTranslation(Vec* o_trans) const {
|
||||
*o_trans = mTrans;
|
||||
}
|
||||
/* 80038920 */ virtual void JSGSetTranslation(Vec const&);
|
||||
/* 8003A0F4 */ virtual void JSGGetScaling(Vec* o_scale) const {
|
||||
*o_scale = mScale;
|
||||
}
|
||||
/* 80038980 */ virtual void JSGSetScaling(Vec const&);
|
||||
/* 8003A110 */ virtual void JSGGetRotation(Vec* param_0) const {
|
||||
param_0->x = mRotate.x * 0.005493164f;
|
||||
param_0->y = mRotate.y * 0.005493164f;
|
||||
param_0->z = mRotate.z * 0.005493164f;
|
||||
}
|
||||
/* 800389A8 */ virtual void JSGSetRotation(Vec const&);
|
||||
/* 80038A0C */ virtual void JSGSetShape(u32);
|
||||
/* 80038A20 */ virtual void JSGSetAnimation(u32);
|
||||
@@ -120,6 +109,17 @@ public:
|
||||
/* 8003A0D0 */ virtual f32 JSGGetTextureAnimationFrameMax() const {
|
||||
return mTexAnmFrameMax;
|
||||
}
|
||||
/* 8003A0D8 */ virtual void JSGGetTranslation(Vec* o_trans) const {
|
||||
*o_trans = mTrans;
|
||||
}
|
||||
/* 8003A0F4 */ virtual void JSGGetScaling(Vec* o_scale) const {
|
||||
*o_scale = mScale;
|
||||
}
|
||||
/* 8003A110 */ virtual void JSGGetRotation(Vec* param_0) const {
|
||||
param_0->x = mRotate.x * 0.005493164f;
|
||||
param_0->y = mRotate.y * 0.005493164f;
|
||||
param_0->z = mRotate.z * 0.005493164f;
|
||||
}
|
||||
|
||||
void setModel(J3DModel* p_model) { mModel = p_model; }
|
||||
BOOL checkEnable(u16 flag) { return mFlags & flag; }
|
||||
@@ -164,9 +164,9 @@ class dDemo_system_c : public JStage::TSystem {
|
||||
public:
|
||||
dDemo_system_c() { mpObject = NULL; }
|
||||
|
||||
/* 80039AAC */ virtual ~dDemo_system_c();
|
||||
/* 80039528 */ virtual int JSGFindObject(JStage::TObject**, char const*,
|
||||
JStage::TEObject) const;
|
||||
/* 80039AAC */ virtual ~dDemo_system_c();
|
||||
|
||||
void setObject(dDemo_object_c* i_object) { mpObject = i_object; }
|
||||
|
||||
@@ -198,13 +198,13 @@ public:
|
||||
mFlags = 0;
|
||||
}
|
||||
|
||||
/* 80039468 */ virtual ~dDemo_light_c();
|
||||
/* 80038E20 */ virtual void JSGSetLightType(JStage::TELight);
|
||||
/* 80038E34 */ virtual void JSGSetPosition(Vec const&);
|
||||
/* 80038E5C */ virtual void JSGSetColor(GXColor);
|
||||
/* 80038E8C */ virtual void JSGSetDistanceAttenuation(f32, f32, GXDistAttnFn);
|
||||
/* 80038EA8 */ virtual void JSGSetAngleAttenuation(f32, GXSpotFn);
|
||||
/* 80038EC0 */ virtual void JSGSetDirection(Vec const&);
|
||||
/* 80039468 */ virtual ~dDemo_light_c();
|
||||
|
||||
void onEnable(u8 flag) { mFlags |= flag; }
|
||||
|
||||
@@ -234,11 +234,11 @@ public:
|
||||
mFlags = 0;
|
||||
}
|
||||
|
||||
/* 80039408 */ virtual ~dDemo_fog_c();
|
||||
/* 80038EE8 */ virtual void JSGSetFogFunction(GXFogType);
|
||||
/* 80038EFC */ virtual void JSGSetStartZ(f32);
|
||||
/* 80038F10 */ virtual void JSGSetEndZ(f32);
|
||||
/* 80038F24 */ virtual void JSGSetColor(GXColor);
|
||||
/* 80039408 */ virtual ~dDemo_fog_c();
|
||||
|
||||
void onEnable(u8 flag) { mFlags |= flag; }
|
||||
|
||||
@@ -267,7 +267,6 @@ public:
|
||||
mFlags = 0;
|
||||
}
|
||||
|
||||
/* 80039FFC */ virtual ~dDemo_camera_c();
|
||||
/* 80038AC4 */ virtual f32 JSGGetProjectionNear() const;
|
||||
/* 80038AF8 */ virtual void JSGSetProjectionNear(f32);
|
||||
/* 80038B0C */ virtual f32 JSGGetProjectionFar() const;
|
||||
@@ -284,6 +283,7 @@ public:
|
||||
/* 80038D5C */ virtual void JSGSetViewTargetPosition(Vec const&);
|
||||
/* 80038D84 */ virtual f32 JSGGetViewRoll() const;
|
||||
/* 80038DDC */ virtual void JSGSetViewRoll(f32);
|
||||
/* 80039FFC */ virtual ~dDemo_camera_c();
|
||||
|
||||
void onEnable(u8 flag) { mFlags |= flag; }
|
||||
bool checkEnable(u8 flag) { return mFlags & flag; }
|
||||
@@ -316,8 +316,8 @@ public:
|
||||
mFlags = 0;
|
||||
}
|
||||
|
||||
/* 800394C8 */ virtual ~dDemo_ambient_c();
|
||||
/* 80038DF0 */ virtual void JSGSetColor(GXColor);
|
||||
/* 800394C8 */ virtual ~dDemo_ambient_c();
|
||||
|
||||
void onEnable(u8 flag) { mFlags |= flag; }
|
||||
|
||||
|
||||
+11
-7
@@ -255,7 +255,9 @@ int dDemo_actor_c::getDemoIDData(int* param_0, int* param_1, int* param_2, u16*
|
||||
return 1;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
s16 dDemo_c::m_branchNum = 0;
|
||||
#endif
|
||||
|
||||
/* 80038490-80038518 032DD0 0088+00 1/1 0/0 0/0 .text dDemo_getJaiPointer__FPCcUliPUs */
|
||||
static void* dDemo_getJaiPointer(char const* arcName, u32 anmID, int param_2, u16* param_3) {
|
||||
@@ -287,8 +289,7 @@ int dDemo_setDemoData(fopAc_ac_c* i_actor, u8 i_flags, mDoExt_McaMorf* i_morf, c
|
||||
|
||||
u8 flags = demo_actor->checkEnable(i_flags);
|
||||
if (flags & dDemo_actor_c::ENABLE_TRANS_e) {
|
||||
i_actor->current.pos = demo_actor->getTrans();
|
||||
i_actor->old.pos = i_actor->current.pos;
|
||||
i_actor->old.pos = i_actor->current.pos = demo_actor->getTrans();
|
||||
}
|
||||
|
||||
if (flags & dDemo_actor_c::ENABLE_ROTATE_e) {
|
||||
@@ -311,24 +312,26 @@ int dDemo_setDemoData(fopAc_ac_c* i_actor, u8 i_flags, mDoExt_McaMorf* i_morf, c
|
||||
|
||||
if (flags & dDemo_actor_c::ENABLE_ANM_e) {
|
||||
u32 anmID = demo_actor->getAnmId();
|
||||
void* ptr;
|
||||
|
||||
if (anmID != demo_actor->getOldAnmId()) {
|
||||
const char* a_name;
|
||||
if (anmID & 0x10000) {
|
||||
a_name = dStage_roomControl_c::getDemoArcName();
|
||||
JUT_ASSERT(267, a_name != NULL);
|
||||
JUT_ASSERT(0x267, a_name != NULL);
|
||||
} else {
|
||||
a_name = i_arcName;
|
||||
}
|
||||
|
||||
demo_actor->setOldAnmId(anmID);
|
||||
|
||||
J3DAnmTransform* i_key = (J3DAnmTransform*)dComIfG_getObjectIDRes(a_name, anmID);
|
||||
J3DAnmTransform* i_key = (J3DAnmTransform*)dComIfG_getObjectIDRes(a_name, anmID & 0xffff);
|
||||
JUT_ASSERT(272, i_key != 0);
|
||||
|
||||
void* ptr = dDemo_getJaiPointer(a_name, anmID, param_4, param_5);
|
||||
ptr = dDemo_getJaiPointer(a_name, anmID & 0xffff, param_4, param_5);
|
||||
|
||||
i_morf->setAnm(i_key, -1, demo_actor->getPrm_Morf(), 1.0f, 0.0f, -1.0f, ptr);
|
||||
f32 prmMorf = demo_actor->getPrm_Morf();
|
||||
i_morf->setAnm(i_key, -1, prmMorf, 1.0f, 0.0f, -1.0f, ptr);
|
||||
demo_actor->setAnmFrameMax(i_morf->getEndFrame());
|
||||
}
|
||||
}
|
||||
@@ -337,7 +340,8 @@ int dDemo_setDemoData(fopAc_ac_c* i_actor, u8 i_flags, mDoExt_McaMorf* i_morf, c
|
||||
f32 anm_frame = demo_actor->getAnmFrame();
|
||||
|
||||
if (anm_frame > 1.0f) {
|
||||
i_morf->setFrame(anm_frame - 1.0f);
|
||||
anm_frame -= 1.0f;
|
||||
i_morf->setFrame(anm_frame);
|
||||
i_morf->play(&i_actor->current.pos, param_6, i_reverb);
|
||||
} else {
|
||||
i_morf->setFrame(anm_frame);
|
||||
|
||||
+163
-164
File diff suppressed because it is too large
Load Diff
+16
-22
@@ -1112,22 +1112,19 @@ void renderingPlusDoorAndCursor_c::drawTreasure() {
|
||||
int group_num = getIconGroupNumber(tmp);
|
||||
|
||||
if (group_num != 0) {
|
||||
JUT_ASSERT(0xaf9, typeGroupData_p != 0);
|
||||
|
||||
f32 icon_size = getIconSize(tmp) * mCmPerTexel;
|
||||
f32 icon_size_2 = icon_size;
|
||||
|
||||
GXInvalidateTexAll();
|
||||
GXTexObj* texObj_p =
|
||||
dMpath_n::m_texObjAgg.getTexObjPointer(l_treasureDispList[i].field_0x4);
|
||||
GXLoadTexObj(texObj_p, GX_TEXMAP0);
|
||||
GXLoadTexObj(dMpath_n::m_texObjAgg.getTexObjPointer(l_treasureDispList[i].field_0x4), GX_TEXMAP0);
|
||||
GXColor sp18;
|
||||
const GXColor* temp_r3_2 = l_treasureDispList[i].field_0x8;
|
||||
sp18.r = temp_r3_2->r;
|
||||
sp18.g = temp_r3_2->g;
|
||||
sp18.b = temp_r3_2->b;
|
||||
sp18.a = temp_r3_2->a;
|
||||
sp18 = *l_treasureDispList[i].field_0x8;
|
||||
|
||||
GXSetTevColor(GX_TEVREG1, sp18);
|
||||
|
||||
sp18.r += 4;
|
||||
sp18.r += (u8)4;
|
||||
GXSetTevColor(GX_TEVREG2, sp18);
|
||||
|
||||
for (int j = 0; j < group_num && typeGroupData_p != NULL; j++) {
|
||||
@@ -1142,7 +1139,7 @@ void renderingPlusDoorAndCursor_c::drawTreasure() {
|
||||
|
||||
GXSetTevColor(GX_TEVREG1, sp18);
|
||||
|
||||
sp18.r += 4;
|
||||
sp18.r += (u8)4;
|
||||
GXSetTevColor(GX_TEVREG2, sp18);
|
||||
}
|
||||
|
||||
@@ -1150,7 +1147,7 @@ void renderingPlusDoorAndCursor_c::drawTreasure() {
|
||||
isDrawIconSingle(typeGroupData_p->getConstDataPointer(), mRoomNoSingle,
|
||||
mRenderedFloor, rend_all_room, true, icon_pos))
|
||||
{
|
||||
drawIconSingle(*icon_pos, icon_size, icon_size);
|
||||
drawIconSingle(*icon_pos, icon_size, icon_size_2);
|
||||
}
|
||||
|
||||
typeGroupData_p = getNextData(typeGroupData_p);
|
||||
@@ -1191,22 +1188,19 @@ void renderingPlusDoorAndCursor_c::drawTreasureAfterPlayer() {
|
||||
int group_num = getIconGroupNumber(tmp);
|
||||
|
||||
if (group_num != 0) {
|
||||
JUT_ASSERT(0xb7e, typeGroupData_p != 0);
|
||||
|
||||
f32 icon_size = getIconSize(tmp) * mCmPerTexel;
|
||||
f32 icon_size_2 = icon_size;
|
||||
|
||||
GXInvalidateTexAll();
|
||||
GXTexObj* texObj_p =
|
||||
dMpath_n::m_texObjAgg.getTexObjPointer(l_treasureDispList[i].field_0x4);
|
||||
GXLoadTexObj(texObj_p, GX_TEXMAP0);
|
||||
GXLoadTexObj(dMpath_n::m_texObjAgg.getTexObjPointer(l_treasureDispList[i].field_0x4), GX_TEXMAP0);
|
||||
GXColor sp18;
|
||||
const GXColor* temp_r3_2 = l_treasureDispList[i].field_0x8;
|
||||
sp18.r = temp_r3_2->r;
|
||||
sp18.g = temp_r3_2->g;
|
||||
sp18.b = temp_r3_2->b;
|
||||
sp18.a = temp_r3_2->a;
|
||||
sp18 = *l_treasureDispList[i].field_0x8;
|
||||
|
||||
GXSetTevColor(GX_TEVREG1, sp18);
|
||||
|
||||
sp18.r += 4;
|
||||
sp18.r += (u8)4;
|
||||
GXSetTevColor(GX_TEVREG2, sp18);
|
||||
|
||||
for (int j = 0; j < group_num && typeGroupData_p != NULL; j++) {
|
||||
@@ -1221,7 +1215,7 @@ void renderingPlusDoorAndCursor_c::drawTreasureAfterPlayer() {
|
||||
|
||||
GXSetTevColor(GX_TEVREG1, sp18);
|
||||
|
||||
sp18.r += 4;
|
||||
sp18.r += (u8)4;
|
||||
GXSetTevColor(GX_TEVREG2, sp18);
|
||||
}
|
||||
|
||||
@@ -1229,7 +1223,7 @@ void renderingPlusDoorAndCursor_c::drawTreasureAfterPlayer() {
|
||||
isDrawIconSingle(typeGroupData_p->getConstDataPointer(), mRoomNoSingle,
|
||||
mRenderedFloor, rend_all_room, true, icon_pos))
|
||||
{
|
||||
drawIconSingle(*icon_pos, icon_size, icon_size);
|
||||
drawIconSingle(*icon_pos, icon_size, icon_size_2);
|
||||
}
|
||||
|
||||
typeGroupData_p = getNextData(typeGroupData_p);
|
||||
|
||||
@@ -404,7 +404,7 @@ bool dMenu_StageMapCtrl_c::getTreasureList(f32* o_posX, f32* o_posY, s8* param_2
|
||||
Vec sp10;
|
||||
sp10 = *field_0x8c->getPos();
|
||||
|
||||
if (getRendPointer(0)->isDrawIconSingle(field_0x8c->getDataPointer(), (s8)dComIfGp_roomControl_getStayNo(), field_0xf7, true, true, &sp10)) {
|
||||
if (getRendPointer(0)->isDrawIconSingle(field_0x8c->getDataPointer(), (s8)dComIfGp_roomControl_getStayNo(), field_0xf7, 1, true, &sp10)) {
|
||||
cnvPosTo2Dpos(sp10.x, sp10.z, o_posX, o_posY);
|
||||
|
||||
if (param_2 != NULL) {
|
||||
|
||||
Reference in New Issue
Block a user