use std::fmt::Display; use num_enum::FromPrimitive; #[derive(Debug, PartialEq, Eq, Clone, Copy, FromPrimitive)] #[repr(u32)] pub enum ESceneType { #[default] Unknown = 0, Hall = 1, Hollow = 2, Fight = 3, Fresh = 4, MultiFight = 5, } #[derive(Debug, Default, PartialEq, Eq, Clone, Copy, FromPrimitive)] #[repr(u32)] pub enum ESystem { #[default] None = 0xFFFFFFFF, VhsStore = 7, Gacha = 21, Hadal = 43, MonsterCard = 40, AbyssCollect = 45, Vhs = 1, ActivityPv = 48, StoryModeSwitch = 12, RamenStore = 8, QteSwitch = 13, DoubleElite = 36, LandRevive = 35, HadalShop = 47, Role = 2, Grocery = 10, AvatarBase = 33, Activity = 27, BuddyInstall = 26, AvatarEquip = 34, TartarusHounds = 20, BossBig = 38, Buddy = 25, Interknot = 6, Workbench = 9, HIA = 39, Smithy = 3, Trash = 23, UseStoryMode = 15, Photowall = 44, AbyssShop = 46, AbyssHeat = 29, DailyQuest = 41, Newsstand = 17, Cafe = 22, Rally = 42, HollowQuest = 0, Package = 4, VideoShop = 11, BattleDaily = 24, Arcade = 19, BossSmall = 37, LineupSelect = 14, ArcadeRoom = 30, Teleport = 5, Train = 32, UseManualQteMode = 16, ArcadeGame = 31, Abyss = 28, Toy = 18, } #[derive(Default, Debug, Clone, Copy, FromPrimitive)] #[repr(u32)] pub enum EOperator { Enter = 0, Log = 1, Leave = 2, #[default] Undefined = 0xFFFFFFFF, } #[derive(Debug, Clone, Copy)] #[repr(u32)] pub enum TimePeriodType { Morning = 0, Evening = 1, Night = 2, } impl Display for TimePeriodType { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { std::fmt::Debug::fmt(self, f) } } #[derive(Default, Debug, Clone, Copy)] #[repr(u32)] pub enum WeatherType { SunShine = 0, Fog = 1, Cloudy = 2, Rain = 3, Thunder = 4, ThickFog = 5, ThickCloudy = 6, #[default] None = 0xFFFFFFFF, } impl Display for WeatherType { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { std::fmt::Debug::fmt(self, f) } } #[allow(dead_code)] #[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, BigBossBattle = 211, BossLittleBattleLongfight = 215, PureHollowBattle = 280, DualElite = 208, PureHollowBattleHardmode = 282, OperationBetaDemo = 216, AvatarDemoTrial = 213, BossRushBattle = 218, BossBattle = 210, GuideSpecial = 203, DailyChallenge = 206, OperationTeamCoop = 219, TrainingRoomFight = 291, LevelZero = 205, ArchiveLongFight = 212, MpBigBossBattle = 214, RallyLongFight = 207, BigBossBattleLongfight = 217, ArchiveBattle = 201, PureHollowBattleLonghfight = 281, HadalZone = 209, ChessBoardBattle = 202, #[default] Unknown = 0, }