mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2025-10-30 08:01:01 +00:00
Fix koopa the quick sound spam and cheat detection
This commit is contained in:
parent
ef95d6820b
commit
a804981b2a
3 changed files with 12 additions and 16 deletions
|
|
@ -120,7 +120,9 @@ void opened_cannon_act_1(void) {
|
||||||
o->oMoveAngleYaw = marioState->marioObj->oMarioCannonObjectYaw + marioState->marioObj->oMarioCannonInputYaw;
|
o->oMoveAngleYaw = marioState->marioObj->oMarioCannonObjectYaw + marioState->marioObj->oMarioCannonInputYaw;
|
||||||
}
|
}
|
||||||
o->oCannonUnk10C = 0;
|
o->oCannonUnk10C = 0;
|
||||||
gMarioShotFromCannon = 1;
|
if (o->oCannonIsLocal) {
|
||||||
|
gMarioShotFromCannon = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void opened_cannon_act_2(void) {
|
void opened_cannon_act_2(void) {
|
||||||
|
|
|
||||||
|
|
@ -913,14 +913,7 @@ void koopa_the_quick_force_end_race(void) {
|
||||||
level_control_timer(TIMER_CONTROL_STOP);
|
level_control_timer(TIMER_CONTROL_STOP);
|
||||||
|
|
||||||
if (!o->oKoopaRaceEndpointKoopaFinished) {
|
if (!o->oKoopaRaceEndpointKoopaFinished) {
|
||||||
network_send_object(o);
|
|
||||||
play_race_fanfare();
|
play_race_fanfare();
|
||||||
if (gMarioShotFromCannon) {
|
|
||||||
o->oKoopaRaceEndpointRaceStatus = -1;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
o->oKoopaRaceEndpointRaceStatus = 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
koopaForceEndRace = FALSE;
|
koopaForceEndRace = FALSE;
|
||||||
}
|
}
|
||||||
|
|
@ -931,6 +924,7 @@ void koopa_the_quick_force_end_race(void) {
|
||||||
void bhv_koopa_race_endpoint_update(void) {
|
void bhv_koopa_race_endpoint_update(void) {
|
||||||
if (!network_sync_object_initialized(o)) {
|
if (!network_sync_object_initialized(o)) {
|
||||||
network_init_object(o, SYNC_DISTANCE_ONLY_EVENTS);
|
network_init_object(o, SYNC_DISTANCE_ONLY_EVENTS);
|
||||||
|
network_init_object_field(o, &o->oKoopaRaceEndpointRaceStatus);
|
||||||
network_init_object_field(o, &koopaForceEndRace);
|
network_init_object_field(o, &koopaForceEndRace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -944,16 +938,15 @@ void bhv_koopa_race_endpoint_update(void) {
|
||||||
level_control_timer(TIMER_CONTROL_STOP);
|
level_control_timer(TIMER_CONTROL_STOP);
|
||||||
|
|
||||||
if (!o->oKoopaRaceEndpointKoopaFinished) {
|
if (!o->oKoopaRaceEndpointKoopaFinished) {
|
||||||
koopaForceEndRace = TRUE;
|
|
||||||
network_send_object(o);
|
|
||||||
koopaForceEndRace = FALSE;
|
|
||||||
|
|
||||||
play_race_fanfare();
|
play_race_fanfare();
|
||||||
if (gMarioShotFromCannon) {
|
if (gMarioShotFromCannon) {
|
||||||
o->oKoopaRaceEndpointRaceStatus = -1;
|
o->oKoopaRaceEndpointRaceStatus = -1;
|
||||||
} else {
|
} else {
|
||||||
o->oKoopaRaceEndpointRaceStatus = 1;
|
o->oKoopaRaceEndpointRaceStatus = 1;
|
||||||
}
|
}
|
||||||
|
koopaForceEndRace = TRUE;
|
||||||
|
network_send_object(o);
|
||||||
|
koopaForceEndRace = FALSE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -51,15 +51,16 @@ void set_home_to_mario(void) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
struct Object* player = nearest_player_to_object(o);
|
||||||
if (parentIsMario) {
|
if (parentIsMario) {
|
||||||
o->oHomeX = o->parentObj->oPosX;
|
o->oHomeX = o->parentObj->oPosX;
|
||||||
o->oHomeZ = o->parentObj->oPosZ;
|
o->oHomeZ = o->parentObj->oPosZ;
|
||||||
o->oHomeY = o->parentObj->oPosY;
|
o->oHomeY = o->parentObj->oPosY;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
o->oHomeX = gMarioObject->oPosX;
|
struct Object* player = nearest_player_to_object(o);
|
||||||
o->oHomeZ = gMarioObject->oPosZ;
|
o->oHomeX = player->oPosX;
|
||||||
o->oHomeY = gMarioObject->oPosY;
|
o->oHomeZ = player->oPosZ;
|
||||||
|
o->oHomeY = player->oPosY;
|
||||||
}
|
}
|
||||||
o->oHomeY += 250.0f;
|
o->oHomeY += 250.0f;
|
||||||
o->oPosY = o->oHomeY;
|
o->oPosY = o->oHomeY;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue