mirror of
https://github.com/izzy2lost/Ghostship.git
synced 2026-06-19 01:17:03 -07:00
[WIP] Implemented GeoLayout loading and moved to otr every actor (#53)
* Fixed GeoLayout loading and implemented mario loading from otr * Ported bobomb and coins * Ported cannon barrel * Ported blue_coin_switch * Fixed collision loading * Ported checkerboard_platform * Ported most of common0 to otr * Fixed amp on jp * Fixed some wrong yamls * Fixed faulty snow interpolation * Bump LUS * Extracted 99.99999% actors to be loaded from otr * Removed unnessesary print and added o2r mod support * Fixed headers * Added us support into geolayout parser * Fixed conflicts * Removed done indicators * Remove duplicated headers * Added bbh, bitdw, bitfs, bits, bob and lll loaded from otr * Bump torch * Fixed linux compilation * Pushed header generation * Got compiling on Linux working. (#59) * Added more data and hopefully fix more issues * Updated libultraship * bin dls and vtxs (#60) * Fixed master volume * Updated torch * Renamed otr files * Renamed otr en cmakelists * Updated libultraship and torch * Removed actors code * [WIP] The big one that removes almost all hardcoded assets from levels and actors * Updating cmake to match Starship * Updated more references * Updated cmake to add more targets * Updated o2r name * Removed unnecesary dma call * Updated gitmodules * Bump LUS, fixed cmake and fixed audio on windows * Update torch and wdw * Fixed some corrupted ptrs, cleaned up jp support and fixed bully * Added USE_GBI_TRACE * Fixed packaging.cmake and audio fixes * Removed old LUS * Updated torch and readded LUS * More compilation issues * Removed interpolation to use on the future the new system * Bump libs * Reimplemented skybox, and added synthesis overflow fix * Removed prints to use SPDLOG * This should had been on another branch but fuck it * Added more interpolation stuff * Fixed interpolation, fixed some random things and ported from GameInteractor to Lwyx's EventSystem * Removed some FrameInterpolation changes * Fixed gitignore and implemented PortEnhancements * Fixed interpolation crashes, WIP implemented reset among other fixes * Bump torch to fix paintings * Moved log to be a trace * Readded some frame tagging * Fixed rumble * Fixed skybox crashes * Bump LUS * Moved skybox and floats to float for better precision * Moved to health change and created lives change event * Fixed bubbles being broken * Fixed lives event not being registered * Fixed skybox crashes * Initialized mixer variables * Fixed some memory leaks * Fixed trajectory being exported incorrectly * Hopefully fixed us yamls * Fixed remaining us issues * Implemented o2r generation among some other things --------- Co-authored-by: KiritoDv <KiritoDv> Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com> Co-authored-by: inspectredc <78732756+inspectredc@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
co-authored by
KiritoDv <KiritoDv>
sitton76
inspectredc
parent
51989c6061
commit
20674529ab
+7
-1
@@ -49,6 +49,8 @@ build/*
|
||||
*.mio0
|
||||
*.z64
|
||||
*.otr
|
||||
*.sav
|
||||
*.o2r
|
||||
*.map
|
||||
.assets-local.txt
|
||||
|
||||
@@ -87,4 +89,8 @@ code/
|
||||
# Torch hash
|
||||
torch.hash.yml
|
||||
merge/
|
||||
.vs/
|
||||
.vs/
|
||||
include/assets/*
|
||||
modifications/
|
||||
modding/
|
||||
*.log
|
||||
+3
-4
@@ -1,7 +1,6 @@
|
||||
[submodule "libultraship"]
|
||||
path = libultraship
|
||||
url = https://github.com/KiritoDv/libultraship
|
||||
branch = version/pu
|
||||
[submodule "Torch"]
|
||||
path = Torch
|
||||
url = https://github.com/HarbourMasters/Torch.git
|
||||
[submodule "libultraship"]
|
||||
path = libultraship
|
||||
url = https://github.com/Kenix3/libultraship
|
||||
|
||||
+211
-126
@@ -13,32 +13,28 @@ set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum OS X deployment ve
|
||||
# Set the C++ standard and enable the MSVC parallel build option
|
||||
set(CMAKE_CXX_STANDARD 20 CACHE STRING "The C++ standard to use")
|
||||
set(CMAKE_C_STANDARD 11 CACHE STRING "The C standard to use")
|
||||
#add_compile_options(-fsanitize=address)
|
||||
#add_link_options(-fsanitize=address)
|
||||
# add_compile_options(-fsanitize=address)
|
||||
# add_link_options(-fsanitize=address)
|
||||
|
||||
# Add a custom module path to locate additional CMake modules
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/")
|
||||
include(FindFontconfig)
|
||||
set(YAML_CPP_STATIC_DEFINE ON)
|
||||
add_compile_definitions(YAML_CPP_STATIC_DEFINE)
|
||||
|
||||
if (WIN32)
|
||||
include(cmake/automate-vcpkg.cmake)
|
||||
# Forced to use MSVC
|
||||
set(MSVC ON)
|
||||
|
||||
if(MSVC)
|
||||
set(VCPKG_TRIPLET x64-windows-static)
|
||||
set(VCPKG_TARGET_TRIPLET x64-windows-static)
|
||||
else()
|
||||
set(VCPKG_TRIPLET x64-mingw-static)
|
||||
set(VCPKG_TARGET_TRIPLET x64-mingw-static)
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_BUILD_TYPE )
|
||||
set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "Choose the type of build." FORCE)
|
||||
endif()
|
||||
|
||||
vcpkg_bootstrap()
|
||||
vcpkg_install_packages(fontconfig sdl2 zlib bzip2 libzip libpng getopt dirent libusb pthread glew glfw3 nlohmann-json tinyxml2 spdlog)
|
||||
vcpkg_install_packages(zlib bzip2 libzip libpng sdl2 glew glfw3 nlohmann-json tinyxml2 spdlog)
|
||||
|
||||
set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME})
|
||||
set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_DEBUGGER_WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
|
||||
endif()
|
||||
|
||||
if(NOT EXISTS ${CMAKE_BINARY_DIR}/config.yml)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/config.yml" "${CMAKE_BINARY_DIR}/config.yml")
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_SOURCE_DIR}/assets/" "${CMAKE_BINARY_DIR}/assets/")
|
||||
endif()
|
||||
|
||||
if (MSVC)
|
||||
@@ -47,6 +43,16 @@ else()
|
||||
set(CPP "${CMAKE_C_COMPILER}" "-E" "-P" "-Wno-trigraphs" "-x" "c")
|
||||
endif()
|
||||
|
||||
if(IOS)
|
||||
set(PLATFORM "OS64")
|
||||
include(cmake/ios.toolchain.cmake)
|
||||
add_compile_definitions(
|
||||
PLATFORM_IOS=1
|
||||
)
|
||||
set(CMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM "YOUR_TEAM_ID")
|
||||
set(PROJECT_ID "dev.net64.game")
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
# Set target arch type if empty. Visual studio solution generator provides it.
|
||||
################################################################################
|
||||
@@ -65,6 +71,7 @@ endif()
|
||||
# Set game compilation version
|
||||
set(VERSION us)
|
||||
set(USE_NETWORKING OFF)
|
||||
set(SKIP_XCODE_VERSION_CHECK ON)
|
||||
|
||||
# Add compile definitions for the target
|
||||
add_compile_definitions(
|
||||
@@ -112,6 +119,7 @@ file(GLOB_RECURSE ALL_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
"lib/src/guPerspectiveF.c"
|
||||
"lib/src/guRotateF.c"
|
||||
"lib/src/guScaleF.c"
|
||||
"lib/src/guLookAtF.c"
|
||||
"lib/src/guTranslateF.c"
|
||||
"sound/*.c"
|
||||
"src/audio/*.h"
|
||||
@@ -149,7 +157,27 @@ list(FILTER ALL_FILES EXCLUDE REGEX "bin/eu/.*.c")
|
||||
list(FILTER ALL_FILES EXCLUDE REGEX "src/game/main.c")
|
||||
list(FILTER ALL_FILES EXCLUDE REGEX "src/pc/dlmalloc.c")
|
||||
|
||||
add_executable(${PROJECT_NAME} ${ALL_FILES} ${GENERATED_SOURCES})
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "iOS")
|
||||
set(IOS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/libultraship/ios)
|
||||
|
||||
set(STORYBOARD_FILE ${IOS_DIR}/Launch.storyboard)
|
||||
set(IMAGE_FILES ${IOS_DIR}/PoweredBy.png)
|
||||
set(ICON_FILES ${IOS_DIR}/Icon.png)
|
||||
|
||||
list(APPEND ALL_FILES ${STORYBOARD_FILE} ${IMAGE_FILES} ${ICON_FILES})
|
||||
|
||||
add_executable(${PROJECT_NAME} ${ALL_FILES})
|
||||
set_xcode_property(${PROJECT_NAME} PRODUCT_BUNDLE_IDENTIFIER ${PROJECT_ID} All)
|
||||
set_target_properties(
|
||||
${PROJECT_NAME}
|
||||
PROPERTIES
|
||||
MACOSX_BUNDLE TRUE
|
||||
MACOSX_BUNDLE_INFO_PLIST ${IOS_DIR}/plist.in
|
||||
RESOURCE "${IMAGE_FILES};${STORYBOARD_FILE};${ICON_FILES}"
|
||||
)
|
||||
else()
|
||||
add_executable(${PROJECT_NAME} ${ALL_FILES})
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
# MSVC runtime library
|
||||
@@ -183,78 +211,36 @@ if (MSVC)
|
||||
endif()
|
||||
|
||||
#==============================================================================#
|
||||
# Libultraship Integration #
|
||||
# Libultraship Integration #
|
||||
#==============================================================================#
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/include/libultraship
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/log
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/debug
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/menu
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/utils
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/utils/binarytools
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/config
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/resource
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/resource/type
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/resource/factory
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/audio
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/window
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/window/gui
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/config
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/public
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/public/libultra
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/public/bridge
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/extern
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/extern/tinyxml2
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/libultraship/Lib/
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/libultraship/Lib/libjpeg/include/
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/libultraship/Lib/spdlog/include/
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/graphic/Fast3D/U64/PR
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/src/graphic
|
||||
${SDL2_INCLUDE_DIRS}
|
||||
${GLEW_INCLUDE_DIRS}
|
||||
|
||||
add_subdirectory(libultraship ${CMAKE_CURRENT_SOURCE_DIR}/libultraship)
|
||||
add_dependencies(${PROJECT_NAME} libultraship)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE libultraship)
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/include
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/libultraship/include/libultraship
|
||||
)
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
||||
"$<$<CONFIG:Debug>:"
|
||||
"_DEBUG;"
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
"ENABLE_DX11;"
|
||||
">"
|
||||
"$<$<CONFIG:Release>:"
|
||||
"NDEBUG"
|
||||
">"
|
||||
"INCLUDE_GAME_PRINTF;"
|
||||
"UNICODE;"
|
||||
"_UNICODE"
|
||||
STORMLIB_NO_AUTO_LINK
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
)
|
||||
elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
||||
"$<$<CONFIG:Debug>:"
|
||||
"NOINCLUDE_GAME_PRINTF;"
|
||||
"_DEBUG;"
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
"ENABLE_OPENGL"
|
||||
">"
|
||||
"$<$<CONFIG:Release>:"
|
||||
"NDEBUG;"
|
||||
">"
|
||||
"INCLUDE_GAME_PRINTF;"
|
||||
"WIN32;"
|
||||
"UNICODE;"
|
||||
"_UNICODE"
|
||||
STORMLIB_NO_AUTO_LINK
|
||||
)
|
||||
endif()
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
||||
"$<$<CONFIG:Debug>:"
|
||||
"_DEBUG;"
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
"ENABLE_DX11;"
|
||||
">"
|
||||
"$<$<CONFIG:Release>:"
|
||||
"NDEBUG"
|
||||
">"
|
||||
"INCLUDE_GAME_PRINTF;"
|
||||
"UNICODE;"
|
||||
"_UNICODE;"
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
"_SILENCE_ALL_MS_EXT_DEPRECATION_WARNINGS;"
|
||||
)
|
||||
add_compile_definitions(STORMLIB_NO_AUTO_LINK)
|
||||
set(STORMLIB_NO_AUTO_LINK ON)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "CafeOS")
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
||||
"$<$<CONFIG:Debug>:"
|
||||
@@ -280,16 +266,32 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU|Clang|AppleClang")
|
||||
"SPDLOG_ACTIVE_LEVEL=0;"
|
||||
"_CONSOLE;"
|
||||
"_CRT_SECURE_NO_WARNINGS;"
|
||||
"ENABLE_OPENGL;"
|
||||
"UNICODE;"
|
||||
"_UNICODE"
|
||||
)
|
||||
endif()
|
||||
|
||||
add_subdirectory(libultraship ${CMAKE_CURRENT_SOURCE_DIR}/libultraship)
|
||||
|
||||
add_dependencies(${PROJECT_NAME} libultraship)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE libultraship)
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(ADDITIONAL_LIBRARY_DEPENDENCIES
|
||||
"$<$<BOOL:${USE_NETWORKING}>:SDL2_net::SDL2_net-static>"
|
||||
)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "NintendoSwitch")
|
||||
set(ADDITIONAL_LIBRARY_DEPENDENCIES
|
||||
-lglad
|
||||
)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "CafeOS")
|
||||
set(ADDITIONAL_LIBRARY_DEPENDENCIES
|
||||
"$<$<CONFIG:Debug>:-Wl,--wrap=abort>"
|
||||
)
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
||||
${DEVKITPRO}/portlibs/wiiu/include/
|
||||
)
|
||||
else()
|
||||
set(ADDITIONAL_LIBRARY_DEPENDENCIES
|
||||
"$<$<BOOL:${USE_NETWORKING}>:SDL2_net::SDL2_net>"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(USE_NETWORKING)
|
||||
if(MSVC)
|
||||
@@ -301,6 +303,30 @@ if(USE_NETWORKING)
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE USE_NETWORKING)
|
||||
endif()
|
||||
|
||||
option(USE_STANDALONE "Build as a standalone executable" OFF)
|
||||
option(BUILD_STORMLIB "Build with StormLib support" OFF)
|
||||
|
||||
option(BUILD_SM64 "Build with Super Mario 64 support" OFF)
|
||||
option(BUILD_MK64 "Build with Mario Kart 64 support" OFF)
|
||||
option(BUILD_FZERO "Build with F-Zero X support" OFF)
|
||||
add_subdirectory(Torch)
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE torch "${ADDITIONAL_LIBRARY_DEPENDENCIES}")
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "NintendoSwitch")
|
||||
|
||||
nx_generate_nacp(${PROJECT_NAME}.nacp
|
||||
NAME "${PROJECT_NAME}"
|
||||
AUTHOR "${PROJECT_TEAM}"
|
||||
VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}"
|
||||
)
|
||||
|
||||
nx_create_nro(${PROJECT_NAME}
|
||||
NACP ${PROJECT_NAME}.nacp
|
||||
)
|
||||
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.nro DESTINATION . COMPONENT ${PROJECT_NAME})
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
# Compile and link options
|
||||
################################################################################
|
||||
@@ -324,6 +350,7 @@ if(MSVC)
|
||||
${DEFAULT_CXX_EXCEPTION_HANDLING}
|
||||
)
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:/ZI;>)
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Release>:/Zi;>)
|
||||
elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
||||
$<$<CONFIG:Debug>:
|
||||
@@ -384,7 +411,35 @@ if(MSVC)
|
||||
endif()
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS")
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
||||
-Wall -Wextra -Wno-error
|
||||
-Wno-return-type
|
||||
-Wno-unused-parameter
|
||||
-Wno-unused-function
|
||||
-Wno-unused-variable
|
||||
-Wno-missing-field-initializers
|
||||
-Wno-parentheses
|
||||
-Wno-narrowing
|
||||
-Wno-missing-braces
|
||||
-Wno-int-conversion
|
||||
$<$<COMPILE_LANGUAGE:C>:
|
||||
-Werror-implicit-function-declaration
|
||||
-Wno-incompatible-pointer-types
|
||||
-fpermissive
|
||||
>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:-fpermissive>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:
|
||||
-Wno-c++11-narrowing
|
||||
-Wno-deprecated-enum-enum-conversion
|
||||
>
|
||||
-pthread
|
||||
)
|
||||
|
||||
target_link_options(${PROJECT_NAME} PRIVATE
|
||||
-pthread
|
||||
)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "NintendoSwitch")
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
||||
-Wall -Wextra -Wno-error
|
||||
-Wno-return-type
|
||||
@@ -399,32 +454,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
$<$<COMPILE_LANGUAGE:C>:
|
||||
-Werror-implicit-function-declaration
|
||||
-Wno-incompatible-pointer-types
|
||||
>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:-fpermissive>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:
|
||||
-Wno-c++11-narrowing
|
||||
-Wno-deprecated-enum-enum-conversion
|
||||
>
|
||||
-pthread
|
||||
)
|
||||
|
||||
target_link_options(${PROJECT_NAME} PRIVATE
|
||||
-pthread
|
||||
)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "NintendoSwitch")
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
||||
-Wall -Wextra -Wno-error
|
||||
-Wno-return-type
|
||||
-Wno-unused-parameter
|
||||
-Wno-unused-function
|
||||
-Wno-unused-variable
|
||||
-Wno-missing-field-initializers
|
||||
-Wno-parentheses
|
||||
-Wno-narrowing
|
||||
-Wno-missing-braces
|
||||
$<$<COMPILE_LANGUAGE:C>:
|
||||
-Werror-implicit-function-declaration
|
||||
-Wno-incompatible-pointer-types
|
||||
-fpermissive
|
||||
>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:-fpermissive>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:
|
||||
@@ -459,7 +489,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
)
|
||||
else()
|
||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
|
||||
set(CPU_OPTION -msse2 -mfpmath=sse)
|
||||
set(CPU_OPTION -msse2 -mfpmath=sse)
|
||||
endif()
|
||||
|
||||
target_compile_options(${PROJECT_NAME} PRIVATE
|
||||
@@ -471,9 +501,11 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
-Wno-parentheses
|
||||
-Wno-narrowing
|
||||
-Wno-missing-braces
|
||||
-Wno-int-conversion
|
||||
$<$<COMPILE_LANGUAGE:C>:
|
||||
-Werror-implicit-function-declaration
|
||||
-Wno-incompatible-pointer-types
|
||||
-fpermissive
|
||||
>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:-fpermissive>
|
||||
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-enum-conversion>
|
||||
@@ -489,19 +521,72 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
|
||||
endif()
|
||||
|
||||
include(ExternalProject)
|
||||
ExternalProject_Add(Torch
|
||||
PREFIX Torch
|
||||
ExternalProject_Add(TorchExternal
|
||||
PREFIX TorchExternal
|
||||
SOURCE_DIR ${CMAKE_SOURCE_DIR}/Torch
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/Torch
|
||||
)
|
||||
ExternalProject_Get_Property(Torch install_dir)
|
||||
set(TORCH_EXECUTABLE ${install_dir}/src/Torch-build/$<CONFIGURATION>/torch)
|
||||
ExternalProject_Get_Property(TorchExternal install_dir)
|
||||
if (MSVC)
|
||||
set(TORCH_EXECUTABLE ${install_dir}/src/TorchExternal-build/$<CONFIGURATION>/torch)
|
||||
else()
|
||||
set(TORCH_EXECUTABLE ${install_dir}/src/TorchExternal-build/torch)
|
||||
endif()
|
||||
add_custom_target(
|
||||
ExtractAssets
|
||||
DEPENDS Torch
|
||||
DEPENDS TorchExternal
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMAND ${TORCH_EXECUTABLE} otr baserom.us.z64
|
||||
COMMAND ${TORCH_EXECUTABLE} pack assets sm64.otr
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/smcube.otr" "${CMAKE_BINARY_DIR}/smcube.otr"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/sm64.otr" "${CMAKE_BINARY_DIR}/sm64.otr"
|
||||
COMMAND ${TORCH_EXECUTABLE} o2r baserom.jp.z64
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/sm64.o2r" "${CMAKE_BINARY_DIR}/sm64.o2r"
|
||||
)
|
||||
|
||||
add_custom_target(
|
||||
ExtractHeaders
|
||||
DEPENDS TorchExternal
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMAND ${TORCH_EXECUTABLE} header -o baserom.jp.z64
|
||||
)
|
||||
|
||||
add_custom_target(
|
||||
GeneratePortOTR
|
||||
DEPENDS TorchExternal
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMAND ${TORCH_EXECUTABLE} pack port ghostship.o2r o2r
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/ghostship.o2r" "${CMAKE_BINARY_DIR}/ghostship.o2r"
|
||||
)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
add_custom_target(CreateOSXIcons
|
||||
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset
|
||||
COMMAND sips -z 16 16 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_16x16.png
|
||||
COMMAND sips -z 32 32 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_16x16@2x.png
|
||||
COMMAND sips -z 32 32 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_32x32.png
|
||||
COMMAND sips -z 64 64 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_32x32@2x.png
|
||||
COMMAND sips -z 128 128 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_128x128.png
|
||||
COMMAND sips -z 256 256 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_128x128@2x.png
|
||||
COMMAND sips -z 256 256 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_256x256.png
|
||||
COMMAND sips -z 512 512 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_256x256@2x.png
|
||||
COMMAND sips -z 512 512 logo.png --out ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_512x512.png
|
||||
COMMAND cp logo.png ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset/icon_512x512@2x.png
|
||||
COMMAND iconutil -c icns -o ${CMAKE_BINARY_DIR}/macosx/ghostship.icns ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMENT "Creating OSX icons ..."
|
||||
)
|
||||
add_dependencies(${PROJECT_NAME} CreateOSXIcons)
|
||||
configure_file("${CMAKE_SOURCE_DIR}/Info.plist" "${CMAKE_BINARY_DIR}/Info.plist" COPYONLY)
|
||||
endif()
|
||||
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY APPIMAGE_DESKTOP_FILE_TERMINAL YES)
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY APPIMAGE_DESKTOP_FILE "${CMAKE_SOURCE_DIR}/${PROJECT_NAME}.desktop")
|
||||
set_property(TARGET ${PROJECT_NAME} PROPERTY APPIMAGE_ICON_FILE "${CMAKE_SOURCE_DIR}/logo.png")
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
set(CPACK_GENERATOR "External")
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows|NintendoSwitch|CafeOS")
|
||||
set(CPACK_GENERATOR "ZIP")
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
set(CPACK_GENERATOR "Bundle")
|
||||
endif()
|
||||
|
||||
set(CPACK_PROJECT_CONFIG_FILE ${CMAKE_SOURCE_DIR}/cmake/configure-packaging.cmake)
|
||||
include(cmake/packaging.cmake)
|
||||
@@ -0,0 +1,9 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Ghostship
|
||||
Exec=Ghostship
|
||||
Terminal=false
|
||||
Icon=logo
|
||||
Type=Application
|
||||
Categories=Game;
|
||||
X-AppImage-Integrate=false
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>Ghostship</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>Ghostship</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>0.1.0</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>Ghostship.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.ghostship</string>
|
||||
<key>CFBundleDocumentTypes</key>
|
||||
<array>
|
||||
</array>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>ZMM</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>0.1.0</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright 2024 HarbourMasters.</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.games</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.15</string>
|
||||
<key>LSArchitecturePriority</key>
|
||||
<array>
|
||||
<string>arm64</string>
|
||||
<string>x86_64</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -0,0 +1,214 @@
|
||||
# =============================================================================
|
||||
# Cool Makefile for CMake Projects
|
||||
# =============================================================================
|
||||
#
|
||||
# A Makefile that makes configuring and building CMake projects really simple.
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# Functions
|
||||
# =============================================================================
|
||||
|
||||
define to_lower_case
|
||||
$(shell echo $(1) | tr '[:upper:]' '[:lower:]')
|
||||
endef
|
||||
|
||||
define find_in_list
|
||||
$(shell resolved_value=$$(for candidate in $(2); do \
|
||||
if [ "$(call to_lower_case,$(1))" = "$$(echo $$candidate | tr '[:upper:]' '[:lower:]')" ]; then \
|
||||
echo $$candidate; \
|
||||
fi; \
|
||||
done); \
|
||||
echo "$${resolved_value:-$(1)}";)
|
||||
endef
|
||||
|
||||
define exists_in_list
|
||||
$(shell resolved_value=$$(for candidate in $(2); do \
|
||||
if [ "$(call to_lower_case,$(1))" = "$$(echo $$candidate | tr '[:upper:]' '[:lower:]')" ]; then \
|
||||
echo true; \
|
||||
fi; \
|
||||
done); \
|
||||
echo "$${resolved_value:-false}";)
|
||||
endef
|
||||
|
||||
# =============================================================================
|
||||
# Variables
|
||||
# =============================================================================
|
||||
|
||||
project_name:=?
|
||||
project_lang:=?
|
||||
type:=debug
|
||||
generator:=$(shell if [ -x "$$(which ninja)" ]; then echo "Ninja"; else echo "Unix Makefiles"; fi)
|
||||
build_path:=$(shell if [ "$(call to_lower_case,$(generator))" = "xcode" ]; then echo "xcode-build"; else echo "cmake-build-$(call to_lower_case,$(type))"; fi)
|
||||
|
||||
# =============================================================================
|
||||
# Constants
|
||||
# =============================================================================
|
||||
|
||||
override cores:=$(shell if [ "$$(uname)" = "Darwin" ]; then sysctl -n hw.ncpu; elif [ "$$(uname)" = "Linux" ]; then nproc --all; else echo 1; fi)
|
||||
override valid_generators:="Unix Makefiles" "Ninja" "Xcode"
|
||||
override valid_types:=Release Debug RelWithDebInfo MinSizeRel
|
||||
override debug_types:=Debug RelWithDebInfo
|
||||
|
||||
override cmake_build_type_arg:=$(call find_in_list,$(type),$(valid_types))
|
||||
override cmake_generator_arg:=$(call find_in_list,$(generator),$(valid_generators))
|
||||
override is_debug:=$(call exists_in_list,$(type),$(debug_types))
|
||||
|
||||
# =============================================================================
|
||||
# Utility targets
|
||||
# =============================================================================
|
||||
|
||||
# All targets are phony in this Makefile
|
||||
.PHONY : $(shell egrep "^[A-Za-z0-9_-]+\:([^\=]|$$)" $(lastword $(MAKEFILE_LIST)) | sed -E 's/(.*):.*/\1/g')
|
||||
|
||||
# Default target is build
|
||||
all: build
|
||||
|
||||
#: Displays this message
|
||||
help:
|
||||
@echo "Usage:"
|
||||
@echo
|
||||
@echo " make type=<build type> generator=<generator> <target>"
|
||||
@echo
|
||||
@echo "Targets:"
|
||||
@egrep -B1 "^[A-Za-z0-9_-]+\:([^\=]|$$)" $(lastword $(MAKEFILE_LIST)) \
|
||||
| grep -v -- -- \
|
||||
| sed 'N;s/\n/###/' \
|
||||
| sed -n 's/^#: \(.*\)###\(.*\):.*/ \2###\1/p' \
|
||||
| column -t -s '###'
|
||||
|
||||
#: List available build types
|
||||
list-types:
|
||||
@for type in $(valid_types); do echo $$type; done
|
||||
|
||||
#: List available generators
|
||||
list-generators:
|
||||
@for generator in $(valid_generators); do echo $$generator; done;
|
||||
|
||||
validate-type:
|
||||
ifneq ($(cmake_build_type_arg),$(filter $(cmake_build_type_arg),$(valid_types)))
|
||||
@echo "Invalid build type: $(cmake_build_type_arg). Valid types are:" >&2;
|
||||
@for type in $(valid_types); do echo - $$type >&2; done
|
||||
@exit 1;
|
||||
else ifeq ($(strip $(cmake_build_type_arg)),)
|
||||
@echo "Empty build type. Valid types are:" >&2;
|
||||
@for type in $(valid_types); do echo - $$type >&2; done
|
||||
@exit 1;
|
||||
else
|
||||
@:
|
||||
endif
|
||||
|
||||
validate-generator:
|
||||
ifneq ("$(cmake_generator_arg)",$(filter "$(cmake_generator_arg)",$(valid_generators)))
|
||||
@echo "Unsupported generator: $(cmake_generator_arg). Valid generators are:" >&2;
|
||||
@for generator in $(valid_generators); do echo - $$generator >&2; done;
|
||||
@exit 1;
|
||||
else ifeq ($(strip $(cmake_generator_arg)),)
|
||||
@echo "Empty CMake generator. Valid generators are:" >&2;
|
||||
@for generator in $(valid_generators); do echo - $$generator >&2; done;
|
||||
@exit 1;
|
||||
else
|
||||
@:
|
||||
endif
|
||||
|
||||
# =============================================================================
|
||||
# Build targets
|
||||
# =============================================================================
|
||||
|
||||
#: Delete the build path for the currently selected type and generator
|
||||
clean: validate-type
|
||||
@rm -rf "./$(build_path)";
|
||||
|
||||
#: Delete all build paths for all types and generators
|
||||
clean-all:
|
||||
@for generator in $(valid_generators); do \
|
||||
for type in $(valid_types); do \
|
||||
$(MAKE) generator="$$generator" type=$$type clean; \
|
||||
done; \
|
||||
done;
|
||||
|
||||
#: Initialise an empty CMake project
|
||||
init:
|
||||
@if [ ! -f CMakeLists.txt ]; then \
|
||||
project_name=$(project_name); \
|
||||
if [ "$$project_name" = "?" ]; then \
|
||||
read -p "Enter project name: " project_name; \
|
||||
fi; \
|
||||
project_lang=$(project_lang); \
|
||||
if [ "$$project_lang" = "?" ]; then \
|
||||
read -p "Enter project language (c|cpp): " project_lang; \
|
||||
fi; \
|
||||
project_lang=$$(echo $$project_lang | tr '[:upper:]' '[:lower:]' | sed -E -e 's/^(c\+\+|cxx)$$/cpp/'); \
|
||||
if [ "$$project_lang" = "c" ]; then \
|
||||
echo "#include \"stdio.h\"\n\nint main() {\n\tprintf(\"%s\", \"hello, world!\");\n\treturn 0;\n}\n" >$$project_name.$$project_lang; \
|
||||
elif [ "$$project_lang" = "cpp" ]; then \
|
||||
echo "#include <iostream>\n\nint main() {\n\tstd::cout << \"hello, world!\" << std::endl;\n\treturn 0;\n}\n" >$$project_name.$$project_lang; \
|
||||
else \
|
||||
echo "Unsupported language type" >&2; \
|
||||
exit 1; \
|
||||
fi; \
|
||||
echo "project($$project_name)\n\nadd_executable($$project_name $$project_name.$$project_lang)\n\n" >CMakeLists.txt; \
|
||||
fi;
|
||||
|
||||
#: Configure the project for the selected type and generator
|
||||
configure: validate-type validate-generator init
|
||||
ifeq ($(cmake_generator_arg), Xcode)
|
||||
@cmake -S . -B $(build_path) \
|
||||
-G "$(cmake_generator_arg)";
|
||||
else
|
||||
@cmake -S . -B $(build_path) \
|
||||
-DCMAKE_BUILD_TYPE=$(cmake_build_type_arg) \
|
||||
-G "$(cmake_generator_arg)";
|
||||
endif
|
||||
|
||||
#: Build the project for the selected type and generator
|
||||
build: configure
|
||||
ifeq ($(cmake_generator_arg), Xcode)
|
||||
@cmake --build $(build_path) --config $(cmake_build_type_arg);
|
||||
else
|
||||
@cmake --build $(build_path) -- -j$(cores);
|
||||
endif
|
||||
|
||||
#: Install the project for the selected type and generator
|
||||
install: build
|
||||
ifeq ($(cmake_generator_arg), Xcode)
|
||||
@cmake --install $(build_path) --config $(cmake_build_type_arg);
|
||||
else
|
||||
@cmake --install $(build_path);
|
||||
endif
|
||||
|
||||
#: Run the application
|
||||
run: build
|
||||
@app_name=$$(cmake -S . -B "$(build_path)" --trace 2>&1 \
|
||||
| egrep -i add_executable \
|
||||
| sort -r \
|
||||
| head -n 1 \
|
||||
| sed -E 's/.*add_executable.[[:space:]]*([A-Za-z0-9\\"_\.+-]+)[[:space:]].*/\1/'); \
|
||||
if [ "$(call to_lower_case,$(generator))" = "xcode" ]; then \
|
||||
cd $(build_path)/$(cmake_build_type_arg) && ./$$app_name; \
|
||||
else \
|
||||
cd $(build_path) && ./$$app_name; \
|
||||
fi
|
||||
@echo "\nProcessed finished with exit code $$?"
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# Makefile debugging targets
|
||||
# =============================================================================
|
||||
|
||||
list-variables:
|
||||
@echo $(foreach \
|
||||
v, \
|
||||
$(.VARIABLES), \
|
||||
$(if \
|
||||
$(filter file, $(origin $(v))), \
|
||||
\\n$(v)=$($(v)), \
|
||||
$(if \
|
||||
$(filter command line, $(origin $(v))), \
|
||||
\\n$(v)=$($(v)), \
|
||||
$(if \
|
||||
$(filter override, $(origin $(v))), \
|
||||
\\n$(v)=$($(v)))))) | egrep -v '^$$' | egrep -v '=\s*$$' | sort
|
||||
|
||||
list-targets:
|
||||
@egrep "^[A-Za-z0-9_-]+\:([^\=]|$$)" $(lastword $(MAKEFILE_LIST)) | sed -E 's/(.*):.*/\1/g' | sort
|
||||
+1
-1
Submodule Torch updated: 84266f9049...b5ed22ae83
@@ -1,51 +0,0 @@
|
||||
static const s16 dAmpAnimValue[] = {
|
||||
0x0000, 0x0000, 0x0D79, 0x1AF2, 0x286B, 0x35E4, 0x435D, 0x50D6,
|
||||
0x5E50, 0x6BC9, 0x7942, 0x86BE, 0x9437, 0xA1B0, 0xAF2A, 0xBCA3,
|
||||
0xCA1C, 0xD795, 0xE50E, 0xF287, 0x1872, 0x0000, 0x1AF2, 0x35E4,
|
||||
0x50D6, 0x6BC9, 0x86BE, 0xA1B0, 0xBCA3, 0xD795, 0xF287, 0x0D79,
|
||||
0x286B, 0x435D, 0x5E50, 0x7942, 0x9437, 0xAF2A, 0xCA1C, 0xE50E,
|
||||
0x0000, 0x1AF2, 0x35E4, 0x50D6, 0x6BC9, 0x86BE, 0xA1B0, 0xBCA3,
|
||||
0xD795, 0xF287, 0x0D79, 0x286B, 0x435D, 0x5E50, 0x7942, 0x9437,
|
||||
0xAF2A, 0xCA1C, 0xE50E, 0x8001, 0x5793, 0x2F28, 0x06BC, 0xDE52,
|
||||
0xB5E6, 0x8D7B, 0x650C, 0x3CA1, 0x1435, 0xEBCB, 0xC35F, 0x9AF4,
|
||||
0x7285, 0x4A1A, 0x21AE, 0xF944, 0xD0D8, 0xA86D, 0x3FFF, 0x0000,
|
||||
0x0D7C, 0x1AF9, 0x2876, 0x35F3, 0x4370, 0x50ED, 0x5E6A, 0x6BE7,
|
||||
0x7964, 0x86E3, 0x9460, 0xA1DD, 0xAF5A, 0xBCD7, 0xCA54, 0xD7D1,
|
||||
0xE54E, 0xF2CB, 0xC001, 0x3FFF, 0x0000, 0x0D7B, 0x1AF7, 0x2873,
|
||||
0x35EF, 0x436B, 0x50E6, 0x5E62, 0x6BDE, 0x795A, 0x86D9, 0x9455,
|
||||
0xA1D0, 0xAF4C, 0xBCC8, 0xCA44, 0xD7C0, 0xE53B, 0xF2B7, 0xC001,
|
||||
0x3FFF, 0xC001, 0xCD7A, 0xDAF2, 0xE86B, 0xF5E3, 0x035B, 0x10D3,
|
||||
0x1E4C, 0x2BC4, 0x393D, 0x46B5, 0x542E, 0x61A6, 0x6F1F, 0x7C97,
|
||||
0x8A13, 0x978B, 0xA504, 0xB27D, 0xC001, 0x3FFF, 0x4D79, 0x5AF2,
|
||||
0x686C, 0x75E5, 0x8362, 0x90DB, 0x9E55, 0xABCF, 0xB948, 0xC6C2,
|
||||
0xD43B, 0xE1B5, 0xEF2F, 0xFCA8, 0x0A21, 0x179A, 0x2514, 0x328D,
|
||||
0xC001, 0x3FFF,
|
||||
};
|
||||
|
||||
static const u16 dAmpAnimIndex[] = {
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0000,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x00A1,
|
||||
0x0001, 0x0000, 0x0013, 0x008D, 0x0001, 0x00A0,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0013, 0x0001,
|
||||
0x0001, 0x0000, 0x0013, 0x0079, 0x0001, 0x008C,
|
||||
0x0001, 0x0014, 0x0001, 0x0000, 0x0013, 0x0015,
|
||||
0x0001, 0x0000, 0x0013, 0x0064, 0x0001, 0x0077,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0013, 0x0028,
|
||||
0x0001, 0x0000, 0x0013, 0x004F, 0x0001, 0x0062,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0013, 0x003B,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0078,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0063,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x004E,
|
||||
};
|
||||
|
||||
static const struct Animation dAmpAnimation = {
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0x13,
|
||||
ANIMINDEX_NUMPARTS(dAmpAnimIndex),
|
||||
dAmpAnimValue,
|
||||
dAmpAnimIndex,
|
||||
0,
|
||||
};
|
||||
@@ -1 +0,0 @@
|
||||
#include "animation.inc.c"
|
||||
@@ -1,3 +0,0 @@
|
||||
const struct Animation *const dAmpAnimsList[] = {
|
||||
&dAmpAnimation,
|
||||
};
|
||||
@@ -1,55 +0,0 @@
|
||||
const GeoLayout dAmpGeo[] = {
|
||||
GEO_SHADOW(SHADOW_CIRCLE_4_VERTS, 0xC8, 100),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpEyeDl),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpElectricityDl),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpElectricityDl),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpElectricityDl),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SWITCH_CASE(2, geo_switch_anim_state),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpElectricityDl),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_ALPHA, 0, 0, 0, dAmpMouthDl),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_BILLBOARD(),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_DISPLAY_LIST(LAYER_ALPHA, dAmpBodyDl),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_END(),
|
||||
};
|
||||
@@ -1,491 +0,0 @@
|
||||
// Amp
|
||||
|
||||
ALIGNED8 static const Texture dAmpElectricityTexture[] = "__OTR__actors/amp/amp_electricity";
|
||||
|
||||
ALIGNED8 static const Texture dAmpEyesTexture[] = "__OTR__actors/amp/amp_eyes";
|
||||
|
||||
ALIGNED8 static const Texture dAmpBodyTexture[] = "__OTR__actors/amp/amp_body";
|
||||
|
||||
ALIGNED8 static const Texture dAmpMouthTexture[] = "__OTR__actors/amp/amp_mouth";
|
||||
|
||||
static const Vtx dAmpElectricityVertices[] = {
|
||||
{{{ 224, 0, -89}, 0, { 0, 480}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 187, 149, 0}, 0, { 223, 1078}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 224, 0, 90}, 0, { 479, 478}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 187, -148, 0}, 0, { 224, -122}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 224, 0, -89}, 0, { 0, 478}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
};
|
||||
|
||||
const Gfx dAmpElectricitySubDl[] = {
|
||||
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, dAmpElectricityTexture),
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 16 * 32 - 1, CALC_DXT(16, G_IM_SIZ_16b_BYTES)),
|
||||
gsSPVertex(dAmpElectricityVertices, 5, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 2, 3, 4, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
const Gfx dAmpElectricityDl[] = {
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
|
||||
gsSPClearGeometryMode(G_LIGHTING | G_CULL_BACK),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
|
||||
gsDPTileSync(),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 4, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 4, G_TX_NOLOD),
|
||||
gsDPSetTileSize(0, 0, 0, (16 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
|
||||
gsSPDisplayList(dAmpElectricitySubDl),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING | G_CULL_BACK),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
static const Vtx dAmpEyeVertices[] = {
|
||||
{{{ 68, 72, 158}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -27, -71, 164}, 0, { 990, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 68, -71, 158}, 0, { 990, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -27, 72, 164}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
};
|
||||
|
||||
const Gfx dAmpEyeSubDl[] = {
|
||||
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, dAmpEyesTexture),
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
|
||||
gsSPVertex(dAmpEyeVertices, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
const Gfx dAmpEyeDl[] = {
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
|
||||
gsSPClearGeometryMode(G_LIGHTING),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
|
||||
gsDPTileSync(),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
|
||||
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
|
||||
gsSPDisplayList(dAmpEyeSubDl),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
static const Vtx dAmpMouthVertices[] = {
|
||||
{{{ -29, 72, 164}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -124, -71, 121}, 0, { 990, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -29, -71, 164}, 0, { 990, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -124, 72, 121}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
};
|
||||
|
||||
const Gfx dAmpMouthSubDl[] = {
|
||||
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, dAmpMouthTexture),
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
|
||||
gsSPVertex(dAmpMouthVertices, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
const Gfx dAmpMouthDl[] = {
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
|
||||
gsSPClearGeometryMode(G_LIGHTING),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
|
||||
gsDPTileSync(),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
|
||||
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
|
||||
gsSPDisplayList(dAmpMouthSubDl),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
static const Vtx dAmpBodyVertices[] = {
|
||||
{{{ -39, -39, 0}, 0, { 0, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 40, 40, 0}, 0, { 990, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ -39, 40, 0}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
{{{ 40, -39, 0}, 0, { 990, 990}, {0xff, 0xff, 0xff, 0xff}}},
|
||||
};
|
||||
|
||||
const Gfx dAmpBodySubDl[] = {
|
||||
gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, dAmpBodyTexture),
|
||||
gsDPLoadSync(),
|
||||
gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
|
||||
gsSPVertex(dAmpBodyVertices, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 3, 1, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
const Gfx dAmpBodyDl[] = {
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
|
||||
gsSPClearGeometryMode(G_LIGHTING),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
|
||||
gsDPTileSync(),
|
||||
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_CLAMP, 5, G_TX_NOLOD),
|
||||
gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
|
||||
gsSPDisplayList(dAmpBodySubDl),
|
||||
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
|
||||
gsDPPipeSync(),
|
||||
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
|
||||
gsSPSetGeometryMode(G_LIGHTING),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
/**
|
||||
* Everything beyond this point is unused, and seems to be an attempt at a 3D modelled
|
||||
* amp. The model and attempt are overall slightly buggy, with misread lights and a slightly
|
||||
* broken model.
|
||||
*/
|
||||
|
||||
UNUSED static const Lights1 dAmpUnused3DLights = gdSPDefLights1(
|
||||
0x33, 0x3f, 0x00,
|
||||
0xcf, 0xff, 0x00, 0x28, 0x28, 0x28
|
||||
);
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx01[] = {
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 240, -160, 0}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 240, 160, 0}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx02[] = {
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 240, -160, 0}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 240, 160, 0}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx03[] = {
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 240, -160, 0}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0x00}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 240, 160, 0}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx04[] = {
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0x00}}},
|
||||
{{{ 240, 160, 0}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0x00}}},
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0x1e, 0x00, 0x00}}},
|
||||
{{{ 280, 0, 35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0xff}}},
|
||||
{{{ 240, -160, 0}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0xff}}},
|
||||
{{{ 280, 0, -35}, 0, { 0, 0}, {0x7b, 0xe2, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx05[] = {
|
||||
{{{ -184, -54, -54}, 0, { 0, 0}, {0x8b, 0xde, 0xde, 0x00}}},
|
||||
{{{ -184, -76, 0}, 0, { 0, 0}, {0x8b, 0xd0, 0x00, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, -100, -100}, 0, { 0, 0}, {0xa6, 0xc1, 0xc1, 0xff}}},
|
||||
{{{ -141, -141, 0}, 0, { 0, 0}, {0xa6, 0xa7, 0x00, 0xff}}},
|
||||
{{{ -76, -130, -130}, 0, { 0, 0}, {0xd0, 0xae, 0xae, 0xff}}},
|
||||
{{{ -76, -184, 0}, 0, { 0, 0}, {0xd0, 0x8b, 0x00, 0xff}}},
|
||||
{{{ 0, -141, -141}, 0, { 0, 0}, {0x00, 0xa7, 0xa7, 0xff}}},
|
||||
{{{ 0, -200, 0}, 0, { 0, 0}, {0x00, 0x81, 0x00, 0xff}}},
|
||||
{{{ 76, -130, -130}, 0, { 0, 0}, {0x30, 0xae, 0xae, 0xff}}},
|
||||
{{{ 76, -184, 0}, 0, { 0, 0}, {0x30, 0x8b, 0x00, 0xff}}},
|
||||
{{{ 141, -100, -100}, 0, { 0, 0}, {0x5a, 0xc1, 0xc1, 0xff}}},
|
||||
{{{ 141, -141, 0}, 0, { 0, 0}, {0x5a, 0xa7, 0x00, 0xff}}},
|
||||
{{{ 184, -54, -54}, 0, { 0, 0}, {0x75, 0xde, 0xde, 0xff}}},
|
||||
{{{ 184, -76, 0}, 0, { 0, 0}, {0x75, 0xd0, 0x00, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx06[] = {
|
||||
{{{ -184, 0, -76}, 0, { 0, 0}, {0x8b, 0x00, 0xd0, 0xff}}},
|
||||
{{{ -184, -54, -54}, 0, { 0, 0}, {0x8b, 0xde, 0xde, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, 0, -141}, 0, { 0, 0}, {0xa6, 0x00, 0xa7, 0xff}}},
|
||||
{{{ -141, -100, -100}, 0, { 0, 0}, {0xa6, 0xc1, 0xc1, 0xff}}},
|
||||
{{{ -76, 0, -184}, 0, { 0, 0}, {0xd0, 0x00, 0x8b, 0xff}}},
|
||||
{{{ -76, -130, -130}, 0, { 0, 0}, {0xd0, 0xae, 0xae, 0xff}}},
|
||||
{{{ 0, 0, -200}, 0, { 0, 0}, {0x00, 0x00, 0x81, 0xff}}},
|
||||
{{{ 0, -141, -141}, 0, { 0, 0}, {0x00, 0xa7, 0xa7, 0xff}}},
|
||||
{{{ 76, 0, -184}, 0, { 0, 0}, {0x30, 0x00, 0x8b, 0xff}}},
|
||||
{{{ 76, -130, -130}, 0, { 0, 0}, {0x30, 0xae, 0xae, 0xff}}},
|
||||
{{{ 141, 0, -141}, 0, { 0, 0}, {0x5a, 0x00, 0xa7, 0xff}}},
|
||||
{{{ 141, -100, -100}, 0, { 0, 0}, {0x5a, 0xc1, 0xc1, 0xff}}},
|
||||
{{{ 184, 0, -76}, 0, { 0, 0}, {0x75, 0x00, 0xd0, 0xff}}},
|
||||
{{{ 184, -54, -54}, 0, { 0, 0}, {0x75, 0xde, 0xde, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx07[] = {
|
||||
{{{ -184, 54, -54}, 0, { 0, 0}, {0x8b, 0x22, 0xde, 0xff}}},
|
||||
{{{ -184, 0, -76}, 0, { 0, 0}, {0x8b, 0x00, 0xd0, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, 100, -100}, 0, { 0, 0}, {0xa6, 0x3f, 0xc1, 0xff}}},
|
||||
{{{ -141, 0, -141}, 0, { 0, 0}, {0xa6, 0x00, 0xa7, 0xff}}},
|
||||
{{{ -76, 130, -130}, 0, { 0, 0}, {0xd0, 0x52, 0xae, 0xff}}},
|
||||
{{{ -76, 0, -184}, 0, { 0, 0}, {0xd0, 0x00, 0x8b, 0xff}}},
|
||||
{{{ 0, 141, -141}, 0, { 0, 0}, {0x00, 0x59, 0xa7, 0xff}}},
|
||||
{{{ 0, 0, -200}, 0, { 0, 0}, {0x00, 0x00, 0x81, 0xff}}},
|
||||
{{{ 76, 130, -130}, 0, { 0, 0}, {0x30, 0x52, 0xae, 0xff}}},
|
||||
{{{ 76, 0, -184}, 0, { 0, 0}, {0x30, 0x00, 0x8b, 0xff}}},
|
||||
{{{ 141, 100, -100}, 0, { 0, 0}, {0x5a, 0x3f, 0xc1, 0xff}}},
|
||||
{{{ 141, 0, -141}, 0, { 0, 0}, {0x5a, 0x00, 0xa7, 0xff}}},
|
||||
{{{ 184, 54, -54}, 0, { 0, 0}, {0x75, 0x22, 0xde, 0xff}}},
|
||||
{{{ 184, 0, -76}, 0, { 0, 0}, {0x75, 0x00, 0xd0, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx08[] = {
|
||||
{{{ -184, 76, 0}, 0, { 0, 0}, {0x8b, 0x30, 0x00, 0xff}}},
|
||||
{{{ -184, 54, -54}, 0, { 0, 0}, {0x8b, 0x22, 0xde, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, 141, 0}, 0, { 0, 0}, {0xa6, 0x59, 0x00, 0xff}}},
|
||||
{{{ -141, 100, -100}, 0, { 0, 0}, {0xa6, 0x3f, 0xc1, 0xff}}},
|
||||
{{{ -76, 184, 0}, 0, { 0, 0}, {0xd0, 0x75, 0x00, 0xff}}},
|
||||
{{{ -76, 130, -130}, 0, { 0, 0}, {0xd0, 0x52, 0xae, 0xff}}},
|
||||
{{{ 0, 200, 0}, 0, { 0, 0}, {0x00, 0x7f, 0x00, 0xff}}},
|
||||
{{{ 0, 141, -141}, 0, { 0, 0}, {0x00, 0x59, 0xa7, 0xff}}},
|
||||
{{{ 76, 184, 0}, 0, { 0, 0}, {0x30, 0x75, 0x00, 0xff}}},
|
||||
{{{ 76, 130, -130}, 0, { 0, 0}, {0x30, 0x52, 0xae, 0xff}}},
|
||||
{{{ 141, 141, 0}, 0, { 0, 0}, {0x5a, 0x59, 0x00, 0xff}}},
|
||||
{{{ 141, 100, -100}, 0, { 0, 0}, {0x5a, 0x3f, 0xc1, 0xff}}},
|
||||
{{{ 184, 76, 0}, 0, { 0, 0}, {0x75, 0x30, 0x00, 0xff}}},
|
||||
{{{ 184, 54, -54}, 0, { 0, 0}, {0x75, 0x22, 0xde, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx09[] = {
|
||||
{{{ -184, 54, 54}, 0, { 0, 0}, {0x8b, 0x22, 0x22, 0xff}}},
|
||||
{{{ -184, 76, 0}, 0, { 0, 0}, {0x8b, 0x30, 0x00, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, 100, 100}, 0, { 0, 0}, {0xa6, 0x3f, 0x3f, 0xff}}},
|
||||
{{{ -141, 141, 0}, 0, { 0, 0}, {0xa6, 0x59, 0x00, 0xff}}},
|
||||
{{{ -76, 130, 130}, 0, { 0, 0}, {0xd0, 0x52, 0x52, 0xff}}},
|
||||
{{{ -76, 184, 0}, 0, { 0, 0}, {0xd0, 0x75, 0x00, 0xff}}},
|
||||
{{{ 0, 141, 141}, 0, { 0, 0}, {0x00, 0x59, 0x59, 0xff}}},
|
||||
{{{ 0, 200, 0}, 0, { 0, 0}, {0x00, 0x7f, 0x00, 0xff}}},
|
||||
{{{ 76, 130, 130}, 0, { 0, 0}, {0x30, 0x52, 0x52, 0xff}}},
|
||||
{{{ 76, 184, 0}, 0, { 0, 0}, {0x30, 0x75, 0x00, 0xff}}},
|
||||
{{{ 141, 100, 100}, 0, { 0, 0}, {0x5a, 0x3f, 0x3f, 0xff}}},
|
||||
{{{ 141, 141, 0}, 0, { 0, 0}, {0x5a, 0x59, 0x00, 0xff}}},
|
||||
{{{ 184, 54, 54}, 0, { 0, 0}, {0x75, 0x22, 0x22, 0xff}}},
|
||||
{{{ 184, 76, 0}, 0, { 0, 0}, {0x75, 0x30, 0x00, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx10[] = {
|
||||
{{{ -184, 0, 76}, 0, { 0, 0}, {0x8b, 0x00, 0x30, 0xff}}},
|
||||
{{{ -184, 54, 54}, 0, { 0, 0}, {0x8b, 0x22, 0x22, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, 0, 141}, 0, { 0, 0}, {0xa6, 0x00, 0x59, 0xff}}},
|
||||
{{{ -141, 100, 100}, 0, { 0, 0}, {0xa6, 0x3f, 0x3f, 0xff}}},
|
||||
{{{ -76, 0, 184}, 0, { 0, 0}, {0xd0, 0x00, 0x75, 0xff}}},
|
||||
{{{ -76, 130, 130}, 0, { 0, 0}, {0xd0, 0x52, 0x52, 0xff}}},
|
||||
{{{ 0, 0, 200}, 0, { 0, 0}, {0x00, 0x00, 0x7f, 0xff}}},
|
||||
{{{ 0, 141, 141}, 0, { 0, 0}, {0x00, 0x59, 0x59, 0xff}}},
|
||||
{{{ 76, 0, 184}, 0, { 0, 0}, {0x30, 0x00, 0x75, 0xff}}},
|
||||
{{{ 76, 130, 130}, 0, { 0, 0}, {0x30, 0x52, 0x52, 0xff}}},
|
||||
{{{ 141, 0, 141}, 0, { 0, 0}, {0x5a, 0x00, 0x59, 0xff}}},
|
||||
{{{ 141, 100, 100}, 0, { 0, 0}, {0x5a, 0x3f, 0x3f, 0xff}}},
|
||||
{{{ 184, 0, 76}, 0, { 0, 0}, {0x75, 0x00, 0x30, 0xff}}},
|
||||
{{{ 184, 54, 54}, 0, { 0, 0}, {0x75, 0x22, 0x22, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx11[] = {
|
||||
{{{ -184, -54, 54}, 0, { 0, 0}, {0x8b, 0xde, 0x22, 0xff}}},
|
||||
{{{ -184, 0, 76}, 0, { 0, 0}, {0x8b, 0x00, 0x30, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, -100, 100}, 0, { 0, 0}, {0xa6, 0xc1, 0x3f, 0xff}}},
|
||||
{{{ -141, 0, 141}, 0, { 0, 0}, {0xa6, 0x00, 0x59, 0xff}}},
|
||||
{{{ -76, -130, 130}, 0, { 0, 0}, {0xd0, 0xae, 0x52, 0xff}}},
|
||||
{{{ -76, 0, 184}, 0, { 0, 0}, {0xd0, 0x00, 0x75, 0xff}}},
|
||||
{{{ 0, -141, 141}, 0, { 0, 0}, {0x00, 0xa7, 0x59, 0xff}}},
|
||||
{{{ 0, 0, 200}, 0, { 0, 0}, {0x00, 0x00, 0x7f, 0xff}}},
|
||||
{{{ 76, -130, 130}, 0, { 0, 0}, {0x30, 0xae, 0x52, 0xff}}},
|
||||
{{{ 76, 0, 184}, 0, { 0, 0}, {0x30, 0x00, 0x75, 0xff}}},
|
||||
{{{ 141, -100, 100}, 0, { 0, 0}, {0x5a, 0xc1, 0x3f, 0xff}}},
|
||||
{{{ 141, 0, 141}, 0, { 0, 0}, {0x5a, 0x00, 0x59, 0xff}}},
|
||||
{{{ 184, -54, 54}, 0, { 0, 0}, {0x75, 0xde, 0x22, 0xff}}},
|
||||
{{{ 184, 0, 76}, 0, { 0, 0}, {0x75, 0x00, 0x30, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx12[] = {
|
||||
{{{ -184, -76, 0}, 0, { 0, 0}, {0x8b, 0xd0, 0x00, 0xff}}},
|
||||
{{{ -184, -54, 54}, 0, { 0, 0}, {0x8b, 0xde, 0x22, 0x00}}},
|
||||
{{{ -200, 0, 0}, 0, { 0, 0}, {0x81, 0x00, 0x00, 0x00}}},
|
||||
{{{ -141, -141, 0}, 0, { 0, 0}, {0xa6, 0xa7, 0x00, 0xff}}},
|
||||
{{{ -141, -100, 100}, 0, { 0, 0}, {0xa6, 0xc1, 0x3f, 0xff}}},
|
||||
{{{ -76, -184, 0}, 0, { 0, 0}, {0xd0, 0x8b, 0x00, 0xff}}},
|
||||
{{{ -76, -130, 130}, 0, { 0, 0}, {0xd0, 0xae, 0x52, 0xff}}},
|
||||
{{{ 0, -200, 0}, 0, { 0, 0}, {0x00, 0x81, 0x00, 0xff}}},
|
||||
{{{ 0, -141, 141}, 0, { 0, 0}, {0x00, 0xa7, 0x59, 0xff}}},
|
||||
{{{ 76, -184, 0}, 0, { 0, 0}, {0x30, 0x8b, 0x00, 0xff}}},
|
||||
{{{ 76, -130, 130}, 0, { 0, 0}, {0x30, 0xae, 0x52, 0xff}}},
|
||||
{{{ 141, -141, 0}, 0, { 0, 0}, {0x5a, 0xa7, 0x00, 0xff}}},
|
||||
{{{ 141, -100, 100}, 0, { 0, 0}, {0x5a, 0xc1, 0x3f, 0xff}}},
|
||||
{{{ 184, -76, 0}, 0, { 0, 0}, {0x75, 0xd0, 0x00, 0xff}}},
|
||||
{{{ 184, -54, 54}, 0, { 0, 0}, {0x75, 0xde, 0x22, 0xff}}},
|
||||
{{{ 200, 0, 0}, 0, { 0, 0}, {0x7f, 0x00, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx13[] = {
|
||||
{{{ -37, 90, 205}, 0, { 0, 0}, {0xcc, 0x00, 0x73, 0x00}}},
|
||||
{{{ -129, 90, 163}, 0, { 0, 0}, {0xcc, 0x00, 0x73, 0x00}}},
|
||||
{{{ -129, -90, 163}, 0, { 0, 0}, {0xcc, 0x00, 0x73, 0x00}}},
|
||||
{{{ -37, -90, 205}, 0, { 0, 0}, {0xcc, 0x00, 0x73, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx14[] = {
|
||||
{{{ 112, -7, 182}, 0, { 0, 0}, {0x4c, 0xd8, 0x5c, 0x00}}},
|
||||
{{{ 66, -139, 162}, 0, { 0, 0}, {0x4c, 0xd8, 0x5c, 0x00}}},
|
||||
{{{ 175, -77, 98}, 0, { 0, 0}, {0x4c, 0xd8, 0x5c, 0x00}}},
|
||||
};
|
||||
|
||||
UNUSED static const Vtx dAmpUnused3DVtx15[] = {
|
||||
{{{ 63, 90, 198}, 0, { 0, 0}, {0x08, 0x00, 0x7e, 0x00}}},
|
||||
{{{ -35, 90, 205}, 0, { 0, 0}, {0x08, 0x00, 0x7e, 0x00}}},
|
||||
{{{ -35, -90, 205}, 0, { 0, 0}, {0x08, 0x00, 0x7e, 0x00}}},
|
||||
{{{ 63, -90, 198}, 0, { 0, 0}, {0x08, 0x00, 0x7e, 0xff}}},
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl1[] = {
|
||||
gsSPLight(&dAmpUnused3DLights.l, 1),
|
||||
gsSPLight(&dAmpUnused3DLights.a, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx01, 6, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl2[] = {
|
||||
gsSPLight(&dAmpUnused3DLights.l, 1),
|
||||
gsSPLight(&dAmpUnused3DLights.a, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx02, 6, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl3[] = {
|
||||
gsSPLight(&dAmpUnused3DLights.l, 1),
|
||||
gsSPLight(&dAmpUnused3DLights.a, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx03, 6, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl4[] = {
|
||||
gsSPLight(&dAmpUnused3DLights.l, 1),
|
||||
gsSPLight(&dAmpUnused3DLights.a, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx04, 6, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DModelDl[] = {
|
||||
//! Vertex interpreted as light
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01 + 0x8, 1),
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx05, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx06, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx07, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx08, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx09, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx10, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx11, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPVertex(dAmpUnused3DVtx12, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 1, 0, 3, 0x0),
|
||||
gsSP2Triangles( 1, 3, 4, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 5, 7, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 8, 7, 9, 0x0),
|
||||
gsSP2Triangles( 8, 9, 10, 0x0, 10, 9, 11, 0x0),
|
||||
gsSP2Triangles(10, 11, 12, 0x0, 12, 11, 13, 0x0),
|
||||
gsSP2Triangles(12, 13, 14, 0x0, 14, 13, 15, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl5[] = {
|
||||
//! Vertex interpreted as light
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01 + 0x8, 1),
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx13, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl6[] = {
|
||||
//! Vertex interpreted as light
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01 + 0x8, 1),
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx14, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
UNUSED const Gfx dAmpUnused3DElectricDl7[] = {
|
||||
//! Vertex interpreted as light
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01 + 0x8, 1),
|
||||
gsSPLight((const u8*)dAmpUnused3DVtx01, 2),
|
||||
gsSPVertex(dAmpUnused3DVtx15, 4, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
@@ -1,36 +0,0 @@
|
||||
// 0x050007E0
|
||||
static const s16 birds_seg5_animvalue_050007E0[] = {
|
||||
0x0000, 0x0013, 0x0017, 0x001A, 0x001E, 0x0022, 0x0020, 0x001A,
|
||||
0xFFFF, 0x3FFF, 0x0888, 0x0695, 0x024C, 0xFE04, 0xFC12, 0xFF4D,
|
||||
0x054D, 0x0000, 0xFF6C, 0xFE24, 0xFCDD, 0xFC48, 0xFD3F, 0xFF0A,
|
||||
0x31C6, 0x228D, 0x010E, 0xDF90, 0xD056, 0xE999, 0x1883, 0x8001,
|
||||
0x7F50, 0x7EC6, 0x7F88, 0x80B3, 0x816F, 0x80C8, 0xF778, 0xF8AE,
|
||||
0xFB59, 0xFE04, 0xFF3A, 0xFD37, 0xF97B, 0x0000, 0x0098, 0x01E8,
|
||||
0x0339, 0x03D1, 0x02D4, 0x00FD, 0x31C6, 0x22A8, 0x0165, 0xE023,
|
||||
0xD104, 0xEA1A, 0x18B0, 0x3FFF, 0x3FFF, 0xC001, 0x3FFF, 0xC001,
|
||||
0x3FFF, 0x8001, 0x7F50, 0x7EC6, 0x7F88, 0x80B3, 0x816F, 0x80C8,
|
||||
};
|
||||
|
||||
// 0x05000870
|
||||
static const u16 birds_seg5_animindex_5000870[] = {
|
||||
0x0001, 0x0000, 0x0007, 0x0001, 0x0001, 0x0008, 0x0001, 0x0000, 0x0001, 0x0009, 0x0001, 0x0000,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0007, 0x0041,
|
||||
0x0001, 0x003E, 0x0001, 0x003F, 0x0001, 0x0040,
|
||||
0x0007, 0x000A, 0x0007, 0x0011, 0x0007, 0x0018,
|
||||
0x0001, 0x003B, 0x0001, 0x003C, 0x0001, 0x003D,
|
||||
0x0007, 0x0026, 0x0007, 0x002D, 0x0007, 0x0034,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0007, 0x001F,
|
||||
};
|
||||
|
||||
// 0x050008D0
|
||||
static const struct Animation birds_seg5_anim_050008D0 = {
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0x07,
|
||||
ANIMINDEX_NUMPARTS(birds_seg5_animindex_5000870),
|
||||
birds_seg5_animvalue_050007E0,
|
||||
birds_seg5_animindex_5000870,
|
||||
0,
|
||||
};
|
||||
@@ -1,36 +0,0 @@
|
||||
// 0x050008E8
|
||||
static const s16 birds_seg5_animvalue_050008E8[] = {
|
||||
0x0000, 0x001A, 0x001B, 0x001B, 0x001B, 0x001B, 0x001B, 0x001B,
|
||||
0x001A, 0xFFFF, 0x3FFF, 0x024C, 0x0246, 0x023A, 0x0234, 0x0238,
|
||||
0x0240, 0x0249, 0x024C, 0xFE24, 0xFE1D, 0xFE0F, 0xFE07, 0xFE0C,
|
||||
0xFE16, 0xFE20, 0xFE24, 0x010E, 0x0195, 0x0290, 0x0317, 0x02C6,
|
||||
0x0212, 0x015F, 0x010E, 0x7EC6, 0xFB59, 0xFB5E, 0xFB68, 0xFB6D,
|
||||
0xFB6A, 0xFB63, 0xFB5C, 0xFB59, 0x01E8, 0x01F5, 0x020B, 0x0218,
|
||||
0x0210, 0x0200, 0x01F0, 0x01E8, 0x0165, 0x01D1, 0x0299, 0x0304,
|
||||
0x02C3, 0x0235, 0x01A6, 0x0165, 0x3FFF, 0x3FFF, 0xC001, 0x3FFF,
|
||||
0xC001, 0x3FFF, 0x7EC6, 0x0000,
|
||||
};
|
||||
|
||||
// 0x05000970
|
||||
static const u16 birds_seg5_animindex_5000970[] = {
|
||||
0x0001, 0x0000, 0x0008, 0x0001, 0x0001, 0x0009, 0x0001, 0x0000, 0x0001, 0x000A, 0x0001, 0x0000,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0042,
|
||||
0x0001, 0x003F, 0x0001, 0x0040, 0x0001, 0x0041,
|
||||
0x0008, 0x000B, 0x0008, 0x0013, 0x0008, 0x001B,
|
||||
0x0001, 0x003C, 0x0001, 0x003D, 0x0001, 0x003E,
|
||||
0x0008, 0x0024, 0x0008, 0x002C, 0x0008, 0x0034,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0023,
|
||||
};
|
||||
|
||||
// 0x050009D0
|
||||
static const struct Animation birds_seg5_anim_050009D0 = {
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0x08,
|
||||
ANIMINDEX_NUMPARTS(birds_seg5_animindex_5000970),
|
||||
birds_seg5_animvalue_050008E8,
|
||||
birds_seg5_animindex_5000970,
|
||||
0,
|
||||
};
|
||||
@@ -1,2 +0,0 @@
|
||||
#include "anim_050008D0.inc.c"
|
||||
#include "anim_050009D0.inc.c"
|
||||
@@ -1,5 +0,0 @@
|
||||
// 0x050009E8
|
||||
const struct Animation *const birds_seg5_anims_050009E8[] = {
|
||||
&birds_seg5_anim_050008D0,
|
||||
&birds_seg5_anim_050009D0,
|
||||
};
|
||||
@@ -1,25 +0,0 @@
|
||||
// 0x0C000000
|
||||
const GeoLayout birds_geo[] = {
|
||||
GEO_SHADOW(SHADOW_CIRCLE_4_VERTS, 0x96, 100),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_SCALE(0x00, 16384),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000670),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 1, -12, 37, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000528),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 1, -12, -37, NULL),
|
||||
GEO_OPEN_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000600),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_ANIMATED_PART(LAYER_OPAQUE, 0, 0, 0, birds_seg5_dl_05000598),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_CLOSE_NODE(),
|
||||
GEO_END(),
|
||||
};
|
||||
@@ -1,215 +0,0 @@
|
||||
// Birds
|
||||
|
||||
// 0x05000000
|
||||
static const Lights1 birds_seg5_lights_05000000 = gdSPDefLights1(
|
||||
0x07, 0x24, 0x2c,
|
||||
0x1d, 0x91, 0xb0, 0x28, 0x28, 0x28
|
||||
);
|
||||
|
||||
// 0x05000018
|
||||
static const Lights1 birds_seg5_lights_05000018 = gdSPDefLights1(
|
||||
0x33, 0x27, 0x0d,
|
||||
0xce, 0x9d, 0x34, 0x28, 0x28, 0x28
|
||||
);
|
||||
|
||||
// 0x05000030
|
||||
static const Lights1 birds_seg5_lights_05000030 = gdSPDefLights1(
|
||||
0x3f, 0x3f, 0x3f,
|
||||
0xff, 0xff, 0xff, 0x28, 0x28, 0x28
|
||||
);
|
||||
|
||||
// 0x05000048
|
||||
static const Vtx birds_seg5_vertex_05000048[] = {
|
||||
{{{ 178, 2, 39}, 0, { 0, 0}, {0x0d, 0x7e, 0x00, 0x00}}},
|
||||
{{{ 122, -4, -33}, 0, { 0, 0}, {0x10, 0x79, 0xde, 0x00}}},
|
||||
{{{ 97, 10, 13}, 0, { 0, 0}, {0x0b, 0x7e, 0xff, 0x00}}},
|
||||
{{{ 47, 4, 47}, 0, { 0, 0}, {0xfe, 0x7c, 0x1b, 0xff}}},
|
||||
{{{ 53, 14, 7}, 0, { 0, 0}, {0xfe, 0x7e, 0xf8, 0xff}}},
|
||||
{{{ 0, 5, 32}, 0, { 0, 0}, {0xf0, 0x7d, 0x03, 0xff}}},
|
||||
{{{ 27, 9, 16}, 0, { 0, 0}, {0xee, 0x7d, 0x05, 0xff}}},
|
||||
{{{ 53, -8, -58}, 0, { 0, 0}, {0x0a, 0x78, 0xd8, 0xff}}},
|
||||
{{{ -4, -6, -64}, 0, { 0, 0}, {0xf1, 0x7b, 0xe9, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x050000D8
|
||||
static const Vtx birds_seg5_vertex_050000D8[] = {
|
||||
{{{ -143, -7, -29}, 0, { 0, 0}, {0x16, 0x94, 0xc2, 0x00}}},
|
||||
{{{ -86, -11, -2}, 0, { 0, 0}, {0x16, 0x94, 0xc2, 0x00}}},
|
||||
{{{ -154, -21, -9}, 0, { 0, 0}, {0x16, 0x94, 0xc2, 0x00}}},
|
||||
};
|
||||
|
||||
// 0x05000108
|
||||
static const Vtx birds_seg5_vertex_05000108[] = {
|
||||
{{{ -154, -21, 9}, 0, { 0, 0}, {0x16, 0x94, 0x3e, 0x00}}},
|
||||
{{{ -86, -11, 2}, 0, { 0, 0}, {0x16, 0x94, 0x3e, 0x00}}},
|
||||
{{{ -143, -7, 29}, 0, { 0, 0}, {0x16, 0x94, 0x3e, 0x00}}},
|
||||
};
|
||||
|
||||
// 0x05000138
|
||||
static const Vtx birds_seg5_vertex_05000138[] = {
|
||||
{{{ -152, -30, -17}, 0, { 0, 0}, {0x26, 0x87, 0x00, 0x00}}},
|
||||
{{{ -80, -7, 0}, 0, { 0, 0}, {0x26, 0x87, 0x00, 0x00}}},
|
||||
{{{ -152, -30, 17}, 0, { 0, 0}, {0x26, 0x87, 0x00, 0x00}}},
|
||||
};
|
||||
|
||||
// 0x05000168
|
||||
static const Vtx birds_seg5_vertex_05000168[] = {
|
||||
{{{ 97, 10, -13}, 0, { 0, 0}, {0x0b, 0x7e, 0x01, 0x00}}},
|
||||
{{{ 122, -4, 33}, 0, { 0, 0}, {0x10, 0x79, 0x22, 0x00}}},
|
||||
{{{ 178, 2, -39}, 0, { 0, 0}, {0x0d, 0x7e, 0x00, 0x00}}},
|
||||
{{{ 47, 4, -47}, 0, { 0, 0}, {0xfe, 0x7c, 0xe5, 0xff}}},
|
||||
{{{ 53, 14, -7}, 0, { 0, 0}, {0xff, 0x7f, 0x02, 0xff}}},
|
||||
{{{ 27, 9, -16}, 0, { 0, 0}, {0xf1, 0x7d, 0x06, 0xff}}},
|
||||
{{{ 0, 5, -32}, 0, { 0, 0}, {0xf0, 0x7d, 0xfd, 0xff}}},
|
||||
{{{ -4, -6, 64}, 0, { 0, 0}, {0xf7, 0x7c, 0x14, 0xff}}},
|
||||
{{{ 53, -8, 58}, 0, { 0, 0}, {0xfa, 0x79, 0x25, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x050001F8
|
||||
static const Vtx birds_seg5_vertex_050001F8[] = {
|
||||
{{{ 69, 4, -40}, 0, { 0, 0}, {0x40, 0x26, 0x9a, 0x00}}},
|
||||
{{{ 78, -51, -21}, 0, { 0, 0}, {0x27, 0xae, 0xa8, 0x00}}},
|
||||
{{{ -1, 0, -56}, 0, { 0, 0}, {0xf4, 0xc6, 0x90, 0x00}}},
|
||||
{{{ 69, 4, 40}, 0, { 0, 0}, {0x40, 0x26, 0x66, 0xff}}},
|
||||
{{{ 10, 48, 56}, 0, { 0, 0}, {0xef, 0x41, 0x6b, 0xff}}},
|
||||
{{{ -1, 0, 56}, 0, { 0, 0}, {0xf4, 0xc6, 0x70, 0xff}}},
|
||||
{{{ -88, 21, 0}, 0, { 0, 0}, {0xaa, 0x5d, 0x00, 0xff}}},
|
||||
{{{ -103, -10, -11}, 0, { 0, 0}, {0xa7, 0x30, 0xb4, 0xff}}},
|
||||
{{{ -103, -10, 11}, 0, { 0, 0}, {0xa7, 0x30, 0x4c, 0xff}}},
|
||||
{{{ 83, -57, 0}, 0, { 0, 0}, {0xdd, 0x87, 0x00, 0xff}}},
|
||||
{{{ -9, -30, 0}, 0, { 0, 0}, {0xe0, 0x86, 0x00, 0xff}}},
|
||||
{{{ 113, 0, -10}, 0, { 0, 0}, {0x4e, 0x32, 0xab, 0xff}}},
|
||||
{{{ 113, 0, 10}, 0, { 0, 0}, {0x4e, 0x32, 0x55, 0xff}}},
|
||||
{{{ 78, -51, 21}, 0, { 0, 0}, {0x27, 0xae, 0x58, 0xff}}},
|
||||
{{{ -103, -10, 11}, 0, { 0, 0}, {0xea, 0x88, 0x1f, 0xff}}},
|
||||
{{{ 113, -23, 0}, 0, { 0, 0}, {0x62, 0xb0, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x050002F8
|
||||
static const Vtx birds_seg5_vertex_050002F8[] = {
|
||||
{{{ 83, -57, 0}, 0, { 0, 0}, {0x60, 0xad, 0x00, 0xff}}},
|
||||
{{{ 113, -23, 0}, 0, { 0, 0}, {0x62, 0xb0, 0x00, 0x00}}},
|
||||
{{{ 78, -51, 21}, 0, { 0, 0}, {0x27, 0xae, 0x58, 0x00}}},
|
||||
{{{ 78, -51, -21}, 0, { 0, 0}, {0x27, 0xae, 0xa8, 0xff}}},
|
||||
{{{ -103, -10, -11}, 0, { 0, 0}, {0xa7, 0x30, 0xb4, 0xff}}},
|
||||
{{{ -88, 21, 0}, 0, { 0, 0}, {0xaa, 0x5d, 0x00, 0xff}}},
|
||||
{{{ 10, 48, -56}, 0, { 0, 0}, {0xef, 0x41, 0x95, 0xff}}},
|
||||
{{{ -1, 0, -56}, 0, { 0, 0}, {0xf4, 0xc6, 0x90, 0xff}}},
|
||||
{{{ 10, 48, 56}, 0, { 0, 0}, {0xef, 0x41, 0x6b, 0xff}}},
|
||||
{{{ -103, -10, 11}, 0, { 0, 0}, {0xa7, 0x30, 0x4c, 0xff}}},
|
||||
{{{ -103, -10, -11}, 0, { 0, 0}, {0xea, 0x88, 0xe1, 0xff}}},
|
||||
{{{ -9, -30, 0}, 0, { 0, 0}, {0xe0, 0x86, 0x00, 0xff}}},
|
||||
{{{ -103, -10, 11}, 0, { 0, 0}, {0xea, 0x88, 0x1f, 0xff}}},
|
||||
{{{ 83, -57, 0}, 0, { 0, 0}, {0xdd, 0x87, 0x00, 0xff}}},
|
||||
{{{ -1, 0, 56}, 0, { 0, 0}, {0xf4, 0xc6, 0x70, 0xff}}},
|
||||
{{{ 69, 4, -40}, 0, { 0, 0}, {0x40, 0x26, 0x9a, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x050003F8
|
||||
static const Vtx birds_seg5_vertex_050003F8[] = {
|
||||
{{{ -1, 0, 56}, 0, { 0, 0}, {0xf4, 0xc6, 0x70, 0xff}}},
|
||||
{{{ 78, -51, 21}, 0, { 0, 0}, {0x27, 0xae, 0x58, 0x00}}},
|
||||
{{{ 69, 4, 40}, 0, { 0, 0}, {0x40, 0x26, 0x66, 0x00}}},
|
||||
};
|
||||
|
||||
// 0x05000428
|
||||
static const Vtx birds_seg5_vertex_05000428[] = {
|
||||
{{{ 69, 4, -40}, 0, { 0, 0}, {0x40, 0x26, 0x9a, 0x00}}},
|
||||
{{{ 10, 48, -56}, 0, { 0, 0}, {0xef, 0x41, 0x95, 0x00}}},
|
||||
{{{ 18, 78, 0}, 0, { 0, 0}, {0x54, 0x5e, 0x00, 0x00}}},
|
||||
{{{ 10, 48, 56}, 0, { 0, 0}, {0xef, 0x41, 0x6b, 0xff}}},
|
||||
{{{ 18, 78, 0}, 0, { 0, 0}, {0xc4, 0x6f, 0x00, 0xff}}},
|
||||
{{{ -88, 21, 0}, 0, { 0, 0}, {0xaa, 0x5d, 0x00, 0xff}}},
|
||||
{{{ 113, 0, -10}, 0, { 0, 0}, {0x4e, 0x32, 0xab, 0xff}}},
|
||||
{{{ 69, 33, 0}, 0, { 0, 0}, {0x4b, 0x65, 0x00, 0xff}}},
|
||||
{{{ 113, 0, 10}, 0, { 0, 0}, {0x4e, 0x32, 0x55, 0xff}}},
|
||||
{{{ 69, 4, 40}, 0, { 0, 0}, {0x40, 0x26, 0x66, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x050004C8
|
||||
static const Vtx birds_seg5_vertex_050004C8[] = {
|
||||
{{{ 113, -23, 0}, 0, { 0, 0}, {0x62, 0xb0, 0x00, 0x00}}},
|
||||
{{{ 113, 0, -10}, 0, { 0, 0}, {0x4e, 0x32, 0xab, 0x00}}},
|
||||
{{{ 143, -2, 0}, 0, { 0, 0}, {0x24, 0xcb, 0x93, 0x00}}},
|
||||
{{{ 113, 0, 10}, 0, { 0, 0}, {0x4e, 0x32, 0x55, 0xff}}},
|
||||
{{{ 143, -2, 0}, 0, { 0, 0}, {0x24, 0xcb, 0x6d, 0xff}}},
|
||||
{{{ 143, -2, 0}, 0, { 0, 0}, {0x07, 0x7e, 0x00, 0xff}}},
|
||||
};
|
||||
|
||||
// 0x05000528 - 0x05000598
|
||||
const Gfx birds_seg5_dl_05000528[] = {
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_05000048, 9, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 2, 3, 0, 0x0),
|
||||
gsSP2Triangles( 4, 3, 2, 0x0, 5, 3, 6, 0x0),
|
||||
gsSP2Triangles( 4, 7, 8, 0x0, 4, 8, 6, 0x0),
|
||||
gsSP2Triangles( 6, 8, 5, 0x0, 6, 3, 4, 0x0),
|
||||
gsSP2Triangles( 2, 1, 7, 0x0, 2, 7, 4, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
// 0x05000598 - 0x05000600
|
||||
const Gfx birds_seg5_dl_05000598[] = {
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_050000D8, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_05000108, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_05000138, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
// 0x05000600 - 0x05000670
|
||||
const Gfx birds_seg5_dl_05000600[] = {
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_05000168, 9, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 2, 3, 0, 0x0),
|
||||
gsSP2Triangles( 0, 3, 4, 0x0, 5, 3, 6, 0x0),
|
||||
gsSP2Triangles( 5, 7, 8, 0x0, 5, 8, 4, 0x0),
|
||||
gsSP2Triangles( 6, 7, 5, 0x0, 4, 3, 5, 0x0),
|
||||
gsSP2Triangles( 4, 8, 1, 0x0, 4, 1, 0, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
// 0x05000670 - 0x050007E0
|
||||
const Gfx birds_seg5_dl_05000670[] = {
|
||||
gsSPLight(&birds_seg5_lights_05000000.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000000.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_050001F8, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSP2Triangles( 6, 7, 8, 0x0, 1, 9, 10, 0x0),
|
||||
gsSP2Triangles( 1, 0, 11, 0x0, 12, 3, 13, 0x0),
|
||||
gsSP2Triangles( 8, 5, 4, 0x0, 5, 14, 10, 0x0),
|
||||
gsSP2Triangles(13, 15, 12, 0x0, 11, 15, 1, 0x0),
|
||||
gsSPVertex(birds_seg5_vertex_050002F8, 16, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 1, 0, 0x0),
|
||||
gsSP2Triangles( 4, 5, 6, 0x0, 6, 7, 4, 0x0),
|
||||
gsSP2Triangles( 8, 5, 9, 0x0, 10, 7, 11, 0x0),
|
||||
gsSP2Triangles(11, 12, 10, 0x0, 11, 13, 2, 0x0),
|
||||
gsSP2Triangles( 2, 14, 11, 0x0, 11, 7, 3, 0x0),
|
||||
gsSP1Triangle( 7, 6, 15, 0x0),
|
||||
gsSPVertex(birds_seg5_vertex_050003F8, 3, 0),
|
||||
gsSP1Triangle( 0, 1, 2, 0x0),
|
||||
gsSPLight(&birds_seg5_lights_05000030.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000030.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_05000428, 10, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 4, 5, 0x0),
|
||||
gsSP2Triangles( 6, 0, 7, 0x0, 7, 8, 6, 0x0),
|
||||
gsSP2Triangles( 9, 7, 2, 0x0, 2, 7, 0, 0x0),
|
||||
gsSP2Triangles( 2, 3, 9, 0x0, 7, 9, 8, 0x0),
|
||||
gsSP1Triangle( 5, 4, 1, 0x0),
|
||||
gsSPLight(&birds_seg5_lights_05000018.l, 1),
|
||||
gsSPLight(&birds_seg5_lights_05000018.a, 2),
|
||||
gsSPVertex(birds_seg5_vertex_050004C8, 6, 0),
|
||||
gsSP2Triangles( 0, 1, 2, 0x0, 3, 0, 4, 0x0),
|
||||
gsSP1Triangle( 1, 3, 5, 0x0),
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
@@ -1,48 +0,0 @@
|
||||
// 0x05005EB8
|
||||
static const s16 blargg_seg5_animvalue_05005EB8[] = {
|
||||
0x0000, 0x0016, 0xFFFC, 0xFFB9, 0xFF61, 0xFF08, 0xFEC0, 0xFE9F,
|
||||
0xFEAC, 0xFED8, 0xFF16, 0xFF59, 0xFF95, 0xFFBB, 0xFFD4, 0xFFED,
|
||||
0x0005, 0x001C, 0x0031, 0x0042, 0x004D, 0x0052, 0x004E, 0x0042,
|
||||
0x002B, 0xFFED, 0xFF79, 0xFEEE, 0xFE68, 0xFE02, 0xFDD9, 0xFDDF,
|
||||
0xFDF3, 0xFE13, 0xFE3C, 0xFE6C, 0xFEA1, 0xFED9, 0xFF13, 0xFF4C,
|
||||
0xFF81, 0xFFB2, 0xFFDB, 0xFFFB, 0x000F, 0x0016, 0x3FFF, 0x8785,
|
||||
0x8785, 0x8785, 0x8785, 0x8785, 0x8785, 0x8785, 0x8A1E, 0x909B,
|
||||
0x990A, 0xA17A, 0xA7F7, 0xAA8F, 0xAA75, 0xAA2A, 0xA9B1, 0xA90E,
|
||||
0xA843, 0xA753, 0xA643, 0xA516, 0xA3CE, 0xA26F, 0xA0FC, 0x9F79,
|
||||
0x9DE9, 0x9C4F, 0x9AAE, 0x990A, 0x9766, 0x95C6, 0x942C, 0x929B,
|
||||
0x9118, 0x8FA6, 0x8E47, 0x8CFF, 0x8BD1, 0x8AC1, 0x89D2, 0x8907,
|
||||
0x8863, 0x87EA, 0x879F, 0x8785, 0x804C, 0x0BCD, 0x0D29, 0x106F,
|
||||
0x1461, 0x17C8, 0x1967, 0x1806, 0x1248, 0x08E6, 0xFDBD, 0xF2AB,
|
||||
0xE990, 0xE448, 0xE1F8, 0xE072, 0xDFA4, 0xDF79, 0xDFDD, 0xE0BB,
|
||||
0xE1FF, 0xE394, 0xE567, 0xE762, 0xE972, 0xEE5F, 0xF6AA, 0xFED8,
|
||||
0x036F, 0x04F7, 0x064D, 0x0774, 0x086F, 0x0941, 0x09EF, 0x0A7C,
|
||||
0x0AEA, 0x0B3F, 0x0B7C, 0x0BA6, 0x0BC1, 0x0BCE, 0x0BD3, 0x0BD2,
|
||||
0x0BCE, 0x0BCD, 0x76C1, 0x76C1, 0x76C1, 0x76C1, 0x76C1, 0x76C1,
|
||||
0x76C1, 0x7543, 0x7181, 0x6C93, 0x678D, 0x6385, 0x6191, 0x613B,
|
||||
0x614D, 0x61BA, 0x627B, 0x6384, 0x64CA, 0x6645, 0x67E8, 0x69AB,
|
||||
0x6B83, 0x6D65, 0x7027, 0x7426, 0x78A4, 0x7CE5, 0x802E, 0x81BB,
|
||||
0x81FB, 0x81DE, 0x8172, 0x80C4, 0x7FDE, 0x7ED2, 0x7DAC, 0x7C77,
|
||||
0x7B41, 0x7A17, 0x7907, 0x781C, 0x7764, 0x76EC, 0x76C1, 0x0000,
|
||||
};
|
||||
|
||||
// 0x05006028
|
||||
static const u16 blargg_seg5_animindex_05006028[] = {
|
||||
0x0001, 0x0000, 0x002D, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x002E, 0x0001, 0x0000,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x002D, 0x008A,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x002D, 0x005D,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x005C,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x002D, 0x002F,
|
||||
};
|
||||
|
||||
// 0x05006070
|
||||
static const struct Animation blargg_seg5_anim_05006070 = {
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0x2D,
|
||||
ANIMINDEX_NUMPARTS(blargg_seg5_animindex_05006028),
|
||||
blargg_seg5_animvalue_05005EB8,
|
||||
blargg_seg5_animindex_05006028,
|
||||
0,
|
||||
};
|
||||
@@ -1,34 +0,0 @@
|
||||
// 0x05006088
|
||||
static const s16 blargg_seg5_animvalue_05006088[] = {
|
||||
0x0000, 0x0016, 0x0018, 0x001C, 0x0022, 0x002A, 0x0033, 0x003D,
|
||||
0x0047, 0x0052, 0x005C, 0x0065, 0x006D, 0x0073, 0x0077, 0x0078,
|
||||
0x0077, 0x0074, 0x0070, 0x006B, 0x0064, 0x005C, 0x0054, 0x004C,
|
||||
0x0043, 0x003A, 0x0031, 0x0029, 0x0022, 0x001C, 0x0016, 0x3FFF,
|
||||
0x8785, 0x804C, 0x0BCD, 0x0BF1, 0x0C51, 0x0CD8, 0x0D72, 0x0E0C,
|
||||
0x0E91, 0x0EEE, 0x0F0F, 0x0EFC, 0x0ED0, 0x0E8F, 0x0E3C, 0x0DDE,
|
||||
0x0D78, 0x0D10, 0x0CA9, 0x0C48, 0x0BF2, 0x0BAB, 0x0B77, 0x0B5A,
|
||||
0x0B50, 0x0B55, 0x0B64, 0x0B7B, 0x0B94, 0x0BAD, 0x0BC1, 0x0BCD,
|
||||
0x76C1, 0x0000,
|
||||
};
|
||||
|
||||
// 0x0500610C
|
||||
static const u16 blargg_seg5_animindex_0500610C[] = {
|
||||
0x0001, 0x0000, 0x001E, 0x0001, 0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x001F, 0x0001, 0x0000,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0040,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x001E, 0x0022,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0021,
|
||||
0x0001, 0x0000, 0x0001, 0x0000, 0x0001, 0x0020,
|
||||
};
|
||||
|
||||
// 0x05006154
|
||||
static const struct Animation blargg_seg5_anim_05006154 = {
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0x1E,
|
||||
ANIMINDEX_NUMPARTS(blargg_seg5_animindex_0500610C),
|
||||
blargg_seg5_animvalue_05006088,
|
||||
blargg_seg5_animindex_0500610C,
|
||||
0,
|
||||
};
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user