Synchronized underwater koopa shell
This commit is contained in:
parent
f08e6f0806
commit
57a4e746cf
|
@ -88,6 +88,7 @@ void bhv_koopa_shell_loop(void) {
|
|||
koopa_shell_spawn_sparkles(10.0f);
|
||||
o->oFaceAngleYaw = player->oMoveAngleYaw;
|
||||
if (o->oInteractStatus & INT_STATUS_STOP_RIDING) {
|
||||
o->heldByPlayerIndex = 0;
|
||||
obj_mark_for_deletion(o);
|
||||
spawn_mist_particles();
|
||||
o->oAction = 0;
|
||||
|
|
|
@ -17,6 +17,9 @@ void set_koopa_shell_underwater_hitbox(void) {
|
|||
}
|
||||
|
||||
void bhv_koopa_shell_underwater_loop(void) {
|
||||
if (o->oSyncID == 0) {
|
||||
network_init_object(o, 500.0f);
|
||||
}
|
||||
switch (o->oHeldState) {
|
||||
case HELD_FREE:
|
||||
set_koopa_shell_underwater_hitbox();
|
||||
|
@ -26,6 +29,7 @@ void bhv_koopa_shell_underwater_loop(void) {
|
|||
break;
|
||||
case HELD_THROWN:
|
||||
case HELD_DROPPED:
|
||||
o->heldByPlayerIndex = 0;
|
||||
obj_mark_for_deletion(o);
|
||||
spawn_mist_particles();
|
||||
break;
|
||||
|
|
|
@ -56,7 +56,10 @@ void network_receive_player(struct Packet* p) {
|
|||
if (heldSyncID != NULL && syncObjects[heldSyncID].o != NULL) {
|
||||
// TODO: do we have to move graphics nodes around to make this visible?
|
||||
gMarioStates[1].heldObj = syncObjects[heldSyncID].o;
|
||||
if (gMarioStates[1].heldObj != NULL) {
|
||||
gMarioStates[1].heldObj->oHeldState = HELD_HELD;
|
||||
gMarioStates[1].heldObj->heldByPlayerIndex = 1;
|
||||
}
|
||||
} else {
|
||||
gMarioStates[1].heldObj = NULL;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue