mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-05 07:24:34 +00:00
All Effect Overlays and z_effect_soft_sprite_old_init.c OK (#396)
* fix colliderinit typo * dead sound done * deadsound documentation * blast done * progress * spk init * progress * spark done * ss bomb ok * bomb done * cleanup * progress * progress * almost done with bomb2 * clean up gossip stone * more * cleanup and format * remove unused asm file * nonmatching reloc * done i think * mistakes * fix headers * idk how that got in here * EffectSsStick OK * progress * fix conflicting name * progress * splash OK * uname fields * progress * lightning OK * remove unwanted files * kirakira ok * kirakira done * magma OK * remove files * ss_g_fire OK * name funcs * progress * progress * magma2 and kakera OK * eff_ss_dead_dd OK * fcircle OK * stone1 OK * sibuki2 OK * dt_bubble OK * deaddb OK * sibuki OK * dead_ds OK * ice_smoke OK * hitmark OK * hahen OK * k_fire OK * en_fire OK * starting colors * color changes 1 * color switch done * init file data migrated * data cleanup * ice_piece OK * en_ice OK * progress * progress * docs progress * fix blast color names * documentation pass 1 * progress * cleanup pass 2 * touchups * added to functions.h * small changes * fix functions.h * renaming progress * name progress * color enum * more cleanups * enice changes * final cleanups * remove unwanted file * lightning -> shock * pr suggestions * fix comment * remove unwanted comments
This commit is contained in:
parent
a506801cd7
commit
82968a7381
541 changed files with 5667 additions and 15639 deletions
|
@ -70,11 +70,11 @@ void func_800C0F28(PreRenderContext* this, Gfx** gfxp, void* buf, void* bufSave)
|
|||
lrt = (ult + add) - 1;
|
||||
|
||||
if (1) {}
|
||||
gDPLoadTextureTile(gfx++, buf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt,
|
||||
0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||
G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPTextureRectangle(gfx++, uls << 2, ult << 2, lrs << 2, lrt << 2, G_TX_RENDERTILE, uls << 5, ult << 5,
|
||||
4 << 10, 1 << 10);
|
||||
gDPLoadTextureTile(gfx++, buf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt, 0,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||
G_TX_NOLOD);
|
||||
gSPTextureRectangle(gfx++, uls << 2, ult << 2, lrs << 2, lrt << 2, G_TX_RENDERTILE, uls << 5, ult << 5, 4 << 10,
|
||||
1 << 10);
|
||||
|
||||
x -= add;
|
||||
x2 += add;
|
||||
|
@ -125,8 +125,8 @@ void func_800C1258(PreRenderContext* this, Gfx** gfxp) {
|
|||
gDPLoadTextureTile(gfx++, this->fbufSave, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->widthSave, this->height - 1,
|
||||
this->ulxSave, ult, this->lrxSave, lrt, 0, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPTextureRectangle(gfx++, this->ulx << 2, uly << 2, this->lrx << 2, (uly + add - 1) << 2,
|
||||
G_TX_RENDERTILE, this->ulxSave << 5, ult << 5, 4 << 10, 1 << 10);
|
||||
gSPTextureRectangle(gfx++, this->ulx << 2, uly << 2, this->lrx << 2, (uly + add - 1) << 2, G_TX_RENDERTILE,
|
||||
this->ulxSave << 5, ult << 5, 4 << 10, 1 << 10);
|
||||
|
||||
y -= add;
|
||||
y2 += add;
|
||||
|
@ -180,9 +180,9 @@ void func_800C170C(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* fbufSav
|
|||
ult = x2;
|
||||
lrt = (x2 + add - 1);
|
||||
|
||||
gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs,
|
||||
lrt, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||
G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt, 0,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||
G_TX_NOLOD);
|
||||
if (1) {}
|
||||
gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrs + 1) << 2, (lrt + 1) << 2, G_TX_RENDERTILE, uls << 5,
|
||||
ult << 5, 1 << 10, 1 << 10);
|
||||
|
@ -237,9 +237,9 @@ void func_800C1B24(PreRenderContext* this, Gfx** gfxp, void* fbuf, void* cvgSave
|
|||
ult = x2;
|
||||
lrt = (x2 + add) - 1;
|
||||
|
||||
gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_IA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt,
|
||||
0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||
G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadTextureTile(gfx++, fbuf, G_IM_FMT_IA, G_IM_SIZ_16b, this->width, this->height, uls, ult, lrs, lrt, 0,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||
G_TX_NOLOD);
|
||||
if (1) {}
|
||||
gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrs + 1) << 2, (lrt + 1) << 2, G_TX_RENDERTILE, uls << 5,
|
||||
ult << 5, 1 << 10, 1 << 10);
|
||||
|
@ -356,9 +356,9 @@ void func_800C213C(PreRenderContext* this, Gfx** gfxp) {
|
|||
gDPLoadMultiTile(gfx++, this->fbufSave, 0x0000, G_TX_RENDERTILE, G_IM_FMT_RGBA, G_IM_SIZ_16b, this->width,
|
||||
this->height, uls, ult, lrx, lry, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP,
|
||||
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadMultiTile(gfx++, this->cvgSave, 0x0160, 1, G_IM_FMT_I, G_IM_SIZ_8b, this->width, this->height, uls,
|
||||
ult, lrx, lry, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK,
|
||||
G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gDPLoadMultiTile(gfx++, this->cvgSave, 0x0160, 1, G_IM_FMT_I, G_IM_SIZ_8b, this->width, this->height, uls, ult,
|
||||
lrx, lry, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK,
|
||||
G_TX_NOLOD, G_TX_NOLOD);
|
||||
|
||||
gSPTextureRectangle(gfx++, uls << 2, ult << 2, (lrx + 1) << 2, (lry + 1) << 2, G_TX_RENDERTILE, uls << 5,
|
||||
ult << 5, 1 << 10, 1 << 10);
|
||||
|
|
|
@ -212,7 +212,7 @@ s32 Math3D_PlaneVsPlaneVsLineClosestPoint(f32 planeAA, f32 planeAB, f32 planeAC,
|
|||
* Finds a point on the line from starting point `v0`, and directional vector `dir`
|
||||
* which is `dist` length from the starting point. Result is placed in `ret`
|
||||
*/
|
||||
void Math3D_PointOnInfinteLine(Vec3f* v0, Vec3f* dir, f32 dist, Vec3f* ret) {
|
||||
void Math3D_PointOnInfiniteLine(Vec3f* v0, Vec3f* dir, f32 dist, Vec3f* ret) {
|
||||
ret->x = (dir->x * dist) + v0->x;
|
||||
ret->y = (dir->y * dist) + v0->y;
|
||||
ret->z = (dir->z * dist) + v0->z;
|
||||
|
@ -226,7 +226,7 @@ void Math3D_LineSplitRatio(Vec3f* v0, Vec3f* v1, f32 ratio, Vec3f* ret) {
|
|||
Vec3f diff;
|
||||
|
||||
Math_Vec3f_Diff(v1, v0, &diff);
|
||||
Math3D_PointOnInfinteLine(v0, &diff, ratio, ret);
|
||||
Math3D_PointOnInfiniteLine(v0, &diff, ratio, ret);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1922,8 +1922,8 @@ s32 Math3D_CylTriVsIntersect(Cylinder16* cyl, TriNorm* tri, Vec3f* intersect) {
|
|||
}
|
||||
|
||||
radiusTodistFromCylYIntersectTov0v1 = cyl->radius / distFromCylYIntersectTov0v1;
|
||||
Math3D_PointOnInfinteLine(&cylIntersectCenter, &diffMidpointIntersect, radiusTodistFromCylYIntersectTov0v1,
|
||||
intersect);
|
||||
Math3D_PointOnInfiniteLine(&cylIntersectCenter, &diffMidpointIntersect, radiusTodistFromCylYIntersectTov0v1,
|
||||
intersect);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -1210,7 +1210,7 @@ void func_8002E4B4(GlobalContext* globalCtx, Actor* actor, f32 arg2, f32 arg3, f
|
|||
f32 sp58;
|
||||
UNK_TYPE sp54;
|
||||
f32 sp50;
|
||||
Vec3f sp44;
|
||||
Vec3f ripplePos;
|
||||
|
||||
sp74 = actor->posRot.pos.y - actor->pos4.y;
|
||||
|
||||
|
@ -1258,12 +1258,12 @@ void func_8002E4B4(GlobalContext* globalCtx, Actor* actor, f32 arg2, f32 arg3, f
|
|||
if (!(actor->bgCheckFlags & 0x20)) {
|
||||
actor->bgCheckFlags |= 0x40;
|
||||
if (!(arg5 & 0x40)) {
|
||||
sp44.x = actor->posRot.pos.x;
|
||||
sp44.y = sp50;
|
||||
sp44.z = actor->posRot.pos.z;
|
||||
func_80029444(globalCtx, &sp44, 100, 500, 0);
|
||||
func_80029444(globalCtx, &sp44, 100, 500, 4);
|
||||
func_80029444(globalCtx, &sp44, 100, 500, 8);
|
||||
ripplePos.x = actor->posRot.pos.x;
|
||||
ripplePos.y = sp50;
|
||||
ripplePos.z = actor->posRot.pos.z;
|
||||
EffectSsGRipple_Spawn(globalCtx, &ripplePos, 100, 500, 0);
|
||||
EffectSsGRipple_Spawn(globalCtx, &ripplePos, 100, 500, 4);
|
||||
EffectSsGRipple_Spawn(globalCtx, &ripplePos, 100, 500, 8);
|
||||
}
|
||||
}
|
||||
actor->bgCheckFlags |= 0x20;
|
||||
|
@ -1850,7 +1850,8 @@ void func_8002FBAC(GlobalContext* globalCtx) {
|
|||
spA4.y = Math_Rand_ZeroOne() * 6.0f + gSaveContext.respawn[RESPAWN_MODE_TOP].pos.y + 80.0f;
|
||||
spA4.z = Math_Rand_CenteredFloat(6.0f) + gSaveContext.respawn[RESPAWN_MODE_TOP].pos.z;
|
||||
|
||||
func_80028BB0(globalCtx, &spA4, &D_80116048, &D_80116054, &D_80116060, &D_80116064, 1000, 0x10);
|
||||
EffectSsKiraKira_SpawnDispersed(globalCtx, &spA4, &D_80116048, &D_80116054, &D_80116060, &D_80116064, 1000,
|
||||
16);
|
||||
|
||||
if (D_8015BC18 == 0.0f) {
|
||||
gSaveContext.respawn[RESPAWN_MODE_TOP] = gSaveContext.respawn[RESPAWN_MODE_DOWN];
|
||||
|
@ -2184,8 +2185,8 @@ void Actor_Draw(GlobalContext* globalCtx, Actor* actor) {
|
|||
gSPSegment(oGfxCtx->polyXlu.p++, 0x06, globalCtx->objectCtx.status[actor->objBankIndex].segment);
|
||||
|
||||
if (actor->dmgEffectTimer != 0) {
|
||||
// Must be inline data to match
|
||||
Color_RGBA8 sp2C = { 0, 0, 0, 255 };
|
||||
|
||||
if (actor->dmgEffectParams & 0x8000) {
|
||||
sp2C.r = sp2C.g = sp2C.b = ((actor->dmgEffectParams & 0x1F00) >> 5) | 7;
|
||||
} else if (actor->dmgEffectParams & 0x4000) {
|
||||
|
@ -3966,7 +3967,7 @@ void func_8003555C(GlobalContext* globalCtx, Vec3f* arg1, Vec3f* arg2, Vec3f* ar
|
|||
color2.g = 90;
|
||||
color2.b = 50;
|
||||
|
||||
func_80028B74(globalCtx, arg1, arg2, arg3, &color1, &color2);
|
||||
EffectSsKiraKira_SpawnSmall(globalCtx, arg1, arg2, arg3, &color1, &color2);
|
||||
}
|
||||
|
||||
Vec3f D_80116268 = { 0.0f, -1.5f, 0.0f };
|
||||
|
|
|
@ -1327,9 +1327,9 @@ void func_8005E10C(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
|
|||
Effect_Add(globalCtx, &sp24, EFFECT_SPARK, 0, 1, &D_8015DD68);
|
||||
}
|
||||
|
||||
void func_8005E26C(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
|
||||
func_800299AC(globalCtx, v);
|
||||
func_80062B80(globalCtx, v);
|
||||
void func_8005E26C(GlobalContext* globalCtx, Collider* collider, Vec3f* pos) {
|
||||
EffectSsSibuki_SpawnBurst(globalCtx, pos);
|
||||
func_80062B80(globalCtx, pos);
|
||||
}
|
||||
|
||||
void func_8005E2A4(GlobalContext* globalCtx, Collider* collider, Vec3f* v) {
|
||||
|
@ -1345,7 +1345,7 @@ void func_8005E2EC(GlobalContext* globalCtx, ColliderBody* colliderBody, Collide
|
|||
|
||||
flags = colliderBody->toucherFlags & 0x18;
|
||||
if (flags == 0 && collider->type != COLTYPE_METAL_SHIELD) {
|
||||
func_80029CA4(globalCtx, 0, arg3);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, 0, arg3);
|
||||
if (collider->actor == NULL) {
|
||||
Audio_PlaySoundGeneral(NA_SE_IT_SHIELD_BOUND, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8);
|
||||
return;
|
||||
|
@ -1355,7 +1355,7 @@ void func_8005E2EC(GlobalContext* globalCtx, ColliderBody* colliderBody, Collide
|
|||
return;
|
||||
}
|
||||
if (flags == 0) {
|
||||
func_80029CA4(globalCtx, 3, arg3);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, 3, arg3);
|
||||
if (collider->actor == NULL) {
|
||||
func_80062D60(globalCtx, arg3);
|
||||
return;
|
||||
|
@ -1364,7 +1364,7 @@ void func_8005E2EC(GlobalContext* globalCtx, ColliderBody* colliderBody, Collide
|
|||
return;
|
||||
}
|
||||
if (flags == 8) {
|
||||
func_80029CA4(globalCtx, 0, arg3);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, 0, arg3);
|
||||
if (collider->actor == NULL) {
|
||||
Audio_PlaySoundGeneral(NA_SE_IT_SHIELD_BOUND, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8);
|
||||
return;
|
||||
|
@ -1374,7 +1374,7 @@ void func_8005E2EC(GlobalContext* globalCtx, ColliderBody* colliderBody, Collide
|
|||
return;
|
||||
}
|
||||
if (flags == 0x10) {
|
||||
func_80029CA4(globalCtx, 1, arg3);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, 1, arg3);
|
||||
if (collider->actor == NULL) {
|
||||
Audio_PlaySoundGeneral(NA_SE_IT_REFLECTION_WOOD, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8);
|
||||
return;
|
||||
|
@ -1443,13 +1443,13 @@ void func_8005E604(GlobalContext* globalCtx, Collider* left, ColliderBody* leftB
|
|||
func_80062E14(globalCtx, arg5, &left->actor->projectedPos);
|
||||
}
|
||||
} else if (D_8011DF40[right->type].unk01 != 5) {
|
||||
func_80029CA4(globalCtx, D_8011DF40[right->type].unk01, arg5);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, D_8011DF40[right->type].unk01, arg5);
|
||||
if ((rightBody->bumperFlags & 0x20) == 0) {
|
||||
func_8005E4F8(left, rightBody);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
func_80029CA4(globalCtx, 0, arg5);
|
||||
EffectSsHitMark_SpawnFixedScale(globalCtx, 0, arg5);
|
||||
if (right->actor == NULL) {
|
||||
Audio_PlaySoundGeneral(NA_SE_IT_SHIELD_BOUND, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8);
|
||||
} else {
|
||||
|
|
|
@ -113,7 +113,7 @@ s32 EffectShieldParticle_Update(void* thisx) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
void EffectShieldParticle_GetColors(EffectShieldParticle* this, Color_RGBA8_n* primColor, Color_RGBA8_n* envColor) {
|
||||
void EffectShieldParticle_GetColors(EffectShieldParticle* this, Color_RGBA8* primColor, Color_RGBA8* envColor) {
|
||||
s32 halfDuration;
|
||||
f32 ratio;
|
||||
|
||||
|
@ -153,8 +153,8 @@ void EffectShieldParticle_GetColors(EffectShieldParticle* this, Color_RGBA8_n* p
|
|||
void EffectShieldParticle_Draw(void* thisx, GraphicsContext* gfxCtx) {
|
||||
EffectShieldParticle* this = (EffectShieldParticle*)thisx;
|
||||
EffectShieldParticleElement* elem;
|
||||
Color_RGBA8_n primColor;
|
||||
Color_RGBA8_n envColor;
|
||||
Color_RGBA8 primColor;
|
||||
Color_RGBA8 envColor;
|
||||
|
||||
OPEN_DISPS(gfxCtx, "../z_eff_shield_particle.c", 272);
|
||||
|
||||
|
|
|
@ -69,7 +69,7 @@ void EffectSs_Delete(EffectSs* effectSs) {
|
|||
}
|
||||
|
||||
if (effectSs->flags & 4) {
|
||||
func_800F89E8(&effectSs->unk_2C);
|
||||
func_800F89E8(&effectSs->vec);
|
||||
}
|
||||
|
||||
EffectSs_Reset(effectSs);
|
||||
|
@ -81,15 +81,15 @@ void EffectSs_Reset(EffectSs* effectSs) {
|
|||
effectSs->type = EFFECT_SS_TYPE_MAX;
|
||||
effectSs->accel.x = effectSs->accel.y = effectSs->accel.z = 0;
|
||||
effectSs->velocity.x = effectSs->velocity.y = effectSs->velocity.z = 0;
|
||||
effectSs->unk_2C.x = effectSs->unk_2C.y = effectSs->unk_2C.z = 0;
|
||||
effectSs->vec.x = effectSs->vec.y = effectSs->vec.z = 0;
|
||||
effectSs->pos.x = effectSs->pos.y = effectSs->pos.z = 0;
|
||||
effectSs->life = -1;
|
||||
effectSs->flags = 0;
|
||||
effectSs->priority = 128;
|
||||
effectSs->draw = NULL;
|
||||
effectSs->update = NULL;
|
||||
effectSs->displayList = NULL;
|
||||
effectSs->unk_3C = NULL;
|
||||
effectSs->gfx = NULL;
|
||||
effectSs->actor = NULL;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(effectSs->regs); i++) {
|
||||
effectSs->regs[i] = 0;
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,6 @@
|
|||
#include <ultra64.h>
|
||||
#include <global.h>
|
||||
#include "overlays/effects/ovl_Effect_Ss_Dead_Sound/z_eff_ss_dead_sound.h"
|
||||
|
||||
#define FLAGS 0x00000000
|
||||
|
||||
|
@ -336,7 +337,7 @@ void func_8001E1C8(EnItem00* this, GlobalContext* globalCtx) {
|
|||
pos.x = this->actor.posRot.pos.x + Math_Rand_CenteredFloat(10.0f);
|
||||
pos.y = this->actor.posRot.pos.y + Math_Rand_CenteredFloat(10.0f);
|
||||
pos.z = this->actor.posRot.pos.z + Math_Rand_CenteredFloat(10.0f);
|
||||
func_80028B74(globalCtx, &pos, &D_80115518, &D_80115524, &D_80115510, &D_80115514);
|
||||
EffectSsKiraKira_SpawnSmall(globalCtx, &pos, &D_80115518, &D_80115524, &D_80115510, &D_80115514);
|
||||
}
|
||||
|
||||
if (this->actor.bgCheckFlags & 0x0003) {
|
||||
|
@ -394,7 +395,7 @@ void func_8001E304(EnItem00* this, GlobalContext* globalCtx) {
|
|||
pos.x = this->actor.posRot.pos.x + (Math_Rand_ZeroOne() - 0.5f) * 10.0f;
|
||||
pos.y = this->actor.posRot.pos.y + (Math_Rand_ZeroOne() - 0.5f) * 10.0f;
|
||||
pos.z = this->actor.posRot.pos.z + (Math_Rand_ZeroOne() - 0.5f) * 10.0f;
|
||||
func_80028B74(globalCtx, &pos, &D_80115518, &D_80115524, &D_80115510, &D_80115514);
|
||||
EffectSsKiraKira_SpawnSmall(globalCtx, &pos, &D_80115518, &D_80115524, &D_80115510, &D_80115514);
|
||||
}
|
||||
|
||||
if (this->actor.bgCheckFlags & 0x0003) {
|
||||
|
@ -877,7 +878,8 @@ EnItem00* Item_DropCollectible(GlobalContext* globalCtx, Vec3f* spawnPos, s16 pa
|
|||
// TODO: Prevent the cast to EnItem00 here since this is a different actor (En_Elf)
|
||||
spawnedActor = (EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, spawnPos->x,
|
||||
spawnPos->y + 40.0f, spawnPos->z, 0, 0, 0, 0x0002);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, 1, 1, 40);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, true,
|
||||
DEADSOUND_REPEAT_MODE_OFF, 40);
|
||||
} else {
|
||||
if (!param8000) {
|
||||
params = func_8001F404(params & 0x00FF);
|
||||
|
@ -920,7 +922,8 @@ EnItem00* Item_DropCollectible2(GlobalContext* globalCtx, Vec3f* spawnPos, s16 p
|
|||
// TODO: Prevent the cast to EnItem00 here since this is a different actor (En_Elf)
|
||||
spawnedActor = (EnItem00*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, spawnPos->x,
|
||||
spawnPos->y + 40.0f, spawnPos->z, 0, 0, 0, 0x0002);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, 1, 1, 40);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, true,
|
||||
DEADSOUND_REPEAT_MODE_OFF, 40);
|
||||
} else {
|
||||
params = func_8001F404(params & 0x00FF);
|
||||
if (params != -1) {
|
||||
|
@ -989,7 +992,8 @@ void Item_DropCollectibleRandom(GlobalContext* globalCtx, Actor* fromActor, Vec3
|
|||
if (gSaveContext.health <= 0x10) { // 1 heart or less
|
||||
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, spawnPos->x, spawnPos->y + 40.0f, spawnPos->z, 0,
|
||||
0, 0, 0x0002);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, 1, 1, 40);
|
||||
EffectSsDeadSound_SpawnStationary(globalCtx, spawnPos, NA_SE_EV_BUTTERFRY_TO_FAIRY, true,
|
||||
DEADSOUND_REPEAT_MODE_OFF, 40);
|
||||
return;
|
||||
} else if (gSaveContext.health <= 0x30) { // 3 hearts or less
|
||||
params = 0xB * 0x10;
|
||||
|
|
|
@ -82,7 +82,7 @@ void TransitionFade_Update(TransitionFade* this, s32 updateRate) {
|
|||
|
||||
void TransitionFade_Draw(TransitionFade* this, Gfx** gfxP) {
|
||||
Gfx* gfx;
|
||||
Color_RGBA8* color;
|
||||
Color_RGBA8_u32* color;
|
||||
if (this->fadeColor.a > 0) {
|
||||
color = &this->fadeColor;
|
||||
gfx = *gfxP;
|
||||
|
|
|
@ -142,7 +142,7 @@ void Lights_BindDirectional(Lights* lights, LightParams* params, Vec3f* vec) {
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* For every light in a provided list, try to find a free slot in the provided Lights group and bind
|
||||
* a light to it. Then apply color and positional/directional info for each light
|
||||
* based on the parameters supplied by the node.
|
||||
|
@ -216,7 +216,7 @@ void func_8007A698(LightContext* lightCtx, u8 arg1, u8 arg2, u8 arg3, s16 numLig
|
|||
lightCtx->unk_0C = arg5;
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Allocate a new Lights group and initilize the ambient color with that provided by LightContext
|
||||
*/
|
||||
Lights* LightContext_NewLights(LightContext* lightCtx, GraphicsContext* gfxCtx) {
|
||||
|
@ -234,7 +234,7 @@ void LightContext_DestroyList(GlobalContext* globalCtx, LightContext* lightCtx)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* Insert a new light into the list pointed to by LightContext
|
||||
*
|
||||
* Note: Due to the limited number of slots in a Lights group, inserting too many lights in the
|
||||
|
|
|
@ -9,7 +9,7 @@ Input* D_8012D1F8 = NULL;
|
|||
TransitionUnk sTrnsnUnk;
|
||||
s32 gTrnsnUnkState;
|
||||
VisMono D_80161498;
|
||||
Color_RGBA8 D_801614B0;
|
||||
Color_RGBA8_u32 D_801614B0;
|
||||
FaultClient D_801614B8;
|
||||
s16 D_801614C8;
|
||||
u64 D_801614D0[0xA00];
|
||||
|
@ -1158,7 +1158,8 @@ void Gameplay_Draw(GlobalContext* globalCtx) {
|
|||
oGfxCtx->polyOpa.p = sp88;
|
||||
goto Gameplay_Draw_DrawOverlayElements;
|
||||
} else {
|
||||
PreRender_SetValues(&globalCtx->preRenderCtx, SCREEN_WIDTH, SCREEN_HEIGHT, gfxCtx->curFrameBuffer, gZBuffer);
|
||||
PreRender_SetValues(&globalCtx->preRenderCtx, SCREEN_WIDTH, SCREEN_HEIGHT, gfxCtx->curFrameBuffer,
|
||||
gZBuffer);
|
||||
|
||||
if (R_PAUSE_MENU_MODE == 2) {
|
||||
MsgEvent_SendNullTask();
|
||||
|
|
|
@ -703,7 +703,7 @@ void func_8008F87C(GlobalContext* globalCtx, Player* this, SkelAnime* skelAnime,
|
|||
s32 thighLimbIndex, s32 shinLimbIndex, s32 footLimbIndex) {
|
||||
Vec3f spA4;
|
||||
Vec3f sp98;
|
||||
Vec3f sp8C;
|
||||
Vec3f footprintPos;
|
||||
CollisionPoly* sp88;
|
||||
UNK_TYPE sp84;
|
||||
f32 sp80;
|
||||
|
@ -737,12 +737,12 @@ void func_8008F87C(GlobalContext* globalCtx, Player* this, SkelAnime* skelAnime,
|
|||
Matrix_JointPosition(&D_80126038[(void)0, gSaveContext.linkAge], &skelAnime->limbDrawTbl[shinLimbIndex]);
|
||||
Matrix_Translate(D_80126050[(void)0, gSaveContext.linkAge], 0.0f, 0.0f, MTXMODE_APPLY);
|
||||
Matrix_MultVec3f(&D_8012602C, &sp98);
|
||||
Matrix_MultVec3f(&D_80126070, &sp8C);
|
||||
Matrix_MultVec3f(&D_80126070, &footprintPos);
|
||||
Matrix_Pull();
|
||||
|
||||
sp8C.y += 15.0f;
|
||||
footprintPos.y += 15.0f;
|
||||
|
||||
sp80 = func_8003C9A4(&globalCtx->colCtx, &sp88, &sp84, &this->actor, &sp8C) + sp74;
|
||||
sp80 = func_8003C9A4(&globalCtx->colCtx, &sp88, &sp84, &this->actor, &footprintPos) + sp74;
|
||||
|
||||
if (sp98.y < sp80) {
|
||||
sp70 = sp98.x - spA4.x;
|
||||
|
@ -786,8 +786,8 @@ void func_8008F87C(GlobalContext* globalCtx, Player* this, SkelAnime* skelAnime,
|
|||
temp3 = func_80041D4C(&globalCtx->colCtx, sp88, sp84);
|
||||
|
||||
if ((temp3 >= 2) && (temp3 < 4) && !func_80042108(&globalCtx->colCtx, sp88, sp84)) {
|
||||
sp8C.y = sp80;
|
||||
func_80029568(globalCtx, &sp8C);
|
||||
footprintPos.y = sp80;
|
||||
EffectSsGFire_Spawn(globalCtx, &footprintPos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue