forked from NewEriduPubSec/JaneDoe-ZS
Working OpenUI interacts and Archive battles
Implement OpenUI interacts (currently configs only for Yorozuya and Archive) Fully working Archive (battles and cutscenes)
This commit is contained in:
parent
2ccdf84dd0
commit
970dde020a
20 changed files with 2050 additions and 107 deletions
|
@ -178,5 +178,27 @@
|
|||
"transform": "Subway_PlayerPos_FromFortuneSquare02"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"event_id": 10000009,
|
||||
"actions": [
|
||||
{
|
||||
"$type": "OpenUi",
|
||||
"ui": "UIYorozuyaPage",
|
||||
"args": 0,
|
||||
"store_template_id": 1161
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"event_id": 10000010,
|
||||
"actions": [
|
||||
{
|
||||
"$type": "OpenUi",
|
||||
"ui": "UIMainStoryPage",
|
||||
"args": 0,
|
||||
"store_template_id": 1191
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
|
342
assets/FileCfg/ArchiveBattleQuestTemplateTb.json
Normal file
342
assets/FileCfg/ArchiveBattleQuestTemplateTb.json
Normal file
|
@ -0,0 +1,342 @@
|
|||
[
|
||||
{
|
||||
"ID": 107010011,
|
||||
"QuestName": "QuestName_107010011",
|
||||
"QuestDesc": "QuestDesc_107010011",
|
||||
"Target": "QuestTarget_107010011",
|
||||
"QuestType": 1,
|
||||
"Chapter": 1,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 1,
|
||||
"RecommendedLevel": 1,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 19900014,
|
||||
"FirstBattleEventID": 19900014,
|
||||
"BattleEventID": 19900019,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 101000101,
|
||||
"Slot2Avatar": -1,
|
||||
"Slot3Avatar": -1,
|
||||
"Buddy": 0,
|
||||
"HGJGIMKPHLH": false,
|
||||
"LHNGFLLKHED": 0,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107010021,
|
||||
"QuestName": "QuestName_107010021",
|
||||
"QuestDesc": "QuestDesc_107010021",
|
||||
"Target": "QuestTarget_107010021",
|
||||
"QuestType": 1,
|
||||
"Chapter": 1,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 1,
|
||||
"RecommendedLevel": 1,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 19900015,
|
||||
"FirstBattleEventID": 19900015,
|
||||
"BattleEventID": 19900015,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 101000201,
|
||||
"Slot2Avatar": 101000202,
|
||||
"Slot3Avatar": -1,
|
||||
"Buddy": 0,
|
||||
"HGJGIMKPHLH": false,
|
||||
"LHNGFLLKHED": 0,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107010031,
|
||||
"QuestName": "QuestName_107010031",
|
||||
"QuestDesc": "QuestDesc_107010031",
|
||||
"Target": "QuestTarget_107010031",
|
||||
"QuestType": 1,
|
||||
"Chapter": 1,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 1,
|
||||
"RecommendedLevel": 1,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 19900016,
|
||||
"FirstBattleEventID": 19900016,
|
||||
"BattleEventID": 19900016,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 101000302,
|
||||
"Slot2Avatar": 101000301,
|
||||
"Slot3Avatar": -1,
|
||||
"Buddy": 0,
|
||||
"HGJGIMKPHLH": false,
|
||||
"LHNGFLLKHED": 0,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107010051,
|
||||
"QuestName": "QuestName_107010051",
|
||||
"QuestDesc": "QuestDesc_107010051",
|
||||
"Target": "QuestTarget_107010051",
|
||||
"QuestType": 1,
|
||||
"Chapter": 1,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 6,
|
||||
"RecommendedLevel": 6,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 19900017,
|
||||
"FirstBattleEventID": 19900017,
|
||||
"BattleEventID": 19900017,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 101000501,
|
||||
"Slot2Avatar": 101000502,
|
||||
"Slot3Avatar": 101000503,
|
||||
"Buddy": 101000504,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": true,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107020021,
|
||||
"QuestName": "QuestName_107020021",
|
||||
"QuestDesc": "QuestDesc_107020021",
|
||||
"Target": "QuestTarget_107020021",
|
||||
"QuestType": 1,
|
||||
"Chapter": 2,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 9,
|
||||
"RecommendedLevel": 9,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202101,
|
||||
"FirstBattleEventID": 10202101,
|
||||
"BattleEventID": 10202101,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010101,
|
||||
"Slot2Avatar": 1000010102,
|
||||
"Slot3Avatar": 1000010103,
|
||||
"Buddy": 1000010104,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107020031,
|
||||
"QuestName": "QuestName_107020031",
|
||||
"QuestDesc": "QuestDesc_107020031",
|
||||
"Target": "QuestTarget_107020031",
|
||||
"QuestType": 1,
|
||||
"Chapter": 2,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 9,
|
||||
"RecommendedLevel": 9,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202102,
|
||||
"FirstBattleEventID": 10202102,
|
||||
"BattleEventID": 10202102,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010201,
|
||||
"Slot2Avatar": 1000010202,
|
||||
"Slot3Avatar": 1000010203,
|
||||
"Buddy": 1000010204,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107020041,
|
||||
"QuestName": "QuestName_107020041",
|
||||
"QuestDesc": "QuestDesc_107020041",
|
||||
"Target": "QuestTarget_107020041",
|
||||
"QuestType": 1,
|
||||
"Chapter": 2,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 9,
|
||||
"RecommendedLevel": 9,
|
||||
"EBCDABBGHMF": 3,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202103,
|
||||
"FirstBattleEventID": 10202103,
|
||||
"BattleEventID": 10202103,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010301,
|
||||
"Slot2Avatar": 1000010302,
|
||||
"Slot3Avatar": 1000010303,
|
||||
"Buddy": 1000010304,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107030021,
|
||||
"QuestName": "QuestName_107030021",
|
||||
"QuestDesc": "QuestDesc_107030021",
|
||||
"Target": "QuestTarget_107030021",
|
||||
"QuestType": 1,
|
||||
"Chapter": 3,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 11,
|
||||
"RecommendedLevel": 11,
|
||||
"EBCDABBGHMF": 4,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202104,
|
||||
"FirstBattleEventID": 10202104,
|
||||
"BattleEventID": 10202104,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010601,
|
||||
"Slot2Avatar": 1000010602,
|
||||
"Slot3Avatar": 1000010603,
|
||||
"Buddy": 1000010604,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107030031,
|
||||
"QuestName": "QuestName_107030031",
|
||||
"QuestDesc": "QuestDesc_107030031",
|
||||
"Target": "QuestTarget_107030031",
|
||||
"QuestType": 1,
|
||||
"Chapter": 3,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 12,
|
||||
"RecommendedLevel": 12,
|
||||
"EBCDABBGHMF": 4,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202106,
|
||||
"FirstBattleEventID": 10202106,
|
||||
"BattleEventID": 10202106,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010701,
|
||||
"Slot2Avatar": 1000010702,
|
||||
"Slot3Avatar": 1000010703,
|
||||
"Buddy": 1000010704,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
},
|
||||
{
|
||||
"ID": 107030041,
|
||||
"QuestName": "QuestName_107030041",
|
||||
"QuestDesc": "QuestDesc_107030041",
|
||||
"Target": "QuestTarget_107030041",
|
||||
"QuestType": 1,
|
||||
"Chapter": 3,
|
||||
"Difficulty": 1,
|
||||
"MonsterLevel": 13,
|
||||
"RecommendedLevel": 13,
|
||||
"EBCDABBGHMF": 4,
|
||||
"MLLPFMLKIKF": 0,
|
||||
"HollowID": 10202108,
|
||||
"FirstBattleEventID": 10202108,
|
||||
"BattleEventID": 10202108,
|
||||
"GGAEGKMMGLN": 999,
|
||||
"BattleRank": "1|101|208",
|
||||
"Slot1Avatar": 1000010801,
|
||||
"Slot2Avatar": 1000010802,
|
||||
"Slot3Avatar": 1000010803,
|
||||
"Buddy": 1000010804,
|
||||
"HGJGIMKPHLH": true,
|
||||
"LHNGFLLKHED": 2,
|
||||
"JGKFLKJNNHI": false,
|
||||
"KIFDIIKMIBJ": "Chapter0",
|
||||
"EDECGDLJIEB": "UI/Sprite/A1DynamicLoad/Hollow/ImgMission/UnPacker/ImgMission01.png",
|
||||
"JGBDOPDIDHA": "",
|
||||
"DGLENAGIGBO": false,
|
||||
"NPEBHOLENNI": 205,
|
||||
"NEIIOOLBAPD": false,
|
||||
"NABBCKLEDME": 0,
|
||||
"FBDEJOEECMJ": "",
|
||||
"CPJIMNGMCDO": 0
|
||||
}
|
||||
]
|
1229
assets/FileCfg/ArchiveFileQuestTemplateTb.json
Normal file
1229
assets/FileCfg/ArchiveFileQuestTemplateTb.json
Normal file
File diff suppressed because it is too large
Load diff
|
@ -38,4 +38,5 @@ macro_rules! actions {
|
|||
|
||||
actions! {
|
||||
SwitchSection;
|
||||
OpenUi;
|
||||
}
|
||||
|
|
19
nap_data/src/action/open_ui.rs
Normal file
19
nap_data/src/action/open_ui.rs
Normal file
|
@ -0,0 +1,19 @@
|
|||
use serde::Deserialize;
|
||||
|
||||
#[derive(Deserialize, Debug)]
|
||||
pub struct ConfigOpenUi {
|
||||
pub ui: String,
|
||||
pub args: i32,
|
||||
pub store_template_id: i32,
|
||||
}
|
||||
|
||||
impl ConfigOpenUi {
|
||||
pub fn to_protocol(&self) -> ::proto::ActionOpenUi {
|
||||
::proto::ActionOpenUi {
|
||||
ui: self.ui.clone(),
|
||||
args: self.args,
|
||||
store_template_id: self.store_template_id,
|
||||
..Default::default()
|
||||
}
|
||||
}
|
||||
}
|
28
nap_data/src/tables/archive_battle_quest_template.rs
Normal file
28
nap_data/src/tables/archive_battle_quest_template.rs
Normal file
|
@ -0,0 +1,28 @@
|
|||
use serde::Deserialize;
|
||||
|
||||
template_id!(ArchiveBattleQuest u32 id);
|
||||
|
||||
#[derive(Deserialize, Debug)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct ArchiveBattleQuestTemplate {
|
||||
#[serde(rename = "ID")]
|
||||
pub id: ArchiveBattleQuestID,
|
||||
pub quest_name: String,
|
||||
pub quest_desc: String,
|
||||
pub target: String,
|
||||
pub quest_type: u32,
|
||||
pub chapter: u32,
|
||||
pub difficulty: u32,
|
||||
pub monster_level: u32,
|
||||
#[serde(rename = "HollowID")]
|
||||
pub hollow_id: u32,
|
||||
#[serde(rename = "FirstBattleEventID")]
|
||||
pub first_battle_event_id: u32,
|
||||
#[serde(rename = "BattleEventID")]
|
||||
pub battle_event_id: u32,
|
||||
pub battle_rank: String,
|
||||
pub slot1_avatar: i32,
|
||||
pub slot2_avatar: i32,
|
||||
pub slot3_avatar: i32,
|
||||
pub buddy: i32,
|
||||
}
|
20
nap_data/src/tables/archive_file_quest_template.rs
Normal file
20
nap_data/src/tables/archive_file_quest_template.rs
Normal file
|
@ -0,0 +1,20 @@
|
|||
use serde::Deserialize;
|
||||
|
||||
template_id!(ArchiveFileQuest u32 id);
|
||||
|
||||
#[derive(Deserialize, Debug)]
|
||||
#[serde(rename_all = "PascalCase")]
|
||||
pub struct ArchiveFileQuestTemplate {
|
||||
#[serde(rename = "ID")]
|
||||
pub id: ArchiveFileQuestID,
|
||||
#[serde(rename = "ArchiveID")]
|
||||
pub archive_id: u32,
|
||||
pub difficulty_lv: u32,
|
||||
pub show_type: u32,
|
||||
pub recommended_hit_types: Vec<u32>,
|
||||
pub video: String,
|
||||
pub archive_file_name: String,
|
||||
pub archive_file_num: String,
|
||||
pub archive_file_ni_ds: Vec<u32>,
|
||||
pub auto_distribution: bool,
|
||||
}
|
|
@ -84,4 +84,6 @@ template_tables! {
|
|||
WeaponTemplate;
|
||||
MainCityObjectTemplate;
|
||||
MainCityDefaultObjectTemplate;
|
||||
ArchiveFileQuestTemplate;
|
||||
ArchiveBattleQuestTemplate;
|
||||
}
|
||||
|
|
|
@ -124,6 +124,22 @@ pub async fn on_player_operation(
|
|||
})
|
||||
}
|
||||
|
||||
pub async fn on_player_system_parameter_change(
|
||||
_session: &NetSession,
|
||||
_player: &mut Player,
|
||||
req: PlayerSystemParameterChangeCsReq,
|
||||
) -> NetResult<PlayerSystemParameterChangeScRsp> {
|
||||
tracing::info!(
|
||||
"PlayerSystemParameterChange(type={}, param={})",
|
||||
req.r#type,
|
||||
req.params,
|
||||
);
|
||||
|
||||
Ok(PlayerSystemParameterChangeScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn on_pop_up_window_seen(
|
||||
_session: &NetSession,
|
||||
_player: &mut Player,
|
||||
|
|
|
@ -98,6 +98,7 @@ req_handlers! {
|
|||
world::LeaveCurDungeon;
|
||||
world::InteractWithUnit;
|
||||
world::EnterSection;
|
||||
world::ArchiveQuestsSeen;
|
||||
client_systems::ReportUiLayoutPlatform;
|
||||
client_systems::PlayerOperation;
|
||||
client_systems::UnlockNewbieGroup;
|
||||
|
@ -105,6 +106,7 @@ req_handlers! {
|
|||
client_systems::PopUpWindowSeen;
|
||||
client_systems::ReportSystemSettingsChange;
|
||||
client_systems::InteractWithSceneObject;
|
||||
client_systems::PlayerSystemParameterChange;
|
||||
perform::PerformTrigger;
|
||||
perform::PerformEnd;
|
||||
perform::PerformJump;
|
||||
|
@ -115,6 +117,8 @@ req_handlers! {
|
|||
item::WeaponDress;
|
||||
item::WeaponUnDress;
|
||||
event_graph::RunEventGraph;
|
||||
quest::BeginArchiveBattleQuest;
|
||||
quest::FinishArchiveQuest;
|
||||
}
|
||||
|
||||
notify_handlers! {
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
use super::core::NetError;
|
||||
|
||||
use crate::logic::{
|
||||
game::{GameInstance, LogicError},
|
||||
procedure::ProcedureAction,
|
||||
|
@ -12,14 +10,12 @@ pub async fn on_perform_trigger(
|
|||
player: &mut Player,
|
||||
req: PerformTriggerCsReq,
|
||||
) -> NetResult<PerformTriggerScRsp> {
|
||||
let GameInstance::Fresh(fresh_game) = &mut player.game_instance else {
|
||||
return Err(NetError::from(Retcode::RetFail));
|
||||
};
|
||||
|
||||
if let GameInstance::Fresh(fresh_game) = &mut player.game_instance {
|
||||
fresh_game
|
||||
.procedure_mgr
|
||||
.on_action(ProcedureAction::PerformTrigger)
|
||||
.map_err(LogicError::from)?;
|
||||
}
|
||||
|
||||
Ok(PerformTriggerScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
|
@ -32,14 +28,12 @@ pub async fn on_perform_end(
|
|||
player: &mut Player,
|
||||
_req: PerformEndCsReq,
|
||||
) -> NetResult<PerformEndScRsp> {
|
||||
let GameInstance::Fresh(fresh_game) = &mut player.game_instance else {
|
||||
return Err(NetError::from(Retcode::RetFail));
|
||||
};
|
||||
|
||||
if let GameInstance::Fresh(fresh_game) = &mut player.game_instance {
|
||||
fresh_game
|
||||
.procedure_mgr
|
||||
.on_action(ProcedureAction::PerformEnd)
|
||||
.map_err(LogicError::from)?;
|
||||
}
|
||||
|
||||
Ok(PerformEndScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
use data::tables::{self, ArchiveBattleQuestID};
|
||||
|
||||
use crate::logic::{
|
||||
game::{GameInstance, HollowGame, LogicError},
|
||||
ELocalPlayType, EQuestType,
|
||||
};
|
||||
|
||||
use super::*;
|
||||
|
||||
pub async fn on_get_quest_data(
|
||||
|
@ -8,7 +15,15 @@ pub async fn on_get_quest_data(
|
|||
Ok(GetQuestDataScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
quest_type: req.quest_type,
|
||||
quest_data: Some(QuestData::default()),
|
||||
quest_data: Some(QuestData {
|
||||
quest_collection_list: vec![QuestCollection {
|
||||
quest_type: EQuestType::ArchiveFile as u32,
|
||||
quest_id_list: tables::archive_file_quest_template_tb::iter()
|
||||
.map(|tmpl| tmpl.id.value())
|
||||
.collect(),
|
||||
..Default::default()
|
||||
}],
|
||||
}),
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -19,7 +34,25 @@ pub async fn on_get_yorozuya_info(
|
|||
) -> NetResult<GetYorozuyaInfoScRsp> {
|
||||
Ok(GetYorozuyaInfoScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
yorozuya_info: Some(YorozuyaInfo::default()),
|
||||
yorozuya_info: Some(YorozuyaInfo {
|
||||
odohdljfdlf: vec![1001],
|
||||
apmojjlcooa: vec![1001],
|
||||
npgjhahijkb: vec![100001, 100101, 100401, 109901],
|
||||
eoljpdnjgeg: vec![
|
||||
Ofhlkjeakif {
|
||||
nnkcanmllod: 199030,
|
||||
kkjlnkehddj: Some(Cgpajijemlj::default()),
|
||||
..Default::default()
|
||||
},
|
||||
Ofhlkjeakif {
|
||||
nnkcanmllod: 199035,
|
||||
ggnbpiofdpp: 110103,
|
||||
kkjlnkehddj: Some(Cgpajijemlj::default()),
|
||||
..Default::default()
|
||||
},
|
||||
],
|
||||
..Default::default()
|
||||
}),
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -30,6 +63,49 @@ pub async fn on_get_archive_info(
|
|||
) -> NetResult<GetArchiveInfoScRsp> {
|
||||
Ok(GetArchiveInfoScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
archive_info: Some(ArchiveInfo::default()),
|
||||
archive_info: Some(ArchiveInfo {
|
||||
hollow_archive_id_list: (1..99999).collect(),
|
||||
videotaps_info: tables::archive_file_quest_template_tb::iter()
|
||||
.map(|tmpl| VideotapeInfo {
|
||||
archive_file_id: tmpl.id.value(),
|
||||
finished: true,
|
||||
..Default::default()
|
||||
})
|
||||
.collect(),
|
||||
..Default::default()
|
||||
}),
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn on_begin_archive_battle_quest(
|
||||
session: &NetSession,
|
||||
player: &mut Player,
|
||||
req: BeginArchiveBattleQuestCsReq,
|
||||
) -> NetResult<BeginArchiveBattleQuestScRsp> {
|
||||
let quest_id = ArchiveBattleQuestID::new(req.quest_id).ok_or(Retcode::RetFail)?;
|
||||
|
||||
player.game_instance = GameInstance::Hollow(
|
||||
HollowGame::create_archive_battle(quest_id, ELocalPlayType::ArchiveBattle, &req.avatars)
|
||||
.map_err(LogicError::from)?,
|
||||
);
|
||||
|
||||
let world_init_notify = player.game_instance.create_world_init_notify()?;
|
||||
session.notify(world_init_notify).await?;
|
||||
|
||||
Ok(BeginArchiveBattleQuestScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
quest_id: req.quest_id,
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn on_finish_archive_quest(
|
||||
_session: &NetSession,
|
||||
_player: &mut Player,
|
||||
req: FinishArchiveQuestCsReq,
|
||||
) -> NetResult<FinishArchiveQuestScRsp> {
|
||||
Ok(FinishArchiveQuestScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
quest_id: req.quest_id,
|
||||
..Default::default()
|
||||
})
|
||||
}
|
||||
|
|
|
@ -169,7 +169,7 @@ pub async fn on_start_trial_fighting_mission(
|
|||
let quest_id = TrainingQuestID::new(req.quest_id).ok_or(Retcode::RetFail)?;
|
||||
|
||||
player.game_instance = GameInstance::Hollow(
|
||||
HollowGame::create_training_game(quest_id, ELocalPlayType::TrainingRoomFight)
|
||||
HollowGame::create_training_game(quest_id, ELocalPlayType::TrainingRoomFight, &req.avatars)
|
||||
.map_err(LogicError::from)?,
|
||||
);
|
||||
|
||||
|
@ -258,3 +258,14 @@ pub async fn on_enter_section(
|
|||
retcode: Retcode::RetSucc.into(),
|
||||
})
|
||||
}
|
||||
|
||||
pub async fn on_archive_quests_seen(
|
||||
_session: &NetSession,
|
||||
_player: &mut Player,
|
||||
_req: ArchiveQuestsSeenCsReq,
|
||||
) -> NetResult<ArchiveQuestsSeenScRsp> {
|
||||
Ok(ArchiveQuestsSeenScRsp {
|
||||
retcode: Retcode::RetSucc.into(),
|
||||
..Default::default()
|
||||
})
|
||||
}
|
||||
|
|
23
nap_gameserver/src/logic/battle/avatar.rs
Normal file
23
nap_gameserver/src/logic/battle/avatar.rs
Normal file
|
@ -0,0 +1,23 @@
|
|||
use std::collections::HashMap;
|
||||
|
||||
use crate::logic::BaseProperty;
|
||||
use proto::InLevelAvatarData;
|
||||
|
||||
pub struct InLevelAvatarDataItem {
|
||||
pub avatar_id: u32,
|
||||
pub mp_property_override: HashMap<BaseProperty, i32>,
|
||||
}
|
||||
|
||||
impl InLevelAvatarDataItem {
|
||||
pub fn to_client(&self) -> InLevelAvatarData {
|
||||
InLevelAvatarData {
|
||||
avatar_id: self.avatar_id,
|
||||
mp_property_override_map: self
|
||||
.mp_property_override
|
||||
.iter()
|
||||
.map(|(prop, value)| (*prop as u32, *value))
|
||||
.collect(),
|
||||
..Default::default()
|
||||
}
|
||||
}
|
||||
}
|
4
nap_gameserver/src/logic/battle/mod.rs
Normal file
4
nap_gameserver/src/logic/battle/mod.rs
Normal file
|
@ -0,0 +1,4 @@
|
|||
mod avatar;
|
||||
pub use avatar::InLevelAvatarDataItem;
|
||||
mod team;
|
||||
pub use team::TeamDataItem;
|
21
nap_gameserver/src/logic/battle/team.rs
Normal file
21
nap_gameserver/src/logic/battle/team.rs
Normal file
|
@ -0,0 +1,21 @@
|
|||
use std::collections::HashMap;
|
||||
|
||||
use super::InLevelAvatarDataItem;
|
||||
|
||||
pub struct TeamDataItem {
|
||||
pub avatar_member_list: Vec<InLevelAvatarDataItem>,
|
||||
}
|
||||
|
||||
impl TeamDataItem {
|
||||
pub fn new(avatars: &[u32]) -> Self {
|
||||
Self {
|
||||
avatar_member_list: avatars
|
||||
.iter()
|
||||
.map(|id| InLevelAvatarDataItem {
|
||||
avatar_id: *id,
|
||||
mp_property_override: HashMap::new(),
|
||||
})
|
||||
.collect(),
|
||||
}
|
||||
}
|
||||
}
|
|
@ -14,6 +14,20 @@ pub enum ESceneType {
|
|||
MultiFight = 5,
|
||||
}
|
||||
|
||||
#[allow(dead_code)]
|
||||
#[derive(Debug, PartialEq, Eq, Clone, Copy)]
|
||||
#[repr(u32)]
|
||||
pub enum EQuestType {
|
||||
ArchiveFile = 1,
|
||||
DungeonInner = 2,
|
||||
Hollow = 3,
|
||||
Manual = 4,
|
||||
MainCity = 5,
|
||||
HollowChallenge = 6,
|
||||
ArchiveBattle = 7,
|
||||
Knowledge = 8,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, PartialEq, Eq, Clone, Copy, FromPrimitive)]
|
||||
#[repr(u32)]
|
||||
pub enum ESystem {
|
||||
|
@ -159,3 +173,89 @@ pub enum ELocalPlayType {
|
|||
#[default]
|
||||
Unknown = 0,
|
||||
}
|
||||
|
||||
#[allow(dead_code)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
|
||||
#[repr(u32)]
|
||||
pub enum BaseProperty {
|
||||
CurHP = 0,
|
||||
MaxHpFinal = 36,
|
||||
AddedDamageRatioFire = 52,
|
||||
AddedDamageRatioElecBattle = 583,
|
||||
FeverGetRatio = 45,
|
||||
AtkBattle = 560,
|
||||
MaxArmor = 18,
|
||||
ElementMysteryBattle = 577,
|
||||
DamageTakeRatio = 42,
|
||||
Defence = 3,
|
||||
CritRes = 23,
|
||||
MaxShield = 20,
|
||||
CritDmgBattle = 565,
|
||||
DamageTakeRatioBattle = 573,
|
||||
BreakStunBattle = 561,
|
||||
AddedElementAccumulationRatio = 48,
|
||||
CurSP = 7,
|
||||
DefBattle = 562,
|
||||
CritResBattle = 564,
|
||||
CritDmg = 6,
|
||||
ElementMystery = 46,
|
||||
AddedDamageRatioEtherBattle = 584,
|
||||
EnduranceBattle = 569,
|
||||
CritBattle = 563,
|
||||
CurBuddyBattery = 56,
|
||||
MaxHP = 1,
|
||||
CurBreakPoint = 27,
|
||||
Unknown = 4294967295,
|
||||
SPRecover = 31,
|
||||
PenRatio = 21,
|
||||
ResistBreakLevel = 35,
|
||||
CritDmgRes = 24,
|
||||
AddedDamageRatioPhysics = 51,
|
||||
AddedDamageRatioFireBattle = 581,
|
||||
AddedDamageRatioBattle = 572,
|
||||
PenDelta = 22,
|
||||
AutoRecoverStunRate = 37,
|
||||
AddedDamageRatioIce = 53,
|
||||
SpGetRatio = 44,
|
||||
MaxBuddyBattery = 57,
|
||||
AddedDamageRatioEther = 55,
|
||||
HpHealRatioBattle = 571,
|
||||
AddedDamageRatioIceBattle = 582,
|
||||
Level = 49,
|
||||
ElementAbnormalPower = 50,
|
||||
StunMaxBase = 551,
|
||||
Attack = 2,
|
||||
MaxSP = 8,
|
||||
CurMaxHpHealPercent = 32,
|
||||
MaxStunRuntime = 33,
|
||||
AllDamageResistBattle = 574,
|
||||
AddedDamageRatio = 41,
|
||||
AddedElementAccumulationRatioBattle = 578,
|
||||
Custom = 10,
|
||||
Crit = 4,
|
||||
SpGetRatioBattle = 575,
|
||||
ResistBreakPoint = 28,
|
||||
AddedDamageRatioElec = 54,
|
||||
MaxStun = 12,
|
||||
HpMaxBase = 550,
|
||||
CurStun = 11,
|
||||
CurrentArmor = 17,
|
||||
HpRecoverRate = 47,
|
||||
ElementAbnormalPowerBattle = 579,
|
||||
FeverGetRatioBattle = 576,
|
||||
CritDmgResBattle = 566,
|
||||
SpRecoverBattle = 570,
|
||||
CurEndurance = 25,
|
||||
PenDeltaBattle = 568,
|
||||
AccumulationValue = 58,
|
||||
MaxEndurance = 26,
|
||||
DestroyRecoverStunRate = 38,
|
||||
HpHealRatio = 40,
|
||||
SpMaxBase = 552,
|
||||
PenRatioBattle = 567,
|
||||
AddedDamageRatioPhysicsBattle = 580,
|
||||
BreakStun = 13,
|
||||
CurrentShield = 19,
|
||||
Luck = 5,
|
||||
AllDamageResist = 43,
|
||||
}
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
use common::util;
|
||||
use data::tables::TrainingQuestID;
|
||||
use data::tables::{ArchiveBattleQuestID, TrainingQuestID};
|
||||
use proto::{DungeonInfo, DungeonItemData, FightSceneInfo, SceneInfo, WeatherPoolInfo};
|
||||
use thiserror::Error;
|
||||
|
||||
use crate::logic::{ELocalPlayType, ESceneType, TimePeriodType, WeatherType};
|
||||
use crate::logic::{
|
||||
battle::{InLevelAvatarDataItem, TeamDataItem},
|
||||
ELocalPlayType, ESceneType, TimePeriodType, WeatherType,
|
||||
};
|
||||
|
||||
use super::NapGameMode;
|
||||
|
||||
|
@ -17,12 +20,14 @@ pub struct HollowGame {
|
|||
pub weather: WeatherType,
|
||||
pub play_type: ELocalPlayType,
|
||||
pub start_timestamp: i64,
|
||||
pub team_data: TeamDataItem,
|
||||
}
|
||||
|
||||
impl HollowGame {
|
||||
pub fn create_training_game(
|
||||
training_quest_id: TrainingQuestID,
|
||||
play_type: ELocalPlayType,
|
||||
avatars: &[u32],
|
||||
) -> Result<Self, HollowGameError> {
|
||||
let template = training_quest_id.template();
|
||||
|
||||
|
@ -33,6 +38,25 @@ impl HollowGame {
|
|||
weather: WeatherType::SunShine,
|
||||
start_timestamp: util::cur_timestamp() as i64,
|
||||
play_type,
|
||||
team_data: TeamDataItem::new(avatars),
|
||||
})
|
||||
}
|
||||
|
||||
pub fn create_archive_battle(
|
||||
archive_battle_quest_id: ArchiveBattleQuestID,
|
||||
play_type: ELocalPlayType,
|
||||
avatars: &[u32],
|
||||
) -> Result<Self, HollowGameError> {
|
||||
let template = archive_battle_quest_id.template();
|
||||
|
||||
Ok(Self {
|
||||
quest_id: template.id.value(),
|
||||
battle_event_id: template.battle_event_id,
|
||||
time_period: TimePeriodType::Morning,
|
||||
weather: WeatherType::SunShine,
|
||||
start_timestamp: util::cur_timestamp() as i64,
|
||||
play_type,
|
||||
team_data: TeamDataItem::new(avatars),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -64,6 +88,12 @@ impl NapGameMode for HollowGame {
|
|||
quest_id: self.quest_id,
|
||||
start_timestamp: self.start_timestamp,
|
||||
dungeon_item_data: Some(DungeonItemData::default()),
|
||||
avatar_list: self
|
||||
.team_data
|
||||
.avatar_member_list
|
||||
.iter()
|
||||
.map(InLevelAvatarDataItem::to_client)
|
||||
.collect(),
|
||||
..Default::default()
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
pub mod battle;
|
||||
mod enums;
|
||||
pub mod game;
|
||||
pub mod item;
|
||||
|
|
|
@ -2406,7 +2406,7 @@ pub struct Khhjipglbll {
|
|||
pub bcbcjioepod: u32,
|
||||
#[xor(2704)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(uint32, repeated, tag = "11")]
|
||||
pub avatars: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(9370)]
|
||||
|
@ -2760,7 +2760,7 @@ pub struct Iedkhplmbab {
|
|||
pub struct StartTrialFightingMissionCsReq {
|
||||
#[xor(15246)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(3842)]
|
||||
#[prost(uint32, tag = "11")]
|
||||
pub quest_id: u32,
|
||||
|
@ -2797,14 +2797,14 @@ pub struct Eoaebmjlfjc {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Kkhghlppoig {
|
||||
pub struct EquippedBuddyData {
|
||||
#[xor(8856)]
|
||||
#[prost(uint32, tag = "9")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(enumeration = "Hneekphmejf", tag = "6")]
|
||||
pub r#type: i32,
|
||||
#[prost(map = "uint32, int32", tag = "10")]
|
||||
pub alekplcmphb: ::std::collections::HashMap<u32, i32>,
|
||||
pub mp_property_override_map: ::std::collections::HashMap<u32, i32>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -3406,7 +3406,7 @@ pub struct Neokggopbin {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mgbedipfojl {
|
||||
pub struct FinishArchiveQuestCsReq {
|
||||
#[xor(3231)]
|
||||
#[prost(uint32, tag = "9")]
|
||||
pub jgeikifpcgd: u32,
|
||||
|
@ -4014,7 +4014,7 @@ pub struct Kggckaadkjm {
|
|||
#[prost(uint32, tag = "1")]
|
||||
pub mdnhahnfmfl: u32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -5741,7 +5741,7 @@ pub struct Bkdlnnmapab {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Enmeegdlemb {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -5916,7 +5916,7 @@ pub struct Lpjpfoaehlg {
|
|||
pub lbmgeignmef: u32,
|
||||
#[xor(2510)]
|
||||
#[prost(uint32, tag = "8")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -6541,7 +6541,7 @@ pub struct FightSceneInfo {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mbanldjmddn {
|
||||
#[prost(bool, tag = "15")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(361)]
|
||||
|
@ -7338,7 +7338,7 @@ pub struct Afocbghbdof {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Cohnoafnclg {
|
||||
pub struct BeginArchiveBattleQuestScRsp {
|
||||
#[xor(4259)]
|
||||
#[prost(uint32, tag = "15")]
|
||||
pub quest_id: u32,
|
||||
|
@ -8687,7 +8687,7 @@ pub struct Hffgnonoabe {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mcmgogphgkg {
|
||||
pub struct BeginArchiveBattleQuestCsReq {
|
||||
#[prost(uint32, repeated, tag = "4")]
|
||||
pub avatars: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(12182)]
|
||||
|
@ -8695,9 +8695,9 @@ pub struct Mcmgogphgkg {
|
|||
pub quest_id: u32,
|
||||
#[xor(1830)]
|
||||
#[prost(uint32, tag = "11")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(bool, tag = "1")]
|
||||
pub aepdmkdbagc: bool,
|
||||
pub is_story: bool,
|
||||
#[prost(uint32, repeated, tag = "2")]
|
||||
pub olcifcglpdd: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(421)]
|
||||
|
@ -9176,7 +9176,7 @@ pub struct Bijjamapnjm {
|
|||
pub struct Bffgkjikbhp {
|
||||
#[xor(3555)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(10954)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub lbmgeignmef: u32,
|
||||
|
@ -9395,7 +9395,7 @@ pub struct Kmkbpddeaoe {
|
|||
pub struct Bhmhgadoncc {
|
||||
#[xor(5509)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(10314)]
|
||||
#[prost(int32, tag = "12")]
|
||||
pub nledmfjbmmo: i32,
|
||||
|
@ -9614,7 +9614,7 @@ pub struct Gfpehbhpgfb {
|
|||
#[prost(uint32, repeated, tag = "1")]
|
||||
pub hfjhobiicil: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(bool, tag = "13")]
|
||||
pub aepdmkdbagc: bool,
|
||||
pub is_story: bool,
|
||||
#[prost(message, optional, tag = "5")]
|
||||
pub bojcpfdbolc: ::core::option::Option<Hpalfgllgje>,
|
||||
#[xor(11432)]
|
||||
|
@ -10824,7 +10824,7 @@ pub struct Gccdaofpapp {
|
|||
pub struct Ihilkekkdmh {
|
||||
#[xor(10553)]
|
||||
#[prost(uint32, tag = "13")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(13840)]
|
||||
#[prost(int32, tag = "1")]
|
||||
pub retcode: i32,
|
||||
|
@ -12181,15 +12181,15 @@ pub struct Dpnalcomaii {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Boempcpfihm {
|
||||
pub struct ActionOpenUi {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "2")]
|
||||
pub dhglgonmiao: i32,
|
||||
pub args: i32,
|
||||
#[prost(string, tag = "3")]
|
||||
pub hacnhcflago: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "4")]
|
||||
pub boanjgbnpff: i32,
|
||||
pub store_template_id: i32,
|
||||
#[prost(int32, tag = "5")]
|
||||
pub npc_id: i32,
|
||||
}
|
||||
|
@ -12833,7 +12833,7 @@ pub struct Okkjjhonnik {
|
|||
pub ajichmhgblg: u32,
|
||||
#[xor(1870)]
|
||||
#[prost(uint32, tag = "7")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -14101,9 +14101,9 @@ pub struct Ignclnpdace {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Mopakjdnaeh {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "2")]
|
||||
pub dhglgonmiao: i32,
|
||||
pub args: i32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub epaolkkakhi: bool,
|
||||
}
|
||||
|
@ -16216,7 +16216,7 @@ pub struct Feanepokfam {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Onlmpmgcdle {
|
||||
#[prost(message, repeated, tag = "13")]
|
||||
pub lmailahlomk: ::prost::alloc::vec::Vec<Kkhghlppoig>,
|
||||
pub lmailahlomk: ::prost::alloc::vec::Vec<EquippedBuddyData>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(5211)]
|
||||
|
@ -16365,7 +16365,7 @@ pub struct QuestCollection {
|
|||
#[prost(message, optional, tag = "7")]
|
||||
pub dlenflnoonh: ::core::option::Option<Chhceajhkbd>,
|
||||
#[prost(uint32, repeated, tag = "4")]
|
||||
pub gcofmlljpja: ::prost::alloc::vec::Vec<u32>,
|
||||
pub quest_id_list: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub kolondhkmjk: ::core::option::Option<Eonjiadomgn>,
|
||||
}
|
||||
|
@ -17122,7 +17122,7 @@ pub struct Jkmjmnfkelj {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Jjclogiljmd {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -17266,7 +17266,7 @@ pub struct Ilehibpgief {
|
|||
pub struct Fjppbkgebcl {
|
||||
#[xor(7354)]
|
||||
#[prost(uint32, tag = "8")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -17776,7 +17776,7 @@ pub struct Ccmffanlhla {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Dffaeiahhog {
|
||||
pub struct PlayerSystemParameterChangeScRsp {
|
||||
#[xor(14083)]
|
||||
#[prost(int32, tag = "8")]
|
||||
pub retcode: i32,
|
||||
|
@ -19751,13 +19751,13 @@ pub struct Bobbdnnaego {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ndljgkedcnp {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "2")]
|
||||
pub dhglgonmiao: i32,
|
||||
pub args: i32,
|
||||
#[prost(string, tag = "3")]
|
||||
pub hacnhcflago: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "4")]
|
||||
pub boanjgbnpff: i32,
|
||||
pub store_template_id: i32,
|
||||
#[prost(int32, tag = "5")]
|
||||
pub npc_id: i32,
|
||||
}
|
||||
|
@ -20383,7 +20383,7 @@ pub struct Knfggjeaoce {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ncognndobmn {
|
||||
pub struct PlayerSystemParameterChangeCsReq {
|
||||
#[prost(message, optional, tag = "15")]
|
||||
pub jplnecfjldo: ::core::option::Option<Hhepgliohcg>,
|
||||
#[prost(message, optional, tag = "9")]
|
||||
|
@ -20840,7 +20840,7 @@ pub struct Ghgbhljlmde {
|
|||
pub bikhplpcalp: ::std::collections::HashMap<u32, u32>,
|
||||
#[xor(4986)]
|
||||
#[prost(uint32, tag = "6")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(1495)]
|
||||
#[prost(uint32, tag = "5")]
|
||||
pub ihgcjhffkdf: u32,
|
||||
|
@ -20969,7 +20969,7 @@ pub struct Acobofkfjgj {
|
|||
pub struct Oidkngmaipi {
|
||||
#[xor(8441)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(enumeration = "Hneekphmejf", tag = "7")]
|
||||
pub ddogpdoomde: i32,
|
||||
}
|
||||
|
@ -21192,7 +21192,7 @@ pub struct Labghjgfhhh {
|
|||
pub lbmgeignmef: u32,
|
||||
#[xor(13505)]
|
||||
#[prost(uint32, tag = "4")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -21227,7 +21227,7 @@ pub struct Gmgoddaldob {
|
|||
#[prost(uint32, tag = "1")]
|
||||
pub pmnjlmekmbc: u32,
|
||||
#[prost(uint32, tag = "2")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub majldghlkab: bool,
|
||||
#[prost(bytes = "vec", tag = "4")]
|
||||
|
@ -21511,9 +21511,9 @@ pub struct Mbhjjoafcmc {
|
|||
#[prost(uint32, repeated, tag = "6")]
|
||||
pub hlkfieldkif: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(message, repeated, tag = "1")]
|
||||
pub phdpcbhbkcp: ::prost::alloc::vec::Vec<Pbpbmholoae>,
|
||||
pub phdpcbhbkcp: ::prost::alloc::vec::Vec<VideotapeInfo>,
|
||||
#[prost(uint32, repeated, tag = "10")]
|
||||
pub onfjkhpdlfh: ::prost::alloc::vec::Vec<u32>,
|
||||
pub hollow_archive_id_list: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(uint32, repeated, tag = "13")]
|
||||
pub nmnbkjicjlb: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(7038)]
|
||||
|
@ -21885,7 +21885,7 @@ pub struct Hfmncckhjlb {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Eaccimcclnk {
|
||||
pub struct ArchiveQuestsSeenCsReq {
|
||||
#[prost(bool, tag = "8")]
|
||||
pub ehmopjccohg: bool,
|
||||
#[prost(bool, tag = "7")]
|
||||
|
@ -22137,7 +22137,7 @@ pub struct Kakpeoaekgb {
|
|||
pub struct Mbchikbhcmp {
|
||||
#[xor(8473)]
|
||||
#[prost(uint32, tag = "10")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(bool, tag = "6")]
|
||||
pub aobemkmdkgo: bool,
|
||||
#[prost(message, repeated, tag = "14")]
|
||||
|
@ -22404,7 +22404,7 @@ pub struct Aecgodfnpao {
|
|||
pub lbmgeignmef: u32,
|
||||
#[xor(7503)]
|
||||
#[prost(uint32, tag = "12")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -22612,7 +22612,7 @@ pub struct Ghojoimpnad {
|
|||
pub ndcnfidonje: u32,
|
||||
#[xor(8060)]
|
||||
#[prost(uint32, tag = "2")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(15324)]
|
||||
#[prost(uint32, tag = "1")]
|
||||
pub lbmgeignmef: u32,
|
||||
|
@ -23095,7 +23095,7 @@ pub struct Jjmnjckodgk {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Fopnijbcimm {
|
||||
#[prost(map = "uint32, message", tag = "1")]
|
||||
pub foicfpfnlcf: ::std::collections::HashMap<u32, Nkceooipggh>,
|
||||
pub foicfpfnlcf: ::std::collections::HashMap<u32, InLevelAvatarData>,
|
||||
#[prost(uint32, repeated, tag = "6")]
|
||||
pub ajnocghpbmj: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(bool, tag = "12")]
|
||||
|
@ -23364,7 +23364,7 @@ pub struct Nnibknhmkde {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Chkdmaeaocp {
|
||||
pub struct ArchiveBattleRecord {
|
||||
#[xor(7803)]
|
||||
#[prost(uint32, tag = "4")]
|
||||
pub star: u32,
|
||||
|
@ -23372,9 +23372,9 @@ pub struct Chkdmaeaocp {
|
|||
pub mmphbfghfgm: bool,
|
||||
#[xor(4540)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub dgekhcijgbg: u32,
|
||||
pub archive_battle_id: u32,
|
||||
#[prost(bool, tag = "7")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -23680,9 +23680,9 @@ pub struct ArchiveInfo {
|
|||
#[prost(uint32, repeated, tag = "11")]
|
||||
pub hlkfieldkif: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(message, repeated, tag = "6")]
|
||||
pub feogoaegcbi: ::prost::alloc::vec::Vec<Pbpbmholoae>,
|
||||
pub videotaps_info: ::prost::alloc::vec::Vec<VideotapeInfo>,
|
||||
#[prost(uint32, repeated, tag = "13")]
|
||||
pub onfjkhpdlfh: ::prost::alloc::vec::Vec<u32>,
|
||||
pub hollow_archive_id_list: ::prost::alloc::vec::Vec<u32>,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[derive(proto_gen::XorFields)]
|
||||
|
@ -24257,7 +24257,7 @@ pub struct Enaagloodio {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Ecjcmfjjgdp {
|
||||
#[prost(int32, tag = "1")]
|
||||
pub fgfnllpgggj: i32,
|
||||
pub buddy: i32,
|
||||
#[prost(int32, repeated, tag = "2")]
|
||||
pub jpncidefiba: ::prost::alloc::vec::Vec<i32>,
|
||||
#[prost(message, optional, tag = "3")]
|
||||
|
@ -25751,13 +25751,13 @@ pub struct DungeonInfo {
|
|||
#[prost(message, optional, tag = "3")]
|
||||
pub ncfafdpojjh: ::core::option::Option<Kalfjemiaaa>,
|
||||
#[prost(message, optional, tag = "8")]
|
||||
pub kplhefeipee: ::core::option::Option<Kkhghlppoig>,
|
||||
pub kplhefeipee: ::core::option::Option<EquippedBuddyData>,
|
||||
#[prost(bool, tag = "1724")]
|
||||
pub gjhgpapkmod: bool,
|
||||
#[prost(bool, tag = "1109")]
|
||||
pub jgkfjmdinmo: bool,
|
||||
#[prost(message, repeated, tag = "13")]
|
||||
pub avatar_list: ::prost::alloc::vec::Vec<Nkceooipggh>,
|
||||
pub avatar_list: ::prost::alloc::vec::Vec<InLevelAvatarData>,
|
||||
#[prost(message, optional, tag = "522")]
|
||||
pub chnhoilfkhf: ::core::option::Option<Afhnppffhoh>,
|
||||
#[prost(message, optional, tag = "1725")]
|
||||
|
@ -25769,7 +25769,7 @@ pub struct DungeonInfo {
|
|||
#[prost(map = "uint32, int32", tag = "7")]
|
||||
pub njfikojmpcm: ::std::collections::HashMap<u32, i32>,
|
||||
#[prost(message, repeated, tag = "1395")]
|
||||
pub lmailahlomk: ::prost::alloc::vec::Vec<Kkhghlppoig>,
|
||||
pub lmailahlomk: ::prost::alloc::vec::Vec<EquippedBuddyData>,
|
||||
#[prost(message, optional, tag = "2")]
|
||||
pub dungeon_item_data: ::core::option::Option<DungeonItemData>,
|
||||
#[prost(message, optional, tag = "5")]
|
||||
|
@ -26194,7 +26194,7 @@ pub struct Aliigncbcfb {}
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Dbnojaajdon {
|
||||
pub struct ArchiveQuestsSeenScRsp {
|
||||
#[xor(11593)]
|
||||
#[prost(int32, tag = "9")]
|
||||
pub retcode: i32,
|
||||
|
@ -26340,7 +26340,7 @@ pub struct Occfagjmjhn {
|
|||
#[prost(int32, tag = "4")]
|
||||
pub retcode: i32,
|
||||
#[prost(bool, tag = "10")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(5102)]
|
||||
|
@ -27252,7 +27252,7 @@ pub struct Aicalelcmii {
|
|||
pub kplhkiofbah: bool,
|
||||
#[xor(3343)]
|
||||
#[prost(uint32, tag = "7")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(4100)]
|
||||
|
@ -27673,11 +27673,11 @@ pub struct Dehlcmioiab {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Nkceooipggh {
|
||||
pub struct InLevelAvatarData {
|
||||
#[prost(uint32, repeated, tag = "8")]
|
||||
pub fnaikfegocl: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(map = "uint32, int32", tag = "14")]
|
||||
pub alekplcmphb: ::std::collections::HashMap<u32, i32>,
|
||||
pub mp_property_override_map: ::std::collections::HashMap<u32, i32>,
|
||||
#[prost(bool, tag = "1")]
|
||||
pub mbpdoanjkll: bool,
|
||||
#[xor(643)]
|
||||
|
@ -28507,9 +28507,9 @@ pub struct Fboeclefepn {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Chjlipfffoi {
|
||||
#[prost(string, tag = "1")]
|
||||
pub ihbneikffdi: ::prost::alloc::string::String,
|
||||
pub ui: ::prost::alloc::string::String,
|
||||
#[prost(int32, tag = "2")]
|
||||
pub dhglgonmiao: i32,
|
||||
pub args: i32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub epaolkkakhi: bool,
|
||||
}
|
||||
|
@ -28678,7 +28678,7 @@ pub struct Bkkmkacnhne {}
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Dpijpabbknc {
|
||||
#[prost(message, optional, tag = "1")]
|
||||
pub fgfnllpgggj: ::core::option::Option<StringEntry>,
|
||||
pub buddy: ::core::option::Option<StringEntry>,
|
||||
#[prost(enumeration = "Afnpekehlge", tag = "2")]
|
||||
pub ddogpdoomde: i32,
|
||||
}
|
||||
|
@ -29127,16 +29127,16 @@ pub struct Jpmennlmodg {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Pbpbmholoae {
|
||||
pub struct VideotapeInfo {
|
||||
#[prost(uint32, repeated, tag = "15")]
|
||||
pub ekodopfdjlg: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(bool, tag = "10")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
#[prost(message, repeated, tag = "9")]
|
||||
pub innfphigkka: ::prost::alloc::vec::Vec<Chkdmaeaocp>,
|
||||
pub archive_battle_record_list: ::prost::alloc::vec::Vec<ArchiveBattleRecord>,
|
||||
#[xor(16282)]
|
||||
#[prost(uint32, tag = "6")]
|
||||
pub gafdanggnna: u32,
|
||||
pub archive_file_id: u32,
|
||||
#[prost(bool, tag = "2")]
|
||||
pub npnlfgmlmin: bool,
|
||||
}
|
||||
|
@ -29634,7 +29634,7 @@ pub struct Jlgmobeofhe {
|
|||
pub jipabmjagbi: u32,
|
||||
#[xor(12923)]
|
||||
#[prost(uint32, tag = "4")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(11558)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub pmnjlmekmbc: u32,
|
||||
|
@ -30566,7 +30566,7 @@ pub struct Jcfdccfejcg {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Jaokcopjeip {
|
||||
#[prost(int32, tag = "1")]
|
||||
pub fgfnllpgggj: i32,
|
||||
pub buddy: i32,
|
||||
#[prost(int64, tag = "2")]
|
||||
pub cjehpadgajn: i64,
|
||||
#[prost(int32, tag = "3")]
|
||||
|
@ -32098,7 +32098,7 @@ pub struct Ecpbnceekbi {
|
|||
#[prost(message, optional, tag = "11")]
|
||||
pub ahbfgomcdjm: ::core::option::Option<Ileigaeakjo>,
|
||||
#[prost(uint32, repeated, tag = "12")]
|
||||
pub gcofmlljpja: ::prost::alloc::vec::Vec<u32>,
|
||||
pub quest_id_list: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(uint32, repeated, tag = "13")]
|
||||
pub ficgeelfmck: ::prost::alloc::vec::Vec<u32>,
|
||||
#[prost(message, optional, tag = "14")]
|
||||
|
@ -32158,7 +32158,7 @@ pub struct Hphfnebchnb {
|
|||
pub struct Hoeafbihgpd {
|
||||
#[xor(1739)]
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
}
|
||||
#[derive(proto_gen::CmdID)]
|
||||
#[cmdid(3238)]
|
||||
|
@ -33219,13 +33219,13 @@ pub struct Hhgehefgpcj {
|
|||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Gkegfnbpiok {
|
||||
#[prost(map = "uint32, int32", tag = "6")]
|
||||
pub alekplcmphb: ::std::collections::HashMap<u32, i32>,
|
||||
pub mp_property_override_map: ::std::collections::HashMap<u32, i32>,
|
||||
#[xor(4076)]
|
||||
#[prost(uint32, tag = "2")]
|
||||
pub star: u32,
|
||||
#[xor(15011)]
|
||||
#[prost(uint32, tag = "3")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(810)]
|
||||
#[prost(uint32, tag = "5")]
|
||||
pub exp: u32,
|
||||
|
@ -33399,7 +33399,7 @@ pub struct Jcincgmdflc {
|
|||
pub olcifcglpdd: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(3275)]
|
||||
#[prost(uint32, tag = "11")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[xor(10845)]
|
||||
#[prost(uint32, tag = "13")]
|
||||
pub quest_id: u32,
|
||||
|
@ -33523,7 +33523,7 @@ pub struct Lolghlmjgko {
|
|||
#[prost(message, repeated, tag = "1")]
|
||||
pub pjbbjhfmmih: ::prost::alloc::vec::Vec<Ocbjgagjdac>,
|
||||
#[prost(map = "uint32, int32", tag = "9")]
|
||||
pub alekplcmphb: ::std::collections::HashMap<u32, i32>,
|
||||
pub mp_property_override_map: ::std::collections::HashMap<u32, i32>,
|
||||
#[xor(4487)]
|
||||
#[prost(uint32, tag = "2")]
|
||||
pub template_id: u32,
|
||||
|
@ -33683,7 +33683,7 @@ pub struct Kjknmlmfnka {
|
|||
#[derive(proto_gen::XorFields)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct Pcopkafjdjh {
|
||||
pub struct FinishArchiveQuestScRsp {
|
||||
#[xor(408)]
|
||||
#[prost(int32, tag = "3")]
|
||||
pub retcode: i32,
|
||||
|
@ -33777,14 +33777,14 @@ pub struct Jhinopamaoa {
|
|||
pub avatars: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(6842)]
|
||||
#[prost(uint32, tag = "14")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(uint32, repeated, tag = "3")]
|
||||
pub obpdhglkbgk: ::prost::alloc::vec::Vec<u32>,
|
||||
#[xor(8158)]
|
||||
#[prost(uint32, tag = "12")]
|
||||
pub fafoahnaohk: u32,
|
||||
#[prost(bool, tag = "9")]
|
||||
pub aepdmkdbagc: bool,
|
||||
pub is_story: bool,
|
||||
#[prost(string, tag = "15")]
|
||||
pub aljacgiaang: ::prost::alloc::string::String,
|
||||
#[xor(15965)]
|
||||
|
@ -34487,10 +34487,10 @@ pub struct Jiflifhgkhk {
|
|||
#[prost(uint32, tag = "7")]
|
||||
pub quest_id: u32,
|
||||
#[prost(bool, tag = "13")]
|
||||
pub aepdmkdbagc: bool,
|
||||
pub is_story: bool,
|
||||
#[xor(7590)]
|
||||
#[prost(uint32, tag = "5")]
|
||||
pub fgfnllpgggj: u32,
|
||||
pub buddy: u32,
|
||||
#[prost(bool, tag = "14")]
|
||||
pub jcflmpbcojd: bool,
|
||||
}
|
||||
|
@ -34811,7 +34811,7 @@ pub struct Odpikgleomb {
|
|||
#[prost(enumeration = "HollowEntityType", tag = "2")]
|
||||
pub llafhjgdfjn: i32,
|
||||
#[prost(bool, tag = "3")]
|
||||
pub nkjbgnkkpng: bool,
|
||||
pub finished: bool,
|
||||
#[prost(bool, tag = "4")]
|
||||
pub ajlemkdmjaj: bool,
|
||||
}
|
||||
|
@ -41921,7 +41921,7 @@ pub enum ActionType {
|
|||
ModifyAimRectComponent = 2199,
|
||||
RemoveFromPool = 2200,
|
||||
ActivateSegmentInteract = 2201,
|
||||
RecordUseInitiativeItem = 2202,
|
||||
RecordUseBuddy = 2202,
|
||||
ModifyMultiHollowOutFloor = 2203,
|
||||
SetMultiHollowOutView = 2204,
|
||||
NextDropClueEvent = 2207,
|
||||
|
@ -42322,7 +42322,7 @@ impl ActionType {
|
|||
ActionType::ModifyAimRectComponent => "MODIFY_AIM_RECT_COMPONENT",
|
||||
ActionType::RemoveFromPool => "REMOVE_FROM_POOL",
|
||||
ActionType::ActivateSegmentInteract => "ACTIVATE_SEGMENT_INTERACT",
|
||||
ActionType::RecordUseInitiativeItem => "RECORD_USE_INITIATIVE_ITEM",
|
||||
ActionType::RecordUseBuddy => "RECORD_USE_buddy",
|
||||
ActionType::ModifyMultiHollowOutFloor => "MODIFY_MULTI_HOLLOW_OUT_FLOOR",
|
||||
ActionType::SetMultiHollowOutView => "SET_MULTI_HOLLOW_OUT_VIEW",
|
||||
ActionType::NextDropClueEvent => "NEXT_DROP_CLUE_EVENT",
|
||||
|
@ -42720,7 +42720,7 @@ impl ActionType {
|
|||
"MODIFY_AIM_RECT_COMPONENT" => Some(Self::ModifyAimRectComponent),
|
||||
"REMOVE_FROM_POOL" => Some(Self::RemoveFromPool),
|
||||
"ACTIVATE_SEGMENT_INTERACT" => Some(Self::ActivateSegmentInteract),
|
||||
"RECORD_USE_INITIATIVE_ITEM" => Some(Self::RecordUseInitiativeItem),
|
||||
"RECORD_USE_buddy" => Some(Self::RecordUseBuddy),
|
||||
"MODIFY_MULTI_HOLLOW_OUT_FLOOR" => Some(Self::ModifyMultiHollowOutFloor),
|
||||
"SET_MULTI_HOLLOW_OUT_VIEW" => Some(Self::SetMultiHollowOutView),
|
||||
"NEXT_DROP_CLUE_EVENT" => Some(Self::NextDropClueEvent),
|
||||
|
|
Loading…
Reference in a new issue