mirror of https://github.com/n64decomp/mk64.git
Update sound effect names and categorize
This commit is contained in:
parent
aeab022e22
commit
d08668f98a
|
|
@ -338,25 +338,33 @@ enum PLACE { FIRST_PLACE, SECOND_PLACE, THIRD_PLACE, FOURTH_PLACE };
|
|||
#define HIT_RED_BLUE_MOLE_SOUND_EFFECT 0x2 // hit by a red shell, blue shell, or hit a mole
|
||||
#define HIT_GREEN_SHELL_SOUND_EFFECT 0x4 // hit by a green shell
|
||||
#define DRIVING_SPINOUT_SOUND_EFFECT 0x80 // spinning out from erratic driving
|
||||
#define HIT_SOUND_EFFECT 0x100 // hitting an object (actually, stomped by thwomp)
|
||||
#define BOOST_SOUND_EFFECT 0x200 // being boosted by trigger a mushroom //correct
|
||||
#define THWOMP_STOMP_SOUND_EFFECT 0x100 // hitting an object (actually, stomped by thwomp)*
|
||||
#define BOOST_SOUND_EFFECT 0x200 // being boosted by trigger a mushroom
|
||||
#define BOO_SOUND_EFFECT 0x800 // being a boo
|
||||
#define UNUSED_SOUND_EFFECT_0x1000 0x1000
|
||||
#define STAR_SOUND_EFFECT 0x2000 // Starting a star
|
||||
#define HIT_ROTATING_SOUND_EFFECT 0x4000 // hitting a rotating object (actually struck by lightning)
|
||||
#define BOOST_RAMP_WOOD_SOUND_EFFECT 0x8000 // being boosted by a ramp //confirmed
|
||||
#define UNUSED_SOUND_EFFECT_0x20000 0x20000
|
||||
#define HOLD_BANANA_SOUND_EFFECT 0x40000 // holding a banana (or a banana bunch or a fake item block)// confirmed but ongoing, so not really a sound effect
|
||||
#define HIT_PADDLE_BOAT_SOUND_EFFECT 0x80000 //hit paddle boat
|
||||
#define UNUSED_SOUND_EFFECT_0x10000 0x100000
|
||||
#define LIGHTNING_STRIKE_SOUND_EFFECT 0x4000 // hitting a rotating object (actually struck by lightning)
|
||||
#define BOOST_RAMP_WOOD_SOUND_EFFECT 0x8000 // being boosted by a ramp
|
||||
#define UNUSED_SOUND_EFFECT_0x20000 0x20000 //*
|
||||
#define DRAG_ITEM_SOUND_EFFECT 0x40000 //* holding a banana (or a banana bunch or a fake item block)// confirmed but ongoing, so not really a sound effect
|
||||
#define HIT_PADDLE_BOAT_SOUND_EFFECT 0x80000 //* hit paddle boat
|
||||
#define UNUSED_SOUND_EFFECT_0x10000 0x100000 //*
|
||||
#define SPINOUT_SOUND_EFFECT 0x200000 // hit crab or spiny spinout or losing versus race
|
||||
#define REVERSE_SOUND_EFFECT 0x400000 // being in the wrong direction (actually hitting a fake item)
|
||||
#define HIT_FAKE_ITEM_SOUND_EFFECT 0x400000 // actually hitting a fake item / bomb
|
||||
#define BOOST_RAMP_ASPHALT_SOUND_EFFECT 0x800000 // being boosted by a boost pad // confirmed but not every time
|
||||
#define HIT_BY_ITEM_SOUND_EFFECT 0x1000000 // being hit by an item (actually a star)
|
||||
#define START_BOOST_SOUND_EFFECT 0x2000000 // Start boost sound effect
|
||||
#define LOSE_BATTLE_SOUND_EFFECT 0x4000000 // When losing battle mode
|
||||
#define UNKNOWN_SOUND_EFFECT_0x08000000 0x08000000 // Related to battle mode. Becoming a bomb?
|
||||
#define START_SPINOUT_SOUND_EFFECT 0x10000000 // Spinning out by holding gas at start of race
|
||||
#define HIT_BY_STAR_SOUND_EFFECT 0x1000000 // being hit by a star
|
||||
#define START_BOOST_SOUND_EFFECT 0x2000000 //* Start boost sound effect
|
||||
#define LOSE_BATTLE_SOUND_EFFECT 0x4000000 //* When losing battle mode
|
||||
#define UNKNOWN_SOUND_EFFECT_0x08000000 0x08000000 //* Related to battle mode. Becoming a bomb?
|
||||
#define START_SPINOUT_SOUND_EFFECT 0x10000000 //* Spinning out by holding gas at start of race
|
||||
|
||||
#define ALL_SOUND_EFFECTS (0xFFFFFFFF )
|
||||
#define RACING_SPINOUT_SOUND_EFFECTS (SPINOUT_SOUND_EFFECT | DRIVING_SPINOUT_SOUND_EFFECT | HIT_BANANA_SOUND_EFFECT) // 0x200081
|
||||
#define RAMP_BOOST_SOUND_EFFECTS (BOOST_RAMP_ASPHALT_SOUND_EFFECT | BOOST_RAMP_WOOD_SOUND_EFFECT) // 0x00808000
|
||||
#define ANY_BOOST_SOUND_EFFECTS (RAMP_BOOST_SOUND_EFFECTS | BOOST_SOUND_EFFECT) // 0x00808200
|
||||
#define STATE_TRANSITION_SOUND_EFFECTS (STAR_SOUND_EFFECT | BOO_SOUND_EFFECT | UNUSED_SOUND_EFFECT_0x1000 | UNUSED_SOUND_EFFECT_0x20000)// 0x00023800
|
||||
#define HIT_SOUND_EFFECTS (HIT_BY_STAR_SOUND_EFFECT | HIT_FAKE_ITEM_SOUND_EFFECT | \
|
||||
LIGHTNING_STRIKE_SOUND_EFFECT | HIT_GREEN_SHELL_SOUND_EFFECT | HIT_RED_BLUE_MOLE_SOUND_EFFECT | THWOMP_STOMP_SOUND_EFFECT) // 0x01404106
|
||||
|
||||
/**
|
||||
* @brief effect of player's
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ void update_actor_banana(struct BananaActor* banana) {
|
|||
controller->buttonDepressed &= ~Z_TRIG;
|
||||
banana->state = DROPPED_BANANA;
|
||||
banana->unk_04 = 0x00B4;
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
func_800C9060(player - gPlayerOne, SOUND_ARG_LOAD(0x19, 0x00, 0x80, 0x12));
|
||||
pad3 = controller->rawStickY;
|
||||
if ((pad3 > 30.0f) && (controller->rawStickX < 10) && (controller->rawStickX >= -9)) {
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ void update_actor_fake_item_box(struct FakeItemBox* fake_item_box) {
|
|||
if ((temp_v1_3->buttonDepressed & Z_TRIG) != 0) {
|
||||
temp_v1_3->buttonDepressed &= 0xDFFF;
|
||||
func_802A1064(fake_item_box);
|
||||
temp_v0_4->soundEffects &= 0xFFFBFFFF;
|
||||
temp_v0_4->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
func_800C9060((u8) (temp_v0_4 - gPlayerOne), SOUND_ARG_LOAD(0x19, 0x00, 0x80, 0x12));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1024,7 +1024,7 @@ void func_8001F394(Player* player, f32* arg1) {
|
|||
}
|
||||
|
||||
if (D_80164A08[playerIndex] == 0) {
|
||||
if (player->soundEffects & HOLD_BANANA_SOUND_EFFECT) {
|
||||
if (player->soundEffects & DRAG_ITEM_SOUND_EFFECT) {
|
||||
D_80164A08[playerIndex] = 1;
|
||||
}
|
||||
if ((player->effects & BOOST_EFFECT) == BOOST_EFFECT) {
|
||||
|
|
@ -1033,7 +1033,7 @@ void func_8001F394(Player* player, f32* arg1) {
|
|||
if ((player->effects & BOOST_RAMP_ASPHALT_EFFECT) == BOOST_RAMP_ASPHALT_EFFECT) {
|
||||
D_80164A08[playerIndex] = 3;
|
||||
}
|
||||
if ((player->soundEffects & HIT_SOUND_EFFECT) == HIT_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & THWOMP_STOMP_SOUND_EFFECT) == THWOMP_STOMP_SOUND_EFFECT) {
|
||||
D_80164A08[playerIndex] = 4;
|
||||
}
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40)) {
|
||||
|
|
@ -1043,7 +1043,7 @@ void func_8001F394(Player* player, f32* arg1) {
|
|||
}
|
||||
switch (D_80164A08[playerIndex]) {
|
||||
case 1:
|
||||
if (player->soundEffects & HOLD_BANANA_SOUND_EFFECT) {
|
||||
if (player->soundEffects & DRAG_ITEM_SOUND_EFFECT) {
|
||||
move_f32_towards(&D_80164498[playerIndex], 20.0f, 0.2f);
|
||||
} else {
|
||||
if (D_80164498[playerIndex] > 1.0f) {
|
||||
|
|
@ -1082,7 +1082,7 @@ void func_8001F394(Player* player, f32* arg1) {
|
|||
}
|
||||
break;
|
||||
case 4:
|
||||
if ((player->soundEffects & HIT_SOUND_EFFECT) == HIT_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & THWOMP_STOMP_SOUND_EFFECT) == THWOMP_STOMP_SOUND_EFFECT) {
|
||||
move_f32_towards(&D_80164498[playerIndex], 25.0f, 1.0f);
|
||||
} else {
|
||||
if (D_80164498[playerIndex] > 1.0f) {
|
||||
|
|
|
|||
|
|
@ -1359,7 +1359,7 @@ void play_cpu_sound_effect(s32 arg0, Player* player) {
|
|||
}
|
||||
}
|
||||
if (D_801633B0[arg0] >= 0xB) {
|
||||
if ((player->soundEffects & REVERSE_EFFECT) || (player->soundEffects & HIT_BY_ITEM_SOUND_EFFECT) ||
|
||||
if ((player->soundEffects & HIT_FAKE_ITEM_SOUND_EFFECT) || (player->soundEffects & HIT_BY_STAR_SOUND_EFFECT) ||
|
||||
(player->soundEffects & HIT_RED_BLUE_MOLE_SOUND_EFFECT) || (player->soundEffects & HIT_GREEN_SHELL_SOUND_EFFECT) || (player->effects & HIT_EFFECT)) {
|
||||
func_800C92CC(arg0, SOUND_ARG_LOAD(0x29, 0x00, 0x80, 0x0B));
|
||||
D_801633B0[arg0] = 0;
|
||||
|
|
@ -3943,7 +3943,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
} else if (cpuStrategy->branch == CPU_STRATEGY_ITEM_BANANA) {
|
||||
cpuStrategy->actorIndex = use_banana_item(player);
|
||||
if ((cpuStrategy->actorIndex >= 0) && (cpuStrategy->actorIndex < 100)) {
|
||||
player->soundEffects |= HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects |= DRAG_ITEM_SOUND_EFFECT;
|
||||
cpuStrategy->branch = CPU_STRATEGY_HOLD_BANANA;
|
||||
cpuStrategy->timer = 0;
|
||||
cpuStrategy->numItemUse += 1;
|
||||
|
|
@ -3968,7 +3968,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
|
||||
cpuStrategy->branch = CPU_STRATEGY_WAIT_NEXT_ITEM;
|
||||
cpuStrategy->timer = 0;
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
} else if (cpuStrategy->timeBeforeThrow < cpuStrategy->timer) {
|
||||
cpuStrategy->branch = CPU_STRATEGY_DROP_BANANA;
|
||||
}
|
||||
|
|
@ -3997,7 +3997,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
(BANANA_ACTOR(actor)->boundingBoxSize + 1.0f);
|
||||
}
|
||||
}
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
cpuStrategy->timer = 0;
|
||||
cpuStrategy->branch = CPU_STRATEGY_WAIT_NEXT_ITEM;
|
||||
break;
|
||||
|
|
@ -4007,7 +4007,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
if ((cpuStrategy->actorIndex >= 0) && (cpuStrategy->actorIndex < 100)) {
|
||||
actor = &gActorList[cpuStrategy->actorIndex];
|
||||
BANANA_ACTOR(actor)->state = BANANA_ON_GROUND;
|
||||
player->soundEffects |= HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects |= DRAG_ITEM_SOUND_EFFECT;
|
||||
cpuStrategy->branch = CPU_STRATEGY_HOLD_THROW_BANANA;
|
||||
cpuStrategy->timer = 0;
|
||||
cpuStrategy->numItemUse += 1;
|
||||
|
|
@ -4040,7 +4040,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
|
||||
cpuStrategy->timer = 0;
|
||||
cpuStrategy->branch = CPU_STRATEGY_WAIT_NEXT_ITEM;
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
} else {
|
||||
BANANA_ACTOR(actor)->velocity[1] -= 0.4;
|
||||
BANANA_ACTOR(actor)->pos[0] += BANANA_ACTOR(actor)->velocity[0];
|
||||
|
|
@ -4073,7 +4073,7 @@ void cpu_use_item_strategy(s32 playerId) {
|
|||
get_surface_height(BANANA_ACTOR(actor)->pos[0], BANANA_ACTOR(actor)->pos[1] + 30.0, BANANA_ACTOR(actor)->pos[2]) +
|
||||
(BANANA_ACTOR(actor)->boundingBoxSize + 1.0f);
|
||||
}
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
cpuStrategy->branch = CPU_STRATEGY_WAIT_NEXT_ITEM;
|
||||
cpuStrategy->timer = 0;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -139,7 +139,7 @@ void func_8000DF8C(s32 bombKartId) {
|
|||
if ((((temp_f0 * temp_f0) + (temp_f2 * temp_f2)) + (temp_f12 * temp_f12)) < 25.0f) {
|
||||
var_s1 = 0;
|
||||
sp7E = 4;
|
||||
var_v0->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
var_v0->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
var_v0->type &= ~0x2000;
|
||||
}
|
||||
}
|
||||
|
|
@ -155,9 +155,9 @@ void func_8000DF8C(s32 bombKartId) {
|
|||
sp7E = 4;
|
||||
var_s1 = 0;
|
||||
if (gCurrentCourseId == COURSE_FRAPPE_SNOWLAND) {
|
||||
var_v0->soundEffects |= HIT_BY_ITEM_SOUND_EFFECT;
|
||||
var_v0->soundEffects |= HIT_BY_STAR_SOUND_EFFECT;
|
||||
} else {
|
||||
var_v0->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
var_v0->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ void regulate_cpu_speed(s32 playerId, f32 targetSpeed, Player* player) {
|
|||
|
||||
speed = player->speed;
|
||||
if (!(player->effects & 0x80) && !(player->effects & 0x40) && !(player->effects & 0x20000) &&
|
||||
!(player->soundEffects & REVERSE_SOUND_EFFECT) && !(player->soundEffects & HIT_BY_ITEM_SOUND_EFFECT) && !(player->soundEffects & HIT_RED_BLUE_MOLE_SOUND_EFFECT) &&
|
||||
!(player->soundEffects & HIT_FAKE_ITEM_SOUND_EFFECT) && !(player->soundEffects & HIT_BY_STAR_SOUND_EFFECT) && !(player->soundEffects & HIT_RED_BLUE_MOLE_SOUND_EFFECT) &&
|
||||
!(player->soundEffects & 4)) {
|
||||
if (gCurrentCourseId == COURSE_AWARD_CEREMONY) {
|
||||
func_80007FA4(playerId, player, speed);
|
||||
|
|
|
|||
|
|
@ -372,14 +372,14 @@ void handle_trains_interactions(s32 playerId, Player* player) {
|
|||
if ((z_dist > -100.0) && (z_dist < 100.0)) {
|
||||
if (is_collide_with_vehicle(trainCar->position[0], trainCar->position[2], trainCar->velocity[0],
|
||||
trainCar->velocity[2], 60.0f, 20.0f, playerPosX, playerPosZ) == 1) {
|
||||
player->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
player->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
trainCar = &gTrainList[trainIndex].tender;
|
||||
if (trainCar->isActive == 1) {
|
||||
if (is_collide_with_vehicle(trainCar->position[0], trainCar->position[2],
|
||||
trainCar->velocity[0], trainCar->velocity[2], 30.0f, 20.0f,
|
||||
playerPosX, playerPosZ) == 1) {
|
||||
player->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
player->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -395,7 +395,7 @@ void handle_trains_interactions(s32 playerId, Player* player) {
|
|||
if (is_collide_with_vehicle(trainCar->position[0], trainCar->position[2],
|
||||
trainCar->velocity[0], trainCar->velocity[2], 30.0f, 20.0f,
|
||||
playerPosX, playerPosZ) == 1) {
|
||||
player->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
player->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -805,7 +805,7 @@ void handle_vehicle_interactions(s32 playerId, Player* player, VehicleStuff* veh
|
|||
if (is_collide_with_vehicle(vehicle->position[0], vehicle->position[2], vehicle->velocity[0],
|
||||
vehicle->velocity[2], distanceX, distanceY, playerX,
|
||||
playerZ) == (s32) 1) {
|
||||
player->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
player->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ UNUSED void func_unnamed33(void) {
|
|||
|
||||
void func_8008C310(Player* player) {
|
||||
if ((player->soundEffects & HIT_RED_BLUE_MOLE_SOUND_EFFECT) || (player->soundEffects & HIT_GREEN_SHELL_SOUND_EFFECT) || ((player->soundEffects << 9) < 0) ||
|
||||
(player->soundEffects & HIT_BY_ITEM_SOUND_EFFECT)) {
|
||||
(player->soundEffects & HIT_BY_STAR_SOUND_EFFECT)) {
|
||||
player->unk_0B6 = ((u16) player->unk_0B6 | 0x1000);
|
||||
}
|
||||
}
|
||||
|
|
@ -311,7 +311,7 @@ void func_8008C8C4(Player* player, s8 playerId) {
|
|||
}
|
||||
if ((gModeSelection == VERSUS) && ((player->type & PLAYER_CPU) == PLAYER_CPU) && (!gDemoMode) &&
|
||||
((player->unk_0CA & 2) == 0) && (gGPCurrentRaceRankByPlayerId[playerId] != 0)) {
|
||||
player->soundEffects = (s32) (player->soundEffects | REVERSE_SOUND_EFFECT);
|
||||
player->soundEffects = (s32) (player->soundEffects | HIT_FAKE_ITEM_SOUND_EFFECT);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -704,7 +704,7 @@ void apply_hit_sound_effect(Player* player, s8 playerIndex) {
|
|||
player->unk_D9C = 0.0f;
|
||||
player->unk_DA0 = 65.0f;
|
||||
|
||||
if ((player->soundEffects & HIT_SOUND_EFFECT) != 0) {
|
||||
if ((player->soundEffects & THWOMP_STOMP_SOUND_EFFECT) != 0) {
|
||||
player->unk_046 |= 0x80;
|
||||
}
|
||||
|
||||
|
|
@ -738,7 +738,7 @@ void apply_hit_effect(Player* player, s8 playerIndex) {
|
|||
}
|
||||
|
||||
if ((player->unk_046 & 0x80) != 0) {
|
||||
if ((player->soundEffects & HIT_SOUND_EFFECT) == 0) {
|
||||
if ((player->soundEffects & THWOMP_STOMP_SOUND_EFFECT) == 0) {
|
||||
D_8018D990[playerIndex] = 1;
|
||||
player->unk_238 = 0;
|
||||
if ((player->type & PLAYER_HUMAN) != 0) {
|
||||
|
|
@ -830,7 +830,7 @@ void apply_hit_effect(Player* player, s8 playerIndex) {
|
|||
void apply_hit_rotating_sound_effect(Player* player, s8 playerIndex) {
|
||||
clean_effect(player, playerIndex);
|
||||
|
||||
player->soundEffects &= ~HIT_ROTATING_SOUND_EFFECT;
|
||||
player->soundEffects &= ~LIGHTNING_STRIKE_SOUND_EFFECT;
|
||||
player->effects |= 0x40020000;
|
||||
player->effects &= ~0x10;
|
||||
player->unk_08C *= 0.6;
|
||||
|
|
@ -1025,7 +1025,7 @@ void apply_reverse_sound_effect(Player* player, s8 playerIndex) {
|
|||
play_cpu_sound_effect(playerIndex, player);
|
||||
}
|
||||
|
||||
player->soundEffects &= ~(REVERSE_SOUND_EFFECT | HIT_PADDLE_BOAT_SOUND_EFFECT);
|
||||
player->soundEffects &= ~(HIT_FAKE_ITEM_SOUND_EFFECT | HIT_PADDLE_BOAT_SOUND_EFFECT);
|
||||
player->unk_0B6 |= 0x40;
|
||||
gTimerBoostTripleACombo[playerIndex] = 0;
|
||||
gIsPlayerTripleAButtonCombo[playerIndex] = false;
|
||||
|
|
@ -1126,7 +1126,7 @@ void apply_hit_by_item_sound_effect(Player* player, s8 playerIndex) {
|
|||
|
||||
player->effects |= HIT_BY_ITEM_EFFECT;
|
||||
player->unk_0B6 |= 0x40;
|
||||
player->soundEffects &= ~(HIT_BY_ITEM_SOUND_EFFECT | HIT_RED_BLUE_MOLE_SOUND_EFFECT);
|
||||
player->soundEffects &= ~(HIT_BY_STAR_SOUND_EFFECT | HIT_RED_BLUE_MOLE_SOUND_EFFECT);
|
||||
|
||||
gTimerBoostTripleACombo[playerIndex] = 0;
|
||||
gIsPlayerTripleAButtonCombo[playerIndex] = false;
|
||||
|
|
|
|||
|
|
@ -1375,19 +1375,19 @@ void apply_sound_effect(Player* player, s8 playerId, UNUSED s8 screenId) {
|
|||
if ((player->soundEffects & UNUSED_SOUND_EFFECT_0x20000) == UNUSED_SOUND_EFFECT_0x20000) {
|
||||
func_8008D7B0(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & HIT_SOUND_EFFECT) == HIT_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & THWOMP_STOMP_SOUND_EFFECT) == THWOMP_STOMP_SOUND_EFFECT) {
|
||||
apply_hit_sound_effect(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & HIT_ROTATING_SOUND_EFFECT) == HIT_ROTATING_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & LIGHTNING_STRIKE_SOUND_EFFECT) == LIGHTNING_STRIKE_SOUND_EFFECT) {
|
||||
apply_hit_rotating_sound_effect(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & SPINOUT_SOUND_EFFECT) == SPINOUT_SOUND_EFFECT) {
|
||||
func_8008C73C(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & REVERSE_SOUND_EFFECT) == REVERSE_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & HIT_FAKE_ITEM_SOUND_EFFECT) == HIT_FAKE_ITEM_SOUND_EFFECT) {
|
||||
apply_reverse_sound_effect(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & HIT_BY_ITEM_SOUND_EFFECT) == HIT_BY_ITEM_SOUND_EFFECT) {
|
||||
if ((player->soundEffects & HIT_BY_STAR_SOUND_EFFECT) == HIT_BY_STAR_SOUND_EFFECT) {
|
||||
apply_hit_by_item_sound_effect(player, playerId);
|
||||
}
|
||||
if ((player->soundEffects & BOOST_RAMP_ASPHALT_SOUND_EFFECT) == BOOST_RAMP_ASPHALT_SOUND_EFFECT) {
|
||||
|
|
@ -1412,55 +1412,70 @@ void apply_sound_effect(Player* player, s8 playerId, UNUSED s8 screenId) {
|
|||
|
||||
void func_8002B5C0(Player* player, UNUSED s8 playerId, UNUSED s8 screenId) {
|
||||
if (((player->unk_0CA & 8) != 0) || ((player->unk_0CA & 2) != 0)) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// Green shell
|
||||
if ((player->effects & 0x400) == 0x400) {
|
||||
player->soundEffects &= 0xFF5D457E;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// Spinout (banana or driving)
|
||||
if (((player->effects & 0x80) == 0x80) || ((player->effects & 0x40) == 0x40)) {
|
||||
player->soundEffects &= 0xFF5F457E;
|
||||
player->soundEffects &= (ALL_SOUND_EFFECTS & ~(ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS)) | UNUSED_SOUND_EFFECT_0x20000;
|
||||
}
|
||||
// Near spinout (banana)
|
||||
if ((player->effects & 0x800) == 0x800) {
|
||||
player->soundEffects &= 0xFF5D457E;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
if ((player->unk_044 & 0x4000) != 0) {
|
||||
player->soundEffects &= 0xFF5D457E;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
//unclear
|
||||
if ((player->effects & 0x80000) == 0x80000) {
|
||||
player->soundEffects &= 0xFE1D4478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~((HIT_SOUND_EFFECTS ^ LIGHTNING_STRIKE_SOUND_EFFECT) | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
//unclear
|
||||
if ((player->effects & 0x800000) == 0x800000) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
//squished
|
||||
if ((player->effects & HIT_EFFECT) == HIT_EFFECT) {
|
||||
player->soundEffects &= 0xFE1D0578;
|
||||
player->soundEffects &= (ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS)) | THWOMP_STOMP_SOUND_EFFECT;
|
||||
}
|
||||
//explosion crash
|
||||
if ((player->effects & UNKNOWN_EFFECT_0x1000000) == UNKNOWN_EFFECT_0x1000000) {
|
||||
player->soundEffects &= 0xFE1D4478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~((HIT_SOUND_EFFECTS ^ LIGHTNING_STRIKE_SOUND_EFFECT) | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// hit by star or red shell
|
||||
if ((player->effects & HIT_BY_ITEM_EFFECT) == HIT_BY_ITEM_EFFECT) {
|
||||
player->soundEffects &= 0xFE1D4478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~((HIT_SOUND_EFFECTS ^ LIGHTNING_STRIKE_SOUND_EFFECT) | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// boost asphalt
|
||||
if ((player->effects & BOOST_RAMP_ASPHALT_EFFECT) == BOOST_RAMP_ASPHALT_EFFECT) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// boost ramp
|
||||
if ((player->effects & BOOST_RAMP_WOOD_EFFECT) == BOOST_RAMP_WOOD_EFFECT) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// Terrain tumble
|
||||
if ((player->effects & UNKNOWN_EFFECT_0x10000) == UNKNOWN_EFFECT_0x10000) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// star
|
||||
if ((player->effects & STAR_EFFECT) == STAR_EFFECT) {
|
||||
player->soundEffects &= 0xFE9D8478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | BOOST_SOUND_EFFECT | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// boo
|
||||
if ((player->effects & BOO_EFFECT) == BOO_EFFECT) {
|
||||
player->soundEffects &= 0xFE9D8678;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// early start spinout
|
||||
if ((player->effects & 0x4000) == 0x4000) {
|
||||
player->soundEffects &= 0xFF5D45FF;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(ANY_BOOST_SOUND_EFFECTS | SPINOUT_SOUND_EFFECT | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
// CPU_FAST_EFFECTS
|
||||
if ((player->effects & 0x20000) == 0x20000) {
|
||||
player->soundEffects &= 0xFE1D0478;
|
||||
player->soundEffects &= ALL_SOUND_EFFECTS & ~(HIT_SOUND_EFFECTS | ANY_BOOST_SOUND_EFFECTS | RACING_SPINOUT_SOUND_EFFECTS | STATE_TRANSITION_SOUND_EFFECTS);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1862,7 +1862,7 @@ void destroy_destructable_actor(struct Actor* actor) {
|
|||
break;
|
||||
case HELD_BANANA:
|
||||
player = &gPlayers[banana->playerId];
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
/* fallthrough */
|
||||
case BANANA_ON_GROUND:
|
||||
banana->flags = -0x8000;
|
||||
|
|
@ -1957,7 +1957,7 @@ void destroy_destructable_actor(struct Actor* actor) {
|
|||
fakeItemBox = (struct FakeItemBox*) actor;
|
||||
player = &gPlayers[(s16) fakeItemBox->playerId];
|
||||
if (fakeItemBox->state == HELD_FAKE_ITEM_BOX) {
|
||||
player->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
fakeItemBox->state = DESTROYED_FAKE_ITEM_BOX;
|
||||
fakeItemBox->flags = -0x8000;
|
||||
|
|
@ -2220,7 +2220,7 @@ void evaluate_collision_between_player_actor(Player* player, struct Actor* actor
|
|||
(query_collision_player_vs_actor_item(player, actor) != COLLISION)) {
|
||||
break;
|
||||
}
|
||||
player->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
player->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
owner = &gPlayers[temp_v1];
|
||||
if (owner->type & 0x4000) {
|
||||
if (actor->flags & 0xF) {
|
||||
|
|
@ -2235,7 +2235,7 @@ void evaluate_collision_between_player_actor(Player* player, struct Actor* actor
|
|||
}
|
||||
}
|
||||
if (actor->state == 0) {
|
||||
owner->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
owner->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
actor->state = 2;
|
||||
|
|
|
|||
|
|
@ -293,7 +293,7 @@ void update_actor_banana_bunch(struct BananaBunchParent* banana_bunch) {
|
|||
}
|
||||
if (someCount == 0) {
|
||||
destroy_actor((struct Actor*) banana_bunch);
|
||||
owner->soundEffects &= ~HOLD_BANANA_SOUND_EFFECT;
|
||||
owner->soundEffects &= ~DRAG_ITEM_SOUND_EFFECT;
|
||||
} else if ((owner->type & 0x4000) != 0) {
|
||||
controller = &gControllers[banana_bunch->playerId];
|
||||
if ((controller->buttonPressed & Z_TRIG) != 0) {
|
||||
|
|
@ -525,7 +525,7 @@ s32 use_banana_bunch_item(Player* player) {
|
|||
bananaBunch = (struct BananaBunchParent*) &gActorList[actorIndex];
|
||||
bananaBunch->state = 0;
|
||||
bananaBunch->playerId = player - gPlayerOne;
|
||||
player->soundEffects |= HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects |= DRAG_ITEM_SOUND_EFFECT;
|
||||
return actorIndex;
|
||||
}
|
||||
|
||||
|
|
@ -803,7 +803,7 @@ s32 use_fake_itembox_item(Player* player) {
|
|||
itemBox = (struct FakeItemBox*) &gActorList[actorIndex];
|
||||
itemBox->playerId = (player - gPlayerOne);
|
||||
itemBox->state = HELD_FAKE_ITEM_BOX;
|
||||
player->soundEffects |= HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects |= DRAG_ITEM_SOUND_EFFECT;
|
||||
return actorIndex;
|
||||
}
|
||||
|
||||
|
|
@ -850,7 +850,7 @@ s32 use_banana_item(Player* player) {
|
|||
banana->playerId = playerId;
|
||||
banana->state = HELD_BANANA;
|
||||
banana->unk_04 = 0x0014;
|
||||
player->soundEffects |= HOLD_BANANA_SOUND_EFFECT;
|
||||
player->soundEffects |= DRAG_ITEM_SOUND_EFFECT;
|
||||
return actorIndex;
|
||||
}
|
||||
|
||||
|
|
@ -872,7 +872,7 @@ void use_thunder_item(Player* player) {
|
|||
for (index = 0; index < NUM_PLAYERS; index++) {
|
||||
otherPlayer = &gPlayers[index];
|
||||
if (player != otherPlayer) {
|
||||
otherPlayer->soundEffects |= HIT_ROTATING_SOUND_EFFECT;
|
||||
otherPlayer->soundEffects |= LIGHTNING_STRIKE_SOUND_EFFECT;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1138,22 +1138,22 @@ void func_802903D8(Player* playerOne, Player* playerTwo) {
|
|||
func_800C9060((playerTwo - gPlayerOne), 0x19008001U);
|
||||
return;
|
||||
} else {
|
||||
playerTwo->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
playerTwo->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
func_8008FC1C(playerOne);
|
||||
func_800C9060((playerTwo - gPlayerOne), 0x19008001U);
|
||||
}
|
||||
} else if (playerTwo->type & PLAYER_UNKNOWN_0x40) {
|
||||
playerOne->soundEffects |= REVERSE_SOUND_EFFECT;
|
||||
playerOne->soundEffects |= HIT_FAKE_ITEM_SOUND_EFFECT;
|
||||
func_8008FC1C(playerTwo);
|
||||
func_800C9060(playerOne - gPlayerOne, 0x19008001U);
|
||||
return;
|
||||
}
|
||||
if (playerOne->effects & 0x200) {
|
||||
if (!(playerTwo->effects & 0x200)) {
|
||||
playerTwo->soundEffects |= HIT_BY_ITEM_SOUND_EFFECT;
|
||||
playerTwo->soundEffects |= HIT_BY_STAR_SOUND_EFFECT;
|
||||
}
|
||||
} else if (playerTwo->effects & 0x200) {
|
||||
playerOne->soundEffects |= HIT_BY_ITEM_SOUND_EFFECT;
|
||||
playerOne->soundEffects |= HIT_BY_STAR_SOUND_EFFECT;
|
||||
} else {
|
||||
playerOne->effects |= 0x8000;
|
||||
playerTwo->effects |= 0x8000;
|
||||
|
|
|
|||
|
|
@ -5981,7 +5981,7 @@ void func_80080B28(s32 objectIndex, s32 playerId) {
|
|||
|
||||
temp_s0 = &gPlayerOne[playerId];
|
||||
if (is_obj_flag_status_active(objectIndex, 0x00000200) != 0) {
|
||||
if (!(temp_s0->soundEffects & HIT_SOUND_EFFECT)) {
|
||||
if (!(temp_s0->soundEffects & THWOMP_STOMP_SOUND_EFFECT)) {
|
||||
temp_f0 = func_80088F54(objectIndex, temp_s0);
|
||||
if ((temp_f0 <= 9.0) && !(temp_s0->effects & 0x04000000) &&
|
||||
(has_collided_horizontally_with_player(objectIndex, temp_s0) != 0)) {
|
||||
|
|
@ -6012,7 +6012,7 @@ void func_80080B28(s32 objectIndex, s32 playerId) {
|
|||
func_800722A4(objectIndex, 2);
|
||||
temp_s0->unk_040 = (s16) objectIndex;
|
||||
temp_s0->unk_046 |= 2;
|
||||
temp_s0->soundEffects |= HIT_SOUND_EFFECT;
|
||||
temp_s0->soundEffects |= THWOMP_STOMP_SOUND_EFFECT;
|
||||
func_80088FF0(temp_s0);
|
||||
}
|
||||
}
|
||||
|
|
@ -6029,7 +6029,7 @@ void func_80080DE4(s32 arg0) {
|
|||
player = gPlayerOne;
|
||||
for (var_v1 = 0; var_v1 < NUM_PLAYERS; var_v1++, player++) {
|
||||
if (arg0 == player->unk_040) {
|
||||
player->soundEffects &= ~HIT_SOUND_EFFECT;
|
||||
player->soundEffects &= ~THWOMP_STOMP_SOUND_EFFECT;
|
||||
player->unk_040 = -1;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue