mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-02 03:40:15 -04:00
Fix weak function order of dBgS_MoveBgActor::Draw
fixes #217 fixes #239 fixes #389 fixes #418 fixes #428 fixes #147
This commit is contained in:
+8
-8
@@ -1353,7 +1353,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_kanban"),
|
||||
ActorRel(NonMatching, "d_a_ki"),
|
||||
ActorRel(NonMatching, "d_a_knob00"),
|
||||
ActorRel(Matching, "d_a_kui"),
|
||||
ActorRel(Matching, "d_a_kui"),
|
||||
ActorRel(Matching, "d_a_kytag00"),
|
||||
ActorRel(Matching, "d_a_kytag01"),
|
||||
ActorRel(NonMatching, "d_a_kytag02"),
|
||||
@@ -1390,7 +1390,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_obj_leaves"),
|
||||
ActorRel(NonMatching, "d_a_obj_lpalm"),
|
||||
ActorRel(Matching, "d_a_obj_monument"),
|
||||
ActorRel(Equivalent, "d_a_obj_movebox", extra_cflags=['-pragma "nosyminline on"']), # weak func order
|
||||
ActorRel(Matching, "d_a_obj_movebox", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_mshokki"),
|
||||
ActorRel(NonMatching, "d_a_obj_ohatch"),
|
||||
ActorRel(NonMatching, "d_a_obj_otble"),
|
||||
@@ -1463,7 +1463,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_gy_ctrl"),
|
||||
ActorRel(NonMatching, "d_a_himo3"),
|
||||
ActorRel(NonMatching, "d_a_hmlif"),
|
||||
ActorRel(Equivalent, "d_a_hys", extra_cflags=['-pragma "nosyminline on"']), # weak func order
|
||||
ActorRel(Matching, "d_a_hys", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_kamome"),
|
||||
ActorRel(NonMatching, "d_a_kantera"),
|
||||
ActorRel(NonMatching, "d_a_kn"),
|
||||
@@ -1485,7 +1485,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_obj_majyuu_door"),
|
||||
ActorRel(NonMatching, "d_a_obj_stair"),
|
||||
ActorRel(NonMatching, "d_a_obj_swflat"),
|
||||
ActorRel(Equivalent, "d_a_obj_swhammer"), # weak func order
|
||||
ActorRel(Matching, "d_a_obj_swhammer", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(Matching, "d_a_obj_swheavy"),
|
||||
ActorRel(NonMatching, "d_a_obj_swlight"),
|
||||
ActorRel(NonMatching, "d_a_oq"),
|
||||
@@ -1547,7 +1547,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_icelift"),
|
||||
ActorRel(NonMatching, "d_a_kb"),
|
||||
ActorRel(NonMatching, "d_a_kddoor"),
|
||||
ActorRel(Matching, "d_a_kita", extra_cflags=['-pragma "sym off"']),
|
||||
ActorRel(Matching, "d_a_kita", extra_cflags=['-pragma "sym off"']),
|
||||
ActorRel(NonMatching, "d_a_klft"),
|
||||
ActorRel(NonMatching, "d_a_kmon"),
|
||||
ActorRel(Matching, "d_a_komore", extra_cflags=['-pragma "nosyminline on"']),
|
||||
@@ -1637,7 +1637,7 @@ config.libs = [
|
||||
ActorRel(Matching, "d_a_obj_eayogn"),
|
||||
ActorRel(Matching, "d_a_obj_ebomzo", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_ekskz"),
|
||||
ActorRel(Equivalent, "d_a_obj_eskban", extra_cflags=['-pragma "nosyminline on"']), # weak func order
|
||||
ActorRel(Matching, "d_a_obj_eskban", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(Matching, "d_a_obj_ferris", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_figure", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_firewall"),
|
||||
@@ -1666,7 +1666,7 @@ config.libs = [
|
||||
ActorRel(Matching, "d_a_obj_iceisland", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_jump"),
|
||||
ActorRel(NonMatching, "d_a_obj_kanoke"),
|
||||
ActorRel(Equivalent, "d_a_obj_ladder", extra_cflags=['-pragma "nosyminline on"']), # weak func order
|
||||
ActorRel(Matching, "d_a_obj_ladder", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_light"),
|
||||
ActorRel(NonMatching, "d_a_obj_mkie"),
|
||||
ActorRel(NonMatching, "d_a_obj_mkiek"),
|
||||
@@ -1676,7 +1676,7 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_obj_msdan2"),
|
||||
ActorRel(NonMatching, "d_a_obj_msdan_sub"),
|
||||
ActorRel(NonMatching, "d_a_obj_msdan_sub2"),
|
||||
ActorRel(Equivalent, "d_a_obj_mtest", extra_cflags=['-pragma "nosyminline on"']), # weak func order
|
||||
ActorRel(Matching, "d_a_obj_mtest", extra_cflags=['-pragma "nosyminline on"']),
|
||||
ActorRel(NonMatching, "d_a_obj_nest"),
|
||||
ActorRel(Matching, "d_a_obj_ojtree"),
|
||||
ActorRel(NonMatching, "d_a_obj_ospbox"),
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
#define D_A_HYS_H
|
||||
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
|
||||
class daHys_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
#ifndef D_A_OBJ_ESKBAN_H
|
||||
#define D_A_OBJ_ESKBAN_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
|
||||
#include "d/d_a_obj.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_particle.h"
|
||||
|
||||
namespace daObjEskban {
|
||||
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
#ifndef D_A_OBJ_LADDER_H
|
||||
#define D_A_OBJ_LADDER_H
|
||||
|
||||
#include "d/d_a_obj.h"
|
||||
#include "d/d_bg_s_gnd_chk.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/d_bg_s_gnd_chk.h"
|
||||
|
||||
namespace daObjLadder {
|
||||
enum Type_e {
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
#ifndef D_A_OBJ_MOVEBOX_H
|
||||
#define D_A_OBJ_MOVEBOX_H
|
||||
|
||||
#include "d/d_a_obj.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_bg_s_gnd_chk.h"
|
||||
#include "d/d_bg_s_wtr_chk.h"
|
||||
#include "d/d_bg_s_lin_chk.h"
|
||||
#include "d/d_particle.h"
|
||||
#include "d/d_bg_w.h"
|
||||
#include "d/d_path.h"
|
||||
|
||||
struct dPath;
|
||||
|
||||
namespace daObjMovebox {
|
||||
class Act_c;
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
#ifndef D_A_OBJ_MTEST_H
|
||||
#define D_A_OBJ_MTEST_H
|
||||
|
||||
#include "f_op/f_op_actor.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_a_obj.h"
|
||||
|
||||
namespace daObjMtest {
|
||||
class Act_c : public dBgS_MoveBgActor {
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
#ifndef D_A_OBJ_SWHAMMER_H
|
||||
#define D_A_OBJ_SWHAMMER_H
|
||||
|
||||
#include "d/d_a_obj.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_particle.h"
|
||||
|
||||
class J3DNode;
|
||||
|
||||
|
||||
@@ -3,6 +3,13 @@
|
||||
|
||||
#include "SSystem/SComponent/c_bg_s_poly_info.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
// Fakematch to fix weak func order/.text section splitting of some TUs that include this header.
|
||||
// Some affected TUs: d_a_hys, d_a_obj_swhammer, d_a_obj_eskban, d_a_obj_mtest, d_a_obj_movebox.
|
||||
#pragma push
|
||||
#pragma sym off
|
||||
#include "d/d_a_obj.h"
|
||||
#include "d/d_particle.h"
|
||||
#pragma pop
|
||||
|
||||
class dBgW;
|
||||
typedef void (*MoveBGActor_SetFunc)(dBgW*, void*, cBgS_PolyInfo&, bool, cXyz*, csXyz*, csXyz*);
|
||||
|
||||
@@ -222,6 +222,9 @@ static BOOL daHys_Draw(void* i_this) {
|
||||
return ((daHys_c*)i_this)->MoveBGDraw();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
/* 00000C08-00000C28 .text daHys_Execute__FPv */
|
||||
static BOOL daHys_Execute(void* i_this) {
|
||||
return ((daHys_c*)i_this)->MoveBGExecute();
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
// Translation Unit: d_a_obj_eskban.cpp
|
||||
//
|
||||
|
||||
#include "d/d_procname.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/actor/d_a_obj_eskban.h"
|
||||
#include "d/res/res_eskban.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
#include "weak_bss_936_to_1036.h" // IWYU pragma: keep
|
||||
@@ -408,6 +408,9 @@ BOOL Mthd_Draw(void* i_this) {
|
||||
return ((Act_c*)i_this)->MoveBGDraw();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
/* 00001540-0000156C .text Mthd_IsDelete__Q211daObjEskban28@unnamed@d_a_obj_eskban_cpp@FPv */
|
||||
BOOL Mthd_IsDelete(void* i_this) {
|
||||
return ((Act_c*)i_this)->MoveBGIsDelete();
|
||||
|
||||
@@ -323,6 +323,9 @@ static BOOL Mthd_Draw(void* i_this) {
|
||||
return static_cast<Act_c*>(i_this)->MoveBGDraw();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
/* 000011CC-000011F8 .text Mthd_IsDelete__Q211daObjLadder28@unnamed@d_a_obj_ladder_cpp@FPv */
|
||||
static BOOL Mthd_IsDelete(void* i_this) {
|
||||
return static_cast<Act_c*>(i_this)->MoveBGIsDelete();
|
||||
|
||||
@@ -3,12 +3,6 @@
|
||||
* Object - Pushable Box
|
||||
*/
|
||||
|
||||
#include "global.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
#include "weak_bss_936_to_1036.h" // IWYU pragma: keep
|
||||
#include "weak_data_1811.h" // IWYU pragma: keep
|
||||
|
||||
#include "d/actor/d_a_obj_movebox.h"
|
||||
#include "d/res/res_ecube.h"
|
||||
#include "d/res/res_hbox2.h"
|
||||
@@ -17,6 +11,7 @@
|
||||
#include "d/res/res_mmirror.h"
|
||||
#include "d/res/res_mpwrb.h"
|
||||
#include "d/res/res_osiblk.h"
|
||||
#include "d/d_path.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
@@ -28,6 +23,9 @@
|
||||
#include "d/actor/d_a_obj_mkie.h"
|
||||
#include "d/actor/d_a_player.h"
|
||||
|
||||
#include "weak_bss_936_to_1036.h" // IWYU pragma: keep
|
||||
#include "weak_data_1811.h" // IWYU pragma: keep
|
||||
|
||||
namespace daObjMovebox {
|
||||
dBgS_ObjGndChk Bgc_c::M_gnd_work[23];
|
||||
dBgS_WtrChk Bgc_c::M_wrt_work;
|
||||
@@ -1894,6 +1892,10 @@ namespace daObjMovebox {
|
||||
cPhs_State Mthd_Create(void* i_this) {
|
||||
return static_cast<Act_c*>(i_this)->Mthd_Create();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of daObjMovebox::EffSmokeCB's ctor and dtor.
|
||||
// Also fixes weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
/* 000044E0-00004544 .text Mthd_Delete__Q212daObjMovebox29@unnamed@d_a_obj_movebox_cpp@FPv */
|
||||
BOOL Mthd_Delete(void* i_this) {
|
||||
|
||||
@@ -366,6 +366,9 @@ namespace daObjMtest {
|
||||
return ((Act_c*)i_this)->MoveBGDraw();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
BOOL Mthd_IsDelete(void* i_this) {
|
||||
return ((Act_c*)i_this)->MoveBGIsDelete();
|
||||
}
|
||||
|
||||
@@ -461,6 +461,9 @@ BOOL Mthd_Draw(void* i_this) {
|
||||
return static_cast<daObjSwhammer::Act_c*>(i_this)->MoveBGDraw();
|
||||
}
|
||||
|
||||
// Fakematch to fix weak func order/.text section splitting of dBgS_MoveBgActor::Draw().
|
||||
#pragma nosyminline off
|
||||
|
||||
/* 000015F4-00001620 .text Mthd_IsDelete__Q213daObjSwhammer30@unnamed@d_a_obj_swhammer_cpp@FPv */
|
||||
BOOL Mthd_IsDelete(void* i_this) {
|
||||
return static_cast<daObjSwhammer::Act_c*>(i_this)->MoveBGIsDelete();
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_com_lib_game.h"
|
||||
#include "d/d_kankyo_wether.h"
|
||||
#include "d/d_path.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "d/d_kankyo.h"
|
||||
#include "JSystem/JKernel/JKRSolidHeap.h"
|
||||
|
||||
Reference in New Issue
Block a user