Adjust protocol structs naming

This commit is contained in:
xeon 2025-03-12 19:01:55 +03:00
parent e512efe106
commit de4bf109ed
21 changed files with 1038 additions and 415 deletions

View file

@ -9,10 +9,10 @@ pub struct FightScene {
}
impl FightScene {
pub fn get_protocol_scene_info(&self) -> trigger_protocol::SceneInfo {
pub fn get_protocol_scene_data(&self) -> trigger_protocol::SceneData {
use trigger_protocol::*;
SceneInfo {
SceneData {
scene_type: 3,
local_play_type: self.play_type.into(),
event_id: self.event_id, // or maybe it's actually scene_id ?

View file

@ -15,10 +15,10 @@ pub enum Scene {
}
impl Scene {
pub fn get_protocol_scene_info(&self) -> trigger_protocol::SceneInfo {
pub fn get_protocol_scene_data(&self) -> trigger_protocol::SceneData {
match self {
Self::Fight(scene) => scene.get_protocol_scene_info(),
Self::Rally(scene) => scene.get_protocol_scene_info(),
Self::Fight(scene) => scene.get_protocol_scene_data(),
Self::Rally(scene) => scene.get_protocol_scene_data(),
}
}

View file

@ -10,10 +10,10 @@ pub struct RallyScene {
}
impl RallyScene {
pub fn get_protocol_scene_info(&self) -> trigger_protocol::SceneInfo {
pub fn get_protocol_scene_data(&self) -> trigger_protocol::SceneData {
use trigger_protocol::*;
SceneInfo {
SceneData {
scene_type: 7,
local_play_type: ELocalPlayType::RallyLongFight.into(),
event_id: self.event_id, // or maybe it's actually scene_id ?

View file

@ -67,8 +67,8 @@ async fn on_change_game_state(
);
let enter_scene_notify = EnterSceneScNotify {
scene_info: Some(game_state.scene.get_protocol_scene_info()),
dungeon_info: Some(game_state.dungeon.get_protocol_dungeon_info()),
scene: Some(game_state.scene.get_protocol_scene_data()),
dungeon: Some(game_state.dungeon.get_protocol_dungeon_info()),
};
session.game_state = Some(game_state);

View file

@ -9,7 +9,7 @@ use scene::SceneModel;
use trigger_database::{entity::*, prelude::*, DatabaseConnection};
use trigger_fileconfig::NapFileCfg;
use trigger_logic::scene::ESceneType;
use trigger_protocol::PlayerBasicInfo;
use trigger_protocol::PlayerInfo;
use trigger_sv::message::GameStateData;
use yorozuya::YorozuyaModel;
@ -126,15 +126,17 @@ impl NapPlayer {
.expect("player_basic_info::update failed");
}
pub fn get_protocol_player_basic_info(&self) -> PlayerBasicInfo {
PlayerBasicInfo {
pub fn get_protocol_player_info(&self) -> PlayerInfo {
PlayerInfo {
nick_name: self.player_basic_info.nick_name.clone(),
level: self.player_basic_info.level as u32,
exp: self.player_basic_info.exp as u32,
avatar_id: self.player_basic_info.avatar_id as u32,
player_avatar_id: self.player_basic_info.player_avatar_id as u32,
control_avatar_id: self.player_basic_info.control_avatar_id as u32,
last_enter_world_timestamp: self.scene_model.last_enter_world_timestamp(),
role_create_time: 0,
name_change_times: 1,
portrait_id: 0,
}
}

View file

@ -138,10 +138,6 @@ impl SceneModel {
.expect("scene_basic_info::find_by_id failed")
}
pub fn last_enter_world_timestamp(&self) -> i64 {
self.player_world_info.last_enter_world_timestamp
}
async fn load_or_create_player_world_info(context: &NapContext) -> player_world_info::Model {
let player_uid = context.player_uid as i32;

View file

@ -12,11 +12,4 @@ mod battle_event_module {
event_info: Some(BattleEventInfo::default()),
}
}
pub async fn on_report_battle_team(
_context: &mut MessageContext<'_, '_>,
_request: ReportBattleTeamCsReq,
) -> ReportBattleTeamScRsp {
ReportBattleTeamScRsp { retcode: 0 }
}
}

View file

@ -1,15 +0,0 @@
use super::MessageContext;
use trigger_codegen::handlers;
#[handlers]
mod fairy_module {
pub async fn on_get_fairy_data(
_context: &mut MessageContext<'_, '_>,
_request: GetFairyDataCsReq,
) -> GetFairyDataScRsp {
GetFairyDataScRsp {
retcode: 0,
data: Some(FairyData::default()),
}
}
}

View file

@ -13,7 +13,7 @@ modules! {
quest,
abyss,
bangboo,
client_systems,
system,
gacha,
mail,
ramen,
@ -22,10 +22,10 @@ modules! {
reward_buff,
arcade,
daily_challenge,
fairy,
tips,
activity,
land_revive,
collections,
workbench,
perform,
battle_event,
vhs_store,
@ -39,8 +39,9 @@ modules! {
camp_idle,
miniscape_entrust,
fishing_contest,
qa_game,
ridus_got_boo,
qa_game
training
}
client_message_forwarding! {

View file

@ -8,13 +8,13 @@ mod player_module {
use crate::logic::avatar_util;
pub async fn on_get_player_basic_info(
pub async fn on_get_player_info(
context: &mut MessageContext<'_, '_>,
_request: GetPlayerBasicInfoCsReq,
) -> GetPlayerBasicInfoScRsp {
GetPlayerBasicInfoScRsp {
_request: GetPlayerInfoCsReq,
) -> GetPlayerInfoScRsp {
GetPlayerInfoScRsp {
retcode: 0,
basic_info: Some(context.player.get_protocol_player_basic_info()),
player_info: Some(context.player.get_protocol_player_info()),
}
}
@ -89,7 +89,7 @@ mod player_module {
.await;
context.add_notify(PlayerSyncScNotify {
basic_info: Some(context.player.get_protocol_player_basic_info()),
player_info: Some(context.player.get_protocol_player_info()),
..Default::default()
});

View file

@ -75,35 +75,6 @@ mod quest_module {
}
}
pub async fn on_begin_training_course_battle(
context: &mut MessageContext<'_, '_>,
request: BeginTrainingCourseBattleCsReq,
) {
let scene_model = &mut context.player.scene_model;
let scene_info = scene_model.create_scene_info(ESceneType::Fight).await;
let dungeon_equip =
dungeon_util::build_dungeon_equip_info(&context.player, &request.avatar_id_list);
context
.session
.change_game_state(
context.request_id,
BeginTrainingCourseBattleScRsp { retcode: 0 },
GameStateData::Fight {
play_type: ELocalPlayType::TrainingRoom.into(),
quest_id: request.quest_id,
buddy_id: request.buddy_id,
avatar_id_list: request.avatar_id_list,
dungeon_equip,
},
&scene_info,
context.player,
true,
)
.await;
}
pub async fn on_begin_archive_battle_quest(
context: &mut MessageContext<'_, '_>,
request: BeginArchiveBattleQuestCsReq,

View file

@ -4,9 +4,10 @@ use trigger_codegen::handlers;
#[handlers]
mod scene_module {
use tracing::debug;
use trigger_logic::scene::ESceneType;
use trigger_logic::scene::{ELocalPlayType, ESceneType};
use trigger_sv::message::GameStateData;
use crate::logic::scene_util;
use crate::logic::{dungeon_util, scene_util};
pub async fn on_enter_world(context: &mut MessageContext<'_, '_>, _request: EnterWorldCsReq) {
let scene_model = &mut context.player.scene_model;
@ -88,6 +89,35 @@ mod scene_module {
}
}
pub async fn on_enter_training_room(
context: &mut MessageContext<'_, '_>,
request: EnterTrainingRoomCsReq,
) {
let scene_model = &mut context.player.scene_model;
let scene_info = scene_model.create_scene_info(ESceneType::Fight).await;
let dungeon_equip =
dungeon_util::build_dungeon_equip_info(&context.player, &request.avatar_id_list);
context
.session
.change_game_state(
context.request_id,
EnterTrainingRoomScRsp { retcode: 0 },
GameStateData::Fight {
play_type: ELocalPlayType::TrainingRoom.into(),
quest_id: request.quest_id,
buddy_id: request.buddy_id,
avatar_id_list: request.avatar_id_list,
dungeon_equip,
},
&scene_info,
context.player,
true,
)
.await;
}
pub async fn on_leave_cur_scene(
context: &mut MessageContext<'_, '_>,
_request: LeaveCurSceneCsReq,

View file

@ -93,24 +93,30 @@ mod client_systems_module {
PlayerOperationScRsp { retcode: 0 }
}
pub async fn on_get_tips_info(
pub async fn on_get_system_settings(
_context: &mut MessageContext<'_, '_>,
_request: GetTipsInfoCsReq,
) -> GetTipsInfoScRsp {
GetTipsInfoScRsp {
request: GetSystemSettingsCsReq,
) -> GetSystemSettingsScRsp {
GetSystemSettingsScRsp {
retcode: 0,
tips_info: Some(TipsInfo::default()),
r#type: request.r#type,
settings: Some(SystemSettings {
systems: Vec::new(),
switch_of_qte: false,
switch_of_story_mode: false,
}),
player_settings_map: HashMap::new(),
}
}
pub async fn on_get_client_systems_data(
pub async fn on_get_unlock_data(
context: &mut MessageContext<'_, '_>,
_request: GetClientSystemsDataCsReq,
) -> GetClientSystemsDataScRsp {
GetClientSystemsDataScRsp {
_request: GetUnlockDataCsReq,
) -> GetUnlockDataScRsp {
GetUnlockDataScRsp {
retcode: 0,
data: Some(ClientSystemsData {
unlock_data: Some(UnlockData {
data: Some(UnlockData {
unlock: Some(UnlockInfo {
unlocked_list: context
.state
.filecfg
@ -122,7 +128,7 @@ mod client_systems_module {
.collect(),
..Default::default()
}),
post_girl_data: Some(PostGirlData {
post_girl: Some(PostGirlInfo {
post_girl_item_list: context
.state
.filecfg
@ -138,7 +144,7 @@ mod client_systems_module {
selected_post_girl_id_list: vec![3510028],
show_random_selected: false,
}),
music_player_data: Some(MusicPlayerData {
music_player: Some(MusicPlayerInfo {
music_list: context
.state
.filecfg
@ -153,7 +159,7 @@ mod client_systems_module {
})
.collect(),
}),
teleport_data: Some(TeleportData {
teleport: Some(TeleportUnlockInfo {
unlocked_list: context
.state
.filecfg

View file

@ -0,0 +1,32 @@
use super::MessageContext;
use trigger_codegen::handlers;
#[handlers]
mod tips_module {
use std::collections::HashMap;
pub async fn on_get_tips_data(
_context: &mut MessageContext<'_, '_>,
_request: GetTipsDataCsReq,
) -> GetTipsDataScRsp {
GetTipsDataScRsp {
retcode: 0,
data: Some(TipsData {
tips: Some(TipsInfo {
tips_list: Vec::new(),
tips_group_list: Vec::new(),
}),
fairy: Some(FairyInfo {
fairy_groups: HashMap::new(),
fairy_record_list: Vec::new(),
}),
popup_window: Some(PopupWindowInfo {
popup_window_list: Vec::new(),
}),
loading_page_tips: Some(LoadingPageTipsInfo {
unlocked_list: Vec::new(),
}),
}),
}
}
}

View file

@ -0,0 +1,19 @@
use super::MessageContext;
use trigger_codegen::handlers;
#[handlers]
mod training_module {
use tracing::info;
pub async fn on_start_training(
_context: &mut MessageContext<'_, '_>,
request: StartTrainingCsReq,
) -> StartTrainingScRsp {
info!("{request:?}");
StartTrainingScRsp {
retcode: 0,
training_uid: 1000000,
}
}
}

View file

@ -2,24 +2,27 @@ use super::MessageContext;
use trigger_codegen::handlers;
#[handlers]
mod collections_module {
pub async fn on_get_collect_map(
mod workbench_module {
pub async fn on_get_workbench_data(
_context: &mut MessageContext<'_, '_>,
_request: GetCollectMapCsReq,
) -> GetCollectMapScRsp {
GetCollectMapScRsp {
_request: GetWorkbenchDataCsReq,
) -> GetWorkbenchDataScRsp {
GetWorkbenchDataScRsp {
retcode: 0,
collect_map: Some(CollectMap::default()),
workbench_data: Some(WorkbenchData {
workbench_app_list: vec![1, 2, 3, 4, 5],
clue_data: Some(ClueData::default()),
}),
}
}
pub async fn on_workbench_get_data(
pub async fn on_get_partner_data(
_context: &mut MessageContext<'_, '_>,
_request: WorkbenchGetDataCsReq,
) -> WorkbenchGetDataScRsp {
WorkbenchGetDataScRsp {
_request: GetPartnerDataCsReq,
) -> GetPartnerDataScRsp {
GetPartnerDataScRsp {
retcode: 0,
workbench_data: Some(WorkbenchData::default()),
partner_data: Some(PartnerData::default()),
}
}

View file

@ -137,12 +137,12 @@ pub fn notify_enter_scene(
}
listener.add(EnterSceneScNotify {
scene_info: Some(SceneInfo {
scene: Some(SceneData {
scene_type: ESceneType::Hall as u32,
hall_scene_info: Some(hall_scene_info),
..Default::default()
}),
dungeon_info: None,
dungeon: None,
});
}
}

View file

@ -21,6 +21,7 @@ pub enum ESceneType {
Fight = 3,
Fresh = 4,
MultiFight = 5,
TrainingRoom = 6,
Rally = 7,
}

View file

@ -12,13 +12,16 @@ pub struct GetRewardBuffDataScRsp {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PlayerBasicInfo {
pub struct PlayerInfo {
#[xor(15327)]
#[prost(uint32, tag = "9")]
pub level: u32,
#[xor(3181)]
#[prost(uint32, tag = "8")]
pub name_change_times: u32,
#[xor(3247)]
#[prost(int64, tag = "2")]
pub last_enter_world_timestamp: i64,
pub role_create_time: i64,
#[xor(9120)]
#[prost(uint32, tag = "12")]
pub avatar_id: u32,
@ -28,6 +31,9 @@ pub struct PlayerBasicInfo {
#[xor(8142)]
#[prost(uint32, tag = "1658")]
pub control_avatar_id: u32,
#[xor(13432)]
#[prost(uint32, tag = "7")]
pub portrait_id: u32,
#[prost(string, tag = "11")]
pub nick_name: ::prost::alloc::string::String,
#[xor(9818)]
@ -112,6 +118,13 @@ pub struct DressedEquip {
pub equip_uid: u32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LoadingPageTipsInfo {
#[prost(int32, repeated, tag = "12")]
pub unlocked_list: ::prost::alloc::vec::Vec<i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(4672)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
@ -137,7 +150,7 @@ pub struct AvatarSkillLevel {
#[cmdid(2764)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetCollectMapCsReq {}
pub struct GetPartnerDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
@ -165,7 +178,7 @@ pub struct EndBattleCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PostGirlData {
pub struct PostGirlInfo {
#[prost(uint32, repeated, tag = "7")]
pub selected_post_girl_id_list: ::prost::alloc::vec::Vec<u32>,
#[prost(message, repeated, tag = "6")]
@ -225,9 +238,16 @@ pub struct HallSceneInfo {
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct EnterSceneScNotify {
#[prost(message, optional, tag = "10")]
pub scene_info: ::core::option::Option<SceneInfo>,
pub scene: ::core::option::Option<SceneData>,
#[prost(message, optional, tag = "9")]
pub dungeon_info: ::core::option::Option<DungeonInfo>,
pub dungeon: ::core::option::Option<DungeonInfo>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PerformInfo {
#[prost(uint32, repeated, tag = "11")]
pub perform_id_list: ::prost::alloc::vec::Vec<u32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(499)]
@ -345,9 +365,9 @@ pub struct DressEquipmentCsReq {
#[cmdid(6803)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetFairyDataScRsp {
pub struct GetTipsDataScRsp {
#[prost(message, optional, tag = "7")]
pub data: ::core::option::Option<FairyData>,
pub data: ::core::option::Option<TipsData>,
#[xor(3416)]
#[prost(int32, tag = "6")]
pub retcode: i32,
@ -478,6 +498,19 @@ pub struct GetBuddyDataScRsp {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TipsSync {
#[prost(int32, repeated, tag = "13")]
pub tips_group_list: ::prost::alloc::vec::Vec<i32>,
#[prost(uint32, repeated, tag = "6")]
pub popup_window_list: ::prost::alloc::vec::Vec<u32>,
#[prost(int32, repeated, tag = "7")]
pub tips_list: ::prost::alloc::vec::Vec<i32>,
#[prost(map = "int32, enumeration(FairyState)", tag = "4")]
pub fairy_groups: ::std::collections::HashMap<i32, i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Transform {
#[prost(double, repeated, tag = "1")]
pub position: ::prost::alloc::vec::Vec<f64>,
@ -530,7 +563,7 @@ pub struct RallySceneInfo {
#[cmdid(4158)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetPlayerBasicInfoCsReq {}
pub struct GetPlayerInfoCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(4021)]
#[derive(trigger_protobuf_derive::XorFields)]
@ -566,9 +599,12 @@ pub struct FinishArchivePerformScRsp {
#[cmdid(6778)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReportBattleTeamCsReq {
pub struct StartTrainingCsReq {
#[prost(int32, repeated, tag = "3")]
pub avatar_list: ::prost::alloc::vec::Vec<i32>,
#[xor(6606)]
#[prost(int32, tag = "9")]
pub special_training_index: i32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(744)]
@ -592,10 +628,22 @@ pub struct StartHollowQuestCsReq {
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetWebActivityDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(1149)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct EndTrainingCsReq {
#[xor(15023)]
#[prost(int32, tag = "4")]
pub special_training_index: i32,
#[xor(4240)]
#[prost(int64, tag = "5")]
pub training_uid: i64,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(358)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct WorkbenchGetDataCsReq {}
pub struct GetWorkbenchDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(5494)]
#[derive(trigger_protobuf_derive::XorFields)]
@ -612,6 +660,19 @@ pub struct AbyssGetDataScRsp {
pub abyss_group_list: ::prost::alloc::vec::Vec<AbyssGroup>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct VhsGuestInfo {
#[xor(2834)]
#[prost(int32, tag = "2")]
pub guest_id: i32,
#[xor(7940)]
#[prost(uint32, tag = "3")]
pub guest_type: u32,
#[prost(bool, tag = "7")]
pub has_guest: bool,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(7852)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
@ -664,6 +725,15 @@ pub struct StartHollowQuestScRsp {
pub retcode: i32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TipsInfo {
#[prost(int32, repeated, tag = "12")]
pub tips_group_list: ::prost::alloc::vec::Vec<i32>,
#[prost(int32, repeated, tag = "15")]
pub tips_list: ::prost::alloc::vec::Vec<i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(2708)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
@ -692,7 +762,7 @@ pub struct GetRewardBuffDataCsReq {}
#[cmdid(8186)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BeginTrainingCourseBattleCsReq {
pub struct EnterTrainingRoomCsReq {
#[xor(8200)]
#[prost(uint32, tag = "5")]
pub quest_id: u32,
@ -717,6 +787,24 @@ pub struct QuestCollection {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct PopupWindowInfo {
#[prost(uint32, repeated, tag = "4")]
pub popup_window_list: ::prost::alloc::vec::Vec<u32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(8963)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetVhsStoreDataScRsp {
#[xor(4520)]
#[prost(int32, tag = "12")]
pub retcode: i32,
#[prost(message, optional, tag = "11")]
pub data: ::core::option::Option<VhsStoreData>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ItemSync {
#[prost(message, repeated, tag = "6")]
pub material_list: ::prost::alloc::vec::Vec<Material>,
@ -1015,7 +1103,7 @@ pub struct GetQuestDataCsReq {
#[cmdid(2325)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetTipsInfoCsReq {
pub struct GetSystemSettingsCsReq {
#[xor(12773)]
#[prost(uint32, tag = "12")]
pub r#type: u32,
@ -1128,24 +1216,28 @@ pub struct GetQuestionsAnswerGameDataCsReq {}
#[cmdid(4174)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetClientSystemsDataScRsp {
pub struct GetUnlockDataScRsp {
#[xor(2530)]
#[prost(int32, tag = "3")]
pub retcode: i32,
#[prost(message, optional, tag = "6")]
pub data: ::core::option::Option<ClientSystemsData>,
pub data: ::core::option::Option<UnlockData>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(6645)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetTipsInfoScRsp {
pub struct GetSystemSettingsScRsp {
#[xor(11676)]
#[prost(uint32, tag = "10")]
pub r#type: u32,
#[xor(10864)]
#[prost(int32, tag = "5")]
pub retcode: i32,
#[prost(map = "uint32, uint32", tag = "15")]
pub player_settings_map: ::std::collections::HashMap<u32, u32>,
#[prost(message, optional, tag = "12")]
pub settings: ::core::option::Option<SystemSettings>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(1087)]
@ -1219,6 +1311,14 @@ pub struct PlayerGetTokenScRsp {
pub sign: ::prost::alloc::string::String,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PromoterInfo {
#[xor(10809)]
#[prost(uint32, tag = "11")]
pub id: u32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(3631)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
@ -1299,6 +1399,13 @@ pub struct SyncEventInfoScNotify {
pub owner_type: i32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VhsFlowInfo {
#[prost(message, repeated, tag = "9")]
pub buff_list: ::prost::alloc::vec::Vec<VhsFlowBuffInfo>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(9161)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
@ -1354,18 +1461,25 @@ pub struct GetFashionStoreDataCsReq {}
#[cmdid(7302)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetPlayerBasicInfoScRsp {
pub struct GetPlayerInfoScRsp {
#[xor(4333)]
#[prost(int32, tag = "10")]
pub retcode: i32,
#[prost(message, optional, tag = "8")]
pub basic_info: ::core::option::Option<PlayerBasicInfo>,
pub player_info: ::core::option::Option<PlayerInfo>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct VhsFlowBuffInfo {
#[prost(enumeration = "VhsFlowBuffSource", tag = "3")]
pub buff_source: i32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(6289)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetClientSystemsDataCsReq {}
pub struct GetUnlockDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(2111)]
#[derive(trigger_protobuf_derive::XorFields)]
@ -1378,15 +1492,19 @@ pub struct GetChatEmojiListScRsp {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ClientSystemsData {
pub struct UnlockData {
#[prost(message, optional, tag = "1")]
pub post_girl_data: ::core::option::Option<PostGirlData>,
pub post_girl: ::core::option::Option<PostGirlInfo>,
#[prost(message, optional, tag = "14")]
pub unlock_data: ::core::option::Option<UnlockData>,
pub unlock: ::core::option::Option<UnlockInfo>,
#[prost(message, optional, tag = "10")]
pub teleport_data: ::core::option::Option<TeleportData>,
pub teleport: ::core::option::Option<TeleportUnlockInfo>,
#[prost(message, optional, tag = "2")]
pub hollow_event: ::core::option::Option<HollowEventUnlockInfo>,
#[prost(message, optional, tag = "8")]
pub music_player_data: ::core::option::Option<MusicPlayerData>,
pub music_player: ::core::option::Option<MusicPlayerInfo>,
#[prost(message, optional, tag = "4")]
pub perform: ::core::option::Option<PerformInfo>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(2014)]
@ -1419,7 +1537,7 @@ pub struct GetActivityDataCsReq {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UnlockData {
pub struct UnlockInfo {
#[prost(int32, repeated, tag = "13")]
pub unlocked_list: ::prost::alloc::vec::Vec<i32>,
}
@ -1496,6 +1614,18 @@ pub struct GetCafeDataScRsp {
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PlayerLogoutCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VhsStoreOpenInfo {
#[prost(message, optional, tag = "4")]
pub cur_promoter: ::core::option::Option<PromoterInfo>,
#[prost(int32, repeated, tag = "13")]
pub vhs_collection_id_list: ::prost::alloc::vec::Vec<i32>,
#[xor(3569)]
#[prost(int64, tag = "3")]
pub setup_time: i64,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(6280)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
@ -1556,7 +1686,7 @@ pub struct GetMonthCardRewardListCsReq {}
#[cmdid(4783)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct GetFairyDataCsReq {}
pub struct GetTipsDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(3591)]
#[derive(trigger_protobuf_derive::XorFields)]
@ -1623,6 +1753,13 @@ pub struct PlayerGetTokenCsReq {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct HollowEventUnlockInfo {
#[prost(int32, repeated, tag = "3")]
pub unlocked_list: ::prost::alloc::vec::Vec<i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DungeonEquipInfo {
#[prost(message, repeated, tag = "15")]
pub equip_list: ::prost::alloc::vec::Vec<Equip>,
@ -1657,7 +1794,9 @@ pub struct PlayerSyncScNotify {
#[prost(message, optional, tag = "2")]
pub avatar_sync: ::core::option::Option<AvatarSync>,
#[prost(message, optional, tag = "5")]
pub basic_info: ::core::option::Option<PlayerBasicInfo>,
pub player_info: ::core::option::Option<PlayerInfo>,
#[prost(message, optional, tag = "13")]
pub tips: ::core::option::Option<TipsSync>,
#[prost(message, optional, tag = "1")]
pub item_sync: ::core::option::Option<ItemSync>,
}
@ -1748,6 +1887,18 @@ pub struct UpdateEventGraphScNotify {
pub event_graph_uid: u32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(2753)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct StartTrainingScRsp {
#[xor(9872)]
#[prost(int64, tag = "15")]
pub training_uid: i64,
#[xor(1222)]
#[prost(int32, tag = "13")]
pub retcode: i32,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(7975)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
@ -1777,11 +1928,20 @@ pub struct GetDisplayCaseDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TeleportData {
pub struct TeleportUnlockInfo {
#[prost(int32, repeated, tag = "8")]
pub unlocked_list: ::prost::alloc::vec::Vec<i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FairyInfo {
#[prost(map = "int32, enumeration(FairyState)", tag = "10")]
pub fairy_groups: ::std::collections::HashMap<i32, i32>,
#[prost(int32, repeated, tag = "14")]
pub fairy_record_list: ::prost::alloc::vec::Vec<i32>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[cmdid(5659)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
@ -1805,6 +1965,37 @@ pub struct ClickHollowSystemCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VhsStoreData {
#[xor(2629)]
#[prost(uint32, tag = "4")]
pub store_level: u32,
#[prost(int32, repeated, tag = "3")]
pub unlock_collection_id_list: ::prost::alloc::vec::Vec<i32>,
#[prost(message, optional, tag = "13")]
pub vhs_store_open_info: ::core::option::Option<VhsStoreOpenInfo>,
#[prost(map = "uint32, message", tag = "10")]
pub promoter_info_map: ::std::collections::HashMap<u32, PromoterInfo>,
#[prost(message, optional, tag = "2")]
pub vhs_guest_info: ::core::option::Option<VhsGuestInfo>,
#[prost(message, optional, tag = "1")]
pub vhs_flow_info: ::core::option::Option<VhsFlowInfo>,
#[prost(bool, tag = "8")]
pub is_need_refresh: bool,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SystemSettings {
#[prost(uint32, repeated, tag = "1")]
pub systems: ::prost::alloc::vec::Vec<u32>,
#[prost(bool, tag = "7")]
pub switch_of_story_mode: bool,
#[prost(bool, tag = "6")]
pub switch_of_qte: bool,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QuestInfo {
#[xor(5460)]
#[prost(uint32, tag = "14")]
@ -1861,7 +2052,7 @@ pub struct MusicPlayerItem {
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SceneInfo {
pub struct SceneData {
#[prost(message, optional, tag = "11")]
pub hall_scene_info: ::core::option::Option<HallSceneInfo>,
#[xor(10113)]
@ -1896,11 +2087,20 @@ pub struct GetWeaponDataCsReq {}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct FairyData {}
pub struct TipsData {
#[prost(message, optional, tag = "5")]
pub tips: ::core::option::Option<TipsInfo>,
#[prost(message, optional, tag = "7")]
pub fairy: ::core::option::Option<FairyInfo>,
#[prost(message, optional, tag = "10")]
pub loading_page_tips: ::core::option::Option<LoadingPageTipsInfo>,
#[prost(message, optional, tag = "9")]
pub popup_window: ::core::option::Option<PopupWindowInfo>,
}
#[derive(trigger_protobuf_derive::CmdID)]
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MusicPlayerData {
pub struct MusicPlayerInfo {
#[prost(message, repeated, tag = "3")]
pub music_list: ::prost::alloc::vec::Vec<MusicPlayerItem>,
}
@ -5925,26 +6125,26 @@ impl Ilojlciaack {
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Eifoghmicik {
Cldigdhookf = 0,
Fjookhinkdm = 1,
pub enum FairyState {
EifoghmicikCldigdhookf = 0,
EifoghmicikFjookhinkdm = 1,
}
impl Eifoghmicik {
impl FairyState {
/// String value of the enum field names used in the ProtoBuf definition.
///
/// The values are not transformed in any way and thus are considered stable
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Cldigdhookf => "EIFOGHMICIK_CLDIGDHOOKF",
Self::Fjookhinkdm => "EIFOGHMICIK_FJOOKHINKDM",
Self::EifoghmicikCldigdhookf => "EIFOGHMICIK_CLDIGDHOOKF",
Self::EifoghmicikFjookhinkdm => "EIFOGHMICIK_FJOOKHINKDM",
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"EIFOGHMICIK_CLDIGDHOOKF" => Some(Self::Cldigdhookf),
"EIFOGHMICIK_FJOOKHINKDM" => Some(Self::Fjookhinkdm),
"EIFOGHMICIK_CLDIGDHOOKF" => Some(Self::EifoghmicikCldigdhookf),
"EIFOGHMICIK_FJOOKHINKDM" => Some(Self::EifoghmicikFjookhinkdm),
_ => None,
}
}
@ -17299,27 +17499,33 @@ impl Fgchgkjflpl {
#[derive(trigger_protobuf_derive::XorFields)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum Amnemeaehhp {
VhsFlowBuffSourceNone = 0,
VhsFlowBuffSourceQuest = 1,
pub enum VhsFlowBuffSource {
AmnemeaehhpVhsFlowBuffSourceNone = 0,
AmnemeaehhpVhsFlowBuffSourceQuest = 1,
}
impl Amnemeaehhp {
impl VhsFlowBuffSource {
/// String value of the enum field names used in the ProtoBuf definition.
///
/// The values are not transformed in any way and thus are considered stable
/// (if the ProtoBuf definition does not change) and safe for programmatic use.
pub fn as_str_name(&self) -> &'static str {
match self {
Self::VhsFlowBuffSourceNone => "AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_NONE",
Self::VhsFlowBuffSourceQuest => "AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_QUEST",
Self::AmnemeaehhpVhsFlowBuffSourceNone => {
"AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_NONE"
}
Self::AmnemeaehhpVhsFlowBuffSourceQuest => {
"AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_QUEST"
}
}
}
/// Creates an enum from field names used in the ProtoBuf definition.
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_NONE" => Some(Self::VhsFlowBuffSourceNone),
"AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_NONE" => {
Some(Self::AmnemeaehhpVhsFlowBuffSourceNone)
}
"AMNEMEAEHHP_VHS_FLOW_BUFF_SOURCE_QUEST" => {
Some(Self::VhsFlowBuffSourceQuest)
Some(Self::AmnemeaehhpVhsFlowBuffSourceQuest)
}
_ => None,
}

File diff suppressed because it is too large Load diff

View file

@ -30,24 +30,26 @@ where
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1)]
pub struct GetPlayerBasicInfoCsReq {}
pub struct GetPlayerInfoCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PlayerBasicInfo {
pub struct PlayerInfo {
pub nick_name: String,
pub level: u32,
pub exp: u32,
pub avatar_id: u32,
pub player_avatar_id: u32,
pub role_create_time: i64,
pub name_change_times: u32,
pub portrait_id: u32,
pub control_avatar_id: u32,
pub last_enter_world_timestamp: i64,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2)]
pub struct GetPlayerBasicInfoScRsp {
pub struct GetPlayerInfoScRsp {
pub retcode: i32,
pub basic_info: Option<PlayerBasicInfo>,
pub player_info: Option<PlayerInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
@ -145,7 +147,7 @@ pub struct CafeSync {
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(100)]
pub struct PlayerSyncScNotify {
pub basic_info: Option<PlayerBasicInfo>,
pub player_info: Option<PlayerInfo>,
pub avatar_sync: Option<AvatarSync>,
pub item_sync: Option<ItemSync>,
pub ramen_sync: Option<RamenSync>,
@ -261,7 +263,7 @@ pub struct Transform {
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct SceneInfo {
pub struct SceneData {
pub scene_type: u32,
pub event_id: u32,
pub local_play_type: u32,
@ -392,8 +394,8 @@ pub struct EnterWorldScRsp {
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(452)]
pub struct EnterSceneScNotify {
pub scene_info: Option<SceneInfo>,
pub dungeon_info: Option<DungeonInfo>,
pub scene: Option<SceneData>,
pub dungeon: Option<DungeonInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
@ -695,7 +697,7 @@ pub struct GetPrivateMessageDataScRsp {
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(640)]
pub struct BeginTrainingCourseBattleCsReq {
pub struct EnterTrainingRoomCsReq {
pub quest_id: u32,
pub buddy_id: u32,
pub avatar_id_list: Vec<u32>,
@ -703,7 +705,7 @@ pub struct BeginTrainingCourseBattleCsReq {
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(641)]
pub struct BeginTrainingCourseBattleScRsp {
pub struct EnterTrainingRoomScRsp {
pub retcode: i32,
}
@ -1052,7 +1054,7 @@ pub struct EatRamenScRsp {
// Client systems
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct UnlockData {
pub struct UnlockInfo {
pub unlocked_list: Vec<i32>,
}
@ -1063,7 +1065,7 @@ pub struct PostGirlItem {
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PostGirlData {
pub struct PostGirlInfo {
pub post_girl_item_list: Vec<PostGirlItem>,
pub selected_post_girl_id_list: Vec<u32>,
pub show_random_selected: bool,
@ -1077,21 +1079,61 @@ pub struct MusicPlayerItem {
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct MusicPlayerData {
pub struct MusicPlayerInfo {
pub music_list: Vec<MusicPlayerItem>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct TeleportData {
pub struct TeleportUnlockInfo {
pub unlocked_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct ClientSystemsData {
pub unlock_data: Option<UnlockData>,
pub post_girl_data: Option<PostGirlData>,
pub teleport_data: Option<TeleportData>,
pub music_player_data: Option<MusicPlayerData>,
pub struct NewbieInfo {
pub unlocked_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PerformInfo {
pub perform_id_list: Vec<u32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct HollowEventUnlockInfo {
pub unlock_map: Vec<i32>,
pub new_unlock_map: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct HollowCardUnlockInfo {
pub unlock_map: Vec<i32>,
pub new_unlock_map: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct HollowItemUnlockInfo {
pub unlock_map: Vec<i32>,
pub new_unlock_map: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct CurseUnlockInfo {
pub unlock_map: Vec<i32>,
pub new_unlock_map: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct UnlockData {
pub unlock: Option<UnlockInfo>,
pub newbie: Option<NewbieInfo>,
pub perform: Option<PerformInfo>,
pub hollow_event: Option<HollowEventUnlockInfo>,
pub hollow_card: Option<HollowCardUnlockInfo>,
pub hollow_item: Option<HollowItemUnlockInfo>,
pub curse: Option<CurseUnlockInfo>,
pub teleport: Option<TeleportUnlockInfo>,
pub post_girl: Option<PostGirlInfo>,
pub music_player: Option<MusicPlayerInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
@ -1120,27 +1162,35 @@ pub struct SavePlayerSystemSettingScRsp {
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1305)]
pub struct GetTipsInfoCsReq {}
pub struct GetSystemSettingsCsReq {
pub r#type: u32,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct TipsInfo {}
pub struct SystemSettings {
pub systems: Vec<u32>,
pub switch_of_story_mode: bool,
pub switch_of_qte: bool,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1306)]
pub struct GetTipsInfoScRsp {
pub struct GetSystemSettingsScRsp {
pub retcode: i32,
pub tips_info: Option<TipsInfo>,
pub r#type: u32,
pub settings: Option<SystemSettings>,
pub player_settings_map: HashMap<u32, u32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1307)]
pub struct GetClientSystemsDataCsReq {}
pub struct GetUnlockDataCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1308)]
pub struct GetClientSystemsDataScRsp {
pub struct GetUnlockDataScRsp {
pub retcode: i32,
pub data: Option<ClientSystemsData>,
pub data: Option<UnlockData>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
@ -1300,20 +1350,47 @@ pub struct GetDailyChallengeDataScRsp {
pub data: Option<DailyChallengeData>,
}
// Fairy
// Tips
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1601)]
pub struct GetFairyDataCsReq {}
pub struct GetTipsDataCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct FairyData {}
pub struct TipsInfo {
pub tips_group_list: Vec<i32>,
pub tips_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct FairyInfo {
pub fairy_record_list: Vec<i32>,
pub fairy_groups: HashMap<i32, i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PopupWindowInfo {
pub popup_window_list: Vec<u32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct LoadingPageTipsInfo {
pub unlocked_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct TipsData {
pub tips: Option<TipsInfo>,
pub fairy: Option<FairyInfo>,
pub popup_window: Option<PopupWindowInfo>,
pub loading_page_tips: Option<LoadingPageTipsInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(1602)]
pub struct GetFairyDataScRsp {
pub struct GetTipsDataScRsp {
pub retcode: i32,
pub data: Option<FairyData>,
pub data: Option<TipsData>,
}
// Activity
@ -1386,36 +1463,54 @@ pub struct GetMainCityRevivalDataScRsp {
pub main_city_revival_data: Option<MainCityRevivalData>,
}
// Collections
// Workbench
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2001)]
pub struct GetCollectMapCsReq {}
#[id(2000)]
pub struct GetWorkbenchDataCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct CollectMap {}
pub struct ClueData {
pub unlocked_clue_area_list: Vec<i32>,
pub unlocked_clue_id_list: Vec<i32>,
pub awarded_clue_id_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2002)]
pub struct GetCollectMapScRsp {
pub retcode: i32,
pub collect_map: Option<CollectMap>,
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct WorkbenchData {
pub workbench_app_list: Vec<u32>,
pub clue_data: Option<ClueData>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2021)]
pub struct WorkbenchGetDataCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct WorkbenchData {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2022)]
pub struct WorkbenchGetDataScRsp {
#[id(2001)]
pub struct GetWorkbenchDataScRsp {
pub retcode: i32,
pub workbench_data: Option<WorkbenchData>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2010)]
pub struct GetPartnerDataCsReq {}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PartnerTrustInfo {
pub level: u32,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable)]
pub struct PartnerData {
pub partner_memory_id_list: Vec<u32>,
pub partner_trust_list: Vec<PartnerTrustInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2011)]
pub struct GetPartnerDataScRsp {
pub retcode: i32,
pub partner_data: Option<PartnerData>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2041)]
pub struct GetAbyssRewardDataCsReq {}
@ -1504,6 +1599,20 @@ pub struct PerformEndScRsp {
pub retcode: i32,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2406)]
pub struct StartTrainingCsReq {
pub avatar_list: Vec<i32>,
pub special_training_index: i32,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2407)]
pub struct StartTrainingScRsp {
pub retcode: i32,
pub training_uid: i64,
}
// BattleEvent
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
@ -1520,18 +1629,6 @@ pub struct GetBattleEventInfoScRsp {
pub event_info: Option<BattleEventInfo>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2452)]
pub struct ReportBattleTeamCsReq {
pub avatar_list: Vec<i32>,
}
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]
#[id(2453)]
pub struct ReportBattleTeamScRsp {
pub retcode: i32,
}
// VhsStore
#[derive(Default, Debug, Clone, Encodeable, Decodeable, ClientCmdID)]