[WIP] event graph stuff

implementing EventGraph stuff, currently hardcoded interaction for 10000001 (street to workshop transition)
This commit is contained in:
xeon 2024-07-25 22:39:59 +03:00
parent d196ef861a
commit c710716fa1
7 changed files with 216 additions and 107 deletions

View 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(),
})
}

View file

@ -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! {

View file

@ -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(),
})
}

View file

@ -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,

View file

@ -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(),

View file

@ -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 {

View file

@ -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,
}
}