mirror of
https://github.com/HarbourMasters/Shipwright
synced 2026-07-11 15:29:22 -04:00
Tools update (#5454)
* Bump ZAPDTR & OTRExporter. Changes to use o2r by default Changes to the new player animation format # Conflicts: # OTRExporter # ZAPDTR # soh/soh/OTRGlobals.cpp # soh/src/code/z_skelanime.c * Fix actions * Format * Cherry pick ZAPDTR * Update exporter * Move configs to port * Remove copy * Remove more XML copies * Remove extractor directory from actions builds. * Fix OTRExporter for linux * FIx ZAPD volatile * Format * Fix extractor? * Fix linux * Fix * Remove appimage stuff * Screnity now * Remove ZAPD from install paths * Remove soh.sh.in * Fix linux * Cleanups and use a thread for message box
This commit is contained in:
+12
-15
@@ -594,21 +594,22 @@ endif()
|
||||
# Pre build events
|
||||
################################################################################
|
||||
if (CMAKE_GENERATOR MATCHES "Visual Studio")
|
||||
set(VS_COPY_ASSETS_CMD ${CMAKE_COMMAND} -E copy_directory_if_different $<TARGET_FILE_DIR:soh>/assets ${CMAKE_BINARY_DIR}/soh/assets)
|
||||
add_custom_command(
|
||||
TARGET ${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/extractor ${CMAKE_BINARY_DIR}/soh/assets
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/xml ${CMAKE_BINARY_DIR}/soh/assets/xml
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_SYSTEM_NAME MATCHES "NintendoSwitch|CafeOS")
|
||||
add_custom_command(
|
||||
TARGET ${PROJECT_NAME}
|
||||
POST_BUILD
|
||||
COMMENT "Copying asset xmls..."
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/extractor $<TARGET_FILE_DIR:soh>/assets/extractor
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/xml $<TARGET_FILE_DIR:soh>/assets/extractor/xmls
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/OTRExporter/CFG/filelists $<TARGET_FILE_DIR:soh>/assets/extractor/filelists
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_FILE_DIR:soh>/assets/extractor/symbols
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/OTRExporter/CFG/ActorList_OoTMqDbg.txt $<TARGET_FILE_DIR:soh>/assets/extractor/symbols
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/OTRExporter/CFG/ObjectList_OoTMqDbg.txt $<TARGET_FILE_DIR:soh>/assets/extractor/symbols
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/OTRExporter/CFG/SymbolMap_OoTMqDbg.txt $<TARGET_FILE_DIR:soh>/assets/extractor/symbols
|
||||
COMMAND ${VS_COPY_ASSETS_CMD}
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/extractor $<TARGET_FILE_DIR:soh>/assets
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_SOURCE_DIR}/soh/assets/xml $<TARGET_FILE_DIR:soh>/assets/xml
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_FILE_DIR:soh>/assets/symbols
|
||||
# COMMAND ${VS_COPY_ASSETS_CMD}
|
||||
)
|
||||
endif()
|
||||
################################################################################
|
||||
@@ -694,11 +695,7 @@ endif()
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
INSTALL(FILES $<TARGET_PDB_FILE:soh> DESTINATION ./debug COMPONENT ship)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/soh/soh.otr DESTINATION . COMPONENT ship)
|
||||
endif()
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/linux/appimage/soh.sh.in ${CMAKE_BINARY_DIR}/linux/soh.sh @ONLY)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/soh/soh.o2r DESTINATION . COMPONENT ship)
|
||||
endif()
|
||||
|
||||
find_program(CURL NAMES curl DOC "Path to the curl program. Used to download files.")
|
||||
@@ -708,7 +705,7 @@ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
||||
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/macosx/Info.plist.in ${CMAKE_BINARY_DIR}/macosx/Info.plist @ONLY)
|
||||
INSTALL(TARGETS soh DESTINATION ../MacOS COMPONENT ship)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/gamecontrollerdb.txt DESTINATION ../MacOS COMPONENT ship)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/soh/soh.otr DESTINATION ../Resources COMPONENT ship)
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/soh/soh.o2r DESTINATION ../Resources COMPONENT ship)
|
||||
elseif(NOT "${CMAKE_SYSTEM_NAME}" MATCHES "NintendoSwitch|CafeOS")
|
||||
INSTALL(FILES ${CMAKE_BINARY_DIR}/gamecontrollerdb.txt DESTINATION . COMPONENT ship)
|
||||
endif()
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_MQ_D/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_MQ_D/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_MQ_NTSC_J/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_MQ_NTSC_J/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_MQ_NTSC_U/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_MQ_NTSC_U/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_MQ_PAL_F/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_MQ_PAL_F/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_NMQ_D/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_NMQ_D/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_NMQ_NTSC_J/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_NMQ_NTSC_J/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_NMQ_NTSC_J_CE/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_NMQ_NTSC_J_CE/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_NMQ_NTSC_U/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_NMQ_NTSC_U/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/GC_NMQ_PAL_F/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/GC_NMQ_PAL_F/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/N64_NTSC_10/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/N64_NTSC_10/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/N64_NTSC_11/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/N64_NTSC_11/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/N64_NTSC_12/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/N64_NTSC_12/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/N64_PAL_10/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/N64_PAL_10/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<SymbolMap File="symbols/SymbolMap_OoTMqDbg.txt"/>
|
||||
<ActorList File="symbols/ActorList_OoTMqDbg.txt"/>
|
||||
<ObjectList File="symbols/ObjectList_OoTMqDbg.txt"/>
|
||||
<ExternalXMLFolder Path="assets/extractor/xmls/N64_PAL_11/"/>
|
||||
<ExternalXMLFolder Path="assets/xml/N64_PAL_11/"/>
|
||||
<TexturePool File="TexturePool.xml"/>
|
||||
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="objects/gameplay_keep/"/>
|
||||
</Root>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,472 @@
|
||||
ACTOR_PLAYER
|
||||
ACTOR_UNSET_1
|
||||
ACTOR_EN_TEST
|
||||
ACTOR_UNSET_3
|
||||
ACTOR_EN_GIRLA
|
||||
ACTOR_UNSET_5
|
||||
ACTOR_UNSET_6
|
||||
ACTOR_EN_PART
|
||||
ACTOR_EN_LIGHT
|
||||
ACTOR_EN_DOOR
|
||||
ACTOR_EN_BOX
|
||||
ACTOR_BG_DY_YOSEIZO
|
||||
ACTOR_BG_HIDAN_FIREWALL
|
||||
ACTOR_EN_POH
|
||||
ACTOR_EN_OKUTA
|
||||
ACTOR_BG_YDAN_SP
|
||||
ACTOR_EN_BOM
|
||||
ACTOR_EN_WALLMAS
|
||||
ACTOR_EN_DODONGO
|
||||
ACTOR_EN_FIREFLY
|
||||
ACTOR_EN_HORSE
|
||||
ACTOR_EN_ITEM00
|
||||
ACTOR_EN_ARROW
|
||||
ACTOR_UNSET_17
|
||||
ACTOR_EN_ELF
|
||||
ACTOR_EN_NIW
|
||||
ACTOR_UNSET_1A
|
||||
ACTOR_EN_TITE
|
||||
ACTOR_EN_REEBA
|
||||
ACTOR_EN_PEEHAT
|
||||
ACTOR_EN_BUTTE
|
||||
ACTOR_UNSET_1F
|
||||
ACTOR_EN_INSECT
|
||||
ACTOR_EN_FISH
|
||||
ACTOR_UNSET_22
|
||||
ACTOR_EN_HOLL
|
||||
ACTOR_EN_SCENE_CHANGE
|
||||
ACTOR_EN_ZF
|
||||
ACTOR_EN_HATA
|
||||
ACTOR_BOSS_DODONGO
|
||||
ACTOR_BOSS_GOMA
|
||||
ACTOR_EN_ZL1
|
||||
ACTOR_EN_VIEWER
|
||||
ACTOR_EN_GOMA
|
||||
ACTOR_BG_PUSHBOX
|
||||
ACTOR_EN_BUBBLE
|
||||
ACTOR_DOOR_SHUTTER
|
||||
ACTOR_EN_DODOJR
|
||||
ACTOR_EN_BDFIRE
|
||||
ACTOR_UNSET_31
|
||||
ACTOR_EN_BOOM
|
||||
ACTOR_EN_TORCH2
|
||||
ACTOR_EN_BILI
|
||||
ACTOR_EN_TP
|
||||
ACTOR_UNSET_36
|
||||
ACTOR_EN_ST
|
||||
ACTOR_EN_BW
|
||||
ACTOR_EN_A_OBJ
|
||||
ACTOR_EN_EIYER
|
||||
ACTOR_EN_RIVER_SOUND
|
||||
ACTOR_EN_HORSE_NORMAL
|
||||
ACTOR_EN_OSSAN
|
||||
ACTOR_BG_TREEMOUTH
|
||||
ACTOR_BG_DODOAGO
|
||||
ACTOR_BG_HIDAN_DALM
|
||||
ACTOR_BG_HIDAN_HROCK
|
||||
ACTOR_EN_HORSE_GANON
|
||||
ACTOR_BG_HIDAN_ROCK
|
||||
ACTOR_BG_HIDAN_RSEKIZOU
|
||||
ACTOR_BG_HIDAN_SEKIZOU
|
||||
ACTOR_BG_HIDAN_SIMA
|
||||
ACTOR_BG_HIDAN_SYOKU
|
||||
ACTOR_EN_XC
|
||||
ACTOR_BG_HIDAN_CURTAIN
|
||||
ACTOR_BG_SPOT00_HANEBASI
|
||||
ACTOR_EN_MB
|
||||
ACTOR_EN_BOMBF
|
||||
ACTOR_EN_ZL2
|
||||
ACTOR_BG_HIDAN_FSLIFT
|
||||
ACTOR_EN_OE2
|
||||
ACTOR_BG_YDAN_HASI
|
||||
ACTOR_BG_YDAN_MARUTA
|
||||
ACTOR_BOSS_GANONDROF
|
||||
ACTOR_UNSET_53
|
||||
ACTOR_EN_AM
|
||||
ACTOR_EN_DEKUBABA
|
||||
ACTOR_EN_M_FIRE1
|
||||
ACTOR_EN_M_THUNDER
|
||||
ACTOR_BG_DDAN_JD
|
||||
ACTOR_BG_BREAKWALL
|
||||
ACTOR_EN_JJ
|
||||
ACTOR_EN_HORSE_ZELDA
|
||||
ACTOR_BG_DDAN_KD
|
||||
ACTOR_DOOR_WARP1
|
||||
ACTOR_OBJ_SYOKUDAI
|
||||
ACTOR_ITEM_B_HEART
|
||||
ACTOR_EN_DEKUNUTS
|
||||
ACTOR_BG_MENKURI_KAITEN
|
||||
ACTOR_BG_MENKURI_EYE
|
||||
ACTOR_EN_VALI
|
||||
ACTOR_BG_MIZU_MOVEBG
|
||||
ACTOR_BG_MIZU_WATER
|
||||
ACTOR_ARMS_HOOK
|
||||
ACTOR_EN_FHG
|
||||
ACTOR_BG_MORI_HINERI
|
||||
ACTOR_EN_BB
|
||||
ACTOR_BG_TOKI_HIKARI
|
||||
ACTOR_EN_YUKABYUN
|
||||
ACTOR_BG_TOKI_SWD
|
||||
ACTOR_EN_FHG_FIRE
|
||||
ACTOR_BG_MJIN
|
||||
ACTOR_BG_HIDAN_KOUSI
|
||||
ACTOR_DOOR_TOKI
|
||||
ACTOR_BG_HIDAN_HAMSTEP
|
||||
ACTOR_EN_BIRD
|
||||
ACTOR_UNSET_73
|
||||
ACTOR_UNSET_74
|
||||
ACTOR_UNSET_75
|
||||
ACTOR_UNSET_76
|
||||
ACTOR_EN_WOOD02
|
||||
ACTOR_UNSET_78
|
||||
ACTOR_UNSET_79
|
||||
ACTOR_UNSET_7A
|
||||
ACTOR_UNSET_7B
|
||||
ACTOR_EN_LIGHTBOX
|
||||
ACTOR_EN_PU_BOX
|
||||
ACTOR_UNSET_7E
|
||||
ACTOR_UNSET_7F
|
||||
ACTOR_EN_TRAP
|
||||
ACTOR_EN_AROW_TRAP
|
||||
ACTOR_EN_VASE
|
||||
ACTOR_UNSET_83
|
||||
ACTOR_EN_TA
|
||||
ACTOR_EN_TK
|
||||
ACTOR_BG_MORI_BIGST
|
||||
ACTOR_BG_MORI_ELEVATOR
|
||||
ACTOR_BG_MORI_KAITENKABE
|
||||
ACTOR_BG_MORI_RAKKATENJO
|
||||
ACTOR_EN_VM
|
||||
ACTOR_DEMO_EFFECT
|
||||
ACTOR_DEMO_KANKYO
|
||||
ACTOR_BG_HIDAN_FWBIG
|
||||
ACTOR_EN_FLOORMAS
|
||||
ACTOR_EN_HEISHI1
|
||||
ACTOR_EN_RD
|
||||
ACTOR_EN_PO_SISTERS
|
||||
ACTOR_BG_HEAVY_BLOCK
|
||||
ACTOR_BG_PO_EVENT
|
||||
ACTOR_OBJ_MURE
|
||||
ACTOR_EN_SW
|
||||
ACTOR_BOSS_FD
|
||||
ACTOR_OBJECT_KANKYO
|
||||
ACTOR_EN_DU
|
||||
ACTOR_EN_FD
|
||||
ACTOR_EN_HORSE_LINK_CHILD
|
||||
ACTOR_DOOR_ANA
|
||||
ACTOR_BG_SPOT02_OBJECTS
|
||||
ACTOR_BG_HAKA
|
||||
ACTOR_MAGIC_WIND
|
||||
ACTOR_MAGIC_FIRE
|
||||
ACTOR_UNSET_A0
|
||||
ACTOR_EN_RU1
|
||||
ACTOR_BOSS_FD2
|
||||
ACTOR_EN_FD_FIRE
|
||||
ACTOR_EN_DH
|
||||
ACTOR_EN_DHA
|
||||
ACTOR_EN_RL
|
||||
ACTOR_EN_ENCOUNT1
|
||||
ACTOR_DEMO_DU
|
||||
ACTOR_DEMO_IM
|
||||
ACTOR_DEMO_TRE_LGT
|
||||
ACTOR_EN_FW
|
||||
ACTOR_BG_VB_SIMA
|
||||
ACTOR_EN_VB_BALL
|
||||
ACTOR_BG_HAKA_MEGANE
|
||||
ACTOR_BG_HAKA_MEGANEBG
|
||||
ACTOR_BG_HAKA_SHIP
|
||||
ACTOR_BG_HAKA_SGAMI
|
||||
ACTOR_UNSET_B2
|
||||
ACTOR_EN_HEISHI2
|
||||
ACTOR_EN_ENCOUNT2
|
||||
ACTOR_EN_FIRE_ROCK
|
||||
ACTOR_EN_BROB
|
||||
ACTOR_MIR_RAY
|
||||
ACTOR_BG_SPOT09_OBJ
|
||||
ACTOR_BG_SPOT18_OBJ
|
||||
ACTOR_BOSS_VA
|
||||
ACTOR_BG_HAKA_TUBO
|
||||
ACTOR_BG_HAKA_TRAP
|
||||
ACTOR_BG_HAKA_HUTA
|
||||
ACTOR_BG_HAKA_ZOU
|
||||
ACTOR_BG_SPOT17_FUNEN
|
||||
ACTOR_EN_SYATEKI_ITM
|
||||
ACTOR_EN_SYATEKI_MAN
|
||||
ACTOR_EN_TANA
|
||||
ACTOR_EN_NB
|
||||
ACTOR_BOSS_MO
|
||||
ACTOR_EN_SB
|
||||
ACTOR_EN_BIGOKUTA
|
||||
ACTOR_EN_KAREBABA
|
||||
ACTOR_BG_BDAN_OBJECTS
|
||||
ACTOR_DEMO_SA
|
||||
ACTOR_DEMO_GO
|
||||
ACTOR_EN_IN
|
||||
ACTOR_EN_TR
|
||||
ACTOR_BG_SPOT16_BOMBSTONE
|
||||
ACTOR_UNSET_CE
|
||||
ACTOR_BG_HIDAN_KOWARERUKABE
|
||||
ACTOR_BG_BOMBWALL
|
||||
ACTOR_BG_SPOT08_ICEBLOCK
|
||||
ACTOR_EN_RU2
|
||||
ACTOR_OBJ_DEKUJR
|
||||
ACTOR_BG_MIZU_UZU
|
||||
ACTOR_BG_SPOT06_OBJECTS
|
||||
ACTOR_BG_ICE_OBJECTS
|
||||
ACTOR_BG_HAKA_WATER
|
||||
ACTOR_UNSET_D8
|
||||
ACTOR_EN_MA2
|
||||
ACTOR_EN_BOM_CHU
|
||||
ACTOR_EN_HORSE_GAME_CHECK
|
||||
ACTOR_BOSS_TW
|
||||
ACTOR_EN_RR
|
||||
ACTOR_EN_BA
|
||||
ACTOR_EN_BX
|
||||
ACTOR_EN_ANUBICE
|
||||
ACTOR_EN_ANUBICE_FIRE
|
||||
ACTOR_BG_MORI_HASHIGO
|
||||
ACTOR_BG_MORI_HASHIRA4
|
||||
ACTOR_BG_MORI_IDOMIZU
|
||||
ACTOR_BG_SPOT16_DOUGHNUT
|
||||
ACTOR_BG_BDAN_SWITCH
|
||||
ACTOR_EN_MA1
|
||||
ACTOR_BOSS_GANON
|
||||
ACTOR_BOSS_SST
|
||||
ACTOR_UNSET_EA
|
||||
ACTOR_UNSET_EB
|
||||
ACTOR_EN_NY
|
||||
ACTOR_EN_FR
|
||||
ACTOR_ITEM_SHIELD
|
||||
ACTOR_BG_ICE_SHELTER
|
||||
ACTOR_EN_ICE_HONO
|
||||
ACTOR_ITEM_OCARINA
|
||||
ACTOR_UNSET_F2
|
||||
ACTOR_UNSET_F3
|
||||
ACTOR_MAGIC_DARK
|
||||
ACTOR_DEMO_6K
|
||||
ACTOR_EN_ANUBICE_TAG
|
||||
ACTOR_BG_HAKA_GATE
|
||||
ACTOR_BG_SPOT15_SAKU
|
||||
ACTOR_BG_JYA_GOROIWA
|
||||
ACTOR_BG_JYA_ZURERUKABE
|
||||
ACTOR_UNSET_FB
|
||||
ACTOR_BG_JYA_COBRA
|
||||
ACTOR_BG_JYA_KANAAMI
|
||||
ACTOR_FISHING
|
||||
ACTOR_OBJ_OSHIHIKI
|
||||
ACTOR_BG_GATE_SHUTTER
|
||||
ACTOR_EFF_DUST
|
||||
ACTOR_BG_SPOT01_FUSYA
|
||||
ACTOR_BG_SPOT01_IDOHASHIRA
|
||||
ACTOR_BG_SPOT01_IDOMIZU
|
||||
ACTOR_BG_PO_SYOKUDAI
|
||||
ACTOR_BG_GANON_OTYUKA
|
||||
ACTOR_BG_SPOT15_RRBOX
|
||||
ACTOR_BG_UMAJUMP
|
||||
ACTOR_UNSET_109
|
||||
ACTOR_ARROW_FIRE
|
||||
ACTOR_ARROW_ICE
|
||||
ACTOR_ARROW_LIGHT
|
||||
ACTOR_UNSET_10D
|
||||
ACTOR_UNSET_10E
|
||||
ACTOR_ITEM_ETCETERA
|
||||
ACTOR_OBJ_KIBAKO
|
||||
ACTOR_OBJ_TSUBO
|
||||
ACTOR_EN_WONDER_ITEM
|
||||
ACTOR_EN_IK
|
||||
ACTOR_DEMO_IK
|
||||
ACTOR_EN_SKJ
|
||||
ACTOR_EN_SKJNEEDLE
|
||||
ACTOR_EN_G_SWITCH
|
||||
ACTOR_DEMO_EXT
|
||||
ACTOR_DEMO_SHD
|
||||
ACTOR_EN_DNS
|
||||
ACTOR_ELF_MSG
|
||||
ACTOR_EN_HONOTRAP
|
||||
ACTOR_EN_TUBO_TRAP
|
||||
ACTOR_OBJ_ICE_POLY
|
||||
ACTOR_BG_SPOT03_TAKI
|
||||
ACTOR_BG_SPOT07_TAKI
|
||||
ACTOR_EN_FZ
|
||||
ACTOR_EN_PO_RELAY
|
||||
ACTOR_BG_RELAY_OBJECTS
|
||||
ACTOR_EN_DIVING_GAME
|
||||
ACTOR_EN_KUSA
|
||||
ACTOR_OBJ_BEAN
|
||||
ACTOR_OBJ_BOMBIWA
|
||||
ACTOR_UNSET_128
|
||||
ACTOR_UNSET_129
|
||||
ACTOR_OBJ_SWITCH
|
||||
ACTOR_OBJ_ELEVATOR
|
||||
ACTOR_OBJ_LIFT
|
||||
ACTOR_OBJ_HSBLOCK
|
||||
ACTOR_EN_OKARINA_TAG
|
||||
ACTOR_EN_YABUSAME_MARK
|
||||
ACTOR_EN_GOROIWA
|
||||
ACTOR_EN_EX_RUPPY
|
||||
ACTOR_EN_TORYO
|
||||
ACTOR_EN_DAIKU
|
||||
ACTOR_UNSET_134
|
||||
ACTOR_EN_NWC
|
||||
ACTOR_EN_BLKOBJ
|
||||
ACTOR_ITEM_INBOX
|
||||
ACTOR_EN_GE1
|
||||
ACTOR_OBJ_BLOCKSTOP
|
||||
ACTOR_EN_SDA
|
||||
ACTOR_EN_CLEAR_TAG
|
||||
ACTOR_EN_NIW_LADY
|
||||
ACTOR_EN_GM
|
||||
ACTOR_EN_MS
|
||||
ACTOR_EN_HS
|
||||
ACTOR_BG_INGATE
|
||||
ACTOR_EN_KANBAN
|
||||
ACTOR_EN_HEISHI3
|
||||
ACTOR_EN_SYATEKI_NIW
|
||||
ACTOR_EN_ATTACK_NIW
|
||||
ACTOR_BG_SPOT01_IDOSOKO
|
||||
ACTOR_EN_SA
|
||||
ACTOR_EN_WONDER_TALK
|
||||
ACTOR_BG_GJYO_BRIDGE
|
||||
ACTOR_EN_DS
|
||||
ACTOR_EN_MK
|
||||
ACTOR_EN_BOM_BOWL_MAN
|
||||
ACTOR_EN_BOM_BOWL_PIT
|
||||
ACTOR_EN_OWL
|
||||
ACTOR_EN_ISHI
|
||||
ACTOR_OBJ_HANA
|
||||
ACTOR_OBJ_LIGHTSWITCH
|
||||
ACTOR_OBJ_MURE2
|
||||
ACTOR_EN_GO
|
||||
ACTOR_EN_FU
|
||||
ACTOR_UNSET_154
|
||||
ACTOR_EN_CHANGER
|
||||
ACTOR_BG_JYA_MEGAMI
|
||||
ACTOR_BG_JYA_LIFT
|
||||
ACTOR_BG_JYA_BIGMIRROR
|
||||
ACTOR_BG_JYA_BOMBCHUIWA
|
||||
ACTOR_BG_JYA_AMISHUTTER
|
||||
ACTOR_BG_JYA_BOMBIWA
|
||||
ACTOR_BG_SPOT18_BASKET
|
||||
ACTOR_UNSET_15D
|
||||
ACTOR_EN_GANON_ORGAN
|
||||
ACTOR_EN_SIOFUKI
|
||||
ACTOR_EN_STREAM
|
||||
ACTOR_UNSET_161
|
||||
ACTOR_EN_MM
|
||||
ACTOR_EN_KO
|
||||
ACTOR_EN_KZ
|
||||
ACTOR_EN_WEATHER_TAG
|
||||
ACTOR_BG_SST_FLOOR
|
||||
ACTOR_EN_ANI
|
||||
ACTOR_EN_EX_ITEM
|
||||
ACTOR_BG_JYA_IRONOBJ
|
||||
ACTOR_EN_JS
|
||||
ACTOR_EN_JSJUTAN
|
||||
ACTOR_EN_CS
|
||||
ACTOR_EN_MD
|
||||
ACTOR_EN_HY
|
||||
ACTOR_EN_GANON_MANT
|
||||
ACTOR_EN_OKARINA_EFFECT
|
||||
ACTOR_EN_MAG
|
||||
ACTOR_DOOR_GERUDO
|
||||
ACTOR_ELF_MSG2
|
||||
ACTOR_DEMO_GT
|
||||
ACTOR_EN_PO_FIELD
|
||||
ACTOR_EFC_ERUPC
|
||||
ACTOR_BG_ZG
|
||||
ACTOR_EN_HEISHI4
|
||||
ACTOR_EN_ZL3
|
||||
ACTOR_BOSS_GANON2
|
||||
ACTOR_EN_KAKASI
|
||||
ACTOR_EN_TAKARA_MAN
|
||||
ACTOR_OBJ_MAKEOSHIHIKI
|
||||
ACTOR_OCEFF_SPOT
|
||||
ACTOR_END_TITLE
|
||||
ACTOR_UNSET_180
|
||||
ACTOR_EN_TORCH
|
||||
ACTOR_DEMO_EC
|
||||
ACTOR_SHOT_SUN
|
||||
ACTOR_EN_DY_EXTRA
|
||||
ACTOR_EN_WONDER_TALK2
|
||||
ACTOR_EN_GE2
|
||||
ACTOR_OBJ_ROOMTIMER
|
||||
ACTOR_EN_SSH
|
||||
ACTOR_EN_STH
|
||||
ACTOR_OCEFF_WIPE
|
||||
ACTOR_OCEFF_STORM
|
||||
ACTOR_EN_WEIYER
|
||||
ACTOR_BG_SPOT05_SOKO
|
||||
ACTOR_BG_JYA_1FLIFT
|
||||
ACTOR_BG_JYA_HAHENIRON
|
||||
ACTOR_BG_SPOT12_GATE
|
||||
ACTOR_BG_SPOT12_SAKU
|
||||
ACTOR_EN_HINTNUTS
|
||||
ACTOR_EN_NUTSBALL
|
||||
ACTOR_BG_SPOT00_BREAK
|
||||
ACTOR_EN_SHOPNUTS
|
||||
ACTOR_EN_IT
|
||||
ACTOR_EN_GELDB
|
||||
ACTOR_OCEFF_WIPE2
|
||||
ACTOR_OCEFF_WIPE3
|
||||
ACTOR_EN_NIW_GIRL
|
||||
ACTOR_EN_DOG
|
||||
ACTOR_EN_SI
|
||||
ACTOR_BG_SPOT01_OBJECTS2
|
||||
ACTOR_OBJ_COMB
|
||||
ACTOR_BG_SPOT11_BAKUDANKABE
|
||||
ACTOR_OBJ_KIBAKO2
|
||||
ACTOR_EN_DNT_DEMO
|
||||
ACTOR_EN_DNT_JIJI
|
||||
ACTOR_EN_DNT_NOMAL
|
||||
ACTOR_EN_GUEST
|
||||
ACTOR_BG_BOM_GUARD
|
||||
ACTOR_EN_HS2
|
||||
ACTOR_DEMO_KEKKAI
|
||||
ACTOR_BG_SPOT08_BAKUDANKABE
|
||||
ACTOR_BG_SPOT17_BAKUDANKABE
|
||||
ACTOR_UNSET_1AA
|
||||
ACTOR_OBJ_MURE3
|
||||
ACTOR_EN_TG
|
||||
ACTOR_EN_MU
|
||||
ACTOR_EN_GO2
|
||||
ACTOR_EN_WF
|
||||
ACTOR_EN_SKB
|
||||
ACTOR_DEMO_GJ
|
||||
ACTOR_DEMO_GEFF
|
||||
ACTOR_BG_GND_FIREMEIRO
|
||||
ACTOR_BG_GND_DARKMEIRO
|
||||
ACTOR_BG_GND_SOULMEIRO
|
||||
ACTOR_BG_GND_NISEKABE
|
||||
ACTOR_BG_GND_ICEBLOCK
|
||||
ACTOR_EN_GB
|
||||
ACTOR_EN_GS
|
||||
ACTOR_BG_MIZU_BWALL
|
||||
ACTOR_BG_MIZU_SHUTTER
|
||||
ACTOR_EN_DAIKU_KAKARIKO
|
||||
ACTOR_BG_BOWL_WALL
|
||||
ACTOR_EN_WALL_TUBO
|
||||
ACTOR_EN_PO_DESERT
|
||||
ACTOR_EN_CROW
|
||||
ACTOR_DOOR_KILLER
|
||||
ACTOR_BG_SPOT11_OASIS
|
||||
ACTOR_BG_SPOT18_FUTA
|
||||
ACTOR_BG_SPOT18_SHUTTER
|
||||
ACTOR_EN_MA3
|
||||
ACTOR_EN_COW
|
||||
ACTOR_BG_ICE_TURARA
|
||||
ACTOR_BG_ICE_SHUTTER
|
||||
ACTOR_EN_KAKASI2
|
||||
ACTOR_EN_KAKASI3
|
||||
ACTOR_OCEFF_WIPE4
|
||||
ACTOR_EN_EG
|
||||
ACTOR_BG_MENKURI_NISEKABE
|
||||
ACTOR_EN_ZO
|
||||
ACTOR_OBJ_MAKEKINSUTA
|
||||
ACTOR_EN_GE3
|
||||
ACTOR_OBJ_TIMEBLOCK
|
||||
ACTOR_OBJ_HAMISHI
|
||||
ACTOR_EN_ZL4
|
||||
ACTOR_EN_MM2
|
||||
ACTOR_BG_JYA_BLOCK
|
||||
ACTOR_OBJ_WARP2BLOCK
|
||||
ACTOR_ID_MAX
|
||||
@@ -0,0 +1,402 @@
|
||||
OBJECT_INVALID
|
||||
OBJECT_GAMEPLAY_KEEP
|
||||
OBJECT_GAMEPLAY_FIELD_KEEP
|
||||
OBJECT_GAMEPLAY_DANGEON_KEEP
|
||||
OBJECT_UNSET_4
|
||||
OBJECT_UNSET_5
|
||||
OBJECT_HUMAN
|
||||
OBJECT_OKUTA
|
||||
OBJECT_CROW
|
||||
OBJECT_POH
|
||||
OBJECT_DY_OBJ
|
||||
OBJECT_WALLMASTER
|
||||
OBJECT_DODONGO
|
||||
OBJECT_FIREFLY
|
||||
OBJECT_BOX
|
||||
OBJECT_FIRE
|
||||
OBJECT_UNSET_10
|
||||
OBJECT_UNSET_11
|
||||
OBJECT_BUBBLE
|
||||
OBJECT_NIW
|
||||
OBJECT_LINK_BOY
|
||||
OBJECT_LINK_CHILD
|
||||
OBJECT_TITE
|
||||
OBJECT_REEBA
|
||||
OBJECT_PEEHAT
|
||||
OBJECT_KINGDODONGO
|
||||
OBJECT_HORSE
|
||||
OBJECT_ZF
|
||||
OBJECT_GOMA
|
||||
OBJECT_ZL1
|
||||
OBJECT_GOL
|
||||
OBJECT_DODOJR
|
||||
OBJECT_TORCH2
|
||||
OBJECT_BL
|
||||
OBJECT_TP
|
||||
OBJECT_OA1
|
||||
OBJECT_ST
|
||||
OBJECT_BW
|
||||
OBJECT_EI
|
||||
OBJECT_HORSE_NORMAL
|
||||
OBJECT_OB1
|
||||
OBJECT_O_ANIME
|
||||
OBJECT_SPOT04_OBJECTS
|
||||
OBJECT_DDAN_OBJECTS
|
||||
OBJECT_HIDAN_OBJECTS
|
||||
OBJECT_HORSE_GANON
|
||||
OBJECT_OA2
|
||||
OBJECT_SPOT00_OBJECTS
|
||||
OBJECT_MB
|
||||
OBJECT_BOMBF
|
||||
OBJECT_SK2
|
||||
OBJECT_OE1
|
||||
OBJECT_OE_ANIME
|
||||
OBJECT_OE2
|
||||
OBJECT_YDAN_OBJECTS
|
||||
OBJECT_GND
|
||||
OBJECT_AM
|
||||
OBJECT_DEKUBABA
|
||||
OBJECT_UNSET_3A
|
||||
OBJECT_OA3
|
||||
OBJECT_OA4
|
||||
OBJECT_OA5
|
||||
OBJECT_OA6
|
||||
OBJECT_OA7
|
||||
OBJECT_JJ
|
||||
OBJECT_OA8
|
||||
OBJECT_OA9
|
||||
OBJECT_OB2
|
||||
OBJECT_OB3
|
||||
OBJECT_OB4
|
||||
OBJECT_HORSE_ZELDA
|
||||
OBJECT_OPENING_DEMO1
|
||||
OBJECT_WARP1
|
||||
OBJECT_B_HEART
|
||||
OBJECT_DEKUNUTS
|
||||
OBJECT_OE3
|
||||
OBJECT_OE4
|
||||
OBJECT_MENKURI_OBJECTS
|
||||
OBJECT_OE5
|
||||
OBJECT_OE6
|
||||
OBJECT_OE7
|
||||
OBJECT_OE8
|
||||
OBJECT_OE9
|
||||
OBJECT_OE10
|
||||
OBJECT_OE11
|
||||
OBJECT_OE12
|
||||
OBJECT_VALI
|
||||
OBJECT_OA10
|
||||
OBJECT_OA11
|
||||
OBJECT_MIZU_OBJECTS
|
||||
OBJECT_FHG
|
||||
OBJECT_OSSAN
|
||||
OBJECT_MORI_HINERI1
|
||||
OBJECT_BB
|
||||
OBJECT_TOKI_OBJECTS
|
||||
OBJECT_YUKABYUN
|
||||
OBJECT_ZL2
|
||||
OBJECT_MJIN
|
||||
OBJECT_MJIN_FLASH
|
||||
OBJECT_MJIN_DARK
|
||||
OBJECT_MJIN_FLAME
|
||||
OBJECT_MJIN_ICE
|
||||
OBJECT_MJIN_SOUL
|
||||
OBJECT_MJIN_WIND
|
||||
OBJECT_MJIN_OKA
|
||||
OBJECT_HAKA_OBJECTS
|
||||
OBJECT_SPOT06_OBJECTS
|
||||
OBJECT_ICE_OBJECTS
|
||||
OBJECT_RELAY_OBJECTS
|
||||
OBJECT_PO_FIELD
|
||||
OBJECT_PO_COMPOSER
|
||||
OBJECT_MORI_HINERI1A
|
||||
OBJECT_MORI_HINERI2
|
||||
OBJECT_MORI_HINERI2A
|
||||
OBJECT_MORI_OBJECTS
|
||||
OBJECT_MORI_TEX
|
||||
OBJECT_SPOT08_OBJ
|
||||
OBJECT_WARP2
|
||||
OBJECT_HATA
|
||||
OBJECT_BIRD
|
||||
OBJECT_UNSET_78
|
||||
OBJECT_UNSET_79
|
||||
OBJECT_UNSET_7A
|
||||
OBJECT_UNSET_7B
|
||||
OBJECT_WOOD02
|
||||
OBJECT_UNSET_7D
|
||||
OBJECT_UNSET_7E
|
||||
OBJECT_UNSET_7F
|
||||
OBJECT_UNSET_80
|
||||
OBJECT_LIGHTBOX
|
||||
OBJECT_PU_BOX
|
||||
OBJECT_UNSET_83
|
||||
OBJECT_UNSET_84
|
||||
OBJECT_TRAP
|
||||
OBJECT_VASE
|
||||
OBJECT_IM
|
||||
OBJECT_TA
|
||||
OBJECT_TK
|
||||
OBJECT_XC
|
||||
OBJECT_VM
|
||||
OBJECT_BV
|
||||
OBJECT_HAKACH_OBJECTS
|
||||
OBJECT_EFC_CRYSTAL_LIGHT
|
||||
OBJECT_EFC_FIRE_BALL
|
||||
OBJECT_EFC_FLASH
|
||||
OBJECT_EFC_LGT_SHOWER
|
||||
OBJECT_EFC_STAR_FIELD
|
||||
OBJECT_GOD_LGT
|
||||
OBJECT_LIGHT_RING
|
||||
OBJECT_TRIFORCE_SPOT
|
||||
OBJECT_BDAN_OBJECTS
|
||||
OBJECT_SD
|
||||
OBJECT_RD
|
||||
OBJECT_PO_SISTERS
|
||||
OBJECT_HEAVY_OBJECT
|
||||
OBJECT_GNDD
|
||||
OBJECT_FD
|
||||
OBJECT_DU
|
||||
OBJECT_FW
|
||||
OBJECT_MEDAL
|
||||
OBJECT_HORSE_LINK_CHILD
|
||||
OBJECT_SPOT02_OBJECTS
|
||||
OBJECT_HAKA
|
||||
OBJECT_RU1
|
||||
OBJECT_SYOKUDAI
|
||||
OBJECT_FD2
|
||||
OBJECT_DH
|
||||
OBJECT_RL
|
||||
OBJECT_EFC_TW
|
||||
OBJECT_DEMO_TRE_LGT
|
||||
OBJECT_GI_KEY
|
||||
OBJECT_MIR_RAY
|
||||
OBJECT_BROB
|
||||
OBJECT_GI_JEWEL
|
||||
OBJECT_SPOT09_OBJ
|
||||
OBJECT_SPOT18_OBJ
|
||||
OBJECT_BDOOR
|
||||
OBJECT_SPOT17_OBJ
|
||||
OBJECT_SHOP_DUNGEN
|
||||
OBJECT_NB
|
||||
OBJECT_MO
|
||||
OBJECT_SB
|
||||
OBJECT_GI_MELODY
|
||||
OBJECT_GI_HEART
|
||||
OBJECT_GI_COMPASS
|
||||
OBJECT_GI_BOSSKEY
|
||||
OBJECT_GI_MEDAL
|
||||
OBJECT_GI_NUTS
|
||||
OBJECT_SA
|
||||
OBJECT_GI_HEARTS
|
||||
OBJECT_GI_ARROWCASE
|
||||
OBJECT_GI_BOMBPOUCH
|
||||
OBJECT_IN
|
||||
OBJECT_TR
|
||||
OBJECT_SPOT16_OBJ
|
||||
OBJECT_OE1S
|
||||
OBJECT_OE4S
|
||||
OBJECT_OS_ANIME
|
||||
OBJECT_GI_BOTTLE
|
||||
OBJECT_GI_STICK
|
||||
OBJECT_GI_MAP
|
||||
OBJECT_OF1D_MAP
|
||||
OBJECT_RU2
|
||||
OBJECT_GI_SHIELD_1
|
||||
OBJECT_DEKUJR
|
||||
OBJECT_GI_MAGICPOT
|
||||
OBJECT_GI_BOMB_1
|
||||
OBJECT_OF1S
|
||||
OBJECT_MA2
|
||||
OBJECT_GI_PURSE
|
||||
OBJECT_HNI
|
||||
OBJECT_TW
|
||||
OBJECT_RR
|
||||
OBJECT_BXA
|
||||
OBJECT_ANUBICE
|
||||
OBJECT_GI_GERUDO
|
||||
OBJECT_GI_ARROW
|
||||
OBJECT_GI_BOMB_2
|
||||
OBJECT_GI_EGG
|
||||
OBJECT_GI_SCALE
|
||||
OBJECT_GI_SHIELD_2
|
||||
OBJECT_GI_HOOKSHOT
|
||||
OBJECT_GI_OCARINA
|
||||
OBJECT_GI_MILK
|
||||
OBJECT_MA1
|
||||
OBJECT_GANON
|
||||
OBJECT_SST
|
||||
OBJECT_NY_UNUSED
|
||||
OBJECT_UNSET_E4
|
||||
OBJECT_NY
|
||||
OBJECT_FR
|
||||
OBJECT_GI_PACHINKO
|
||||
OBJECT_GI_BOOMERANG
|
||||
OBJECT_GI_BOW
|
||||
OBJECT_GI_GLASSES
|
||||
OBJECT_GI_LIQUID
|
||||
OBJECT_ANI
|
||||
OBJECT_DEMO_6K
|
||||
OBJECT_GI_SHIELD_3
|
||||
OBJECT_GI_LETTER
|
||||
OBJECT_SPOT15_OBJ
|
||||
OBJECT_JYA_OBJ
|
||||
OBJECT_GI_CLOTHES
|
||||
OBJECT_GI_BEAN
|
||||
OBJECT_GI_FISH
|
||||
OBJECT_GI_SAW
|
||||
OBJECT_GI_HAMMER
|
||||
OBJECT_GI_GRASS
|
||||
OBJECT_GI_LONGSWORD
|
||||
OBJECT_SPOT01_OBJECTS
|
||||
OBJECT_MD_UNUSED
|
||||
OBJECT_MD
|
||||
OBJECT_KM1
|
||||
OBJECT_KW1
|
||||
OBJECT_ZO
|
||||
OBJECT_KZ
|
||||
OBJECT_UMAJUMP
|
||||
OBJECT_MASTERKOKIRI
|
||||
OBJECT_MASTERKOKIRIHEAD
|
||||
OBJECT_MASTERGOLON
|
||||
OBJECT_MASTERZOORA
|
||||
OBJECT_AOB
|
||||
OBJECT_IK
|
||||
OBJECT_AHG
|
||||
OBJECT_CNE
|
||||
OBJECT_GI_NIWATORI
|
||||
OBJECT_SKJ
|
||||
OBJECT_GI_BOTTLE_LETTER
|
||||
OBJECT_BJI
|
||||
OBJECT_BBA
|
||||
OBJECT_GI_OCARINA_0
|
||||
OBJECT_DS
|
||||
OBJECT_ANE
|
||||
OBJECT_BOJ
|
||||
OBJECT_SPOT03_OBJECT
|
||||
OBJECT_SPOT07_OBJECT
|
||||
OBJECT_FZ
|
||||
OBJECT_BOB
|
||||
OBJECT_GE1
|
||||
OBJECT_YABUSAME_POINT
|
||||
OBJECT_GI_BOOTS_2
|
||||
OBJECT_GI_SEED
|
||||
OBJECT_GND_MAGIC
|
||||
OBJECT_D_ELEVATOR
|
||||
OBJECT_D_HSBLOCK
|
||||
OBJECT_D_LIFT
|
||||
OBJECT_MAMENOKI
|
||||
OBJECT_GOROIWA
|
||||
OBJECT_UNSET_120
|
||||
OBJECT_TORYO
|
||||
OBJECT_DAIKU
|
||||
OBJECT_UNSET_123
|
||||
OBJECT_NWC
|
||||
OBJECT_BLKOBJ
|
||||
OBJECT_GM
|
||||
OBJECT_MS
|
||||
OBJECT_HS
|
||||
OBJECT_INGATE
|
||||
OBJECT_LIGHTSWITCH
|
||||
OBJECT_KUSA
|
||||
OBJECT_TSUBO
|
||||
OBJECT_GI_GLOVES
|
||||
OBJECT_GI_COIN
|
||||
OBJECT_KANBAN
|
||||
OBJECT_GJYO_OBJECTS
|
||||
OBJECT_OWL
|
||||
OBJECT_MK
|
||||
OBJECT_FU
|
||||
OBJECT_GI_KI_TAN_MASK
|
||||
OBJECT_GI_REDEAD_MASK
|
||||
OBJECT_GI_SKJ_MASK
|
||||
OBJECT_GI_RABIT_MASK
|
||||
OBJECT_GI_TRUTH_MASK
|
||||
OBJECT_GANON_OBJECTS
|
||||
OBJECT_SIOFUKI
|
||||
OBJECT_STREAM
|
||||
OBJECT_MM
|
||||
OBJECT_FA
|
||||
OBJECT_OS
|
||||
OBJECT_GI_EYE_LOTION
|
||||
OBJECT_GI_POWDER
|
||||
OBJECT_GI_MUSHROOM
|
||||
OBJECT_GI_TICKETSTONE
|
||||
OBJECT_GI_BROKENSWORD
|
||||
OBJECT_JS
|
||||
OBJECT_CS
|
||||
OBJECT_GI_PRESCRIPTION
|
||||
OBJECT_GI_BRACELET
|
||||
OBJECT_GI_SOLDOUT
|
||||
OBJECT_GI_FROG
|
||||
OBJECT_MAG
|
||||
OBJECT_DOOR_GERUDO
|
||||
OBJECT_GT
|
||||
OBJECT_EFC_ERUPC
|
||||
OBJECT_ZL2_ANIME1
|
||||
OBJECT_ZL2_ANIME2
|
||||
OBJECT_GI_GOLONMASK
|
||||
OBJECT_GI_ZORAMASK
|
||||
OBJECT_GI_GERUDOMASK
|
||||
OBJECT_GANON2
|
||||
OBJECT_KA
|
||||
OBJECT_TS
|
||||
OBJECT_ZG
|
||||
OBJECT_GI_HOVERBOOTS
|
||||
OBJECT_GI_M_ARROW
|
||||
OBJECT_DS2
|
||||
OBJECT_EC
|
||||
OBJECT_FISH
|
||||
OBJECT_GI_SUTARU
|
||||
OBJECT_GI_GODDESS
|
||||
OBJECT_SSH
|
||||
OBJECT_BIGOKUTA
|
||||
OBJECT_BG
|
||||
OBJECT_SPOT05_OBJECTS
|
||||
OBJECT_SPOT12_OBJ
|
||||
OBJECT_BOMBIWA
|
||||
OBJECT_HINTNUTS
|
||||
OBJECT_RS
|
||||
OBJECT_SPOT00_BREAK
|
||||
OBJECT_GLA
|
||||
OBJECT_SHOPNUTS
|
||||
OBJECT_GELDB
|
||||
OBJECT_GR
|
||||
OBJECT_DOG
|
||||
OBJECT_JYA_IRON
|
||||
OBJECT_JYA_DOOR
|
||||
OBJECT_UNSET_16E
|
||||
OBJECT_SPOT11_OBJ
|
||||
OBJECT_KIBAKO2
|
||||
OBJECT_DNS
|
||||
OBJECT_DNK
|
||||
OBJECT_GI_FIRE
|
||||
OBJECT_GI_INSECT
|
||||
OBJECT_GI_BUTTERFLY
|
||||
OBJECT_GI_GHOST
|
||||
OBJECT_GI_SOUL
|
||||
OBJECT_BOWL
|
||||
OBJECT_DEMO_KEKKAI
|
||||
OBJECT_EFC_DOUGHNUT
|
||||
OBJECT_GI_DEKUPOUCH
|
||||
OBJECT_GANON_ANIME1
|
||||
OBJECT_GANON_ANIME2
|
||||
OBJECT_GANON_ANIME3
|
||||
OBJECT_GI_RUPY
|
||||
OBJECT_SPOT01_MATOYA
|
||||
OBJECT_SPOT01_MATOYAB
|
||||
OBJECT_MU
|
||||
OBJECT_WF
|
||||
OBJECT_SKB
|
||||
OBJECT_GJ
|
||||
OBJECT_GEFF
|
||||
OBJECT_HAKA_DOOR
|
||||
OBJECT_GS
|
||||
OBJECT_PS
|
||||
OBJECT_BWALL
|
||||
OBJECT_COW
|
||||
OBJECT_COB
|
||||
OBJECT_GI_SWORD_1
|
||||
OBJECT_DOOR_KILLER
|
||||
OBJECT_OUKE_HAKA
|
||||
OBJECT_TIMEBLOCK
|
||||
OBJECT_ZL4
|
||||
@@ -0,0 +1 @@
|
||||
8012DB20 gMtxClear
|
||||
@@ -607,15 +607,16 @@ std::string Extractor::Mkdtemp() {
|
||||
}
|
||||
|
||||
extern "C" int zapd_main(int argc, char** argv);
|
||||
static void MessageboxWorker();
|
||||
|
||||
bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
constexpr int argc = 18;
|
||||
constexpr int argc = 22;
|
||||
char xmlPath[1024];
|
||||
char confPath[1024];
|
||||
char portVersion[18]; // 5 digits for int16_max (x3) + separators + terminator
|
||||
std::array<const char*, argc> argv;
|
||||
const char* version = GetZapdVerStr();
|
||||
const char* otrFile = IsMasterQuest() ? "oot-mq.otr" : "oot.otr";
|
||||
const char* otrFile = IsMasterQuest() ? "oot-mq.o2r" : "oot.o2r";
|
||||
|
||||
std::string romPath = std::filesystem::absolute(mCurrentRomPath).string();
|
||||
installPath = std::filesystem::absolute(installPath).string();
|
||||
@@ -632,8 +633,8 @@ bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
|
||||
std::filesystem::current_path(tempdir);
|
||||
|
||||
snprintf(xmlPath, 1024, "assets/extractor/xmls/%s", version);
|
||||
snprintf(confPath, 1024, "assets/extractor/Config_%s.xml", version);
|
||||
snprintf(xmlPath, 1024, "assets/xml/%s", version);
|
||||
snprintf(confPath, 1024, "assets/Config_%s.xml", version);
|
||||
snprintf(portVersion, 18, "%d.%d.%d", gBuildVersionMajor, gBuildVersionMinor, gBuildVersionPatch);
|
||||
|
||||
argv[0] = "ZAPD";
|
||||
@@ -643,9 +644,9 @@ bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
argv[4] = "-b";
|
||||
argv[5] = romPath.c_str();
|
||||
argv[6] = "-fl";
|
||||
argv[7] = "assets/extractor/filelists";
|
||||
argv[7] = "assets/filelists";
|
||||
argv[8] = "-gsf";
|
||||
argv[9] = "1";
|
||||
argv[9] = "0";
|
||||
argv[10] = "-rconf";
|
||||
argv[11] = confPath;
|
||||
argv[12] = "-se";
|
||||
@@ -654,6 +655,10 @@ bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
argv[15] = otrFile;
|
||||
argv[16] = "--portVer";
|
||||
argv[17] = portVersion;
|
||||
argv[18] = "-o";
|
||||
argv[19] = "placeholder";
|
||||
argv[20] = "-osf";
|
||||
argv[21] = "placeholder";
|
||||
|
||||
#ifdef _WIN32
|
||||
// Grab a handle to the command window.
|
||||
@@ -665,10 +670,8 @@ bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
SetWindowPos(cmdWindow, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
|
||||
#else
|
||||
// Show extraction in background message until linux/mac can have visual progress
|
||||
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_INFORMATION, "Extracting",
|
||||
"Extraction will now begin in the background.\n\nPlease be patient for the process to "
|
||||
"finish. Do not close the main program.",
|
||||
nullptr);
|
||||
std::thread mbThread(MessageboxWorker);
|
||||
mbThread.detach();
|
||||
#endif
|
||||
|
||||
zapd_main(argc, (char**)argv.data());
|
||||
@@ -684,5 +687,12 @@ bool Extractor::CallZapd(std::string installPath, std::string exportdir) {
|
||||
std::filesystem::current_path(curdir);
|
||||
std::filesystem::remove_all(tempdir);
|
||||
|
||||
return 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
static void MessageboxWorker() {
|
||||
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_INFORMATION, "Extracting",
|
||||
"Extraction will now begin in the background.\n\nPlease be patient for the process to "
|
||||
"finish. Do not close the main program.",
|
||||
nullptr);
|
||||
}
|
||||
|
||||
+25
-23
@@ -266,15 +266,17 @@ OTRGlobals::OTRGlobals() {
|
||||
|
||||
void OTRGlobals::Initialize() {
|
||||
std::vector<std::string> OTRFiles;
|
||||
std::string mqPath = Ship::Context::LocateFileAcrossAppDirs("oot-mq.otr", appShortName);
|
||||
std::string mqPath = Ship::Context::LocateFileAcrossAppDirs("oot-mq.o2r", appShortName);
|
||||
if (std::filesystem::exists(mqPath)) {
|
||||
OTRFiles.push_back(mqPath);
|
||||
}
|
||||
std::string ootPath = Ship::Context::LocateFileAcrossAppDirs("oot.otr", appShortName);
|
||||
std::string ootPath = Ship::Context::LocateFileAcrossAppDirs("oot.o2r", appShortName);
|
||||
if (std::filesystem::exists(ootPath)) {
|
||||
OTRFiles.push_back(ootPath);
|
||||
}
|
||||
std::string sohOtrPath = Ship::Context::LocateFileAcrossAppDirs("soh.otr");
|
||||
|
||||
std::string sohOtrPath = Ship::Context::LocateFileAcrossAppDirs("soh.o2r");
|
||||
|
||||
if (std::filesystem::exists(sohOtrPath)) {
|
||||
OTRFiles.push_back(sohOtrPath);
|
||||
}
|
||||
@@ -944,7 +946,7 @@ OTRVersion ReadPortVersionFromOTR(std::string otrPath) {
|
||||
OTRVersion version = {};
|
||||
|
||||
// Use a temporary archive instance to load the otr and read the version file
|
||||
auto archive = std::make_shared<Ship::OtrArchive>(otrPath);
|
||||
auto archive = std::make_shared<Ship::O2rArchive>(otrPath);
|
||||
if (archive->Open()) {
|
||||
auto t = archive->LoadFile("portVersion");
|
||||
if (t != nullptr && t->IsLoaded) {
|
||||
@@ -962,7 +964,7 @@ OTRVersion ReadPortVersionFromOTR(std::string otrPath) {
|
||||
return version;
|
||||
}
|
||||
|
||||
// Check that a soh.otr exists and matches the version of soh running
|
||||
// Check that a soh.o2r exists and matches the version of soh running
|
||||
// Otherwise show a message and exit
|
||||
void CheckSoHOTRVersion(std::string otrPath) {
|
||||
std::string msg;
|
||||
@@ -971,20 +973,20 @@ void CheckSoHOTRVersion(std::string otrPath) {
|
||||
msg = "\x1b[4;2HPlease re-extract it from the download."
|
||||
"\x1b[6;2HPress the Home button to exit...";
|
||||
#elif defined(__WIIU__)
|
||||
msg = "Please extract the soh.otr from the Ship of Harkinian download\nto your folder.\n\nPress and hold the power "
|
||||
msg = "Please extract the soh.o2r from the Ship of Harkinian download\nto your folder.\n\nPress and hold the power "
|
||||
"button to shutdown...";
|
||||
#else
|
||||
msg = "Please extract the soh.otr from the Ship of Harkinian download to your folder.\n\nExiting...";
|
||||
msg = "Please extract the soh.o2r from the Ship of Harkinian download to your folder.\n\nExiting...";
|
||||
#endif
|
||||
|
||||
if (!std::filesystem::exists(otrPath)) {
|
||||
#if not defined(__SWITCH__) && not defined(__WIIU__)
|
||||
Extractor::ShowErrorBox("soh.otr file is missing", msg.c_str());
|
||||
Extractor::ShowErrorBox("soh.o2r file is missing", msg.c_str());
|
||||
exit(1);
|
||||
#elif defined(__SWITCH__)
|
||||
Ship::Switch::PrintErrorMessageToScreen(("\x1b[2;2HYou are missing the soh.otr file." + msg).c_str());
|
||||
Ship::Switch::PrintErrorMessageToScreen(("\x1b[2;2HYou are missing the soh.o2r file." + msg).c_str());
|
||||
#elif defined(__WIIU__)
|
||||
OSFatal(("You are missing the soh.otr file\n\n" + msg).c_str());
|
||||
OSFatal(("You are missing the soh.o2r file\n\n" + msg).c_str());
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -993,12 +995,12 @@ void CheckSoHOTRVersion(std::string otrPath) {
|
||||
if (otrVersion.major != gBuildVersionMajor || otrVersion.minor != gBuildVersionMinor ||
|
||||
otrVersion.patch != gBuildVersionPatch) {
|
||||
#if not defined(__SWITCH__) && not defined(__WIIU__)
|
||||
Extractor::ShowErrorBox("soh.otr file version does not match", msg.c_str());
|
||||
Extractor::ShowErrorBox("soh.o2r file version does not match", msg.c_str());
|
||||
exit(1);
|
||||
#elif defined(__SWITCH__)
|
||||
Ship::Switch::PrintErrorMessageToScreen(("\x1b[2;2HYou have an old soh.otr file." + msg).c_str());
|
||||
Ship::Switch::PrintErrorMessageToScreen(("\x1b[2;2HYou have an old soh.o2r file." + msg).c_str());
|
||||
#elif defined(__WIIU__)
|
||||
OSFatal(("You have an old soh.otr file\n\n" + msg).c_str());
|
||||
OSFatal(("You have an old soh.o2r file\n\n" + msg).c_str());
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -1039,10 +1041,10 @@ void DetectOTRVersion(std::string fileName, bool isMQ) {
|
||||
|
||||
if (Extractor::ShowYesNoBox("Old OTR File Found", msgBuf) == IDYES) {
|
||||
std::string installPath = Ship::Context::GetAppBundlePath();
|
||||
if (!std::filesystem::exists(installPath + "/assets/extractor")) {
|
||||
if (!std::filesystem::exists(installPath + "/assets")) {
|
||||
Extractor::ShowErrorBox(
|
||||
"Extractor assets not found",
|
||||
"Unable to regenerate. Missing assets/extractor folder needed to generate OTR file.\n\nExiting...");
|
||||
"Unable to regenerate. Missing assets/ folder needed to generate OTR file.\n\nExiting...");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -1156,18 +1158,18 @@ extern "C" void InitOTR() {
|
||||
#if not defined(__SWITCH__) && not defined(__WIIU__)
|
||||
CheckAndCreateModFolder();
|
||||
#endif
|
||||
const bool ootO2RExists =
|
||||
std::filesystem::exists(Ship::Context::LocateFileAcrossAppDirs("oot-mq.o2r", appShortName)) ||
|
||||
std::filesystem::exists(Ship::Context::LocateFileAcrossAppDirs("oot.o2r", appShortName));
|
||||
|
||||
CheckSoHOTRVersion(Ship::Context::LocateFileAcrossAppDirs("soh.otr"));
|
||||
|
||||
if (!std::filesystem::exists(Ship::Context::LocateFileAcrossAppDirs("oot-mq.otr", appShortName)) &&
|
||||
!std::filesystem::exists(Ship::Context::LocateFileAcrossAppDirs("oot.otr", appShortName))) {
|
||||
if (!ootO2RExists) {
|
||||
|
||||
#if not defined(__SWITCH__) && not defined(__WIIU__)
|
||||
std::string installPath = Ship::Context::GetAppBundlePath();
|
||||
if (!std::filesystem::exists(installPath + "/assets/extractor")) {
|
||||
if (!std::filesystem::exists(installPath + "/assets")) {
|
||||
Extractor::ShowErrorBox(
|
||||
"Extractor assets not found",
|
||||
"No OTR files found. Missing assets/extractor folder needed to generate OTR file.\n\nExiting...");
|
||||
"No OTR files found. Missing assets/ folder needed to generate OTR file.\n\nExiting...");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -1206,8 +1208,8 @@ extern "C" void InitOTR() {
|
||||
#endif
|
||||
}
|
||||
|
||||
DetectOTRVersion("oot.otr", false);
|
||||
DetectOTRVersion("oot-mq.otr", true);
|
||||
DetectOTRVersion("oot.o2r", false);
|
||||
DetectOTRVersion("oot-mq.o2r", true);
|
||||
|
||||
OTRGlobals::Instance->Initialize();
|
||||
CustomMessageManager::Instance = new CustomMessageManager();
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#include "soh/resource/importer/AnimationFactory.h"
|
||||
#include "soh/resource/type/Animation.h"
|
||||
#include "ResourceManager.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
#include "Context.h"
|
||||
|
||||
namespace SOH {
|
||||
std::shared_ptr<Ship::IResource>
|
||||
@@ -80,7 +82,11 @@ ResourceFactoryBinaryAnimationV0::ReadResource(std::shared_ptr<Ship::File> file,
|
||||
animation->animationData.linkAnimationHeader.common.frameCount = reader->ReadInt16();
|
||||
|
||||
// Read the segment pointer (always 32 bit, doesn't adjust for system pointer size)
|
||||
animation->animationData.linkAnimationHeader.segment = (void*)reader->ReadUInt32();
|
||||
std::string path = reader->ReadString();
|
||||
const auto animData = std::static_pointer_cast<Animation>(
|
||||
Ship::Context::GetInstance()->GetResourceManager()->LoadResourceProcess(path.c_str()));
|
||||
|
||||
animation->animationData.linkAnimationHeader.segment = animData->GetPointer();
|
||||
} else if (animType == AnimationType::Legacy) {
|
||||
SPDLOG_DEBUG("BEYTAH ANIMATION?!");
|
||||
}
|
||||
|
||||
@@ -894,33 +894,15 @@ void AnimationContext_SetLoadFrame(PlayState* play, LinkAnimationHeader* animati
|
||||
if (ResourceMgr_OTRSigCheck(animation) != 0)
|
||||
animation = ResourceMgr_LoadAnimByName(animation);
|
||||
|
||||
LinkAnimationHeader* linkAnimHeader = SEGMENTED_TO_VIRTUAL(animation);
|
||||
Vec3s* ram = frameTable;
|
||||
|
||||
osCreateMesgQueue(&entry->data.load.msgQueue, &entry->data.load.msg, 1);
|
||||
|
||||
char animPath[2048];
|
||||
|
||||
snprintf(animPath, sizeof(animPath), "misc/link_animetion/gPlayerAnimData_%06X",
|
||||
(((uintptr_t)linkAnimHeader->segment - 0x07000000)));
|
||||
|
||||
// printf("Streaming %s, seg = %08X\n", animPath, linkAnimHeader->segment);
|
||||
|
||||
s16* animData = ResourceMgr_LoadPlayerAnimByName(animPath);
|
||||
|
||||
s16* animData = animation->segment;
|
||||
// SOH [Port] sometimes a HESS can set a negative frame value from a negative playback speed. When converted to
|
||||
// a signed value this will cause a crash due to copying way much data.
|
||||
if (frame < 0) {
|
||||
frame = 0;
|
||||
}
|
||||
memcpy(ram, (uintptr_t)animData + (((sizeof(Vec3s) * limbCount + 2) * frame)), sizeof(Vec3s) * limbCount + 2);
|
||||
|
||||
/*u32* ramPtr = (u32*)ram;
|
||||
|
||||
for (int i = 0; i < 1024; i++)
|
||||
{
|
||||
ramPtr[i] = i * 7;
|
||||
}*/
|
||||
|
||||
// DmaMgr_SendRequest2(&entry->data.load.req, ram,
|
||||
// LINK_ANIMATION_OFFSET(linkAnimHeader->segment, ((sizeof(Vec3s) * limbCount + 2) * frame)),
|
||||
// sizeof(Vec3s) * limbCount + 2, 0, &entry->data.load.msgQueue, NULL, __FILE__,
|
||||
//__LINE__);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user