From 6fa87b3c705b8e094433bab9b1e4c4ba9fd45bec Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sun, 2 Apr 2023 16:27:59 +0800 Subject: [PATCH] 1 --- server/gameserver/bullet.cc | 48 ++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/server/gameserver/bullet.cc b/server/gameserver/bullet.cc index f17553a5..f29ac8ac 100644 --- a/server/gameserver/bullet.cc +++ b/server/gameserver/bullet.cc @@ -802,36 +802,36 @@ bool Bullet::IsFlyHook() void Bullet::GetHitThings(BulletCheckResult& result) { - room->TraverseEntityList - ( - [this] (Entity* e) + room->grid_service->TraverseObstacles + (room->GetRoomIdx(), + GetGridList(), + [this] (Obstacle* ob, bool& stop) { - if (e->IsEntityType(ET_Obstacle)) { - Obstacle* ob = (Obstacle*)e; - if (ob->meta->thing_type() == kObstacleStrengthenWall) { - if (!strengthened_ && sender.Get() && - sender.Get()->team_id == ob->GetTeamId(room)) { - bool ret = Collision::Check2dRotationRectangle - (GetPos().GetX(), - GetPos().GetZ(), - gun_meta->bullet_rad(), - ob->GetPos().GetX(), - ob->GetPos().GetZ(), - ob->meta->width(), - ob->meta->height(), - ob->GetRotate() * 180.0f - ); - if (ret) { - strengthened_ = true; - OnStrengthen(ob); + #if 1 + #else + if (ob->meta->thing_type() == kObstacleStrengthenWall) { + if (!strengthened_ && sender.Get() && + sender.Get()->team_id == ob->GetTeamId(room)) { + bool ret = Collision::Check2dRotationRectangle + (GetPos().GetX(), + GetPos().GetZ(), + gun_meta->bullet_rad(), + ob->GetPos().GetX(), + ob->GetPos().GetZ(), + ob->meta->width(), + ob->meta->height(), + ob->GetRotate() * 180.0f + ); + if (ret) { + strengthened_ = true; + OnStrengthen(ob); #ifdef DEBUG - a8::XPrintf("命中能量墙\n", {}); + a8::XPrintf("命中能量墙\n", {}); #endif - } } } } - return true; + #endif }); }