1
This commit is contained in:
parent
b2b248b4df
commit
6c0a8624c2
@ -19,6 +19,15 @@ Position BornPoint::RandPoint(Room* room) const
|
|||||||
glm::vec3 dir = GlmHelper::UP;
|
glm::vec3 dir = GlmHelper::UP;
|
||||||
GlmHelper::RotateY(dir, glm::radians((float)(rand() % 360)));
|
GlmHelper::RotateY(dir, glm::radians((float)(rand() % 360)));
|
||||||
pos.AddGlmVec3(dir * (float)a8::RandEx(10, 100));
|
pos.AddGlmVec3(dir * (float)a8::RandEx(10, 100));
|
||||||
|
#ifdef MYDEBUG
|
||||||
|
a8::XPrintf("RandPoint wo_meta:%d pos:%d %d %d\n",
|
||||||
|
{
|
||||||
|
(long long)((char*)wo_meta.get()),
|
||||||
|
pos.GetX(),
|
||||||
|
pos.GetY(),
|
||||||
|
pos.GetZ()
|
||||||
|
});
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
pos.SetX(5120.000000000000);
|
pos.SetX(5120.000000000000);
|
||||||
|
@ -2080,6 +2080,9 @@ void Human::PushJoinRoomMsg()
|
|||||||
void Human::ReJoin(long ip_saddr, int socket_handle, std::shared_ptr<cs::CMJoin> msg,
|
void Human::ReJoin(long ip_saddr, int socket_handle, std::shared_ptr<cs::CMJoin> msg,
|
||||||
std::shared_ptr<MobaBattle> p)
|
std::shared_ptr<MobaBattle> p)
|
||||||
{
|
{
|
||||||
|
if (!IsPlayer()) {
|
||||||
|
abort();
|
||||||
|
}
|
||||||
this->ip_saddr = ip_saddr;
|
this->ip_saddr = ip_saddr;
|
||||||
this->socket_handle = socket_handle;
|
this->socket_handle = socket_handle;
|
||||||
room->frame_event.AddEnterGame(GetWeakPtrRef());
|
room->frame_event.AddEnterGame(GetWeakPtrRef());
|
||||||
@ -2090,8 +2093,21 @@ void Human::ReJoin(long ip_saddr, int socket_handle, std::shared_ptr<cs::CMJoin>
|
|||||||
PushJoinRoomMsg();
|
PushJoinRoomMsg();
|
||||||
RefreshView();
|
RefreshView();
|
||||||
room->NotifyUiUpdate();
|
room->NotifyUiUpdate();
|
||||||
|
PlayerMgr::Instance()->ReBindSocket(AsPlayer());
|
||||||
if (room->IsMobaModeRoom()) {
|
if (room->IsMobaModeRoom()) {
|
||||||
SendMobaTeamNotify();
|
room->xtimer.SetIntervalEx
|
||||||
|
(SERVER_FRAME_RATE,
|
||||||
|
[this] (int event, const a8::Args* args)
|
||||||
|
{
|
||||||
|
if (a8::TIMER_EXEC_EVENT == event) {
|
||||||
|
if (!room->IsGameOver() && room->GetGasData().GetGasMode() == GasInactive) {
|
||||||
|
SendMobaTeamNotify();
|
||||||
|
} else {
|
||||||
|
room->xtimer.DeleteCurrentTimer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
&xtimer_attacher);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2436,7 +2452,8 @@ int Room::InitWithMobaBattle(long ip_saddr, int socket_handle, std::shared_ptr<c
|
|||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
int side = a8::RandEx(1, 2);
|
//int side = a8::RandEx(1, 2);
|
||||||
|
int side = 1;
|
||||||
for (size_t i = 0; i < 2; ++i) {
|
for (size_t i = 0; i < 2; ++i) {
|
||||||
auto team = room_teams.at(i);
|
auto team = room_teams.at(i);
|
||||||
if (team->GetMemberNum() < MAX_TEAM_NUM) {
|
if (team->GetMemberNum() < MAX_TEAM_NUM) {
|
||||||
@ -2450,11 +2467,12 @@ int Room::InitWithMobaBattle(long ip_saddr, int socket_handle, std::shared_ptr<c
|
|||||||
hum->born_point->wo_meta = std::get<0>(GetMapMeta()->moba_born_points.at(side - 1));
|
hum->born_point->wo_meta = std::get<0>(GetMapMeta()->moba_born_points.at(side - 1));
|
||||||
hum->InitMobaRoad();
|
hum->InitMobaRoad();
|
||||||
#ifdef MYDEBUG
|
#ifdef MYDEBUG
|
||||||
a8::XPrintf("moba init uniid:%d team_id:%d side:%d\n",
|
a8::XPrintf("moba init uniid:%d team_id:%d side:%d wo_meta:%d\n",
|
||||||
{
|
{
|
||||||
hum->GetUniId(),
|
hum->GetUniId(),
|
||||||
hum->GetTeam()->GetTeamId(),
|
hum->GetTeam()->GetTeamId(),
|
||||||
hum->side
|
hum->side,
|
||||||
|
hum->born_point->wo_meta.get()
|
||||||
});
|
});
|
||||||
#endif
|
#endif
|
||||||
return true;
|
return true;
|
||||||
|
@ -349,7 +349,7 @@ void Room::AddPlayer(Player* hum, std::shared_ptr<BornPoint> init_born_point, bo
|
|||||||
acc_inactive_time_ += GetGasInactiveReaminTime() - 2;
|
acc_inactive_time_ += GetGasInactiveReaminTime() - 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#if 1
|
#if 0
|
||||||
if (IsMobaModeRoom()) {
|
if (IsMobaModeRoom()) {
|
||||||
//hum->side = a8::RandEx(1, 2);
|
//hum->side = a8::RandEx(1, 2);
|
||||||
hum->side = 1;
|
hum->side = 1;
|
||||||
|
@ -838,7 +838,7 @@ void RoomMgr::AdjustCMJoin(cs::CMJoin* msg)
|
|||||||
const mt::Map* map_meta = mt::Map::GetById(msg->mapid());
|
const mt::Map* map_meta = mt::Map::GetById(msg->mapid());
|
||||||
if (map_meta && map_meta->is_moba()) {
|
if (map_meta && map_meta->is_moba()) {
|
||||||
msg->set_room_mode(kMobaMode);
|
msg->set_room_mode(kMobaMode);
|
||||||
#if 0
|
#if 1
|
||||||
{
|
{
|
||||||
auto data = a8::MutableXObject::CreateObject();
|
auto data = a8::MutableXObject::CreateObject();
|
||||||
data->SetVal("zone_id", 1);
|
data->SetVal("zone_id", 1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user