diff --git a/src/KingSystem/World/CMakeLists.txt b/src/KingSystem/World/CMakeLists.txt index 66f9071c..c3dbbe5a 100644 --- a/src/KingSystem/World/CMakeLists.txt +++ b/src/KingSystem/World/CMakeLists.txt @@ -1,6 +1,7 @@ target_sources(uking PRIVATE worldChemicalMgr.cpp worldChemicalMgr.h + worldDefines.h worldDofMgr.cpp worldDofMgr.h worldEnvMgr.cpp diff --git a/src/KingSystem/World/worldDefines.h b/src/KingSystem/World/worldDefines.h new file mode 100644 index 00000000..0646c99c --- /dev/null +++ b/src/KingSystem/World/worldDefines.h @@ -0,0 +1,75 @@ +#pragma once + +#include +#include + +namespace ksys::world { + +SEAD_ENUM(DungeonSize, S,M,L,XL) +SEAD_ENUM(DungeonType, Gimmick,Enemy,Treasure) + +enum class CalcType { + _0 = 0, + _1 = 1, + _2 = 2, + Invalid = 3, +}; + +enum class RemainsType { + Wind, + Electric, + Fire, + Water, + FinalTrial, +}; + +enum class FieldType { + MainField = 0, + AocField = 1, +}; + +enum class ScalingMode { + Enabled = 0, + Disabled = 1, +}; + +enum class WeatherType { + Bluesky, + Cloudy, + Rain, + HeavyRain, + Snow, + HeavySnow, + ThunderStorm, + ThunderRain, + BlueskyRain, + Invalid = 0xff, +}; +constexpr u32 NumWeatherTypes = 9; + +enum class Climate { + HyrulePlainClimate, + NorthHyrulePlainClimate, + HebraFrostClimate, + TabantaAridClimate, + FrostClimate, + GerudoDesertClimate, + GerudoPlateauClimate, + EldinClimateLv0, + TamourPlainClimate, + ZoraTemperateClimate, + HateruPlainClimate, + FiloneSubtropicalClimate, + SouthHateruHumidTemperateClimate, + EldinClimateLv1, + EldinClimateLv2, + // sic + DarkWoodsClimat, + LostWoodClimate, + GerudoFrostClimate, + KorogForest, + GerudoDesertClimateLv2, +}; +constexpr u32 NumClimates = 20; + +} // namespace ksys::world diff --git a/src/KingSystem/World/worldManager.h b/src/KingSystem/World/worldManager.h index 81aff384..4946fe51 100644 --- a/src/KingSystem/World/worldManager.h +++ b/src/KingSystem/World/worldManager.h @@ -9,12 +9,12 @@ #include #include #include -#include #include #include "KingSystem/Resource/resHandle.h" #include "KingSystem/System/StageInfo.h" #include "KingSystem/Utils/Types.h" #include "KingSystem/World/worldChemicalMgr.h" +#include "KingSystem/World/worldDefines.h" #include "KingSystem/World/worldDofMgr.h" #include "KingSystem/World/worldEnvMgr.h" #include "KingSystem/World/worldShootingStarMgrEx.h" @@ -30,73 +30,6 @@ class WorkerMgr; namespace ksys::world { -SEAD_ENUM(DungeonSize, S,M,L,XL) -SEAD_ENUM(DungeonType, Gimmick,Enemy,Treasure) - -enum class CalcType { - _0 = 0, - _1 = 1, - _2 = 2, - Invalid = 3, -}; - -enum class RemainsType { - Wind, - Electric, - Fire, - Water, - FinalTrial, -}; - -enum class FieldType { - MainField = 0, - AocField = 1, -}; - -enum class ScalingMode { - Enabled = 0, - Disabled = 1, -}; - -enum class WeatherType { - Bluesky, - Cloudy, - Rain, - HeavyRain, - Snow, - HeavySnow, - ThunderStorm, - ThunderRain, - BlueskyRain, - Invalid = 0xff, -}; -constexpr u32 NumWeatherTypes = 9; - -enum class Climate { - HyrulePlainClimate, - NorthHyrulePlainClimate, - HebraFrostClimate, - TabantaAridClimate, - FrostClimate, - GerudoDesertClimate, - GerudoPlateauClimate, - EldinClimateLv0, - TamourPlainClimate, - ZoraTemperateClimate, - HateruPlainClimate, - FiloneSubtropicalClimate, - SouthHateruHumidTemperateClimate, - EldinClimateLv1, - EldinClimateLv2, - // sic - DarkWoodsClimat, - LostWoodClimate, - GerudoFrostClimate, - KorogForest, - GerudoDesertClimateLv2, -}; -constexpr u32 NumClimates = 20; - struct ClimateInfo { static constexpr int NumClimateTemp = 11;