diff options
| author | MegaMech <7255464+MegaMech@users.noreply.github.com> | 2024-12-05 21:41:58 -0700 |
|---|---|---|
| committer | MegaMech <7255464+MegaMech@users.noreply.github.com> | 2024-12-05 21:41:58 -0700 |
| commit | 19135c9ee83643ea863d5725c22319e502938cac (patch) | |
| tree | ec4792402d73607e1c80e8b6a4cf766c5ac0e171 /src/actors | |
| parent | 7628e98e37d72aa508aa1af276ef8e3485df339c (diff) | |
load course dl textures from otr and move objects
Diffstat (limited to 'src/actors')
| -rw-r--r-- | src/actors/kiwano_fruit/render.inc.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/actors/kiwano_fruit/render.inc.c b/src/actors/kiwano_fruit/render.inc.c index 137eda99e..0ecfacf29 100644 --- a/src/actors/kiwano_fruit/render.inc.c +++ b/src/actors/kiwano_fruit/render.inc.c @@ -1,6 +1,7 @@ #include <actors.h> #include <libultra/gbi.h> #include <main.h> +#include "assets/other_textures.h" // #include <assets/dks_jungle_parkway_data.h> /** @@ -28,7 +29,22 @@ void render_actor_kiwano_fruit(UNUSED Camera* camera, Mat4 arg1, struct Actor* a return; } - addr = segmented_texture_to_virtual((actor->rot[0] << 0xA) + 0x03009000); + // Animate actor by creating an index from rot[0]. Divide by texture size to get whole number 0-2. + // All three animated textures need to be the same size for this to work. + size_t idx = (actor->rot[0] << 0xA) / ResourceGetTexSizeByName(gTextureDksJungleParkwayKiwanoFruit1); + switch(idx) { + case 0: + addr = gTextureDksJungleParkwayKiwanoFruit1; + break; + case 1: + addr = gTextureDksJungleParkwayKiwanoFruit2; + break; + case 2: + addr = gTextureDksJungleParkwayKiwanoFruit3; + break; + } + + //addr = segmented_texture_to_virtual((actor->rot[0] << 0xA) + 0x03009000); gDPLoadTextureBlock(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(addr), G_IM_FMT_CI, G_IM_SIZ_8b, 32, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD); |
