mirror of https://github.com/zeldaret/oot.git
ColliderElementDamageInfoAC.effect -> hitBacklash
This commit is contained in:
parent
0a272c99ab
commit
62f0275c83
|
@ -88,7 +88,7 @@ typedef struct ColliderElementDamageInfoAT {
|
||||||
|
|
||||||
typedef struct ColliderElementDamageInfoAC {
|
typedef struct ColliderElementDamageInfoAC {
|
||||||
/* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC.
|
/* 0x00 */ u32 dmgFlags; // Damage types that may affect this collider element as AC.
|
||||||
/* 0x04 */ u8 effect; // Damage Effect (Knockback, Fire, etc.)
|
/* 0x04 */ u8 hitBacklash; // The backlash type applied to other ATs touching this AC.
|
||||||
/* 0x05 */ u8 defense; // Damage Resistance
|
/* 0x05 */ u8 defense; // Damage Resistance
|
||||||
/* 0x06 */ Vec3s hitPos; // Point of contact
|
/* 0x06 */ Vec3s hitPos; // Point of contact
|
||||||
} ColliderElementDamageInfoAC; // size = 0x0C
|
} ColliderElementDamageInfoAC; // size = 0x0C
|
||||||
|
|
|
@ -194,7 +194,7 @@ s32 Collider_DestroyElementDamageInfoAC(PlayState* play, ColliderElementDamageIn
|
||||||
s32 Collider_SetElementDamageInfoAC(PlayState* play, ColliderElementDamageInfoAC* acDmgInfo,
|
s32 Collider_SetElementDamageInfoAC(PlayState* play, ColliderElementDamageInfoAC* acDmgInfo,
|
||||||
ColliderElementDamageInfoACInit* init) {
|
ColliderElementDamageInfoACInit* init) {
|
||||||
acDmgInfo->dmgFlags = init->dmgFlags;
|
acDmgInfo->dmgFlags = init->dmgFlags;
|
||||||
acDmgInfo->effect = init->effect;
|
acDmgInfo->hitBacklash = init->effect;
|
||||||
acDmgInfo->defense = init->defense;
|
acDmgInfo->defense = init->defense;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -1739,7 +1739,7 @@ s32 CollisionCheck_SetATvsAC(PlayState* play, Collider* atCol, ColliderElement*
|
||||||
atElem->atHitElem = acElem;
|
atElem->atHitElem = acElem;
|
||||||
atElem->atElemFlags |= ATELEM_HIT;
|
atElem->atElemFlags |= ATELEM_HIT;
|
||||||
if (atCol->actor != NULL) {
|
if (atCol->actor != NULL) {
|
||||||
atCol->actor->colChkInfo.atHitBacklash = acElem->acDmgInfo.effect;
|
atCol->actor->colChkInfo.atHitBacklash = acElem->acDmgInfo.hitBacklash;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
acCol->acFlags |= AC_HIT;
|
acCol->acFlags |= AC_HIT;
|
||||||
|
|
|
@ -157,7 +157,7 @@ void EnBili_Destroy(Actor* thisx, PlayState* play) {
|
||||||
|
|
||||||
void EnBili_SetupFloatIdle(EnBili* this) {
|
void EnBili_SetupFloatIdle(EnBili* this) {
|
||||||
this->actor.speed = 0.7f;
|
this->actor.speed = 0.7f;
|
||||||
this->collider.elem.acDmgInfo.effect = 1; // Shock?
|
this->collider.elem.acDmgInfo.hitBacklash = 1; // Shock?
|
||||||
this->timer = 32;
|
this->timer = 32;
|
||||||
this->actor.home.pos.y = this->actor.world.pos.y;
|
this->actor.home.pos.y = this->actor.world.pos.y;
|
||||||
this->actor.gravity = 0.0f;
|
this->actor.gravity = 0.0f;
|
||||||
|
@ -253,7 +253,7 @@ void EnBili_SetupDie(EnBili* this) {
|
||||||
*/
|
*/
|
||||||
void EnBili_SetupStunned(EnBili* this) {
|
void EnBili_SetupStunned(EnBili* this) {
|
||||||
this->timer = 80;
|
this->timer = 80;
|
||||||
this->collider.elem.acDmgInfo.effect = 0;
|
this->collider.elem.acDmgInfo.hitBacklash = 0;
|
||||||
this->actor.gravity = -1.0f;
|
this->actor.gravity = -1.0f;
|
||||||
this->actor.speed = 0.0f;
|
this->actor.speed = 0.0f;
|
||||||
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 150, COLORFILTER_BUFFLAG_XLU, 80);
|
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 150, COLORFILTER_BUFFLAG_XLU, 80);
|
||||||
|
|
|
@ -272,7 +272,7 @@ void EnVali_SetupStunned(EnVali* this) {
|
||||||
this->timer = 80;
|
this->timer = 80;
|
||||||
this->actor.velocity.y = 0.0f;
|
this->actor.velocity.y = 0.0f;
|
||||||
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_XLU, 80);
|
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_BLUE, 255, COLORFILTER_BUFFLAG_XLU, 80);
|
||||||
this->bodyCollider.elem.acDmgInfo.effect = 0;
|
this->bodyCollider.elem.acDmgInfo.hitBacklash = 0;
|
||||||
Actor_PlaySfx(&this->actor, NA_SE_EN_GOMA_JR_FREEZE);
|
Actor_PlaySfx(&this->actor, NA_SE_EN_GOMA_JR_FREEZE);
|
||||||
this->actor.velocity.y = 1.0f;
|
this->actor.velocity.y = 1.0f;
|
||||||
this->actionFunc = EnVali_Stunned;
|
this->actionFunc = EnVali_Stunned;
|
||||||
|
@ -462,7 +462,7 @@ void EnVali_Stunned(EnVali* this, PlayState* play) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this->timer == 0) {
|
if (this->timer == 0) {
|
||||||
this->bodyCollider.elem.acDmgInfo.effect = 1; // Shock?
|
this->bodyCollider.elem.acDmgInfo.hitBacklash = 1; // Shock?
|
||||||
EnVali_SetupFloatIdle(this);
|
EnVali_SetupFloatIdle(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue