diff --git a/server/gameserver/app.cc b/server/gameserver/app.cc index 8d59aad..c411388 100755 --- a/server/gameserver/app.cc +++ b/server/gameserver/app.cc @@ -66,14 +66,13 @@ static void SavePerfLog() f8::HttpClientPool::Instance()->GetPendingNum() }); if (App::Instance()->HasFlag(4)) { - a8::XPrintf("mainloop_time:%d netmsg_time:%d room:%d over_room:%d online:%d bullet:%d grid_chg_times:%d test_times:%d send_node_num:%d sent_node_num:%d sent_bytes_num:%d max_user_request_delay:%d\n", + a8::XPrintf("mainloop_time:%d netmsg_time:%d room:%d over_room:%d online:%d grid_chg_times:%d test_times:%d send_node_num:%d sent_node_num:%d sent_bytes_num:%d max_user_request_delay:%d\n", { App::Instance()->perf.max_run_delay_time, App::Instance()->perf.max_dispatchmsg_time, RoomMgr::Instance()->RoomNum(), RoomMgr::Instance()->OverRoomNum(), PlayerMgr::Instance()->OnlineNum(), - App::Instance()->perf.entity_num[ET_Bullet], App::Instance()->perf.grid_chg_times, App::Instance()->perf.test_times, GGListener::Instance()->GetSendNodeNum(), diff --git a/server/gameserver/constant.h b/server/gameserver/constant.h index 123db48..882e3dd 100755 --- a/server/gameserver/constant.h +++ b/server/gameserver/constant.h @@ -34,10 +34,7 @@ enum PlayerState_e enum VirtualItemId_e { - VID_Item_Gold = 50001, - VID_Item_Exp = 50002, - VID_Soul_Stone = 50018, - VID_Pickaxe = 50019 + }; enum SyncData_e @@ -45,95 +42,18 @@ enum SyncData_e SYNC_Data_Exp = 0, }; -enum DoorState_e -{ - DoorStateClose = 0, - DoorStateOpen = 1 -}; - enum GasMode_e { GasInactive = 0, - GasWaiting = 1, - GasMoving = 2, - GasJump = 3 -}; - -enum ActionType_e -{ - AT_None = 0, - AT_Reload = 1, - AT_UseItem = 2, - AT_Relive = 3, - AT_Rescue = 4 -}; - -enum InventorySlot_e -{ - IS_9MM = 0, - IS_556MM = 1, - IS_762MM = 2, - IS_12GAUGE = 3, - IS_RPG = 4, - IS_FRAG = 5, - IS_SMOKE = 6, - IS_HEALTHKIT = 7, //医疗包 - IS_PAIN_KILLER = 8, //止痛药 - - IS_1XSCOPE = 12, - IS_2XSCOPE = 13, - IS_4XSCOPE = 14, - IS_8XSCOPE = 15, - IS_15XSCOPE = 16, - - IS_END -}; - -enum SkillType_e -{ - ST_Hide = 1, - ST_SummonHero = 2, - ST_Accelerate = 3, - ST_DamageAdd = 4, - ST_DefAdd = 5, - ST_RecoverHP = 6, - ST_ReflectDamage = 7, - ST_SelfDetonate = 8 -}; - -enum SkillCond_e -{ - SC_Active = 1, - SC_Passive = 2 -}; - -enum VirtualWeapon_e -{ - VW_SafeArea = 9000000, - VW_Spectate = 9000001, - VW_SelfDetonate = 9000002, - VW_Mine = 9000003, - VW_Tank = 9000004, }; enum VirtualPlayer_e { - VP_SafeArea = 9000000, VP_Spectate = 9000001, - VP_SelfDetonate = 9000002, - VP_Mine = 9000003, }; enum EquipAttr_e { - EA_View = 1, //客户端用 - EA_ShotRange = 2, - EA_Volume = 3, - EA_AutoAngle = 4, //客户端用 - EA_BulletAngle = 5, - EA_Atk = 6, - EA_Def = 7, - EA_Speed = 8, EA_End }; @@ -142,17 +62,7 @@ enum EntityType_e ET_None = 0, ET_Player = 1, ET_Obstacle = 2, - ET_Building = 3, - //ET_LootSpawner = 4, ET_Loot = 5, - //ET_DeadBody = 6, - //ET_Decal = 7, - //ET_Projectile = 8, - ET_Smoke = 9, - ET_Hero = 10, - - ET_Bullet = 20, - ET_Android = 30, ET_MAX }; @@ -166,11 +76,6 @@ enum EntitySubType_e enum PropertyType_e { - kPropHp = 1, - kPropMaxHp = 2, - kPropTankBulletNum = 6, - kPropTankOil = 7, - kPropBulletNum = 8 }; enum MapObjectType_e @@ -186,23 +91,12 @@ const float TEN_W = 10000 * 10; const int SYS_RESET_TIME = 2*60; //每日两点重置 -const int DEF_WEAPON_ID = 12103; - const int SERVER_FRAME_RATE = 20; const int SYNC_FRAME_RATE = 10; const float FRAME_RATE_MS = 1000.0f / SERVER_FRAME_RATE; -const int MAX_WEAPON_NUM = 5; const int MAX_SKIN_LV = 9; -const int GUN_SLOT1 = 1; -const int GUN_SLOT2 = 2; - -const int FRAG_SLOT = 3; -const int SMOKE_SLOT = 4; - -const int DOOR_THING_ID = 61701; - const int FIGHTING_MODE_BULLET_NUM = 10000 * 10000; const int MAX_NODE_ID = 8; diff --git a/server/gameserver/framemaker.cc b/server/gameserver/framemaker.cc index c58f34d..d6a89c3 100644 --- a/server/gameserver/framemaker.cc +++ b/server/gameserver/framemaker.cc @@ -27,10 +27,6 @@ cs::SMUpdate* FrameMaker::MakeUpdateMsg(const Human* hum) for (auto& itr : hum->out_objects) { msg->add_out_objids(itr); } - if (room->gas_data.gas_mode == GasMoving) { - msg->set_gas_progress(room->gas_data.gas_progress); - TypeConvert::ToPb(room->gas_data.pos_old, msg->mutable_gas_pos_old()); - } msg->set_alive_count(room->AliveCount()); } return msg; diff --git a/server/gameserver/global.cc b/server/gameserver/global.cc index 5500a17..f47e348 100755 --- a/server/gameserver/global.cc +++ b/server/gameserver/global.cc @@ -5,10 +5,7 @@ int g_hint_flags = 0; bool Global::IsVirtualItem(int itemid) { - return (itemid == VID_Item_Exp || - itemid == VID_Item_Gold || - itemid == VID_Soul_Stone || - itemid == VID_Pickaxe); + return false; } time_t Global::BetweenDays(time_t time1, time_t time2) @@ -32,7 +29,3 @@ int Global::g_time_zone = 8; bool Global::g_shutdown = false; ColliderComponent* Global::last_collider = nullptr; -bool IsValidSlotId(int slot_id) -{ - return slot_id >= 0 && slot_id < IS_END; -} diff --git a/server/gameserver/global.h b/server/gameserver/global.h index 24604d8..4a6e15b 100755 --- a/server/gameserver/global.h +++ b/server/gameserver/global.h @@ -21,4 +21,3 @@ class Global : public a8::Singleton static ColliderComponent* last_collider; }; -bool IsValidSlotId(int slot_id); diff --git a/server/gameserver/gridservice.cc b/server/gameserver/gridservice.cc index eced762..8acb07c 100644 --- a/server/gameserver/gridservice.cc +++ b/server/gameserver/gridservice.cc @@ -183,11 +183,6 @@ void GridService::RemoveFromGridList(std::set& grid_list, Entity* ent grid->human_list.erase((Human*)entity); } break; - case ET_Bullet: - { - grid->bullet_list.erase((Bullet*)entity); - } - break; default: { grid->entity_list.erase(entity); diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index d3da94c..fba5c11 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -432,17 +432,6 @@ void Human::FindLocation() } } break; - case ET_Building: - { - if (!target || target->entity_type != ET_Building) { - AabbCollider aabb_box; - entity->GetAabbBox(aabb_box); - if (TestCollision(&aabb_box)) { - target = entity; - } - } - } - break; default: break; } @@ -464,9 +453,7 @@ void Human::RefreshView() } for (Entity* entity : cell->entity_list) { switch (entity->entity_type) { - case ET_Building: case ET_Obstacle: - case ET_Hero: case ET_Loot: { AddToNewObjects(entity); @@ -500,9 +487,7 @@ void Human::OnGridListChange(std::set& old_grid_list, for (Entity* entity : cell->entity_list) { if (!room->grid_service.EntityInGridList(entity, old_grid_list)) { switch (entity->entity_type) { - case ET_Building: case ET_Obstacle: - case ET_Hero: case ET_Loot: { AddToNewObjects(entity); @@ -527,9 +512,7 @@ void Human::OnGridListChange(std::set& old_grid_list, for (Entity* entity : cell->entity_list) { if (!room->grid_service.EntityInGridList(entity, grid_list)) { switch (entity->entity_type) { - case ET_Building: case ET_Obstacle: - case ET_Hero: case ET_Loot: { AddOutObjects(entity); @@ -557,25 +540,6 @@ void Human::FillMFGasData(cs::MFGasData* gas_data) long long duration = MetaMgr::Instance()->gas_inactive_time * SERVER_FRAME_RATE - (room->frame_no - room->gas_data.gas_start_frameno); gas_data->set_duration(std::max(duration * 50, (long long)1000) / 1000); - } else if (room->gas_data.gas_mode == GasJump) { - gas_data->set_duration(0); - } else if (room->gas_data.gas_mode == GasMoving) { - if (room->gas_data.new_area_meta->i->shrink_speed() > 0.01f) { - long long duration = (room->gas_data.old_area_meta->i->rad() - room->gas_data.new_area_meta->i->rad()) / - room->gas_data.new_area_meta->i->shrink_speed(); - ++duration; - gas_data->set_duration(++duration); - } else { - gas_data->set_duration(0); - } - } else { - if (room->gas_data.old_area_meta->i->wait_time() <= 0) { - gas_data->set_duration(0); - } else { - long long duration = room->gas_data.old_area_meta->i->wait_time() * 20 - - (room->frame_no - room->gas_data.gas_start_frameno); - gas_data->set_duration(std::max(duration * 50, (long long)1000) / 1000); - } } } @@ -593,9 +557,6 @@ void Human::RecalcBuff() { buff = HumanAbility(); if (skin_meta) { - buff.damage_add += skin_meta->GetAttrValue(skin.skin_lv, EA_Atk); - buff.def_add += skin_meta->GetAttrValue(skin.skin_lv, EA_Def); - buff.speed += skin_meta->GetAttrValue(skin.skin_lv, EA_Speed); } } @@ -612,9 +573,6 @@ void Human::RemoveObserver(Human* observer) void Human::SendUpdateMsg() { if (!follow_target_) { - if (send_msg_times == 0) { - room->FetchBuilding(this); - } cs::MFActivePlayerData* active_player_data_pb = nullptr; if (send_msg_times == 0 || need_sync_active_player) { active_player_data_pb = new cs::MFActivePlayerData(); @@ -625,7 +583,6 @@ void Human::SendUpdateMsg() cs::SMUpdate* msg = room->frame_maker.MakeUpdateMsg(this); if (send_msg_times == 0 || last_sync_gas_frameno < room->gas_data.gas_start_frameno) { last_sync_gas_frameno = room->gas_data.gas_start_frameno; - FillMFGasData(msg->mutable_gas_data()); } bool refreshed_view = false; std::set view_objects; @@ -648,9 +605,7 @@ void Human::SendUpdateMsg() } for (Entity* entity : cell->entity_list) { switch (entity->entity_type) { - case ET_Building: case ET_Obstacle: - case ET_Hero: case ET_Loot: { view_objects.insert(entity); @@ -1006,6 +961,7 @@ void Human::FindLocationWithTarget(Entity* target) room->grid_service.GetAllCellsByXy(pos.x, pos.y, new_grid_list); for (auto& grid : new_grid_list) { for (Entity* entity : grid->entity_list) { + #if 0 switch (entity->entity_type) { case ET_Building: { @@ -1017,6 +973,7 @@ void Human::FindLocationWithTarget(Entity* target) default: break; } + #endif if (building) { break; } diff --git a/server/gameserver/metadata.cc b/server/gameserver/metadata.cc index 738a50c..d4f9f69 100644 --- a/server/gameserver/metadata.cc +++ b/server/gameserver/metadata.cc @@ -61,22 +61,6 @@ namespace MetaData ); } } - { - std::vector strings; - a8::Split(i->volume(), strings, '|'); - for (auto& str : strings) { - std::vector strings2; - a8::Split(str, strings2, ':'); - assert(strings2.size() == 2); - if (strings2.size() >= 2) { - size_t slot = a8::XValue(strings2[0]); - size_t num = a8::XValue(strings2[1]); - if (slot >= 0 && slot < volume.size()){ - volume[slot] = num; - } - } - } - } } void EquipUpgrade::Init() @@ -128,22 +112,6 @@ namespace MetaData void Player::Init() { - { - std::vector strings; - a8::Split(i->volume(), strings, '|'); - for (auto& str : strings) { - std::vector strings2; - a8::Split(str, strings2, ':'); - assert(strings2.size() == 2); - if (strings2.size() >= 2) { - size_t slot = a8::XValue(strings2[0]); - size_t num = a8::XValue(strings2[1]); - if (slot >= 0 && slot < volume.size()){ - volume[slot] = num; - } - } - } - } } void Robot::Init() diff --git a/server/gameserver/metadata.h b/server/gameserver/metadata.h index 8521497..a1dd316 100755 --- a/server/gameserver/metadata.h +++ b/server/gameserver/metadata.h @@ -47,8 +47,6 @@ namespace MetaData const metatable::Equip* i = nullptr; std::vector> bullet_born_offset; - std::array volume = {}; - void Init(); }; @@ -67,8 +65,6 @@ namespace MetaData { const metatable::Player* i = nullptr; - std::array volume = {}; - void Init(); }; diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index a76ae0c..ea9c09a 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -447,11 +447,6 @@ void Room::RemoveObjectLater(Entity* entity) Entity* entity = (Entity*)param.sender.GetUserData(); switch (entity->entity_type) { case ET_Loot: - case ET_Hero: - { - entity->BroadcastDeleteState(); - entity->room->grid_service.DelEntity(entity); - } break; case ET_Player: { @@ -475,15 +470,6 @@ void Room::RemoveObjectLater(Entity* entity) &entity->xtimer_attacher.timer_list_); } -void Room::FetchBuilding(Human* hum) -{ - for (auto& pair : uniid_hash_) { - if (pair.second->entity_type == ET_Building) { - hum->AddToNewObjects(pair.second); - } - } -} - void Room::OnHumanDie(Human* hum) { --alive_count_; @@ -604,17 +590,6 @@ Entity* Room::FindFirstCollisonEntity(const a8::Vec2& aabb_pos, AabbCollider& aa } } break; - case ET_Building: - { - if (!target || target->entity_type != ET_Building) { - AabbCollider building_aabb_box; - entity->GetAabbBox(building_aabb_box); - if (building_aabb_box.IntersectEx(aabb_pos, &aabb_box)) { - target = entity; - } - } - } - break; default: break; } @@ -738,7 +713,9 @@ void Room::UpdateGasInactive() { if (frame_no - gas_data.gas_start_frameno >= MetaMgr::Instance()->gas_inactive_time * SERVER_FRAME_RATE) { + #if 0 gas_data.gas_mode = GasJump; + #endif gas_data.gas_start_frameno = frame_no; if (human_hash_.size() < ROOM_MAX_PLAYER_NUM) { CreateAndroid(ROOM_MAX_PLAYER_NUM - human_hash_.size()); @@ -863,9 +840,6 @@ void Room::AddObjectLater(Entity* entity) auto add_func = [] (const a8::XParams& param) { Entity* entity = (Entity*)param.sender.GetUserData(); - if (entity->entity_type == ET_Bullet) { - entity->room->moveable_hash_[entity->entity_uniid] = entity; - } entity->room->uniid_hash_[entity->entity_uniid] = entity; entity->room->later_add_hash_.erase(entity->entity_uniid); }; diff --git a/server/gameserver/room.h b/server/gameserver/room.h index b8f0d7d..0c8b4de 100644 --- a/server/gameserver/room.h +++ b/server/gameserver/room.h @@ -57,7 +57,6 @@ public: void RemoveObjectLater(Entity* entity); - void FetchBuilding(Human* hum); void FillSMJoinedNotify(Player* self_hum, cs::SMJoinedNotify& msg); void TouchPlayerList(a8::XParams param, diff --git a/server/gameserver/types.h b/server/gameserver/types.h index 8dd76bb..56976ec 100755 --- a/server/gameserver/types.h +++ b/server/gameserver/types.h @@ -31,16 +31,7 @@ namespace cs struct GasData { GasMode_e gas_mode = GasInactive; - a8::Vec2 pos_old; - a8::Vec2 pos_old_bk; - a8::Vec2 pre_pos_old; - a8::Vec2 pos_new; - float rad_old = 0.0f; - float rad_new = 0.0f; - float gas_progress = 0.0f; long long gas_start_frameno = 0; - MetaData::SafeArea* old_area_meta = nullptr; - MetaData::SafeArea* new_area_meta = nullptr; bool is_last_gas = false; }; @@ -80,14 +71,6 @@ struct PlayerStats int rank = 0; }; -struct Plane -{ - a8::Vec2 start_point; - a8::Vec2 end_point; - a8::Vec2 dir; - a8::Vec2 curr_pos; -}; - struct HumanAbility { float speed = 0.0f; diff --git a/server/tools/protobuild/cs_proto.proto b/server/tools/protobuild/cs_proto.proto index 05ddf73..6a015f3 100755 --- a/server/tools/protobuild/cs_proto.proto +++ b/server/tools/protobuild/cs_proto.proto @@ -429,9 +429,6 @@ message SMUpdate optional int32 active_player_id = 5; //当前活跃玩家id(如果玩家死亡后是观战对象的id) optional MFActivePlayerData active_player_data = 6; //活跃玩家数据(如果玩家死亡后是观战对象的数据) optional int32 alive_count = 15; //存活数量 - optional int32 gas_progress = 16; //毒圈进度,表示缩进的像素数(只有当gas_data.mode == moving时才会发进度) - optional MFVector2D gas_pos_old = 30; //毒圈当前圆心坐标 - optional MFGasData gas_data = 17; //毒圈数据 repeated MFTeamData team_data = 18; //队伍数据 repeated MFEmote emotes = 23; //表情 }