1
This commit is contained in:
parent
fd36277d65
commit
c749f886ff
@ -849,7 +849,6 @@ void Room::OnHumanDie(Human* hum)
|
||||
--PerfMonitor::Instance()->alive_count;
|
||||
RemoveFromAliveHumanHash(hum);
|
||||
NotifyUiUpdate();
|
||||
CheckShowHand();
|
||||
}
|
||||
}
|
||||
|
||||
@ -2624,55 +2623,6 @@ void Room::SyncFrameData()
|
||||
frame_event.Clear();
|
||||
}
|
||||
|
||||
void Room::CheckShowHand()
|
||||
{
|
||||
if (show_handed_) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void Room::ShowHand()
|
||||
{
|
||||
std::vector<Player*> players;
|
||||
std::vector<Human*> androids;
|
||||
for (auto& pair : accountid_hash_) {
|
||||
players.push_back(pair.second);
|
||||
}
|
||||
for (auto& pair : last_human_hash_) {
|
||||
androids.push_back(pair.second);
|
||||
}
|
||||
for (size_t i = 0; i < players.size(); ++i) {
|
||||
if (i >= androids.size()) {
|
||||
break;
|
||||
}
|
||||
Player* target = players[i];
|
||||
Human* hum = androids[i];
|
||||
{
|
||||
Position pos = target->GetPos();
|
||||
glm::vec3 dir = target->GetMoveDir();
|
||||
if (rand() % 100 < 80) {
|
||||
GlmHelper::RotateY(dir, a8::RandAngle() / 2.0f);
|
||||
} else {
|
||||
GlmHelper::RotateY(dir, a8::RandAngle());
|
||||
}
|
||||
// 999
|
||||
#if 1
|
||||
#else
|
||||
pos = pos + dir * VIEW_RANGE;
|
||||
#endif
|
||||
if (OverBorder(pos.ToGlmVec3(), hum->GetRadius())) {
|
||||
pos.SetX(target->GetPos().GetX());
|
||||
if (OverBorder(pos.ToGlmVec3(), hum->GetRadius())) {
|
||||
pos = target->GetPos(); //!!!
|
||||
}
|
||||
}
|
||||
hum->last_human_target = target;
|
||||
hum->SetPos(pos);
|
||||
EnableHuman(hum);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Room::RemoveRescue(Human* hum)
|
||||
{
|
||||
for (auto& pair : human_hash_) {
|
||||
|
@ -314,7 +314,6 @@ private:
|
||||
void NewBieRoomStart();
|
||||
bool CanAddToScene(Human* hum);
|
||||
void SyncFrameData();
|
||||
void CheckShowHand();
|
||||
void InitAndroidAI();
|
||||
void ForwardGasRing(int n);
|
||||
void InternalRemoveObjectLater(Entity* entity, a8::Attacher& entity_xtimer_attacher);
|
||||
|
@ -37,75 +37,7 @@ const int HUM_NUM_DOWN_LIMIT = 2500;
|
||||
|
||||
static RoomType_e GetHumanRoomType(const cs::CMJoin& msg, int& game_times)
|
||||
{
|
||||
#if 1
|
||||
return RoomType_OldBrid1;
|
||||
#else
|
||||
game_times = 0;
|
||||
std::vector<std::string> tmp_strings;
|
||||
a8::Split(msg.pre_settlement_info(), tmp_strings, ',');
|
||||
if (tmp_strings.size() < 3) {
|
||||
return RT_NewBrid;
|
||||
}
|
||||
//游戏次数,吃鸡数,击杀数,段位
|
||||
game_times = a8::XValue(tmp_strings[0]);
|
||||
int room_rank = tmp_strings.size() > 3 ? a8::XValue(tmp_strings[3]).GetInt() : 0;
|
||||
time_t register_time = f8::ExtractRegisterTimeFromSessionId(msg.session_id());
|
||||
#if 1
|
||||
#else
|
||||
if (!f8::IsOnlineEnv() || RoomMgr::Instance()->IsGM(msg)) {
|
||||
game_times = 0;
|
||||
if (!msg.team_uuid().empty()) {
|
||||
game_times = 1;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (!msg.team_uuid().empty() && msg.team_members().size() > 1) {
|
||||
for (auto& team_member : msg.team_members()) {
|
||||
if (team_member.rank() > 0) {
|
||||
if (team_member.rank() > room_rank) {
|
||||
room_rank = team_member.rank();
|
||||
register_time = team_member.create_time();
|
||||
} else if(team_member.rank() == room_rank &&
|
||||
team_member.create_time() > register_time) {
|
||||
register_time = team_member.create_time();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
#if 0
|
||||
if (msg.force_entry_newbie_room()) {
|
||||
return RT_NewBrid;
|
||||
}
|
||||
#endif
|
||||
if (game_times <= 0) {
|
||||
return RT_NewBrid;
|
||||
} else if (game_times == 1) {
|
||||
return RT_MidBrid;
|
||||
}
|
||||
}
|
||||
|
||||
if (!msg.team_uuid().empty() && msg.team_members().size() > 1) {
|
||||
if (room_rank >= 0 && room_rank <= 6) {
|
||||
return RoomType_OldBrid1;
|
||||
} else if (a8::BetweenDays(Global::g_nowtime, register_time) <= 0) {
|
||||
return RoomType_OldBrid2;
|
||||
} else {
|
||||
return RoomType_OldBrid3;
|
||||
}
|
||||
} else {
|
||||
if (room_rank >= 0 && room_rank <= 6) {
|
||||
//黄金段位以下
|
||||
return RoomType_OldBrid1;
|
||||
} else if (a8::BetweenDays(Global::g_nowtime, register_time) <= 0) {
|
||||
//第一天,黄金段位以上
|
||||
return RoomType_OldBrid2;
|
||||
} else {
|
||||
//其他
|
||||
return RoomType_OldBrid3;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void RoomMgr::Init()
|
||||
|
@ -121,7 +121,7 @@ void Team::CombineBornPoint()
|
||||
member->FindLocation();
|
||||
member->RefreshView();
|
||||
room->grid_service->MoveCreature(member);
|
||||
} else if (room->GetRoomType() == RoomType_MidBrid && !member->team_uuid.empty()){
|
||||
} else {
|
||||
room->EnableHuman(member);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user