[WIP] event graph stuff
implementing EventGraph stuff, currently hardcoded interaction for 10000001 (street to workshop transition)
This commit is contained in:
parent
d196ef861a
commit
c710716fa1
7 changed files with 216 additions and 107 deletions
25
nap_gameserver/src/handlers/event_graph.rs
Normal file
25
nap_gameserver/src/handlers/event_graph.rs
Normal file
|
@ -0,0 +1,25 @@
|
|||
use crate::logic::ENPCInteraction;
|
||||
|
||||
use super::*;
|
||||
|
||||
pub async fn on_run_event_graph(
|
||||
session: &NetSession,
|
||||
_player: &mut Player,
|
||||
req: RunEventGraphCsReq,
|
||||
) -> NetResult<RunEventGraphScRsp> {
|
||||
session
|
||||
.notify(UpdateEventGraphScNotify {
|
||||
owner_type: req.owner_type,
|
||||
hlopenbmegp: req.hlopenbmegp,
|
||||
ddiamibnibg: req.ddiamibnibg,
|
||||
npc_interaction: ENPCInteraction::OnInteract.to_string(),
|
||||
ppabhkhbalm: true,
|
||||
gainclnemhc: req.owner_id,
|
||||
..Default::default()
|
||||
})
|
||||
.await?;
|
||||
|
||||
Ok(RunEventGraphScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
|
@ -9,6 +9,7 @@ mod client_systems;
|
|||
mod collect;
|
||||
mod daily_challenge;
|
||||
mod embattles;
|
||||
mod event_graph;
|
||||
mod fairy;
|
||||
mod friend;
|
||||
mod gacha;
|
||||
|
@ -85,7 +86,7 @@ req_handlers! {
|
|||
character_quest::GetPhotoWallData;
|
||||
month_card::GetMonthCardDayReward;
|
||||
world::EnterWorld;
|
||||
world::EnterSection;
|
||||
world::SyncHallEvent;
|
||||
world::SavePosInMainCity;
|
||||
world::WorldInitFinish;
|
||||
world::AdvanceBeginnerProcedure;
|
||||
|
@ -96,6 +97,7 @@ req_handlers! {
|
|||
world::EndBattle;
|
||||
world::LeaveCurDungeon;
|
||||
world::InteractWithUnit;
|
||||
world::EnterSection;
|
||||
client_systems::ReportUiLayoutPlatform;
|
||||
client_systems::PlayerOperation;
|
||||
client_systems::UnlockNewbieGroup;
|
||||
|
@ -112,6 +114,7 @@ req_handlers! {
|
|||
embattles::ReportBattleTeam;
|
||||
item::WeaponDress;
|
||||
item::WeaponUnDress;
|
||||
event_graph::RunEventGraph;
|
||||
}
|
||||
|
||||
notify_handlers! {
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
use data::tables::{ProcedureConfigID, TrainingQuestID};
|
||||
use data::tables::{ProcedureConfigID, SectionConfigID, TrainingQuestID};
|
||||
|
||||
use super::core::NetError;
|
||||
|
||||
use crate::{
|
||||
logic::{game::*, procedure::ProcedureAction, ELocalPlayType},
|
||||
logic::{game::*, procedure::ProcedureAction, ELocalPlayType, ENPCInteraction},
|
||||
net::NetSessionState,
|
||||
};
|
||||
|
||||
|
@ -122,12 +122,12 @@ pub async fn on_beginner_battle_rebegin(
|
|||
})
|
||||
}
|
||||
|
||||
pub async fn on_enter_section(
|
||||
pub async fn on_sync_hall_event(
|
||||
_session: &NetSession,
|
||||
_player: &mut Player,
|
||||
req: EnterSectionCsReq,
|
||||
) -> NetResult<EnterSectionScRsp> {
|
||||
Ok(EnterSectionScRsp {
|
||||
_req: SyncHallEventCsReq,
|
||||
) -> NetResult<SyncHallEventScRsp> {
|
||||
Ok(SyncHallEventScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
||||
|
@ -205,13 +205,68 @@ pub async fn on_leave_cur_dungeon(
|
|||
}
|
||||
|
||||
pub async fn on_interact_with_unit(
|
||||
_session: &NetSession,
|
||||
session: &NetSession,
|
||||
_player: &mut Player,
|
||||
req: InteractWithUnitCsReq,
|
||||
) -> NetResult<InteractWithUnitScRsp> {
|
||||
use prost::Message;
|
||||
use std::collections::HashMap;
|
||||
|
||||
tracing::info!("interact: {req:?}");
|
||||
|
||||
if req.interaction == 10000001 {
|
||||
session
|
||||
.notify(SyncEventInfoScNotify {
|
||||
owner_id: req.interaction as u32,
|
||||
npc_interaction: ENPCInteraction::OnInteract.to_string(),
|
||||
iddogdegagd: 1,
|
||||
ddiamibnibg: 1,
|
||||
hlopenbmegp: 1,
|
||||
owner_type: EventGraphOwnerType::SceneUnit.into(),
|
||||
nheonpmbhcm: HashMap::from([(String::from("Radius"), 2000)]),
|
||||
action_list: vec![ActionInfo {
|
||||
body: ActionSwitchSection {
|
||||
section: 2,
|
||||
transform: String::from("Workshop_PlayerPos_FromStreet"),
|
||||
camera_x: 1,
|
||||
camera_y: 6000,
|
||||
..Default::default()
|
||||
}
|
||||
.encode_to_vec(),
|
||||
action_type: ActionType::SwitchSection.into(),
|
||||
jdefffbinme: 1,
|
||||
}],
|
||||
..Default::default()
|
||||
})
|
||||
.await?;
|
||||
}
|
||||
|
||||
Ok(InteractWithUnitScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn on_enter_section(
|
||||
session: &NetSession,
|
||||
player: &mut Player,
|
||||
req: EnterSectionCsReq,
|
||||
) -> NetResult<EnterSectionScRsp> {
|
||||
let section_id = SectionConfigID::new(req.section_id).ok_or(Retcode::RetFail)?;
|
||||
|
||||
player.main_city_model.switch_section(section_id);
|
||||
player.init_frontend_game()?;
|
||||
|
||||
let GameInstance::Frontend(frontend_game) = &mut player.game_instance else {
|
||||
unreachable!()
|
||||
};
|
||||
|
||||
frontend_game.set_entry_transform(req.transform);
|
||||
|
||||
session
|
||||
.notify(player.game_instance.create_world_init_notify()?)
|
||||
.await?;
|
||||
|
||||
Ok(EnterSectionScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
||||
|
|
|
@ -114,6 +114,22 @@ impl Display for WeatherType {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
#[repr(u32)]
|
||||
pub enum ENPCInteraction {
|
||||
OnStart = 0,
|
||||
OnEnd = 1,
|
||||
OnInteract = 2,
|
||||
OnAddInteract = 3,
|
||||
OnRemoveInteract = 4,
|
||||
}
|
||||
|
||||
impl Display for ENPCInteraction {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
std::fmt::Debug::fmt(self, f)
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Default, Debug, Clone, Copy)]
|
||||
pub enum ELocalPlayType {
|
||||
TrainingRoom = 290,
|
||||
|
|
|
@ -17,7 +17,7 @@ pub struct FrontendGame {
|
|||
scene_unit_mgr: SceneUnitManager,
|
||||
camera_x: u32,
|
||||
camera_y: u32,
|
||||
born_pos: String,
|
||||
entry_transform: String,
|
||||
main_city_time: MainCityTime,
|
||||
avatar_pos: Vector3f,
|
||||
avatar_rot: Vector3f,
|
||||
|
@ -44,7 +44,7 @@ impl FrontendGame {
|
|||
frontend_avatar_id: avatar_id,
|
||||
camera_x: 0xFFFFFFFF,
|
||||
camera_y: 0xFFFFFFFF,
|
||||
born_pos: section_id.template().primary_entry_name.clone(),
|
||||
entry_transform: section_id.template().primary_entry_name.clone(),
|
||||
avatar_pos,
|
||||
avatar_rot,
|
||||
};
|
||||
|
@ -52,6 +52,10 @@ impl FrontendGame {
|
|||
tracing::info!("creating new frontend game (section={section_id}, avatar={avatar_id})");
|
||||
Ok(instance)
|
||||
}
|
||||
|
||||
pub fn set_entry_transform(&mut self, transform_name: String) {
|
||||
self.entry_transform = transform_name;
|
||||
}
|
||||
}
|
||||
|
||||
impl NapGameMode for FrontendGame {
|
||||
|
@ -63,10 +67,10 @@ impl NapGameMode for FrontendGame {
|
|||
frontend_avatar_id: self.frontend_avatar_id.value(),
|
||||
camera_x: self.camera_x,
|
||||
camera_y: self.camera_y,
|
||||
born_pos: self
|
||||
transform: self
|
||||
.avatar_pos
|
||||
.is_zero()
|
||||
.then_some(self.born_pos.clone())
|
||||
.then_some(self.entry_transform.clone())
|
||||
.unwrap_or_default(),
|
||||
day_of_week: self.main_city_time.day_of_week.value(),
|
||||
time_of_day: self.main_city_time.time_of_day.value(),
|
||||
|
|
|
@ -16,6 +16,12 @@ impl MainCityModel {
|
|||
self.rotation = Vector3f::from_vec(rot);
|
||||
}
|
||||
|
||||
pub fn switch_section(&mut self, id: SectionConfigID) {
|
||||
self.section_id = id;
|
||||
self.position = Vector3f::default();
|
||||
self.rotation = Vector3f::default();
|
||||
}
|
||||
|
||||
pub fn to_bin(&self) -> MainCityModelBin {
|
||||
MainCityModelBin {
|
||||
transform: Some(TransformBin {
|
||||
|
|
|
@ -1875,7 +1875,7 @@ pub struct Mgphbeaojlb {
|
|||
#[prost(message, optional, tag = "1")]
|
||||
pub pgpacjmamgo: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(2306)]
|
||||
|
@ -4001,7 +4001,7 @@ pub struct Bnpkpfadbdd {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct EnterSectionScRsp {
|
||||
pub struct SyncHallEventScRsp {
|
||||
#[xor(2845)]
|
||||
#[prost(int32, tag = "4")]
|
||||
pub retcode: i32,
|
||||
|
@ -4161,7 +4161,7 @@ pub struct Ffglohkafhk {
|
|||
#[prost(uint32, tag = "2")]
|
||||
pub cbkephankbj: u32,
|
||||
#[prost(string, tag = "3")]
|
||||
pub nekidnpibgc: ::prost::alloc::string::String,
|
||||
pub section: ::prost::alloc::string::String,
|
||||
#[prost(bool, tag = "4")]
|
||||
pub dckacgkimaf: bool,
|
||||
#[prost(bool, tag = "5")]
|
||||
|
@ -5158,7 +5158,7 @@ pub struct Lnjaiijoocd {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kphnjohbbln {
|
||||
pub struct RunEventGraphCsReq {
|
||||
#[prost(map = "string, int32", tag = "11")]
|
||||
pub cmpbdjnfdof: ::std::collections::HashMap<::prost::alloc::string::String, i32>,
|
||||
#[prost(message, optional, tag = "1")]
|
||||
|
@ -5166,14 +5166,14 @@ pub struct Kphnjohbbln {
|
|||
#[xor(16302)]
|
||||
#[prost(uint32, tag = "6")]
|
||||
pub ddiamibnibg: u32,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "8")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "8")]
|
||||
pub owner_type: i32,
|
||||
#[xor(4559)]
|
||||
#[prost(uint32, tag = "4")]
|
||||
pub iddogdegagd: u32,
|
||||
#[xor(16099)]
|
||||
#[prost(uint32, tag = "13")]
|
||||
pub cjemchndami: u32,
|
||||
pub owner_id: u32,
|
||||
#[xor(15138)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub section_id: u32,
|
||||
|
@ -5626,7 +5626,7 @@ pub struct Mngbpnpcenf {
|
|||
#[prost(int32, tag = "13")]
|
||||
pub fanammicmmc: i32,
|
||||
#[prost(string, tag = "14")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(bool, tag = "15")]
|
||||
pub ebacaaakoib: bool,
|
||||
#[prost(uint32, tag = "16")]
|
||||
|
@ -6136,7 +6136,7 @@ pub struct Biolbikabjn {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mmgfmcnpiol {
|
||||
#[prost(enumeration = "Jbpilffdhdi", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(enumeration = "Kidabaacfgc", tag = "2")]
|
||||
pub kjoopbmjegm: i32,
|
||||
}
|
||||
|
@ -6254,7 +6254,7 @@ pub struct Pceahabhfim {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kfimjgclcjf {
|
||||
#[prost(int32, tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(string, tag = "2")]
|
||||
pub pdjfnmpapae: ::prost::alloc::string::String,
|
||||
#[prost(enumeration = "Iigohlalleg", tag = "3")]
|
||||
|
@ -6434,21 +6434,21 @@ pub struct Lmdiphnlcki {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Lekmcglgbfp {
|
||||
pub struct SyncEventInfoScNotify {
|
||||
#[prost(map = "string, int32", tag = "9")]
|
||||
pub mmdmplgocoh: ::std::collections::HashMap<::prost::alloc::string::String, i32>,
|
||||
#[prost(string, repeated, tag = "4")]
|
||||
pub bgcopembnij: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
|
||||
#[prost(string, tag = "321")]
|
||||
pub ohdpbakdpca: ::prost::alloc::string::String,
|
||||
pub npc_interaction: ::prost::alloc::string::String,
|
||||
#[xor(4918)]
|
||||
#[prost(uint32, tag = "10")]
|
||||
pub cjemchndami: u32,
|
||||
pub owner_id: u32,
|
||||
#[xor(11767)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub iddogdegagd: u32,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "13")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "13")]
|
||||
pub owner_type: i32,
|
||||
#[prost(map = "string, string", tag = "11")]
|
||||
pub libmaekencd: ::std::collections::HashMap<
|
||||
::prost::alloc::string::String,
|
||||
|
@ -6474,7 +6474,7 @@ pub struct Lekmcglgbfp {
|
|||
::prost::alloc::string::String,
|
||||
>,
|
||||
#[prost(message, repeated, tag = "2")]
|
||||
pub bkjghieamng: ::prost::alloc::vec::Vec<Cbglachhdne>,
|
||||
pub action_list: ::prost::alloc::vec::Vec<ActionInfo>,
|
||||
#[xor(644)]
|
||||
#[prost(uint32, tag = "12")]
|
||||
pub lelbkclbjjj: u32,
|
||||
|
@ -7004,7 +7004,7 @@ pub struct Dmaijgdkofj {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Gcnonkpdnco {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(enumeration = "LayerType", tag = "2")]
|
||||
pub pedjcpehjfb: i32,
|
||||
}
|
||||
|
@ -7020,7 +7020,7 @@ pub struct Llahhbchinb {}
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kkldofipdde {
|
||||
#[prost(string, tag = "2")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub camera_x: u32,
|
||||
#[prost(uint32, tag = "4")]
|
||||
|
@ -7604,7 +7604,7 @@ pub struct Fgjbdleejbg {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ejigoljmmkf {
|
||||
#[prost(string, tag = "1")]
|
||||
pub nekidnpibgc: ::prost::alloc::string::String,
|
||||
pub section: ::prost::alloc::string::String,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(483)]
|
||||
|
@ -8431,11 +8431,11 @@ pub struct Hpdldminljg {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ocieplimdid {
|
||||
pub struct ActionSwitchSection {
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub nekidnpibgc: u32,
|
||||
pub section: u32,
|
||||
#[prost(string, tag = "2")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub camera_x: u32,
|
||||
#[prost(uint32, tag = "4")]
|
||||
|
@ -8464,7 +8464,7 @@ pub struct HallSceneInfo {
|
|||
#[prost(uint32, tag = "2045")]
|
||||
pub lkdgaijoalp: u32,
|
||||
#[prost(string, tag = "1037")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(uint32, repeated, tag = "1182")]
|
||||
pub ieleaepacbc: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(message, repeated, tag = "1")]
|
||||
|
@ -8874,7 +8874,7 @@ pub struct Gpbnbifajda {
|
|||
#[prost(message, optional, tag = "1")]
|
||||
pub ebeghfenelh: ::core::option::Option<StringEntry>,
|
||||
#[prost(string, tag = "2")]
|
||||
pub nekidnpibgc: ::prost::alloc::string::String,
|
||||
pub section: ::prost::alloc::string::String,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub pecaglembjh: bool,
|
||||
}
|
||||
|
@ -10966,7 +10966,7 @@ pub struct Iabebhdjflo {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Fcbikpelkel {
|
||||
#[prost(int32, tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(string, tag = "2")]
|
||||
pub pdjfnmpapae: ::prost::alloc::string::String,
|
||||
#[prost(enumeration = "Iigohlalleg", tag = "3")]
|
||||
|
@ -12144,7 +12144,7 @@ pub struct Apeikaeanjn {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ndlfknabipj {
|
||||
#[prost(enumeration = "TimeSegmentIndexType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fhhhblabjnf: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -12231,9 +12231,9 @@ pub struct Kbjmbgaihhm {
|
|||
#[prost(uint32, tag = "1")]
|
||||
pub jdefffbinme: u32,
|
||||
#[prost(enumeration = "ActionType", tag = "2")]
|
||||
pub kpglfpmbjag: i32,
|
||||
pub action_type: i32,
|
||||
#[prost(bytes = "vec", tag = "3")]
|
||||
pub ninehmjdphe: ::prost::alloc::vec::Vec<u8>,
|
||||
pub body: ::prost::alloc::vec::Vec<u8>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -13106,7 +13106,7 @@ pub struct Nphfbkphple {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mpneiipdeea {
|
||||
#[prost(enumeration = "TimeSegmentIndexType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fhhhblabjnf: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -13237,7 +13237,7 @@ pub struct Eacaiddoehb {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Bopchbhjmfg {
|
||||
pub struct RunEventGraphScRsp {
|
||||
#[xor(1674)]
|
||||
#[prost(int32, tag = "11")]
|
||||
pub retcode: i32,
|
||||
|
@ -14713,7 +14713,7 @@ pub struct Ddgeepaaalj {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Hdkoofepgan {
|
||||
pub struct UpdateEventGraphScNotify {
|
||||
#[xor(1633)]
|
||||
#[prost(uint32, tag = "9")]
|
||||
pub gainclnemhc: u32,
|
||||
|
@ -14723,15 +14723,15 @@ pub struct Hdkoofepgan {
|
|||
#[prost(bool, tag = "13")]
|
||||
pub ppabhkhbalm: bool,
|
||||
#[prost(string, tag = "14")]
|
||||
pub ohdpbakdpca: ::prost::alloc::string::String,
|
||||
pub npc_interaction: ::prost::alloc::string::String,
|
||||
#[xor(2813)]
|
||||
#[prost(uint32, tag = "10")]
|
||||
pub ddiamibnibg: u32,
|
||||
#[xor(13055)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub dnkdafokanc: u32,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "7")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "7")]
|
||||
pub owner_type: i32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(1353)]
|
||||
|
@ -15446,7 +15446,7 @@ pub struct Cocgjbpoihe {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Emakohhopnc {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fffmekkgkon: ::core::option::Option<StringEntry>,
|
||||
#[prost(enumeration = "LayerType", tag = "3")]
|
||||
|
@ -16453,7 +16453,7 @@ pub struct Jaoclflkblg {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kcagkmglhla {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fffmekkgkon: ::core::option::Option<StringEntry>,
|
||||
}
|
||||
|
@ -17661,16 +17661,16 @@ pub struct Ojpkokdacgg {
|
|||
pub lelbkclbjjj: u32,
|
||||
#[xor(966)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub cjemchndami: u32,
|
||||
pub owner_id: u32,
|
||||
#[prost(string, tag = "7")]
|
||||
pub ohdpbakdpca: ::prost::alloc::string::String,
|
||||
pub npc_interaction: ::prost::alloc::string::String,
|
||||
#[xor(6119)]
|
||||
#[prost(uint32, tag = "11")]
|
||||
pub section_id: u32,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "2")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "2")]
|
||||
pub owner_type: i32,
|
||||
#[prost(enumeration = "ActionType", tag = "9")]
|
||||
pub kpglfpmbjag: i32,
|
||||
pub action_type: i32,
|
||||
#[prost(map = "string, int32", tag = "12")]
|
||||
pub mmdmplgocoh: ::std::collections::HashMap<::prost::alloc::string::String, i32>,
|
||||
#[xor(93)]
|
||||
|
@ -17714,16 +17714,16 @@ pub struct Fpgoofgcpee {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ldajadnbppp {
|
||||
pub struct EnterSectionCsReq {
|
||||
#[prost(string, tag = "9")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[xor(3314)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub hoagdhfnhhp: u32,
|
||||
#[prost(bool, tag = "6")]
|
||||
pub ehmopjccohg: bool,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "2")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "2")]
|
||||
pub owner_type: i32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub gdnfifgfgce: bool,
|
||||
#[xor(614)]
|
||||
|
@ -18399,7 +18399,7 @@ pub struct Bpcbbhlljgi {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mdmgihicjnn {
|
||||
pub struct EnterSectionScRsp {
|
||||
#[xor(4105)]
|
||||
#[prost(int32, tag = "13")]
|
||||
pub retcode: i32,
|
||||
|
@ -19527,13 +19527,13 @@ pub struct Glhpbcklgef {
|
|||
pub struct Bejbdbkgfgg {
|
||||
#[xor(5159)]
|
||||
#[prost(uint32, tag = "11")]
|
||||
pub kpglfpmbjag: u32,
|
||||
pub action_type: u32,
|
||||
#[prost(message, optional, tag = "6")]
|
||||
pub bpciepjcphg: ::core::option::Option<Gknpgihpmga>,
|
||||
#[prost(message, optional, tag = "9")]
|
||||
pub nejepfbhigp: ::core::option::Option<Pjdmchndjfj>,
|
||||
#[prost(bytes = "vec", tag = "12")]
|
||||
pub ninehmjdphe: ::prost::alloc::vec::Vec<u8>,
|
||||
pub body: ::prost::alloc::vec::Vec<u8>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -21018,7 +21018,7 @@ pub struct Ballfolmdcf {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ijgdaoheiig {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(int32, tag = "2")]
|
||||
pub jbjgchpkhcc: i32,
|
||||
#[prost(string, tag = "3")]
|
||||
|
@ -22824,9 +22824,9 @@ pub struct Abnbkkdpllb {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kichgigbmnh {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(string, tag = "2")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub camera_x: u32,
|
||||
#[prost(uint32, tag = "4")]
|
||||
|
@ -23621,7 +23621,7 @@ pub struct Dkichcmcpdd {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct EnterSectionCsReq {
|
||||
pub struct SyncHallEventCsReq {
|
||||
#[prost(string, tag = "7")]
|
||||
pub reason: ::prost::alloc::string::String,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -25347,7 +25347,7 @@ pub struct Aoalnhoklbo {
|
|||
#[prost(int32, tag = "13")]
|
||||
pub fanammicmmc: i32,
|
||||
#[prost(string, tag = "14")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(bool, tag = "15")]
|
||||
pub ebacaaakoib: bool,
|
||||
#[prost(uint32, tag = "16")]
|
||||
|
@ -25397,22 +25397,22 @@ pub struct Ecegenamnmo {
|
|||
#[prost(uint32, tag = "15")]
|
||||
pub iddogdegagd: u32,
|
||||
#[prost(enumeration = "ActionType", tag = "13")]
|
||||
pub kpglfpmbjag: i32,
|
||||
pub action_type: i32,
|
||||
#[prost(bytes = "vec", tag = "11")]
|
||||
pub iojhbkleonn: ::prost::alloc::vec::Vec<u8>,
|
||||
#[prost(message, optional, tag = "12")]
|
||||
pub gfdmijhakkm: ::core::option::Option<Mhjfidcpmch>,
|
||||
#[xor(7037)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub cjemchndami: u32,
|
||||
pub owner_id: u32,
|
||||
#[xor(5092)]
|
||||
#[prost(uint32, tag = "6")]
|
||||
pub hlopenbmegp: u32,
|
||||
#[xor(635)]
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub section_id: u32,
|
||||
#[prost(enumeration = "Ilpobigjnfm", tag = "5")]
|
||||
pub dhjfpkblona: i32,
|
||||
#[prost(enumeration = "EventGraphOwnerType", tag = "5")]
|
||||
pub owner_type: i32,
|
||||
#[xor(12656)]
|
||||
#[prost(uint32, tag = "8")]
|
||||
pub ddiamibnibg: u32,
|
||||
|
@ -25916,7 +25916,7 @@ pub struct Lhielpdaohm {
|
|||
#[prost(bool, tag = "2")]
|
||||
pub mkbjakkbnhm: bool,
|
||||
#[prost(int32, tag = "3")]
|
||||
pub nekidnpibgc: i32,
|
||||
pub section: i32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(2374)]
|
||||
|
@ -27018,7 +27018,7 @@ pub struct Ifndfopgcph {
|
|||
#[prost(uint32, tag = "4")]
|
||||
pub igkchghofjn: u32,
|
||||
#[prost(uint32, tag = "5")]
|
||||
pub dhjfpkblona: u32,
|
||||
pub owner_type: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(4613)]
|
||||
|
@ -28559,7 +28559,7 @@ pub struct Kljodeocgjj {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Acglfclhomo {
|
||||
#[prost(enumeration = "TimeSegmentIndexType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub jbnjidbjceo: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -28846,7 +28846,7 @@ pub struct Ekofeilgdip {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ebbhoblhncg {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -29812,14 +29812,14 @@ pub struct GetFriendListScRsp {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Cbglachhdne {
|
||||
pub struct ActionInfo {
|
||||
#[prost(bytes = "vec", tag = "6")]
|
||||
pub ninehmjdphe: ::prost::alloc::vec::Vec<u8>,
|
||||
pub body: ::prost::alloc::vec::Vec<u8>,
|
||||
#[xor(12410)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub jdefffbinme: u32,
|
||||
#[prost(enumeration = "ActionType", tag = "10")]
|
||||
pub kpglfpmbjag: i32,
|
||||
pub action_type: i32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(1397)]
|
||||
|
@ -30358,7 +30358,7 @@ pub struct Lnoldijnfdl {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Cidockbmgdo {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub nekidnpibgc: ::core::option::Option<StringEntry>,
|
||||
pub section: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fffmekkgkon: ::core::option::Option<StringEntry>,
|
||||
#[prost(enumeration = "LayerType", tag = "3")]
|
||||
|
@ -32023,7 +32023,7 @@ pub struct GetBuddyDataCsReq {}
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mpdinaghali {
|
||||
#[prost(string, tag = "2")]
|
||||
pub born_pos: ::prost::alloc::string::String,
|
||||
pub transform: ::prost::alloc::string::String,
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub camera_x: u32,
|
||||
#[prost(uint32, tag = "4")]
|
||||
|
@ -32522,7 +32522,7 @@ pub struct Aijkaemjnjo {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Dkbkahlhjhn {
|
||||
#[prost(enumeration = "TimeSegmentIndexType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub fhhhblabjnf: ::core::option::Option<StringEntry>,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -34004,7 +34004,7 @@ pub struct Andjgknddgm {}
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Jnkgjnahehp {
|
||||
#[prost(enumeration = "HollowEntityType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(3438)]
|
||||
|
@ -34027,7 +34027,7 @@ pub struct Ecgbkjomkhg {}
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ebkomallnah {
|
||||
#[prost(enumeration = "HollowEntityType", tag = "1")]
|
||||
pub dhjfpkblona: i32,
|
||||
pub owner_type: i32,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub dhmnolikmhj: ::core::option::Option<StringEntry>,
|
||||
#[prost(bool, tag = "3")]
|
||||
|
@ -35238,7 +35238,7 @@ pub struct Ncnmmpffgii {
|
|||
pub hoagdhfnhhp: u32,
|
||||
#[xor(1789)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub nekidnpibgc: u32,
|
||||
pub section: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -51938,44 +51938,44 @@ impl Leeimefookn {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
|
||||
#[repr(i32)]
|
||||
pub enum Ilpobigjnfm {
|
||||
Imicgdckncn = 0,
|
||||
Dndopmdagom = 1,
|
||||
Hfjpbeaignf = 2,
|
||||
Kebdikmifie = 3,
|
||||
Kcfncebikgl = 4,
|
||||
Aedinjjlmop = 5,
|
||||
Gpmfplcejld = 6,
|
||||
pub enum EventGraphOwnerType {
|
||||
None = 0,
|
||||
Scene = 1,
|
||||
Section = 2,
|
||||
SceneUnit = 3,
|
||||
IlpobigjnfmKcfncebikgl = 4,
|
||||
IlpobigjnfmAedinjjlmop = 5,
|
||||
IlpobigjnfmGpmfplcejld = 6,
|
||||
Hfbhemncbjj = 7,
|
||||
}
|
||||
impl Ilpobigjnfm {
|
||||
impl EventGraphOwnerType {
|
||||
/// 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 {
|
||||
Ilpobigjnfm::Imicgdckncn => "ILPOBIGJNFM_IMICGDCKNCN",
|
||||
Ilpobigjnfm::Dndopmdagom => "ILPOBIGJNFM_DNDOPMDAGOM",
|
||||
Ilpobigjnfm::Hfjpbeaignf => "ILPOBIGJNFM_HFJPBEAIGNF",
|
||||
Ilpobigjnfm::Kebdikmifie => "ILPOBIGJNFM_KEBDIKMIFIE",
|
||||
Ilpobigjnfm::Kcfncebikgl => "ILPOBIGJNFM_KCFNCEBIKGL",
|
||||
Ilpobigjnfm::Aedinjjlmop => "ILPOBIGJNFM_AEDINJJLMOP",
|
||||
Ilpobigjnfm::Gpmfplcejld => "ILPOBIGJNFM_GPMFPLCEJLD",
|
||||
Ilpobigjnfm::Hfbhemncbjj => "ILPOBIGJNFM_HFBHEMNCBJJ",
|
||||
EventGraphOwnerType::None => "EVENT_GRAPH_OWNER_TYPE_NONE",
|
||||
EventGraphOwnerType::Scene => "EVENT_GRAPH_OWNER_TYPE_SCENE",
|
||||
EventGraphOwnerType::Section => "EVENT_GRAPH_OWNER_TYPE_SECTION",
|
||||
EventGraphOwnerType::SceneUnit => "EVENT_GRAPH_OWNER_TYPE_SCENE_UNIT",
|
||||
EventGraphOwnerType::IlpobigjnfmKcfncebikgl => "ILPOBIGJNFM_KCFNCEBIKGL",
|
||||
EventGraphOwnerType::IlpobigjnfmAedinjjlmop => "ILPOBIGJNFM_AEDINJJLMOP",
|
||||
EventGraphOwnerType::IlpobigjnfmGpmfplcejld => "ILPOBIGJNFM_GPMFPLCEJLD",
|
||||
EventGraphOwnerType::Hfbhemncbjj => "EventGraphOwnerType_HFBHEMNCBJJ",
|
||||
}
|
||||
}
|
||||
/// Creates an enum from field names used in the ProtoBuf definition.
|
||||
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
|
||||
match value {
|
||||
"ILPOBIGJNFM_IMICGDCKNCN" => Some(Self::Imicgdckncn),
|
||||
"ILPOBIGJNFM_DNDOPMDAGOM" => Some(Self::Dndopmdagom),
|
||||
"ILPOBIGJNFM_HFJPBEAIGNF" => Some(Self::Hfjpbeaignf),
|
||||
"ILPOBIGJNFM_KEBDIKMIFIE" => Some(Self::Kebdikmifie),
|
||||
"ILPOBIGJNFM_KCFNCEBIKGL" => Some(Self::Kcfncebikgl),
|
||||
"ILPOBIGJNFM_AEDINJJLMOP" => Some(Self::Aedinjjlmop),
|
||||
"ILPOBIGJNFM_GPMFPLCEJLD" => Some(Self::Gpmfplcejld),
|
||||
"ILPOBIGJNFM_HFBHEMNCBJJ" => Some(Self::Hfbhemncbjj),
|
||||
"EVENT_GRAPH_OWNER_TYPE_NONE" => Some(Self::None),
|
||||
"EVENT_GRAPH_OWNER_TYPE_SCENE" => Some(Self::Scene),
|
||||
"EVENT_GRAPH_OWNER_TYPE_SECTION" => Some(Self::Section),
|
||||
"EVENT_GRAPH_OWNER_TYPE_SCENE_UNIT" => Some(Self::SceneUnit),
|
||||
"ILPOBIGJNFM_KCFNCEBIKGL" => Some(Self::IlpobigjnfmKcfncebikgl),
|
||||
"ILPOBIGJNFM_AEDINJJLMOP" => Some(Self::IlpobigjnfmAedinjjlmop),
|
||||
"ILPOBIGJNFM_GPMFPLCEJLD" => Some(Self::IlpobigjnfmGpmfplcejld),
|
||||
"EventGraphOwnerType_HFBHEMNCBJJ" => Some(Self::Hfbhemncbjj),
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue