diff --git a/server/gameserver/metadata.cc b/server/gameserver/metadata.cc index 512831fd..8f9a2e39 100644 --- a/server/gameserver/metadata.cc +++ b/server/gameserver/metadata.cc @@ -1625,4 +1625,24 @@ namespace MetaData return up_limit; } + void PveGemini::Init() + { + + } + + float PveGemini::GetHpMul() + { + + } + + void PveGeminiContent::Init() + { + + } + + void PveGeminiMode::Init() + { + + } + } diff --git a/server/gameserver/metadata.h b/server/gameserver/metadata.h index 7a785ae0..6480d209 100644 --- a/server/gameserver/metadata.h +++ b/server/gameserver/metadata.h @@ -388,4 +388,32 @@ namespace MetaData }; + struct PveGemini + { + const metatable::PveGemini* pb = nullptr; + + void Init(); + float GetHpMul(); + + private: + std::vector hp_mul; + }; + + struct PveGeminiContent + { + const metatable::PveGeminiContent* pb = nullptr; + a8::Vec2 spawn_point; + + void Init(); + }; + + struct PveGeminiMode + { + const metatable::PveGeminiMode* pb = nullptr; + std::vector mode_time; + std::vector> area; + + void Init(); + }; + } diff --git a/server/gameserver/metamgr.cc b/server/gameserver/metamgr.cc index 226f854c..f0c0b294 100644 --- a/server/gameserver/metamgr.cc +++ b/server/gameserver/metamgr.cc @@ -1290,3 +1290,19 @@ MetaData::FormulaPvp* MetaMgr::GetFormulaPvp(float ranked_topx) } return last_meta; } + +MetaData::PveGemini* MetaMgr::GetPveGemini(int gemini_id) +{ + return nullptr; +} + +std::vector* MetaMgr::GetPveGeminiContents(int mode_id) +{ + return nullptr; +} + +MetaData::PveGeminiMode* MetaMgr::GetPveGeminiMode(int mode_id) +{ + return nullptr; +} + diff --git a/server/gameserver/metamgr.h b/server/gameserver/metamgr.h index dff24357..3a91e7ca 100644 --- a/server/gameserver/metamgr.h +++ b/server/gameserver/metamgr.h @@ -53,6 +53,9 @@ class MetaMgr : public a8::Singleton MetaData::Dress* RandDress(); MetaData::RankReward* GetRankReward(int rank); MetaData::GunTalentGrow* GetTalent(int talent_id, int talent_lv); + MetaData::PveGemini* GetPveGemini(int gemini_id); + std::vector* GetPveGeminiContents(int mode_id); + MetaData::PveGeminiMode* GetPveGeminiMode(int mode_id); float GetRankRewardParam(int rank); float GetKillRewardParam(int kill_num); int GetRankPointParam1(int rank); diff --git a/server/tools/protobuild/metatable.proto b/server/tools/protobuild/metatable.proto index 9ec2ead9..37c6123b 100755 --- a/server/tools/protobuild/metatable.proto +++ b/server/tools/protobuild/metatable.proto @@ -460,6 +460,31 @@ message FormulaPvp optional float survival_topx = 6; } +message PveGemini +{ + optional int32 gemini_id = 1; + optional int32 gemini_lv = 2; + optional int32 gemini_limit = 3; + optional string multiplayer_enemy_hp_mul = 4; +} + +message PveGeminiContent +{ + optional int32 id = 1; + optional int32 mode_id = 2; + optional int32 round = 3; + optional string spawn_point = 4; + optional int32 enemy_id = 5; +} + +message PveGeminiMode +{ + optional int32 id = 1; + optional string mode_map = 2; + optional string mode_time = 3; + optional string area = 4; +} + //end message DoorObjJson