diff --git a/server/gameserver/car.cc b/server/gameserver/car.cc index 71949b29..8348a002 100644 --- a/server/gameserver/car.cc +++ b/server/gameserver/car.cc @@ -282,6 +282,7 @@ void Car::SyncPos() for (auto hum : passengers_) { if (hum != driver_) { hum->SetPos(GetPos()); + hum->CheckSpecObject(poly_ext_flags_); hum->SetMoveDir(GetMoveDir()); room->grid_service->MoveCreature(hum); } @@ -637,6 +638,7 @@ void Car::Update(int delta_time) if (GetDriver()) { App::Instance()->verify_set_pos = 1; GetDriver()->SetPos(GetPos()); + GetDriver()->CheckSpecObject(poly_ext_flags_); App::Instance()->verify_set_pos = 0; } SyncPos(); diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index f9fe374d..d12812aa 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -344,6 +344,9 @@ void Player::UpdateMoving() void Player::UpdateShot() { + #ifdef MYDEBUG + a8::XPrintf("UpdateShot fly:%d", {HasBuffEffect(kBET_InWater) ? 1 : 0}); + #endif if (dead || downed || HasBuffEffect(kBET_Jump) ||