fix ocarina effects (#197)

This commit is contained in:
Archez
2024-05-22 09:05:01 -05:00
committed by Garrett Cox
parent 912d46761b
commit 3b1d8dd1d0
7 changed files with 15 additions and 12 deletions
@@ -188,8 +188,10 @@ void OceffStorm_Draw2(Actor* thisx, PlayState* play) {
gSPDisplayList(POLY_XLU_DISP++, &sSongOfStormsMaterialDL);
gSPDisplayList(POLY_XLU_DISP++, Gfx_TwoTexScroll(play->state.gfxCtx, G_TX_RENDERTILE, scroll * 8, scroll * 4, 64,
64, 1, scroll * 4, scroll * 4, 64, 64));
gSPTextureRectangle(POLY_XLU_DISP++, 0, 0, SCREEN_WIDTH << 2, SCREEN_HEIGHT << 2, G_TX_RENDERTILE, 0, 0,
(s32)(0.13671875 * (1 << 10)), (s32)(-0.13671875 * (1 << 10)));
// 2S2H [Cosmetic] Changed to Wide variant to support widescreen
gSPWideTextureRectangle(POLY_XLU_DISP++, OTRGetRectDimensionFromLeftEdge(0) << 2, 0,
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH) << 2, SCREEN_HEIGHT << 2, G_TX_RENDERTILE, 0,
0, (s32)(0.13671875 * (1 << 10)), (s32)(-0.13671875 * (1 << 10)));
CLOSE_DISPS(play->state.gfxCtx);
}
@@ -69,7 +69,7 @@ void OceffWipe2_Draw(Actor* thisx, PlayState* play) {
quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
vtxPtr = sEponaSongFrustumVtx;
vtxPtr = ResourceMgr_LoadVtxByName(sEponaSongFrustumVtx);
if (this->timer < 32) {
z = Math_SinS(this->timer * 0x200) * 1220.0f;
@@ -70,7 +70,7 @@ void OceffWipe3_Draw(Actor* thisx, PlayState* play) {
quakeOffset = Camera_GetQuakeOffset(GET_ACTIVE_CAM(play));
vtxPtr = sSariaSongFrustumVtx;
vtxPtr = ResourceMgr_LoadVtxByName(sSariaSongFrustumVtx);
if (this->counter < 32) {
z = Math_SinS(this->counter * 512) * 1220.0f;
@@ -75,7 +75,8 @@ void OceffWipe4_Draw(Actor* thisx, PlayState* play) {
z = 1220.0f;
}
vtxPtr = sScarecrowSongFrustumVtx;
vtxPtr = ResourceMgr_LoadVtxByName(sScarecrowSongFrustumVtx);
if (this->counter >= 30) {
alpha = 12 * (50 - this->counter);
} else {
@@ -35,7 +35,7 @@ static Vtx* gOceff5VtxData;
void OceffWipe5_Init(Actor* thisx, PlayState* play) {
OceffWipe5* this = THIS;
gOceff5VtxData = ResourceMgr_LoadArrayByName(gOceff5Vtx);
gOceff5VtxData = ResourceMgr_LoadVtxByName(gOceff5Vtx);
Actor_SetScale(&this->actor, 1.0f);
this->counter = 0;
@@ -44,7 +44,6 @@ void OceffWipe5_Init(Actor* thisx, PlayState* play) {
void OceffWipe5_Destroy(Actor* thisx, PlayState* play) {
OceffWipe5* this = THIS;
gOceff5VtxData = ResourceMgr_LoadArrayByName(gOceff5Vtx);
Magic_Reset(play);
play->msgCtx.ocarinaSongEffectActive = false;
@@ -107,7 +106,7 @@ void OceffWipe5_Draw(Actor* thisx, PlayState* play) {
alpha = 255;
}
for (i = 1; i < ResourceMgr_GetArraySizeByName(gOceff5Vtx); i += 2) {
for (i = 1; i < ResourceMgr_GetVtxArraySizeByName(gOceff5Vtx); i += 2) {
gOceff5VtxData[i].v.cn[3] = alpha;
}
@@ -29,12 +29,13 @@ ActorInit Oceff_Wipe6_InitVars = {
};
#include "overlays/ovl_Oceff_Wipe6/ovl_Oceff_Wipe6.h"
Vtx* gOceff6VtxData;
static Vtx* gOceff6VtxData;
void OceffWipe6_Init(Actor* thisx, PlayState* play) {
OceffWipe6* this = THIS;
gOceff6VtxData = ResourceMgr_LoadArrayByName(gOceff6Vtx);
gOceff6VtxData = ResourceMgr_LoadVtxByName(gOceff6Vtx);
Actor_SetScale(&this->actor, 1.0f);
this->counter = 0;
@@ -84,7 +85,7 @@ void OceffWipe6_Draw(Actor* thisx, PlayState* play) {
alpha = 255;
}
for (i = 1; i < ResourceMgr_GetArraySizeByName(gOceff6Vtx); i += 2) {
for (i = 1; i < ResourceMgr_GetVtxArraySizeByName(gOceff6Vtx); i += 2) {
gOceff6VtxData[i].v.cn[3] = alpha;
}
@@ -86,7 +86,7 @@ void OceffWipe7_Draw(Actor* thisx, PlayState* play) {
alpha = 255;
}
for (i = 1; i < ResourceMgr_GetArraySizeByName(sSongofHealingEffectFrustrumVtx); i += 2) {
for (i = 1; i < ResourceMgr_GetVtxArraySizeByName(sSongofHealingEffectFrustrumVtx); i += 2) {
sSongofHealingEffectFrustrumVtxData[i].v.cn[3] = alpha;
}