Files
coco875 02ad54ca72 Refactor yaml and remove segment (#531)
* move yaml (still need to fix header path)

* fix header

* change kart to karts and add migration

* fix include

* Update migration.py

* fix common_texture_debug_font extraction

* Update torch

* update torch and header

* unduplicate texture for tumble

* Update torch

* Update migration.py

* put the sort by default

* fix replace_segmented_textures_with_o2r_textures

* Update torch

* fix yamls

* add manual_segments in data of course

* comment out replace_segmented_textures_with_o2r_textures and segment 3

* remove segment 5

* (wip) remove segment 6

still plenty of thing to do

* more vtx

* more change

* Update torch

* small fix

* Update BansheeBoardwalk.cpp

* fix blockFort

* Delete test.yaml

* fix bowser castle and simplify track sections

* fix choco mountain

* clean banshee

* fix dk jungle

* fix double deck

* fix macos

* fix error

* fix macos ci

* Update torch

* Update torch

* fix frappe snowland

* fix kalimari desert

* fix koopa troopa beach

* fix luigi raceway

* fix mario raceway and simplify thing

* fix moo moo farm

* fix rainbow road

* Update torch

* Update torch

* hopefully fix windows error

* fix a small error

* fix royal raceway (and podium in theory)

* fix sherbet_land

* fix skyscraper

* fix toads turnpike

* fix wario stadium

* fix yoshi valley

* update torch

* more clang tidy rules

* REMOVE totally SEGMENT (sorry for the PR)

* remove unused field in course and props and unused packed asset

* fix kart texture

* fix particle

* fix track section and transparency

* try fix mode extra

* fix macos build and render

* fix collision in extra

* small change and try fix windows error

* a little of clean

* more cleanup

* forget header and more clean up

* Update Makefile

* fix credits

* fix kart texture offset

* remove LoadTextures and add Unload

* fix definitevely mirror mode

* add unload but it's not perfect

* revert a bad fix

* clean no longer used python script

* fix crash with player

* being able to load the same course twice

* add a comment on DrawWater

* fix render of transparent object

* better hack

* add a proper migration instruction

* fix number

* add basic modsmanager

* add meta/mods.toml

* Update EditorMath.h

* Update ModsManager.cpp

* basic modManager (maybe I should rename it ModLoader)

* use range on dependencies

* add information about mods.toml

* fix coment

* some rename around

* Delete beta-to-v1.md

* Update migrations.md

* Update textures-pack.md

* Update modding.md

* Update modding.md

* clean yamls_old

* move to mods in engine

* rename ModsManger to  ModManager

* move init and unload at the top

* rename ModsMetadata to ModMetadata

* fix header

* Update ModManager.cpp

* put core mods at top
2025-12-07 07:34:53 -07:00

368 lines
16 KiB
C

#pragma once
#include <libultra/gbi.h>
#include <libultraship.h>
#include <common_structs.h>
#include <align_asset_macro.h>
static const ALIGN_ASSET(2) char D_0D001200[] = "__OTR__models/common_data/D_0D001200";
static const ALIGN_ASSET(2) char D_0D001210[] = "__OTR__models/common_data/D_0D001210";
static const ALIGN_ASSET(2) char D_0D001240[] = "__OTR__models/common_data/D_0D001240";
static const ALIGN_ASSET(2) char D_0D001270[] = "__OTR__models/common_data/D_0D001270";
static const ALIGN_ASSET(2) char D_0D0012A0[] = "__OTR__models/common_data/D_0D0012A0";
static const ALIGN_ASSET(2) char D_0D0012D0[] = "__OTR__models/common_data/D_0D0012D0";
static const ALIGN_ASSET(2) char D_0D001300[] = "__OTR__models/common_data/D_0D001300";
static const ALIGN_ASSET(2) char D_0D001330[] = "__OTR__models/common_data/D_0D001330";
static const ALIGN_ASSET(2) char D_0D001360[] = "__OTR__models/common_data/D_0D001360";
static const ALIGN_ASSET(2) char common_vtx_finish_line_banner[] = "__OTR__models/common_data/common_vtx_finish_line_banner";
static const ALIGN_ASSET(2) char common_vtx_finish_post[] = "__OTR__models/common_data/common_vtx_finish_post";
static const ALIGN_ASSET(2) char D_0D001710[] = "__OTR__models/common_data/D_0D001710";
static const ALIGN_ASSET(2) char D_0D001750[] = "__OTR__models/common_data/D_0D001750";
static const ALIGN_ASSET(2) char D_0D001780[] = "__OTR__models/common_data/D_0D001780";
static const ALIGN_ASSET(2) char D_0D001798[] = "__OTR__models/common_data/D_0D001798";
static const ALIGN_ASSET(2) char D_0D0017B0[] = "__OTR__models/common_data/D_0D0017B0";
static const ALIGN_ASSET(2) char D_0D0017C8[] = "__OTR__models/common_data/D_0D0017C8";
static const ALIGN_ASSET(2) char D_0D0017E0[] = "__OTR__models/common_data/D_0D0017E0";
static const ALIGN_ASSET(2) char D_0D0017F8[] = "__OTR__models/common_data/D_0D0017F8";
static const ALIGN_ASSET(2) char D_0D001810[] = "__OTR__models/common_data/D_0D001810";
static const ALIGN_ASSET(2) char D_0D001828[] = "__OTR__models/common_data/D_0D001828";
static const ALIGN_ASSET(2) char D_0D001840[] = "__OTR__models/common_data/D_0D001840";
static const ALIGN_ASSET(2) char common_model_finish_post[] = "__OTR__models/common_data/common_model_finish_post";
static const ALIGN_ASSET(2) char D_0D001B68[] = "__OTR__models/common_data/D_0D001B68";
static const ALIGN_ASSET(2) char D_0D001B90[] = "__OTR__models/common_data/D_0D001B90";
static const ALIGN_ASSET(2) char D_0D001BD8[] = "__OTR__models/common_data/D_0D001BD8";
static const ALIGN_ASSET(2) char D_0D001C20[] = "__OTR__models/common_data/D_0D001C20";
static const ALIGN_ASSET(2) char D_0D001C88[] = "__OTR__models/common_data/D_0D001C88";
static const ALIGN_ASSET(2) char common_vtx_itembox[] = "__OTR__models/common_data/common_vtx_itembox";
static const ALIGN_ASSET(2) char D_0D002EE8[] = "__OTR__models/common_data/D_0D002EE8";
static const ALIGN_ASSET(2) char common_fake_item_box_question_mark_vertices[] = "__OTR__models/common_data/common_fake_item_box_question_mark_vertices";
static const ALIGN_ASSET(2) char common_model_fake_itembox[] = "__OTR__models/common_data/common_model_fake_itembox";
static const ALIGN_ASSET(2) char itemBoxQuestionMarkModel[] = "__OTR__models/common_data/itemBoxQuestionMarkModel";
static const ALIGN_ASSET(2) char D_0D003090[] = "__OTR__models/common_data/D_0D003090";
static const ALIGN_ASSET(2) char D_0D0030F8[] = "__OTR__models/common_data/D_0D0030F8";
static const ALIGN_ASSET(2) char D_0D003128[] = "__OTR__models/common_data/D_0D003128";
static const ALIGN_ASSET(2) char D_0D003158[] = "__OTR__models/common_data/D_0D003158";
static const ALIGN_ASSET(2) char D_0D003188[] = "__OTR__models/common_data/D_0D003188";
static const ALIGN_ASSET(2) char D_0D0031B8[] = "__OTR__models/common_data/D_0D0031B8";
static const ALIGN_ASSET(2) char D_0D0031E8[] = "__OTR__models/common_data/D_0D0031E8";
static const ALIGN_ASSET(2) char D_0D003218[] = "__OTR__models/common_data/D_0D003218";
static const ALIGN_ASSET(2) char D_0D003248[] = "__OTR__models/common_data/D_0D003248";
static const ALIGN_ASSET(2) char D_0D003278[] = "__OTR__models/common_data/D_0D003278";
static const ALIGN_ASSET(2) char D_0D003288[] = "__OTR__models/common_data/D_0D003288";
static const ALIGN_ASSET(2) char common_vtx_banana[] = "__OTR__models/common_data/common_vtx_banana";
static const ALIGN_ASSET(2) char common_vtx_flat_banana[] = "__OTR__models/common_data/common_vtx_flat_banana";
static const ALIGN_ASSET(2) char common_model_banana[] = "__OTR__models/common_data/common_model_banana";
static const ALIGN_ASSET(2) char common_model_flat_banana[] = "__OTR__models/common_data/common_model_flat_banana";
static const ALIGN_ASSET(2) char common_data_seg13_vtx_5238[] = "__OTR__models/common_data/common_data_seg13_vtx_5238";
static const ALIGN_ASSET(2) char common_data_seg13_vtx_5278[] = "__OTR__models/common_data/common_data_seg13_vtx_5278";
static const ALIGN_ASSET(2) char D_0D0052B8[] = "__OTR__models/common_data/D_0D0052B8";
static const ALIGN_ASSET(2) char D_0D005308[] = "__OTR__models/common_data/D_0D005308";
static const ALIGN_ASSET(2) char D_0D005338[] = "__OTR__models/common_data/D_0D005338";
static const ALIGN_ASSET(2) char D_0D005368[] = "__OTR__models/common_data/D_0D005368";
static const ALIGN_ASSET(2) char D_toads_turnpike_0D005398[] = "__OTR__models/common_data/D_toads_turnpike_0D005398";
static const ALIGN_ASSET(2) char D_toads_turnpike_0D0053B0[] = "__OTR__models/common_data/D_toads_turnpike_0D0053B0";
static const ALIGN_ASSET(2) char D_toads_turnpike_0D0053C8[] = "__OTR__models/common_data/D_toads_turnpike_0D0053C8";
static const ALIGN_ASSET(2) char D_toads_turnpike_0D0053F0[] = "__OTR__models/common_data/D_toads_turnpike_0D0053F0";
static const ALIGN_ASSET(2) char D_toads_turnpike_0D005418[] = "__OTR__models/common_data/D_toads_turnpike_0D005418";
static const ALIGN_ASSET(2) char D_0D005430[] = "__OTR__models/common_data/D_0D005430";
static const ALIGN_ASSET(2) char common_vtx_player_minimap_icon[] = "__OTR__models/common_data/common_vtx_player_minimap_icon";
static const ALIGN_ASSET(2) char D_0D0054B0[] = "__OTR__models/common_data/D_0D0054B0";
static const ALIGN_ASSET(2) char common_vtx_rectangle[] = "__OTR__models/common_data/common_vtx_rectangle";
static const ALIGN_ASSET(2) char D_0D0057B0[] = "__OTR__models/common_data/D_0D0057B0";
static const ALIGN_ASSET(2) char D_0D0057F0[] = "__OTR__models/common_data/D_0D0057F0";
static const ALIGN_ASSET(2) char common_data_seg13_vtx_58E0[] = "__OTR__models/common_data/common_data_seg13_vtx_58E0";
static const ALIGN_ASSET(2) char D_0D005920[] = "__OTR__models/common_data/D_0D005920";
static const ALIGN_ASSET(2) char D_0D005AA0[] = "__OTR__models/common_data/D_0D005AA0";
static const ALIGN_ASSET(2) char D_0D005AE0[] = "__OTR__models/common_data/D_0D005AE0";
static const ALIGN_ASSET(2) char D_0D005B20[] = "__OTR__models/common_data/D_0D005B20";
static const ALIGN_ASSET(2) char D_0D005B60[] = "__OTR__models/common_data/D_0D005B60";
static const ALIGN_ASSET(2) char D_0D005BA0[] = "__OTR__models/common_data/D_0D005BA0";
static const ALIGN_ASSET(2) char D_0D005BD0[] = "__OTR__models/common_data/D_0D005BD0";
static const ALIGN_ASSET(2) char D_0D005C00[] = "__OTR__models/common_data/D_0D005C00";
static const ALIGN_ASSET(2) char D_0D005C30[] = "__OTR__models/common_data/D_0D005C30";
static const ALIGN_ASSET(2) char D_0D005E80[] = "__OTR__models/common_data/D_0D005E80";
static const ALIGN_ASSET(2) char common_vtx_lakitu[] = "__OTR__models/common_data/common_vtx_lakitu";
static const ALIGN_ASSET(2) char D_0D005F30[] = "__OTR__models/common_data/D_0D005F30";
static const ALIGN_ASSET(2) char D_0D005FB0[] = "__OTR__models/common_data/D_0D005FB0";
static const ALIGN_ASSET(2) char D_0D005FF0[] = "__OTR__models/common_data/D_0D005FF0";
static const ALIGN_ASSET(2) char D_0D006030[] = "__OTR__models/common_data/D_0D006030";
static const ALIGN_ASSET(2) char common_vtx_hedgehog[] = "__OTR__models/common_data/common_vtx_hedgehog";
static const ALIGN_ASSET(2) char D_0D006130[] = "__OTR__models/common_data/D_0D006130";
static const ALIGN_ASSET(2) char D_0D0061B0[] = "__OTR__models/common_data/D_0D0061B0";
static const ALIGN_ASSET(2) char D_0D0062B0[] = "__OTR__models/common_data/D_0D0062B0";
static const ALIGN_ASSET(2) char D_0D0064B0[] = "__OTR__models/common_data/D_0D0064B0";
static const ALIGN_ASSET(2) char common_vtx_also_lakitu[] = "__OTR__models/common_data/common_vtx_also_lakitu";
static const ALIGN_ASSET(2) char D_0D0068F0[] = "__OTR__models/common_data/D_0D0068F0";
static const ALIGN_ASSET(2) char D_0D006930[] = "__OTR__models/common_data/D_0D006930";
static const ALIGN_ASSET(2) char common_rectangle_display[] = "__OTR__models/common_data/common_rectangle_display";
static const ALIGN_ASSET(2) char D_0D006950[] = "__OTR__models/common_data/D_0D006950";
static const ALIGN_ASSET(2) char D_0D006968[] = "__OTR__models/common_data/D_0D006968";
static const ALIGN_ASSET(2) char D_0D006980[] = "__OTR__models/common_data/D_0D006980";
static const ALIGN_ASSET(2) char D_0D006998[] = "__OTR__models/common_data/D_0D006998";
static const ALIGN_ASSET(2) char D_0D0069B0[] = "__OTR__models/common_data/D_0D0069B0";
static const ALIGN_ASSET(2) char D_0D0069C8[] = "__OTR__models/common_data/D_0D0069C8";
static const ALIGN_ASSET(2) char D_0D0069E0[] = "__OTR__models/common_data/D_0D0069E0";
static const ALIGN_ASSET(2) char D_0D0069F8[] = "__OTR__models/common_data/D_0D0069F8";
static const ALIGN_ASSET(2) char D_0D006A10[] = "__OTR__models/common_data/D_0D006A10";
static const ALIGN_ASSET(2) char D_0D006A28[] = "__OTR__models/common_data/D_0D006A28";
static const ALIGN_ASSET(2) char D_0D006A40[] = "__OTR__models/common_data/D_0D006A40";
static const ALIGN_ASSET(2) char D_0D0076F8[] = "__OTR__models/common_data/D_0D0076F8";
static const ALIGN_ASSET(2) char D_0D007780[] = "__OTR__models/common_data/D_0D007780";
static const ALIGN_ASSET(2) char D_0D0077A0[] = "__OTR__models/common_data/D_0D0077A0";
static const ALIGN_ASSET(2) char D_0D0077D0[] = "__OTR__models/common_data/D_0D0077D0";
static const ALIGN_ASSET(2) char D_0D0077F8[] = "__OTR__models/common_data/D_0D0077F8";
static const ALIGN_ASSET(2) char D_0D007828[] = "__OTR__models/common_data/D_0D007828";
static const ALIGN_ASSET(2) char D_0D007850[] = "__OTR__models/common_data/D_0D007850";
static const ALIGN_ASSET(2) char D_0D007878[] = "__OTR__models/common_data/D_0D007878";
static const ALIGN_ASSET(2) char D_0D0078A0[] = "__OTR__models/common_data/D_0D0078A0";
static const ALIGN_ASSET(2) char D_0D0078D0[] = "__OTR__models/common_data/D_0D0078D0";
static const ALIGN_ASSET(2) char D_0D0078F8[] = "__OTR__models/common_data/D_0D0078F8";
static const ALIGN_ASSET(2) char D_0D007928[] = "__OTR__models/common_data/D_0D007928";
static const ALIGN_ASSET(2) char D_0D007948[] = "__OTR__models/common_data/D_0D007948";
static const ALIGN_ASSET(2) char D_0D007968[] = "__OTR__models/common_data/D_0D007968";
static const ALIGN_ASSET(2) char D_0D007988[] = "__OTR__models/common_data/D_0D007988";
static const ALIGN_ASSET(2) char D_0D0079A8[] = "__OTR__models/common_data/D_0D0079A8";
static const ALIGN_ASSET(2) char D_0D0079C8[] = "__OTR__models/common_data/D_0D0079C8";
static const ALIGN_ASSET(2) char D_0D0079E8[] = "__OTR__models/common_data/D_0D0079E8";
static const ALIGN_ASSET(2) char D_0D007A08[] = "__OTR__models/common_data/D_0D007A08";
static const ALIGN_ASSET(2) char D_0D007A40[] = "__OTR__models/common_data/D_0D007A40";
static const ALIGN_ASSET(2) char D_0D007A60[] = "__OTR__models/common_data/D_0D007A60";
static const ALIGN_ASSET(2) char D_0D007A80[] = "__OTR__models/common_data/D_0D007A80";
static const ALIGN_ASSET(2) char D_0D007AA0[] = "__OTR__models/common_data/D_0D007AA0";
static const ALIGN_ASSET(2) char D_0D007AC0[] = "__OTR__models/common_data/D_0D007AC0";
static const ALIGN_ASSET(2) char D_0D007AE0[] = "__OTR__models/common_data/D_0D007AE0";
static const ALIGN_ASSET(2) char D_0D007B00[] = "__OTR__models/common_data/D_0D007B00";
static const ALIGN_ASSET(2) char D_0D007B20[] = "__OTR__models/common_data/D_0D007B20";
static const ALIGN_ASSET(2) char D_0D007B98[] = "__OTR__models/common_data/D_0D007B98";
static const ALIGN_ASSET(2) char D_0D007C10[] = "__OTR__models/common_data/D_0D007C10";
static const ALIGN_ASSET(2) char D_0D007C88[] = "__OTR__models/common_data/D_0D007C88";
static const ALIGN_ASSET(2) char D_0D007CB8[] = "__OTR__models/common_data/D_0D007CB8";
static const ALIGN_ASSET(2) char D_0D007CD8[] = "__OTR__models/common_data/D_0D007CD8";
static const ALIGN_ASSET(2) char D_0D007CF8[] = "__OTR__models/common_data/D_0D007CF8";
static const ALIGN_ASSET(2) char D_0D007D18[] = "__OTR__models/common_data/D_0D007D18";
static const ALIGN_ASSET(2) char D_0D007D38[] = "__OTR__models/common_data/D_0D007D38";
static const ALIGN_ASSET(2) char D_0D007D58[] = "__OTR__models/common_data/D_0D007D58";
static const ALIGN_ASSET(2) char D_0D007D78[] = "__OTR__models/common_data/D_0D007D78";
static const ALIGN_ASSET(2) char D_0D007D98[] = "__OTR__models/common_data/D_0D007D98";
static const ALIGN_ASSET(2) char D_0D007DB8[] = "__OTR__models/common_data/D_0D007DB8";
static const ALIGN_ASSET(2) char D_0D007DD8[] = "__OTR__models/common_data/D_0D007DD8";
static const ALIGN_ASSET(2) char D_0D007DF8[] = "__OTR__models/common_data/D_0D007DF8";
static const ALIGN_ASSET(2) char D_0D007E18[] = "__OTR__models/common_data/D_0D007E18";
static const ALIGN_ASSET(2) char D_0D007E38[] = "__OTR__models/common_data/D_0D007E38";
static const ALIGN_ASSET(2) char D_0D007E58[] = "__OTR__models/common_data/D_0D007E58";
static const ALIGN_ASSET(2) char D_0D007E78[] = "__OTR__models/common_data/D_0D007E78";
static const ALIGN_ASSET(2) char D_0D007E98[] = "__OTR__models/common_data/D_0D007E98";
static const ALIGN_ASSET(2) char D_0D007EB8[] = "__OTR__models/common_data/D_0D007EB8";
static const ALIGN_ASSET(2) char D_0D007ED8[] = "__OTR__models/common_data/D_0D007ED8";
static const ALIGN_ASSET(2) char D_0D007EF8[] = "__OTR__models/common_data/D_0D007EF8";
static const ALIGN_ASSET(2) char D_0D007F18[] = "__OTR__models/common_data/D_0D007F18";
static const ALIGN_ASSET(2) char D_0D007F38[] = "__OTR__models/common_data/D_0D007F38";
static const ALIGN_ASSET(2) char D_0D007F58[] = "__OTR__models/common_data/D_0D007F58";
static const ALIGN_ASSET(2) char D_0D007F78[] = "__OTR__models/common_data/D_0D007F78";
static const ALIGN_ASSET(2) char D_0D007F98[] = "__OTR__models/common_data/D_0D007F98";
static const ALIGN_ASSET(2) char D_0D007FB8[] = "__OTR__models/common_data/D_0D007FB8";
static const ALIGN_ASSET(2) char D_0D007FE0[] = "__OTR__models/common_data/D_0D007FE0";
static const ALIGN_ASSET(2) char D_0D008000[] = "__OTR__models/common_data/D_0D008000";
static const ALIGN_ASSET(2) char D_0D008020[] = "__OTR__models/common_data/D_0D008020";
static const ALIGN_ASSET(2) char D_0D008040[] = "__OTR__models/common_data/D_0D008040";
static const ALIGN_ASSET(2) char D_0D008060[] = "__OTR__models/common_data/D_0D008060";
static const ALIGN_ASSET(2) char D_0D008080[] = "__OTR__models/common_data/D_0D008080";
static const ALIGN_ASSET(2) char D_0D008108[] = "__OTR__models/common_data/D_0D008108";
static const ALIGN_ASSET(2) char D_0D008120[] = "__OTR__models/common_data/D_0D008120";
static const ALIGN_ASSET(2) char D_0D008138[] = "__OTR__models/common_data/D_0D008138";
static const ALIGN_ASSET(2) char D_0D008B78[] = "__OTR__models/common_data/D_0D008B78";
static const ALIGN_ASSET(2) char D_0D008BB8[] = "__OTR__models/common_data/D_0D008BB8";
static const ALIGN_ASSET(2) char D_0D008BF8[] = "__OTR__models/common_data/D_0D008BF8";
static const ALIGN_ASSET(2) char D_0D008C38[] = "__OTR__models/common_data/D_0D008C38";
static const ALIGN_ASSET(2) char common_square_plain_render[] = "__OTR__models/common_data/common_square_plain_render";
static const ALIGN_ASSET(2) char D_0D008C90[] = "__OTR__models/common_data/D_0D008C90";
static const ALIGN_ASSET(2) char common_setting_render_character[] = "__OTR__models/common_data/common_setting_render_character";
static const ALIGN_ASSET(2) char D_0D008D10[] = "__OTR__models/common_data/D_0D008D10";
static const ALIGN_ASSET(2) char D_0D008D58[] = "__OTR__models/common_data/D_0D008D58";
static const ALIGN_ASSET(2) char D_0D008DA0[] = "__OTR__models/common_data/D_0D008DA0";
static const ALIGN_ASSET(2) char D_0D008DB8[] = "__OTR__models/common_data/D_0D008DB8";
static const ALIGN_ASSET(2) char D_0D008DF8[] = "__OTR__models/common_data/D_0D008DF8";
static const ALIGN_ASSET(2) char D_0D008E20[] = "__OTR__models/common_data/D_0D008E20";
static const ALIGN_ASSET(2) char D_0D008E48[] = "__OTR__models/common_data/D_0D008E48";
static const ALIGN_ASSET(2) char D_0D008E70[] = "__OTR__models/common_data/D_0D008E70";