From ddffb91cf5978c965e95661c75902e59aa9ce25f Mon Sep 17 00:00:00 2001 From: Kurt Date: Fri, 7 Feb 2025 09:51:37 -0600 Subject: [PATCH] Enhance FlatSharp generated code with Attributes, TypeConverter (#391) Fixes #390 Fixes #382 Fixes #381 Fixes #370 Fixes #355 --- .editorconfig | 69 ++++++- Directory.Build.props | 3 +- .../Arceus}/Arceus/Condition/ConditionUtil.cs | 0 .../Arceus/Arceus/Config/ConfigureTable.cs | 10 + FlatBuffers/Arceus/Arceus/Event/Trigger.cs | 8 + .../Arceus/Field/ISlotTableConsumer.cs | 0 .../Arceus/Field/LandmarkItemSpawnTable.cs | 19 -- .../Arceus}/Arceus/Field/LandmarkItemTable.cs | 13 -- .../Arceus/Arceus/Field/MassOutbreakTable.cs | 3 + .../Field/NewHuge/NewHugeOutbreakGroup.cs | 14 -- .../NewHuge/NewHugeOutbreakGroupLottery.cs | 14 -- .../Field/Placement/PlacementLocation.cs | 9 - .../Field/Placement/PlacementMkrgTable.cs | 13 -- .../Field/Placement/PlacementParameters.cs | 6 + .../Placement/PlacementSearchItemTable.cs | 16 -- .../Field/Placement/PlacementSpawner.cs | 10 - .../Field/Placement/PlacementSpawnerF20.cs | 10 - .../Field/Placement/PlacementSpawnerF21.cs | 10 - .../Field/Placement/PlacementUnnnTable.cs | 13 -- .../Arceus/Field/Resident/AreaInstance.cs | 0 .../Field/Resident/AreaSettingsTable.cs | 25 +++ .../Arceus/Field/Resident/AreaWeatherTable.cs | 6 + .../Field/Resident/Editing/ResidentArea.cs | 0 .../Field/Resident/Editing/ResidentInfo.cs | 3 - .../Field/Slots/EncounterDataArchive.cs | 16 -- .../Field/Slots/EncounterMultiplerArchive.cs | 10 - .../Arceus/Field/Slots/ISlotModifierTime.cs | 10 +- .../Field/Slots/ISlotModifierWeather.cs | 18 +- .../Field/Static/EventEncountArchive.cs | 17 -- .../Arceus}/Arceus/Poke/EvolutionTable.cs | 16 -- .../Arceus/Poke/Model Set/PokeModelSet.cs | 5 - .../Arceus}/Arceus/Poke/Model/Material.cs | 23 --- FlatBuffers/Arceus/Arceus/Poke/Model/Mesh.cs | 18 ++ .../Arceus}/Arceus/Poke/Model/MeshBuffer.cs | 13 -- .../Arceus}/Arceus/Poke/Model/Model.cs | 12 -- .../Arceus/Poke/Model/MultiMaterialTable.cs | 11 ++ .../Arceus/Poke/Model/PokemonModelArchive.cs | 19 +- .../Arceus}/Arceus/Poke/Model/Shader.cs | 4 - .../Arceus}/Arceus/Poke/Moves/Learnset.cs | 18 -- .../Arceus}/Arceus/Poke/PokeAIArchive.cs | 18 -- .../Arceus}/Arceus/Poke/PokeAdd.cs | 14 -- .../Poke/PokeCaptureCollisionArchive.cs | 15 -- .../Arceus/Arceus/Poke/PokeDropItemArchive.cs | 13 ++ .../Arceus/Poke/PokeDropItemBattleArchive.cs | 6 + .../Arceus}/Arceus/Poke/PokeMiscTable.cs | 10 - .../Arceus/Poke/PokeResource/PokeInfoList.cs | 27 --- .../Poke/PokeResource/PokeResourceTable.cs | 23 --- .../Arceus/Pokedex/PokedexResearchTable.cs | 22 +++ .../Arceus/Arceus/Throw/ThrowParamTable.cs | 6 + .../Arceus/Throw/ThrowableParamTable.cs | 13 ++ .../Arceus}/Arceus/TrData.cs | 13 -- .../Arceus}/Arceus/Util/ArchiveContents.cs | 13 -- .../Arceus}/Arceus/Util/EncounterDetail.cs | 3 - .../Arceus}/Arceus/Util/EncounterTableUtil.cs | 0 .../Arceus}/Arceus/Util/IHasCondition.cs | 0 .../Arceus}/Arceus/Util/SpawnerType.cs | 0 .../Arceus}/Arceus/Util/Time.cs | 0 .../Arceus}/Arceus/Util/TriggerUtil.cs | 0 .../Arceus}/Arceus/Util/Weather.cs | 2 - FlatBuffers/Arceus/Directory.Build.props | 11 ++ .../Arceus}/Dumpers/PersonalDumperPLA.cs | 0 .../Arceus}/Dumpers/PersonalInfo8LA.cs | 0 .../Arceus}/Dumpers/PersonalTable8LA.cs | 0 .../Arceus}/FnvHash.cs | 0 .../Arceus}/Schemas/Config/AppConfigList.fbs | 0 .../Arceus}/Schemas/Config/ConfigureTable.fbs | 0 .../Arceus}/Schemas/DressUp/DressUpTable.fbs | 0 .../Arceus}/Schemas/Event/Trigger.fbs | 0 .../Schemas/Field/LandmarkItemSpawnTable.fbs | 0 .../Schemas/Field/LandmarkItemTable.fbs | 0 .../Schemas/Field/MassOutbreakTable.fbs | 0 .../Field/NewHuge/NewHugeOutbreakGroup.fbs | 0 .../NewHuge/NewHugeOutbreakGroupLottery.fbs | 0 .../Field/NewHuge/NewHugeOutbreakLottery.fbs | 0 .../NewHuge/NewHugeOutbreakTimeLimit.fbs | 0 .../Schemas/Field/Resident/AreaBGMTable.fbs | 0 .../Field/Resident/AreaSettingsTable.fbs | 0 .../Field/Resident/AreaWeatherTable.fbs | 0 .../Field/Slots/EncounterDataArchive.fbs | 0 .../Field/Slots/EncounterMultiplerArchive.fbs | 0 .../Field/Static/EventEncountArchive.fbs | 0 .../Arceus}/Schemas/Ginkgo/GinkgoItem.fbs | 0 .../Schemas/Ginkgo/GinkgoItemTable.fbs | 0 .../Arceus}/Schemas/HaShopTable.fbs | 0 .../Arceus}/Schemas/Misc/ArchiveContents.fbs | 0 .../Schemas/Misc/KeyAssignmentTable.fbs | 0 .../Arceus}/Schemas/Misc/LbPointsTable.fbs | 0 .../Arceus}/Schemas/Misc/MoveShopTable.fbs | 0 .../Arceus}/Schemas/Misc/PlayReportTable.fbs | 0 .../Schemas/Misc/ScriptIDRecordRelease.fbs | 0 .../Arceus}/Schemas/NPC/NPCModelSet.fbs | 0 .../Schemas/Placement/OybnSettingTable.fbs | 0 .../Placement/PlacementItemArchive.fbs | 0 .../Placement/PlacementLocationArchive.fbs | 0 .../Schemas/Placement/PlacementMkrgTable.fbs | 0 .../Schemas/Placement/PlacementParameters.fbs | 0 .../Placement/PlacementSearchItemTable.fbs | 0 .../Placement/PlacementSpawnerData.fbs | 0 .../Schemas/Placement/PlacementUnnnTable.fbs | 0 .../Arceus}/Schemas/Poke/EvolutionTable.fbs | 2 +- .../Schemas/Poke/Model Set/PokeModelSet.fbs | 0 .../Schemas/Poke/Model/BoneScalarMesh.fbs | 0 .../Arceus}/Schemas/Poke/Model/Material.fbs | 0 .../Arceus}/Schemas/Poke/Model/Mesh.fbs | 0 .../Arceus}/Schemas/Poke/Model/MeshBuffer.fbs | 0 .../Arceus}/Schemas/Poke/Model/Model.fbs | 0 .../Schemas/Poke/Model/MultiMaterialTable.fbs | 0 .../Arceus}/Schemas/Poke/Model/PokeConfig.fbs | 0 .../Arceus}/Schemas/Poke/Model/Shader.fbs | 0 .../Arceus}/Schemas/Poke/Model/Skeleton.fbs | 0 .../Arceus}/Schemas/Poke/Moves/Learnset.fbs | 0 .../Poke/Moves/PokeFieldObstructionWaza.fbs | 0 ...okeFieldObstructionWazaNsLegendArchive.fbs | 0 ...ldObstructionWazaNsLegendEffectArchive.fbs | 0 .../PokeFieldObstructionWazaSeArchive.fbs | 0 .../PokeFieldObstructionWazaWildArchive.fbs | 0 ...eFieldObstructionWazaWildEffectArchive.fbs | 0 ...keFieldObstructionWazaWildWaterArchive.fbs | 0 ...dObstructionWazaWildWaterEffectArchive.fbs | 0 .../Arceus}/Schemas/Poke/Moves/Waza.fbs | 0 .../Arceus}/Schemas/Poke/PersonalInfoLAfb.fbs | 0 .../Arceus}/Schemas/Poke/PokeAIArchive.fbs | 0 .../Arceus}/Schemas/Poke/PokeAdd.fbs | 0 .../Schemas/Poke/PokeBattleSpawnArchive.fbs | 0 .../Schemas/Poke/PokeBodyParticleArchive.fbs | 0 .../Poke/PokeCaptureCollisionArchive.fbs | 0 .../Poke/PokeDefaultLocatorArchive.fbs | 0 .../Arceus}/Schemas/Poke/PokeDropItem.fbs | 0 .../Schemas/Poke/PokeDropItemArchive.fbs | 0 .../Poke/PokeDropItemBattleArchive.fbs | 0 .../Schemas/Poke/PokeEatingHabitsArchive.fbs | 0 .../Arceus}/Schemas/Poke/PokeMiscTable.fbs | 0 .../Poke/PokeResource/PokeInfoList.fbs | 0 .../Poke/PokeResource/PokeResourceTable.fbs | 0 .../Pokedex/PokedexDistributionTable.fbs | 0 .../Schemas/Pokedex/PokedexRankTable.fbs | 0 .../Schemas/Pokedex/PokedexResearchTable.fbs | 0 .../Arceus}/Schemas/Shared/AbilityType.fbs | 0 .../Schemas/Shared/FlatDummyObject.fbs | 0 .../Arceus}/Schemas/Shared/NatureType.fbs | 0 .../Arceus}/Schemas/Shared/ShinyType.fbs | 0 .../Throw/CommonCaptureConfigTable.fbs | 0 .../Arceus}/Schemas/Throw/ThrowParamTable.fbs | 0 .../Schemas/Throw/ThrowPermissionSet.fbs | 0 .../Throw/ThrowableBaitParamDictionary.fbs | 0 .../Schemas/Throw/ThrowableParamTable.fbs | 0 .../Throw/ThrowableResourceDictionary.fbs | 0 .../Throw/ThrowableResourceSetDictionary.fbs | 0 .../Arceus}/Schemas/TrainerData.fbs | 0 .../pkNX.Structures.FlatBuffers.Arceus.csproj | 0 FlatBuffers/Directory.Build.props | 33 ++++ FlatBuffers/LGPE/Directory.Build.props | 11 ++ .../LGPE}/Gen7/EncounterTableUtil.cs | 2 - .../LGPE}/Gen7/ShopInventory.cs | 14 -- .../LGPE}/Schemas/shop.fbs | 0 .../LGPE}/Schemas/wild.fbs | 0 .../pkNX.Structures.FlatBuffers.LGPE.csproj | 2 + .../SV/Audio}/Schemas/BGMEventArray.fbs | 0 .../SV/Audio}/Schemas/BGMEventType.fbs | 0 .../Schemas/EnvPokeVoiceLotterySetting.fbs | 0 ...kNX.Structures.FlatBuffers.SV.Audio.csproj | 2 + .../Schemas/GameBaseParamTableArray.fbs | 0 .../Schemas/OjamaPokemonCommonTableArray.fbs | 0 .../Schemas/OjamaPokemonUniqueTableArray.fbs | 0 .../Balloon}/Schemas/ResultDemoTableArray.fbs | 0 .../Schemas/RewardActionTableArray.fbs | 0 .../SV/Balloon}/Schemas/RewardTableArray.fbs | 0 .../Balloon}/Schemas/ScoreBaseTableArray.fbs | 0 ...X.Structures.FlatBuffers.SV.Balloon.csproj | 2 + .../SV/Battle}/Schemas/BattleConfig.fbs | 0 .../Schemas/BattleEffectTableArray.fbs | 0 .../SV/Battle}/Schemas/ItemTableArray.fbs | 0 .../NetBattle/NetBattleRuleDataArray.fbs | 0 .../NetBattle/NetBattleRuleParamArray.fbs | 0 .../Schemas/PokeExceptionTableArray.fbs | 0 ...NX.Structures.FlatBuffers.SV.Battle.csproj | 2 + .../SV/Cooking}/Food/FoodPokeTypeParam.cs | 2 - .../SV/Cooking}/Schemas/BufDataArray.fbs | 0 .../SV/Cooking}/Schemas/CookingCommonData.fbs | 0 .../Cooking}/Schemas/Enums/FoodSkillType.fbs | 0 .../Cooking}/Schemas/Enums/IngredientType.fbs | 0 .../SV/Cooking}/Schemas/Enums/RecipeType.fbs | 0 .../Cooking}/Schemas/Enums/SeasoningType.fbs | 0 .../Cooking}/Schemas/FoodPowerComboArray.fbs | 0 .../Cooking}/Schemas/IngredientDataArray.fbs | 0 .../Schemas/IngredientDishDataArray.fbs | 0 .../Schemas/Param/FoodPokeTypeParam.fbs | 0 .../Schemas/Param/FoodPowerComboParam.fbs | 0 .../Cooking}/Schemas/Param/FoodPowerParam.fbs | 0 .../Schemas/Param/IngredientParam.fbs | 0 .../SV/Cooking}/Schemas/RecipeDataArray.fbs | 0 .../Cooking}/Schemas/SeasoningDataArray.fbs | 0 .../Schemas/TakaraSpicePowerTableArray.fbs | 0 ...X.Structures.FlatBuffers.SV.Cooking.csproj | 2 + FlatBuffers/SV/Directory.Build.props | 26 +++ .../Event}/Schemas/EventAddPokemonArray.fbs | 0 .../Schemas/EventSub012.RewardTableArray.fbs | 0 .../SV/Event}/Schemas/EventTradeListArray.fbs | 0 .../Event}/Schemas/EventTradePokemonArray.fbs | 0 .../Event}/Schemas/LegendPokeTableArray.fbs | 0 .../Schemas/Motion/FieldNpcFaceType.fbs | 0 .../Event}/Schemas/Motion/FieldNpcMotion.fbs | 0 .../Schemas/Motion/FieldNpcMotionType.fbs | 0 .../Motion/FieldNpcPokemonDefaultMotion.fbs | 0 .../Schemas/Motion/FieldNpcPokemonMotion.fbs | 0 .../Schemas/Motion/NpcTrafficFormation.fbs | 0 .../Schemas/Motion/NpcTrafficPartnerType.fbs | 0 .../Schemas/NpcTrafficGenerateTableArray.fbs | 0 .../Event}/Schemas/PopupWindowTableArray.fbs | 0 .../Event}/Schemas/ReleasePokeTableArray.fbs | 0 .../Event}/Schemas/TreeShakePokemonArray.fbs | 0 ...kNX.Structures.FlatBuffers.SV.Event.csproj | 2 + .../SV/Gym}/Schemas/ExerciseRewardData.fbs | 0 .../SV/Gym}/Schemas/ExerciseSetting.fbs | 0 .../Schemas/GymKooriCoursePokemonTable.fbs | 0 .../Gym}/Schemas/GymKooriCourseTableArray.fbs | 0 .../Schemas/gym.denki.PopupPosTableArray.fbs | 0 .../Schemas/gym.esper.ENDLESS_BORDERArray.fbs | 0 .../gym.esper.EXERCISE_COURSESArray.fbs | 0 .../Gym}/Schemas/gym.kusa.PokeTableArray.fbs | 0 .../Schemas/gym.kusa.RewardTableArray.fbs | 0 .../Gym}/Schemas/gym.mizu.FixTableArray.fbs | 0 .../Schemas/gym.mizu.SeriItemTableArray.fbs | 0 .../Schemas/gym.mizu.SeriNpcTableArray.fbs | 0 .../Schemas/gym.mizu.SeriVenueTableArray.fbs | 0 .../Gym}/Schemas/gym.mushi.GymMushiData.fbs | 0 .../Schemas/gym.mushi.GymMushiRewardArray.fbs | 0 .../Schemas/gym_denki.PopupFixTableArray.fbs | 0 .../pkNX.Structures.FlatBuffers.SV.Gym.csproj | 2 + .../SV/Item}/Schemas/DLCItemGroupArray.fbs | 0 .../SV/Item}/Schemas/DropItemDataArray.fbs | 0 .../Schemas/Enums/BattleFunctionType.fbs | 0 .../SV/Item}/Schemas/Enums/EquipEffect.fbs | 0 .../Item}/Schemas/Enums/FieldFunctionType.fbs | 0 .../SV/Item}/Schemas/Enums/FieldPocket.fbs | 0 .../SV/Item}/Schemas/Enums/ItemGroup.fbs | 0 .../SV/Item}/Schemas/Enums/ItemType.fbs | 0 .../SV/Item}/Schemas/Enums/PluckEffect.fbs | 0 .../SV/Item}/Schemas/Enums/WorkPpSelTgt.fbs | 0 .../SV/Item}/Schemas/Enums/WorkType.fbs | 0 .../Schemas/HiddenItemBiomeTableArray.fbs | 0 .../Schemas/HiddenItemDataTableArray.fbs | 0 .../SV/Item}/Schemas/ItemDataArray.fbs | 0 .../Schemas/ItemPointTypeBiomeTableArray.fbs | 0 .../SV/Item}/Schemas/MonohiroiItemArray.fbs | 0 .../Schemas/RummagingItemDataTableArray.fbs | 0 ...pkNX.Structures.FlatBuffers.SV.Item.csproj | 2 + .../Schemas/Ajito/AjitoCommonLevelArray.fbs | 0 .../Schemas/Ajito/AjitoDifficultEnum.fbs | 0 .../Misc}/Schemas/Ajito/AjitoPokemonArray.fbs | 0 .../SV/Misc}/Schemas/Ajito/AjitoTypeEnum.fbs | 0 .../SV/Misc}/Schemas/Ajito/AjitoUnitArray.fbs | 0 .../Schemas/DanBattle/DanCarBattleData.fbs | 0 .../Schemas/GemSettingRootTableArray.fbs | 0 .../Schemas/ObjectGenerationRangeArray.fbs | 0 .../SV/Misc}/Schemas/RibbonDataArray.fbs | 0 ...pkNX.Structures.FlatBuffers.SV.Misc.csproj | 2 + .../SV/Personal}/Dumpers/PersonalDumperSV.cs | 25 ++- .../Personal/Types/PersonalInfoDex.cs | 3 + .../Personal/Types/PersonalInfoEvolution.cs | 3 + .../Personal/Types/PersonalInfoGender.cs | 4 - .../Personal/Types/PersonalInfoStats.cs | 4 - .../Personal/Wrapper/PersonalInfo9SV.cs | 3 - .../Personal/Wrapper/PersonalTable9SV.cs | 4 - .../Personal}/Schemas/PersonalInfoDetail.fbs | 0 .../SV/Personal}/Schemas/PersonalInfoDex.fbs | 0 .../Schemas/PersonalInfoEvolution.fbs | 0 .../Personal}/Schemas/PersonalInfoGender.fbs | 0 .../Personal}/Schemas/PersonalInfoHatch.fbs | 0 .../SV/Personal}/Schemas/PersonalInfoMove.fbs | 0 .../Personal}/Schemas/PersonalInfoStats.fbs | 0 .../SV/Personal}/Schemas/PersonalTable.fbs | 0 ....Structures.FlatBuffers.SV.Personal.csproj | 2 + .../SV/Picnic}/Schemas/PicnicPokemon.fbs | 0 .../SV/Picnic}/Schemas/PicnicSystemData.fbs | 0 .../SV/Picnic}/Schemas/PicnicTablesetData.fbs | 0 .../SV/Picnic}/Schemas/PicnicWagonData.fbs | 0 ...NX.Structures.FlatBuffers.SV.Picnic.csproj | 2 + .../Raid}/Raid/DeliveryRaidEnemyTableArray.cs | 9 - .../Raid/DeliveryRaidFixedRewardItemArray.cs | 10 - .../DeliveryRaidLotteryRewardItemArray.cs | 7 - .../SV/Raid}/Raid/RaidFixedRewardItemArray.cs | 7 - .../Raid}/Raid/RaidLotteryRewardItemArray.cs | 7 - .../Schemas/DeliveryRaidEnemyTableArray.fbs | 0 .../DeliveryRaidFixedRewardItemArray.fbs | 0 .../DeliveryRaidLotteryRewardItemArray.fbs | 0 .../Schemas/DeliveryRaidPriorityArray.fbs | 0 .../Schemas/Enums/RaidBossExtraActType.fbs | 0 .../Schemas/Enums/RaidBossExtraTimingType.fbs | 0 .../Enums/RaidRewardItemCategoryType.fbs | 0 .../Enums/RaidRewardItemSubjectType.fbs | 0 .../SV/Raid}/Schemas/Enums/RaidRomType.fbs | 0 .../RaidDifficultyLotteryTableArray.fbs | 0 .../SV/Raid}/Schemas/RaidEnemyInfo.fbs | 0 .../SV/Raid}/Schemas/RaidEnemyTableArray.fbs | 0 .../Schemas/RaidFixedRewardItemArray.fbs | 0 .../Raid}/Schemas/RaidFixedRewardItemInfo.fbs | 0 .../Raid}/Schemas/RaidGemItemRewardBoost.fbs | 0 .../SV/Raid}/Schemas/RaidGemSetting.fbs | 0 .../Schemas/RaidLotteryRewardItemArray.fbs | 0 .../Schemas/RaidLotteryRewardItemInfo.fbs | 0 .../Raid}/Schemas/RaidPokeScaleDataArray.fbs | 0 .../SV/Raid}/Schemas/RaidRewardSlotArray.fbs | 0 .../SV/Raid}/Schemas/RaidTrainerArray.fbs | 0 ...pkNX.Structures.FlatBuffers.SV.Raid.csproj | 2 + .../SV/Shared/Gen9/PokeData/ParamSet.cs | 8 + .../Shared}/Gen9/PokeData/PokeDataBattle.cs | 8 - .../SV/Shared}/Gen9/SpeciesConverterSV.cs | 0 .../Shared}/Schemas/Entity/CollisionShape.fbs | 0 .../Schemas/Entity/ComparisonOperatorType.fbs | 0 ...ditionSimpleAutoBattleHecklerAreaArray.fbs | 0 .../SV/Shared}/Schemas/Entity/OwnerInfo.fbs | 0 .../SV/Shared}/Schemas/Entity/ParamSet.fbs | 0 .../Shared}/Schemas/Entity/PokeObjArray.fbs | 0 .../Schemas/Entity/PokemonTriggerID.fbs | 0 .../Schemas/Entity/PokemonUniquePathData.fbs | 0 .../Schemas/PokeData/PokeDataBattle.fbs | 0 .../Schemas/PokeData/PokeDataEventBattle.fbs | 0 .../Shared}/Schemas/PokeData/PokeDataFull.fbs | 0 .../Schemas/PokeData/PokeDataSymbol.fbs | 0 .../Schemas/PokeData/PokeDataTrade.fbs | 0 .../SV/Shared}/Schemas/PokeData/WazaSet.fbs | 0 .../SV/Shared}/Schemas/Shared/BallType.fbs | 0 .../SV/Shared}/Schemas/Shared/BattleType.fbs | 0 .../SV/Shared}/Schemas/Shared/ClerkType.fbs | 0 .../SV/Shared}/Schemas/Shared/CondEnum.fbs | 0 .../SV/Shared}/Schemas/Shared/DataType.fbs | 0 .../SV/Shared}/Schemas/Shared/DevID.fbs | 0 .../SV/Shared}/Schemas/Shared/GemType.fbs | 0 .../SV/Shared}/Schemas/Shared/ItemID.fbs | 0 .../SV/Shared}/Schemas/Shared/LangType.fbs | 0 .../Shared}/Schemas/Shared/MahoippuViewID.fbs | 0 .../SV/Shared}/Schemas/Shared/MoveType.fbs | 0 .../SV/Shared}/Schemas/Shared/PayType.fbs | 0 .../Shared}/Schemas/Shared/PokeMemoType.fbs | 0 .../SV/Shared}/Schemas/Shared/RareType.fbs | 0 .../SV/Shared}/Schemas/Shared/RibbonType.fbs | 0 .../SV/Shared}/Schemas/Shared/SeikakuType.fbs | 0 .../SV/Shared}/Schemas/Shared/SellType.fbs | 0 .../SV/Shared}/Schemas/Shared/Sex.fbs | 0 .../SV/Shared}/Schemas/Shared/SexType.fbs | 0 .../SV/Shared}/Schemas/Shared/ShopKind.fbs | 0 .../SV/Shared}/Schemas/Shared/SizeType.fbs | 0 .../SV/Shared}/Schemas/Shared/TalentType.fbs | 0 .../SV/Shared}/Schemas/Shared/TokuseiID.fbs | 0 .../SV/Shared}/Schemas/Shared/TokuseiType.fbs | 0 .../SV/Shared}/Schemas/Shared/WazaID.fbs | 0 .../SV/Shared}/Schemas/Shared/WazaType.fbs | 0 ...NX.Structures.FlatBuffers.SV.Shared.csproj | 2 + .../Trainers}/Schemas/Talk/CheckCategory.fbs | 0 .../SV/Trainers}/Schemas/Talk/TalkData.fbs | 0 .../Trainers}/Schemas/Talk/TalkRankEffect.fbs | 0 .../SV/Trainers}/Schemas/TrainerBodySize.fbs | 0 .../SV/Trainers}/Schemas/TrainerCategory.fbs | 0 .../SV/Trainers}/Schemas/TrainerDataArray.fbs | 0 .../SV/Trainers}/Schemas/TrainerEnvArray.fbs | 0 .../SV/Trainers}/Schemas/TrainerTypeArray.fbs | 0 ....Structures.FlatBuffers.SV.Trainers.csproj | 2 + .../Archive/TrinityFileDescriptors.cs | 18 -- .../Archive/TrinityFileSystemManager.cs | 2 - .../Archive/TrinityFileSystemMetadata.cs | 11 -- .../SV/Trinity}/Archive/TrinityPak.cs | 11 -- .../Trinity}/Archive/TrinityPakExtractor.cs | 5 +- .../SV/Trinity}/Scene/SceneDumper.cs | 3 - .../Schemas/TIAIPerceptualComponent.fbs | 0 .../Schemas/TIDynamicExclusionComponent.fbs | 0 .../Schemas/TIModelDitherFadeComponent.fbs | 0 .../SV/Trinity}/Schemas/TrinityComponent.fbs | 0 .../Schemas/TrinityEnvironmentParameter.fbs | 0 .../Schemas/TrinityFileDescriptors.fbs | 0 .../Schemas/TrinityFileSystemMetadata.fbs | 0 .../Schemas/TrinityGroundPlaceComponent.fbs | 0 .../Schemas/TrinityModelComponent.fbs | 0 .../Schemas/TrinityOverrideSensorData.fbs | 0 .../SV/Trinity}/Schemas/TrinityPak.fbs | 0 .../Schemas/TrinityParticleComponent.fbs | 0 .../Trinity}/Schemas/TrinityPropertySheet.fbs | 0 .../Trinity}/Schemas/TrinitySceneObject.fbs | 0 .../Schemas/TrinitySceneObjectTemplate.fbs | 0 .../SV/Trinity}/Schemas/TrinityScenePoint.fbs | 0 ...X.Structures.FlatBuffers.SV.Trinity.csproj | 5 + .../UI}/Schemas/BattleBgmSelectTableArray.fbs | 0 .../Dressup/DressupCategoryDataArray.fbs | 0 .../Schemas/Dressup/DressupItemDataArray.fbs | 0 .../Schemas/Dressup/DressupShopDataArray.fbs | 0 .../Schemas/Dressup/DressupStyleDataArray.fbs | 0 .../Dressup/DressupStylePresetDataArray.fbs | 0 .../ItemMachineEffectTableArray.fbs | 0 .../ItemMachine/ItemMachineItemTableArray.fbs | 0 .../ItemMachineLotteryTableArray.fbs | 0 .../ItemMachineSpecialTableArray.fbs | 0 .../ItemMachine/MaterialBaseParamArray.fbs | 0 .../UI}/Schemas/Quest/DanQuestClearArray.fbs | 0 .../SV/UI}/Schemas/Quest/EventSkyFlyArray.fbs | 0 .../UI}/Schemas/Quest/GymQuestClearArray.fbs | 0 .../Schemas/Quest/NushiQuestClearArray.fbs | 0 .../Restaurant/RestaurantMenuDataArray.fbs | 0 .../Restaurant/RestaurantShopDataArray.fbs | 0 .../SV/UI}/Schemas/SchoolMapDataArray.fbs | 0 .../Schemas/Shop/FriendlyShopDataArray.fbs | 0 .../SV/UI}/Schemas/Shop/LineupDataArray.fbs | 0 .../SV/UI}/Schemas/Shop/ShopDataArray.fbs | 0 .../Schemas/Shop/ShopWazamachineDataArray.fbs | 0 .../SV/UI}/Schemas/SystemBgArray.fbs | 0 .../SV/UI}/Schemas/TipsDataArray.fbs | 0 .../ymap/DestinationDataTableArray.fbs | 0 .../ymap/NpcDestinationDataTableArray.fbs | 0 .../Schemas/ymap/PlaceNameDataTableArray.fbs | 0 .../pkNX.Structures.FlatBuffers.SV.UI.csproj | 2 + .../SV/Waza}/Schemas/TokuseiArray.fbs | 0 .../SV/Waza}/Schemas/Waza.fbs | 0 .../SV/Waza}/Schemas/WazaAffinity.fbs | 0 .../SV/Waza}/Schemas/WazaEntityStat.fbs | 0 .../SV/Waza}/Schemas/WazaInflict.fbs | 0 ...pkNX.Structures.FlatBuffers.SV.Waza.csproj | 2 + .../SV/World}/Schemas/Area/AreaInfo.fbs | 0 .../SV/World}/Schemas/Area/AreaTag.fbs | 0 .../SV/World}/Schemas/Area/AreaType.fbs | 0 .../SV/World}/Schemas/Area/BandType.fbs | 0 .../SV/World}/Schemas/Area/Biome.fbs | 0 .../SV/World}/Schemas/Area/BringItem.fbs | 0 .../SV/World}/Schemas/Area/EnableTable.fbs | 0 .../SV/World}/Schemas/Area/EncAttr.fbs | 0 .../SV/World}/Schemas/Area/EncBiome.fbs | 0 .../SV/World}/Schemas/Area/FieldAttrKey.fbs | 0 .../Schemas/Area/FieldDungeonAreaArray.fbs | 0 .../Schemas/Area/FieldInsideAreaArray.fbs | 0 .../Schemas/Area/FieldLocationArray.fbs | 0 .../Schemas/Area/FieldMainAreaArray.fbs | 0 .../World}/Schemas/Area/FieldSubAreaArray.fbs | 0 .../SV/World}/Schemas/Area/OverrideBiome.fbs | 0 .../World}/Schemas/ClubNpcRewardListArray.fbs | 0 .../World}/Schemas/ClubRoomBoardInfoArray.fbs | 0 .../SV/World}/Schemas/ClubRoomCoach.fbs | 0 .../World}/Schemas/ClubRoomNpcPairTable.fbs | 4 +- .../World}/Schemas/DeliveryOutbreakArray.fbs | 0 .../Schemas/DeliveryOutbreakPokeDataArray.fbs | 0 .../World}/Schemas/EncountPokeDataArray.fbs | 0 .../Schemas/EventBattlePokemonArray.fbs | 0 .../World}/Schemas/Field/AreaFlyFlagArray.fbs | 0 .../Schemas/Field/CoinSymbolManager.fbs | 0 .../Schemas/Field/ExclusionGroupArray.fbs | 0 .../Field/FieldAutoReturnPosTableArray.fbs | 0 .../Field/FieldAutomaticReturnTableArray.fbs | 0 .../SV/World}/Schemas/Field/FieldCamera.fbs | 0 .../Schemas/Field/FieldInteriorCamera.fbs | 0 .../Field/FieldOutOfRangeTableArray.fbs | 0 .../SV/World}/Schemas/Field/FieldPlayer.fbs | 0 .../SV/World}/Schemas/Field/FieldRide.fbs | 0 .../Field/GemSymbolLotteryTableArray.fbs | 0 .../World}/Schemas/Field/GemSymbolSetting.fbs | 0 .../Field/MapChangeParametersArray.fbs | 0 .../Schemas/FixedSymbol/BehaviorFrequency.fbs | 0 .../Schemas/FixedSymbol/FixedSymbolAI.fbs | 0 .../Schemas/FixedSymbol/FixedSymbolArray.fbs | 0 .../FixedSymbol/FixedSymbolGeneration.fbs | 0 .../FixedSymbol/FixedSymbolManager.fbs | 0 .../Schemas/FixedSymbol/GenerationPattern.fbs | 0 .../Schemas/FixedSymbol/PokemonActionID.fbs | 0 .../SV/World}/Schemas/MetamonBlockInfo.fbs | 0 .../SV/World}/Schemas/MissionDifficulty.fbs | 0 .../Schemas/MissionDifficultyWeight.fbs | 0 .../SV/World}/Schemas/MissionInfosArray.fbs | 0 .../World}/Schemas/MissionSettingsArray.fbs | 0 .../SV/World}/Schemas/MissionType.fbs | 0 .../SV/World}/Schemas/OutbreakPointArray.fbs | 0 .../SV/World}/Schemas/OutbreakSetting.fbs | 0 .../SV/World}/Schemas/PointDataArray.fbs | 0 .../SV/World}/Schemas/SettingData.fbs | 0 .../SV/World}/Schemas/TimeTable.fbs | 0 .../SV/World}/Schemas/VersionTable.fbs | 0 FlatBuffers/SV/World/World/AreaInfo.cs | 7 + .../World}/World/DeliveryOutbreakPokeData.cs | 13 -- .../SV/World}/World/EncountPokeData.cs | 3 - ...kNX.Structures.FlatBuffers.SV.World.csproj | 2 + .../SV/Zukan}/Schemas/BlacklistArray.fbs | 0 .../Zukan}/Schemas/DistributionRootArray.fbs | 0 .../SV/Zukan}/Schemas/MemoPokeTableArray.fbs | 0 .../SV/Zukan}/Schemas/RewardDataArray.fbs | 0 ...kNX.Structures.FlatBuffers.SV.Zukan.csproj | 2 + FlatBuffers/SWSH/Directory.Build.props | 11 ++ .../SWSH}/Gen8/Gift/GiftEncounter.cs | 8 - FlatBuffers/SWSH/Gen8/Model/GFBModel.cs | 23 +++ FlatBuffers/SWSH/Gen8/Model/GFBPokeConfig.cs | 6 + .../SWSH}/Gen8/Nest/EncounterNestArchive.cs | 11 -- .../Gen8/Nest/EncounterUndergroundArchive.cs | 13 -- .../Nest/NestHoleCrystalEncounterArchive.cs | 12 -- .../NestHoleDistributionEncounterArchive.cs | 16 -- .../Nest/NestHoleDistributionRewardArchive.cs | 12 -- .../SWSH}/Gen8/Nest/NestHoleRewardArchive.cs | 13 -- .../SWSH}/Gen8/Other/CellTable.cs | 23 +-- FlatBuffers/SWSH/Gen8/Other/Rental.cs | 6 + .../SWSH}/Gen8/Other/ShopInventory.cs | 12 -- FlatBuffers/SWSH/Gen8/Other/SymbolBehavior.cs | 6 + .../SWSH/Gen8/Placement/PlacementArea8_F24.cs | 11 ++ .../PlacementZoneFishingPointHolder.cs | 6 + .../PlacementZoneMovementPathHolder.cs | 8 + .../Holders/PlacementZoneOtherNPCHolder.cs | 20 -- .../Holders/PlacementZoneParticleHolder.cs | 8 + .../Holders/PlacementZoneSpeciesHolder.cs | 6 + .../PlacementZoneStaticObjectsHolder.cs | 16 -- .../Holders/PlacementZoneTrainerHolder.cs | 11 ++ .../Holders/PlacementZoneUnitObjectHolder.cs | 7 + .../Zone/Holders/PlacementZoneWarpHolder.cs | 6 + .../Gen8/Placement/Zone/PlacementZone8.cs | 10 - .../Gen8/Static/EncounterStaticArchive.cs | 9 - .../SWSH}/Gen8/Trade/EncounterTradeArchive.cs | 9 - .../SWSH}/Gen8/Waza/Waza.cs | 0 .../SWSH}/Gen8/Wild/EncounterTableUtil.cs | 0 .../SWSH}/Schemas/ArchiveContent.fbs | 0 .../SWSH}/Schemas/BattleTowerPoke.fbs | 0 .../SWSH}/Schemas/BattleTowerTrainer.fbs | 0 .../SWSH}/Schemas/CellTable.fbs | 0 .../SWSH}/Schemas/EncounterArchive.fbs | 0 .../SWSH}/Schemas/EncounterNestArchive.fbs | 0 .../SWSH}/Schemas/EncounterStaticArchive.fbs | 0 .../SWSH}/Schemas/EncounterTradeArchive.fbs | 0 .../SWSH}/Schemas/GiftArchive.fbs | 0 .../SWSH}/Schemas/Model/GFBModel.fbs | 0 .../SWSH}/Schemas/Model/GFBPokeConfig.fbs | 0 .../NestHoleCrystalEncounterArchive.fbs | 0 .../NestHoleDistributionEncounterArchive.fbs | 0 .../NestHoleDistributionRewardArchive.fbs | 0 .../SWSH}/Schemas/NestHoleLevelArchive.fbs | 0 .../SWSH}/Schemas/NestHoleRewardArchive.fbs | 0 .../Schemas/NestHoleUndergroundArchive.fbs | 0 .../SWSH}/Schemas/Placement/Placement.fbs | 0 .../Schemas/Placement/PlacementShared.fbs | 0 .../SWSH}/Schemas/Placement/PlacementZone.fbs | 0 .../PlacementZoneAdvancedTipHolder.fbs | 0 .../PlacementZoneBerryTreeHolder.fbs | 0 .../PlacementZoneEnvironmentHolder.fbs | 0 .../PlacementZoneFieldItemHolder.fbs | 0 .../PlacementZoneFishingPointHolder.fbs | 0 .../PlacementZoneFlightAnchorHolder.fbs | 0 .../PlacementZoneHiddenItemHolder.fbs | 0 .../Placement/PlacementZoneIKStepHolder.fbs | 0 .../Placement/PlacementZoneLadderHolder.fbs | 0 .../PlacementZoneMovementPathHolder.fbs | 0 .../Placement/PlacementZoneNPCHolder.fbs | 0 .../Placement/PlacementZoneNestHoleHolder.fbs | 0 .../Placement/PlacementZoneOtherNPCHolder.fbs | 0 .../Placement/PlacementZoneParticleHolder.fbs | 0 ...acementZonePokeCenterSpawnAnchorHolder.fbs | 0 .../Placement/PlacementZonePopupHolder.fbs | 0 .../Placement/PlacementZoneQuadrantHolder.fbs | 0 .../PlacementZoneRotomRallyEntry.fbs | 0 .../Placement/PlacementZoneSpeciesHolder.fbs | 0 .../PlacementZoneStaticObjectsHolder.fbs | 0 .../Placement/PlacementZoneStepJumpHolder.fbs | 0 .../PlacementZoneSymbolSpawnHolder.fbs | 0 .../Placement/PlacementZoneTrainerHolder.fbs | 0 .../PlacementZoneTrainerTipHolder.fbs | 0 .../Placement/PlacementZoneTriggerHolder.fbs | 0 .../PlacementZoneUnitObjectHolder.fbs | 0 .../Placement/PlacementZoneWarpHolder.fbs | 0 .../SWSH}/Schemas/PokeResourceTable.fbs | 0 .../SWSH}/Schemas/RentalArchive.fbs | 0 .../SWSH}/Schemas/ScriptMeta.fbs | 0 .../SWSH}/Schemas/SymbolBehavior.fbs | 0 .../SWSH}/Schemas/Waza.fbs | 0 .../SWSH}/Schemas/WeatherEntry.fbs | 0 .../SWSH}/Schemas/shop.fbs | 0 .../pkNX.Structures.FlatBuffers.SWSH.csproj | 2 + .../ReflectionDumpSchema.cs | 18 +- .../SchemaDumpSettings.cs | 0 .../Schemas/reflection.fbs | 0 ...X.Structures.FlatBuffers.Reflection.csproj | 2 + .../ExpandableAttributeGenerator.cs | 103 ++++++++++ .../LICENSE | 24 +++ ...NX.Structures.FlatBuffers.SourceGen.csproj | 21 ++ .../Data/Color3f.cs | 3 - .../Data/Color4f.cs | 2 - .../Data/Unorm16.cs | 1 - .../Data/Unorm8.cs | 1 - .../FlatBufferConverter.cs | 5 +- .../Geometry}/AABB.cs | 6 - .../Geometry}/PackedAABB.cs | 6 - .../Geometry}/Sphere.cs | 6 - .../Math/PackedVec2f.cs | 3 - .../Math/PackedVec3f.cs | 3 - .../Math/PackedVec4f.cs | 3 - .../Math/PackedVec4i.cs | 3 - .../Math/Vec2f.cs | 4 - .../Math/Vec3f.cs | 3 - .../Math/Vec4f.cs | 4 - .../Math}/Vec4i.cs | 12 +- .../Schemas/Geometry/AABB.fbs | 2 +- .../Schemas/Geometry/PackedAABB.fbs | 2 +- .../Schemas/Geometry/Sphere.fbs | 2 +- .../Schemas/Math/Matrix4x3f.fbs | 0 .../Schemas/Math/PackedVec2f.fbs | 0 .../Schemas/Math/PackedVec3f.fbs | 0 .../Schemas/Math/PackedVec4f.fbs | 0 .../Schemas/Math/PackedVec4i.fbs | 0 .../Schemas/Math/Quat4f.fbs | 0 .../Schemas/Math/Transform.fbs | 0 .../Schemas/Math/Vec2f.fbs | 0 .../Schemas/Math/Vec3f.fbs | 0 .../Schemas/Math/Vec4f.fbs | 0 .../Schemas/Math/Vec4i.fbs | 8 + .../Schemas/Math/math.fbs | 0 .../Schemas/Utils/Color3f.fbs | 0 .../Schemas/Utils/Color4f.fbs | 0 .../Schemas/Utils/SpeciesSize.fbs | 0 .../Util/FlatDumper.cs | 3 - .../Util/FlatSchemaDump.cs | 27 +-- .../pkNX.Structures.FlatBuffers.csproj | 15 ++ pkNX.Containers/pkNX.Containers.csproj | 1 - pkNX.Game/pkNX.Game.csproj | 9 +- pkNX.Randomization/pkNX.Randomization.csproj | 1 - .../Arceus/Config/AppConfigList.cs | 17 -- .../Arceus/Config/ConfigureTable.cs | 24 --- .../Arceus/DressUp/DressUpTable.cs | 16 -- .../Arceus/Event/Trigger.cs | 30 --- .../Arceus/Field/MassOutbreakTable.cs | 20 -- .../Field/NewHuge/NewHugeOutbreakLottery.cs | 17 -- .../Field/NewHuge/NewHugeOutbreakTimeLimit.cs | 17 -- .../Field/Placement/OybnSettingTable.cs | 17 -- .../Field/Placement/PlacementItemArchive.cs | 23 --- .../Placement/PlacementLocationArchive.cs | 14 -- .../Field/Placement/PlacementParameters.cs | 16 -- .../Field/Placement/PlacementSpawnerData.cs | 14 -- .../Arceus/Field/Resident/AreaBGMTable.cs | 17 -- .../Field/Resident/AreaSettingsTable.cs | 44 ----- .../Arceus/Field/Resident/AreaWeatherTable.cs | 20 -- .../Arceus/KeyAssignmentTable.cs | 17 -- .../Arceus/LbPointsTable.cs | 17 -- .../Arceus/MoveShopTable.cs | 17 -- .../Arceus/NPC/NPCModelSet.cs | 22 --- .../Arceus/PlayReportTable.cs | 17 -- .../Arceus/Poke/Model/BoneScalarMesh.cs | 22 --- .../Arceus/Poke/Model/Mesh.cs | 39 ---- .../Arceus/Poke/Model/MultiMaterialTable.cs | 32 ---- .../Arceus/Poke/Model/PokeConfig.cs | 12 -- .../Arceus/Poke/Model/Skeleton.cs | 18 -- .../Poke/Moves/PokeFieldObstructionWaza.cs | 14 -- ...PokeFieldObstructionWazaNsLegendArchive.cs | 17 -- ...eldObstructionWazaNsLegendEffectArchive.cs | 17 -- .../PokeFieldObstructionWazaSeArchive.cs | 17 -- .../PokeFieldObstructionWazaWildArchive.cs | 14 -- ...keFieldObstructionWazaWildEffectArchive.cs | 17 -- ...okeFieldObstructionWazaWildWaterArchive.cs | 14 -- ...ldObstructionWazaWildWaterEffectArchive.cs | 17 -- .../Arceus/Poke/Moves/Waza.cs | 13 -- .../Arceus/Poke/PersonalInfoLAfb.cs | 23 --- .../Arceus/Poke/PokeBattleSpawnArchive.cs | 20 -- .../Arceus/Poke/PokeBodyParticleArchive.cs | 20 -- .../Arceus/Poke/PokeDefaultLocatorArchive.cs | 17 -- .../Arceus/Poke/PokeDropItemArchive.cs | 20 -- .../Arceus/Poke/PokeDropItemBattleArchive.cs | 20 -- .../Arceus/Poke/PokeEatingHabitsArchive.cs | 17 -- .../Pokedex/PokedexDistributionTable.cs | 17 -- .../Arceus/Pokedex/PokedexRankTable.cs | 17 -- .../Arceus/Pokedex/PokedexResearchTable.cs | 35 ---- .../Arceus/ScriptIDRecordRelease.cs | 17 -- .../Arceus/Shop/HaShopTable.cs | 17 -- .../Arceus/Throw/CommonCaptureConfigTable.cs | 17 -- .../Arceus/Throw/ThrowParamTable.cs | 20 -- .../Throw/ThrowPermissionSetDictionary.cs | 17 -- .../Throw/ThrowableBaitParamDictionary.cs | 17 -- .../Arceus/Throw/ThrowableParamTable.cs | 26 --- .../Throw/ThrowableResourceDictionary.cs | 17 -- .../Throw/ThrowableResourceSetDictionary.cs | 17 -- .../pkNX.Structures.FlatBuffers.Arceus.csproj | 39 ---- .../Gen7/EncounterArchive.cs | 18 -- .../pkNX.Structures.FlatBuffers.LGPE.csproj | 34 ---- ...X.Structures.FlatBuffers.Reflection.csproj | 28 --- .../Directory.Build.props | 26 --- ...kNX.Structures.FlatBuffers.SV.Audio.csproj | 11 -- ...X.Structures.FlatBuffers.SV.Balloon.csproj | 11 -- ...NX.Structures.FlatBuffers.SV.Battle.csproj | 11 -- ...X.Structures.FlatBuffers.SV.Cooking.csproj | 11 -- ...kNX.Structures.FlatBuffers.SV.Event.csproj | 11 -- .../pkNX.Structures.FlatBuffers.SV.Gym.csproj | 11 -- ...pkNX.Structures.FlatBuffers.SV.Item.csproj | 11 -- .../Misc/DanCarBattleDataArray.cs | 15 -- ...pkNX.Structures.FlatBuffers.SV.Misc.csproj | 11 -- .../Personal/PersonalTable.cs | 15 -- .../Personal/Types/PersonalInfoDex.cs | 7 - .../Personal/Types/PersonalInfoEvolution.cs | 7 - ....Structures.FlatBuffers.SV.Personal.csproj | 11 -- ...NX.Structures.FlatBuffers.SV.Picnic.csproj | 11 -- ...pkNX.Structures.FlatBuffers.SV.Raid.csproj | 11 -- .../FlatDummyEntry.cs | 13 -- .../Gen9/PokeData/PokeDataEventBattle.cs | 9 - .../Gen9/PokeData/PokeDataFull.cs | 9 - .../Gen9/PokeData/PokeDataSymbol.cs | 9 - .../Gen9/PokeData/PokeDataTrade.cs | 9 - .../Gen9/PokeData/WazaSet.cs | 17 -- ...NX.Structures.FlatBuffers.SV.Shared.csproj | 11 -- ....Structures.FlatBuffers.SV.Trainers.csproj | 11 -- ...X.Structures.FlatBuffers.SV.Trinity.csproj | 12 -- .../pkNX.Structures.FlatBuffers.SV.UI.csproj | 11 -- .../World/AreaInfo.cs | 13 -- .../World/DeliveryOutbreak.cs | 12 -- .../World/PointDataArray.cs | 9 - ...kNX.Structures.FlatBuffers.SV.World.csproj | 11 -- ...kNX.Structures.FlatBuffers.SV.Zukan.csproj | 11 -- .../BattleTower/BattleTowerPokeArchive.cs | 14 -- .../BattleTower/BattleTowerTrainerArchive.cs | 14 -- .../Gen8/Gift/EncounterGiftArchive.cs | 12 -- .../Gen8/Model/GFBModel.cs | 70 ------- .../Gen8/Model/GFBPokeConfig.cs | 24 --- .../Gen8/Nest/NestHoleLevelArchive.cs | 19 -- .../Gen8/Other/ArchiveContent.cs | 16 -- .../Gen8/Other/PokeResourceTable.cs | 15 -- .../Gen8/Other/Rental.cs | 17 -- .../Gen8/Other/ScriptMeta.cs | 15 -- .../Gen8/Other/SymbolBehavior.cs | 18 -- .../Gen8/Other/Waza.cs | 12 -- .../Gen8/Other/WeatherEntry.cs | 17 -- .../Gen8/Placement/PlacementArea8Archive.cs | 11 -- .../Gen8/Placement/PlacementArea8_F04.cs | 11 -- .../Gen8/Placement/PlacementArea8_F24.cs | 20 -- .../Holders/PlacementZoneAdvancedTipHolder.cs | 26 --- .../Holders/PlacementZoneBerryTreeHolder.cs | 30 --- .../Holders/PlacementZoneEnvironmentHolder.cs | 15 -- .../Holders/PlacementZoneFieldItemHolder.cs | 18 -- .../PlacementZoneFishingPointHolder.cs | 17 -- .../PlacementZoneFlightAnchorHolder.cs | 15 -- .../Holders/PlacementZoneHiddenItemHolder.cs | 21 -- .../Zone/Holders/PlacementZoneIKStepHolder.cs | 19 -- .../Zone/Holders/PlacementZoneLadderHolder.cs | 17 -- .../PlacementZoneMovementPathHolder.cs | 20 -- .../Zone/Holders/PlacementZoneNPCHolder.cs | 15 -- .../Holders/PlacementZoneNestHoleHolder.cs | 27 --- .../Holders/PlacementZoneParticleHolder.cs | 17 -- ...lacementZonePokeCenterSpawnAnchorHolder.cs | 14 -- .../Zone/Holders/PlacementZonePopupHolder.cs | 22 --- .../Holders/PlacementZoneQuadrantHolder.cs | 19 -- .../Holders/PlacementZoneRotomRallyEntry.cs | 12 -- .../Holders/PlacementZoneSpeciesHolder.cs | 30 --- .../Holders/PlacementZoneStepJumpHolder.cs | 14 -- .../Holders/PlacementZoneSymbolSpawnHolder.cs | 18 -- .../Holders/PlacementZoneTrainerHolder.cs | 35 ---- .../Holders/PlacementZoneTrainerTipHolder.cs | 24 --- .../Holders/PlacementZoneTriggerHolder.cs | 21 -- .../Holders/PlacementZoneUnitObjectHolder.cs | 29 --- .../Zone/Holders/PlacementZoneWarpHolder.cs | 21 -- .../Gen8/Wild/EncounterArchive.cs | 15 -- .../pkNX.Structures.FlatBuffers.SWSH.csproj | 35 ---- .../pkNX.Structures.FlatBuffers.csproj | 35 ---- pkNX.Structures/pkNX.Structures.csproj | 1 - .../pkNX.Tests.FileSystem.csproj | 12 +- .../InsertedAttributeTests.cs | 23 +++ .../pkNX.Tests.SourceGen.csproj | 26 +++ .../pkNX.Tests.Trinity.csproj | 14 +- .../GenericEditor.Designer.cs | 0 .../{ => GenericEditor}/GenericEditor.cs | 2 + .../GenericEditor/TypeRegistrationHelper.cs | 180 ++++++++++++++++++ pkNX.WinForms/Subforms/ModelConverter.cs | 8 - pkNX.WinForms/Subforms/PokeDataUI8a.cs | 33 ++-- pkNX.WinForms/UI/PokemonEditor.xaml.cs | 13 +- .../deps/PKHeX.Drawing.PokeSprite.deps.json | 118 +++++++----- .../deps/PKHeX.Drawing.PokeSprite.dll | Bin 12059136 -> 12182528 bytes pkNX.WinForms/deps/PKHeX.Drawing.dll | Bin 9728 -> 10240 bytes pkNX.WinForms/pkNX.WinForms.csproj | 52 ++--- pkNX.sln | 131 ++++++++----- 759 files changed, 1163 insertions(+), 3470 deletions(-) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Condition/ConditionUtil.cs (100%) create mode 100644 FlatBuffers/Arceus/Arceus/Config/ConfigureTable.cs create mode 100644 FlatBuffers/Arceus/Arceus/Event/Trigger.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/ISlotTableConsumer.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/LandmarkItemSpawnTable.cs (84%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/LandmarkItemTable.cs (89%) create mode 100644 FlatBuffers/Arceus/Arceus/Field/MassOutbreakTable.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs (55%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs (76%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementLocation.cs (94%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementMkrgTable.cs (68%) create mode 100644 FlatBuffers/Arceus/Arceus/Field/Placement/PlacementParameters.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementSearchItemTable.cs (65%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementSpawner.cs (95%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementSpawnerF20.cs (50%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementSpawnerF21.cs (76%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Placement/PlacementUnnnTable.cs (78%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Resident/AreaInstance.cs (100%) create mode 100644 FlatBuffers/Arceus/Arceus/Field/Resident/AreaSettingsTable.cs create mode 100644 FlatBuffers/Arceus/Arceus/Field/Resident/AreaWeatherTable.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Resident/Editing/ResidentArea.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Resident/Editing/ResidentInfo.cs (98%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Slots/EncounterDataArchive.cs (89%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Slots/EncounterMultiplerArchive.cs (83%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Slots/ISlotModifierTime.cs (75%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Slots/ISlotModifierWeather.cs (70%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Field/Static/EventEncountArchive.cs (71%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/EvolutionTable.cs (69%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model Set/PokeModelSet.cs (86%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model/Material.cs (68%) create mode 100644 FlatBuffers/Arceus/Arceus/Poke/Model/Mesh.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model/MeshBuffer.cs (88%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model/Model.cs (55%) create mode 100644 FlatBuffers/Arceus/Arceus/Poke/Model/MultiMaterialTable.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model/PokemonModelArchive.cs (90%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Model/Shader.cs (99%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/Moves/Learnset.cs (56%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeAIArchive.cs (88%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeAdd.cs (70%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeCaptureCollisionArchive.cs (76%) create mode 100644 FlatBuffers/Arceus/Arceus/Poke/PokeDropItemArchive.cs create mode 100644 FlatBuffers/Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeMiscTable.cs (75%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeResource/PokeInfoList.cs (80%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Poke/PokeResource/PokeResourceTable.cs (75%) create mode 100644 FlatBuffers/Arceus/Arceus/Pokedex/PokedexResearchTable.cs create mode 100644 FlatBuffers/Arceus/Arceus/Throw/ThrowParamTable.cs create mode 100644 FlatBuffers/Arceus/Arceus/Throw/ThrowableParamTable.cs rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/TrData.cs (57%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/ArchiveContents.cs (60%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/EncounterDetail.cs (98%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/EncounterTableUtil.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/IHasCondition.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/SpawnerType.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/Time.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/TriggerUtil.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Arceus/Util/Weather.cs (84%) create mode 100644 FlatBuffers/Arceus/Directory.Build.props rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Dumpers/PersonalDumperPLA.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Dumpers/PersonalInfo8LA.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Dumpers/PersonalTable8LA.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/FnvHash.cs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Config/AppConfigList.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Config/ConfigureTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/DressUp/DressUpTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Event/Trigger.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/LandmarkItemSpawnTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/LandmarkItemTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/MassOutbreakTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/NewHuge/NewHugeOutbreakGroup.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/NewHuge/NewHugeOutbreakGroupLottery.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/NewHuge/NewHugeOutbreakLottery.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/NewHuge/NewHugeOutbreakTimeLimit.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Resident/AreaBGMTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Resident/AreaSettingsTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Resident/AreaWeatherTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Slots/EncounterDataArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Slots/EncounterMultiplerArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Field/Static/EventEncountArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Ginkgo/GinkgoItem.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Ginkgo/GinkgoItemTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/HaShopTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/ArchiveContents.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/KeyAssignmentTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/LbPointsTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/MoveShopTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/PlayReportTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Misc/ScriptIDRecordRelease.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/NPC/NPCModelSet.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/OybnSettingTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementItemArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementLocationArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementMkrgTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementParameters.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementSearchItemTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementSpawnerData.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Placement/PlacementUnnnTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/EvolutionTable.fbs (88%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model Set/PokeModelSet.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/BoneScalarMesh.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/Material.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/Mesh.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/MeshBuffer.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/Model.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/MultiMaterialTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/PokeConfig.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/Shader.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Model/Skeleton.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/Learnset.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWaza.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaSeArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaWildArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/Moves/Waza.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PersonalInfoLAfb.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeAIArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeAdd.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeBattleSpawnArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeBodyParticleArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeCaptureCollisionArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeDefaultLocatorArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeDropItem.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeDropItemArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeDropItemBattleArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeEatingHabitsArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeMiscTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeResource/PokeInfoList.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Poke/PokeResource/PokeResourceTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Pokedex/PokedexDistributionTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Pokedex/PokedexRankTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Pokedex/PokedexResearchTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Shared/AbilityType.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Shared/FlatDummyObject.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Shared/NatureType.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Shared/ShinyType.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/CommonCaptureConfigTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowParamTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowPermissionSet.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowableBaitParamDictionary.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowableParamTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowableResourceDictionary.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/Throw/ThrowableResourceSetDictionary.fbs (100%) rename {pkNX.Structures.FlatBuffers.Arceus => FlatBuffers/Arceus}/Schemas/TrainerData.fbs (100%) rename pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj => FlatBuffers/Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj (100%) create mode 100644 FlatBuffers/Directory.Build.props create mode 100644 FlatBuffers/LGPE/Directory.Build.props rename {pkNX.Structures.FlatBuffers.LGPE => FlatBuffers/LGPE}/Gen7/EncounterTableUtil.cs (98%) rename {pkNX.Structures.FlatBuffers.LGPE => FlatBuffers/LGPE}/Gen7/ShopInventory.cs (65%) rename {pkNX.Structures.FlatBuffers.LGPE => FlatBuffers/LGPE}/Schemas/shop.fbs (100%) rename {pkNX.Structures.FlatBuffers.LGPE => FlatBuffers/LGPE}/Schemas/wild.fbs (100%) create mode 100644 FlatBuffers/LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio => FlatBuffers/SV/Audio}/Schemas/BGMEventArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio => FlatBuffers/SV/Audio}/Schemas/BGMEventType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio => FlatBuffers/SV/Audio}/Schemas/EnvPokeVoiceLotterySetting.fbs (100%) create mode 100644 FlatBuffers/SV/Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/GameBaseParamTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/OjamaPokemonCommonTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/OjamaPokemonUniqueTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/ResultDemoTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/RewardActionTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/RewardTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon => FlatBuffers/SV/Balloon}/Schemas/ScoreBaseTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/BattleConfig.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/BattleEffectTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/ItemTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/NetBattle/NetBattleRuleDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/NetBattle/NetBattleRuleParamArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle => FlatBuffers/SV/Battle}/Schemas/PokeExceptionTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Food/FoodPokeTypeParam.cs (97%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/BufDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/CookingCommonData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Enums/FoodSkillType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Enums/IngredientType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Enums/RecipeType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Enums/SeasoningType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/FoodPowerComboArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/IngredientDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/IngredientDishDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Param/FoodPokeTypeParam.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Param/FoodPowerComboParam.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Param/FoodPowerParam.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/Param/IngredientParam.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/RecipeDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/SeasoningDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking => FlatBuffers/SV/Cooking}/Schemas/TakaraSpicePowerTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj create mode 100644 FlatBuffers/SV/Directory.Build.props rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/EventAddPokemonArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/EventSub012.RewardTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/EventTradeListArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/EventTradePokemonArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/LegendPokeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/FieldNpcFaceType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/FieldNpcMotion.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/FieldNpcMotionType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/FieldNpcPokemonDefaultMotion.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/FieldNpcPokemonMotion.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/NpcTrafficFormation.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/Motion/NpcTrafficPartnerType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/NpcTrafficGenerateTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/PopupWindowTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/ReleasePokeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event => FlatBuffers/SV/Event}/Schemas/TreeShakePokemonArray.fbs (100%) create mode 100644 FlatBuffers/SV/Event/pkNX.Structures.FlatBuffers.SV.Event.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/ExerciseRewardData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/ExerciseSetting.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/GymKooriCoursePokemonTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/GymKooriCourseTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.denki.PopupPosTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.esper.ENDLESS_BORDERArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.esper.EXERCISE_COURSESArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.kusa.PokeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.kusa.RewardTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mizu.FixTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mizu.SeriItemTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mizu.SeriNpcTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mizu.SeriVenueTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mushi.GymMushiData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym.mushi.GymMushiRewardArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym => FlatBuffers/SV/Gym}/Schemas/gym_denki.PopupFixTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/DLCItemGroupArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/DropItemDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/BattleFunctionType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/EquipEffect.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/FieldFunctionType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/FieldPocket.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/ItemGroup.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/ItemType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/PluckEffect.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/WorkPpSelTgt.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/Enums/WorkType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/HiddenItemBiomeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/HiddenItemDataTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/ItemDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/ItemPointTypeBiomeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/MonohiroiItemArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item => FlatBuffers/SV/Item}/Schemas/RummagingItemDataTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/Item/pkNX.Structures.FlatBuffers.SV.Item.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/Ajito/AjitoCommonLevelArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/Ajito/AjitoDifficultEnum.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/Ajito/AjitoPokemonArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/Ajito/AjitoTypeEnum.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/Ajito/AjitoUnitArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/DanBattle/DanCarBattleData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/GemSettingRootTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/ObjectGenerationRangeArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc => FlatBuffers/SV/Misc}/Schemas/RibbonDataArray.fbs (100%) create mode 100644 FlatBuffers/SV/Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Dumpers/PersonalDumperSV.cs (94%) create mode 100644 FlatBuffers/SV/Personal/Personal/Types/PersonalInfoDex.cs create mode 100644 FlatBuffers/SV/Personal/Personal/Types/PersonalInfoEvolution.cs rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Personal/Types/PersonalInfoGender.cs (84%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Personal/Types/PersonalInfoStats.cs (65%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Personal/Wrapper/PersonalInfo9SV.cs (99%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Personal/Wrapper/PersonalTable9SV.cs (97%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoDetail.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoDex.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoEvolution.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoGender.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoHatch.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoMove.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalInfoStats.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal => FlatBuffers/SV/Personal}/Schemas/PersonalTable.fbs (100%) create mode 100644 FlatBuffers/SV/Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic => FlatBuffers/SV/Picnic}/Schemas/PicnicPokemon.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic => FlatBuffers/SV/Picnic}/Schemas/PicnicSystemData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic => FlatBuffers/SV/Picnic}/Schemas/PicnicTablesetData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic => FlatBuffers/SV/Picnic}/Schemas/PicnicWagonData.fbs (100%) create mode 100644 FlatBuffers/SV/Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Raid/DeliveryRaidEnemyTableArray.cs (88%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Raid/DeliveryRaidFixedRewardItemArray.cs (68%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Raid/DeliveryRaidLotteryRewardItemArray.cs (84%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Raid/RaidFixedRewardItemArray.cs (75%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Raid/RaidLotteryRewardItemArray.cs (83%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/DeliveryRaidEnemyTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/DeliveryRaidFixedRewardItemArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/DeliveryRaidLotteryRewardItemArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/DeliveryRaidPriorityArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/Enums/RaidBossExtraActType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/Enums/RaidBossExtraTimingType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/Enums/RaidRewardItemCategoryType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/Enums/RaidRewardItemSubjectType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/Enums/RaidRomType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidDifficultyLotteryTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidEnemyInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidEnemyTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidFixedRewardItemArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidFixedRewardItemInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidGemItemRewardBoost.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidGemSetting.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidLotteryRewardItemArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidLotteryRewardItemInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidPokeScaleDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidRewardSlotArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid => FlatBuffers/SV/Raid}/Schemas/RaidTrainerArray.fbs (100%) create mode 100644 FlatBuffers/SV/Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj create mode 100644 FlatBuffers/SV/Shared/Gen9/PokeData/ParamSet.cs rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Gen9/PokeData/PokeDataBattle.cs (93%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Gen9/SpeciesConverterSV.cs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/CollisionShape.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/ComparisonOperatorType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/ConditionSimpleAutoBattleHecklerAreaArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/OwnerInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/ParamSet.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/PokeObjArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/PokemonTriggerID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Entity/PokemonUniquePathData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/PokeDataBattle.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/PokeDataEventBattle.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/PokeDataFull.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/PokeDataSymbol.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/PokeDataTrade.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/PokeData/WazaSet.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/BallType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/BattleType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/ClerkType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/CondEnum.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/DataType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/DevID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/GemType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/ItemID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/LangType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/MahoippuViewID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/MoveType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/PayType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/PokeMemoType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/RareType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/RibbonType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/SeikakuType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/SellType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/Sex.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/SexType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/ShopKind.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/SizeType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/TalentType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/TokuseiID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/TokuseiType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/WazaID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared => FlatBuffers/SV/Shared}/Schemas/Shared/WazaType.fbs (100%) create mode 100644 FlatBuffers/SV/Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/Talk/CheckCategory.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/Talk/TalkData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/Talk/TalkRankEffect.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/TrainerBodySize.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/TrainerCategory.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/TrainerDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/TrainerEnvArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers => FlatBuffers/SV/Trainers}/Schemas/TrainerTypeArray.fbs (100%) create mode 100644 FlatBuffers/SV/Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Archive/TrinityFileDescriptors.cs (56%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Archive/TrinityFileSystemManager.cs (99%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Archive/TrinityFileSystemMetadata.cs (68%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Archive/TrinityPak.cs (77%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Archive/TrinityPakExtractor.cs (96%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Scene/SceneDumper.cs (99%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TIAIPerceptualComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TIDynamicExclusionComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TIModelDitherFadeComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityEnvironmentParameter.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityFileDescriptors.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityFileSystemMetadata.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityGroundPlaceComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityModelComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityOverrideSensorData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityPak.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityParticleComponent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityPropertySheet.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinitySceneObject.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinitySceneObjectTemplate.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity => FlatBuffers/SV/Trinity}/Schemas/TrinityScenePoint.fbs (100%) create mode 100644 FlatBuffers/SV/Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/BattleBgmSelectTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Dressup/DressupCategoryDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Dressup/DressupItemDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Dressup/DressupShopDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Dressup/DressupStyleDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Dressup/DressupStylePresetDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ItemMachine/ItemMachineEffectTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ItemMachine/ItemMachineItemTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ItemMachine/ItemMachineLotteryTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ItemMachine/ItemMachineSpecialTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ItemMachine/MaterialBaseParamArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Quest/DanQuestClearArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Quest/EventSkyFlyArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Quest/GymQuestClearArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Quest/NushiQuestClearArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Restaurant/RestaurantMenuDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Restaurant/RestaurantShopDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/SchoolMapDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Shop/FriendlyShopDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Shop/LineupDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Shop/ShopDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/Shop/ShopWazamachineDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/SystemBgArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/TipsDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ymap/DestinationDataTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ymap/NpcDestinationDataTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI => FlatBuffers/SV/UI}/Schemas/ymap/PlaceNameDataTableArray.fbs (100%) create mode 100644 FlatBuffers/SV/UI/pkNX.Structures.FlatBuffers.SV.UI.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza => FlatBuffers/SV/Waza}/Schemas/TokuseiArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza => FlatBuffers/SV/Waza}/Schemas/Waza.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza => FlatBuffers/SV/Waza}/Schemas/WazaAffinity.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza => FlatBuffers/SV/Waza}/Schemas/WazaEntityStat.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza => FlatBuffers/SV/Waza}/Schemas/WazaInflict.fbs (100%) create mode 100644 FlatBuffers/SV/Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/AreaInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/AreaTag.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/AreaType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/BandType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/Biome.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/BringItem.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/EnableTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/EncAttr.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/EncBiome.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldAttrKey.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldDungeonAreaArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldInsideAreaArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldLocationArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldMainAreaArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/FieldSubAreaArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Area/OverrideBiome.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/ClubNpcRewardListArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/ClubRoomBoardInfoArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/ClubRoomCoach.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/ClubRoomNpcPairTable.fbs (97%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/DeliveryOutbreakArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/DeliveryOutbreakPokeDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/EncountPokeDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/EventBattlePokemonArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/AreaFlyFlagArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/CoinSymbolManager.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/ExclusionGroupArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldAutoReturnPosTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldAutomaticReturnTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldCamera.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldInteriorCamera.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldOutOfRangeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldPlayer.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/FieldRide.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/GemSymbolLotteryTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/GemSymbolSetting.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/Field/MapChangeParametersArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/BehaviorFrequency.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/FixedSymbolAI.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/FixedSymbolArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/FixedSymbolGeneration.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/FixedSymbolManager.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/GenerationPattern.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/FixedSymbol/PokemonActionID.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MetamonBlockInfo.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MissionDifficulty.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MissionDifficultyWeight.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MissionInfosArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MissionSettingsArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/MissionType.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/OutbreakPointArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/OutbreakSetting.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/PointDataArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/SettingData.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/TimeTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/Schemas/VersionTable.fbs (100%) create mode 100644 FlatBuffers/SV/World/World/AreaInfo.cs rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/World/DeliveryOutbreakPokeData.cs (85%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World => FlatBuffers/SV/World}/World/EncountPokeData.cs (77%) create mode 100644 FlatBuffers/SV/World/pkNX.Structures.FlatBuffers.SV.World.csproj rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan => FlatBuffers/SV/Zukan}/Schemas/BlacklistArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan => FlatBuffers/SV/Zukan}/Schemas/DistributionRootArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan => FlatBuffers/SV/Zukan}/Schemas/MemoPokeTableArray.fbs (100%) rename {pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan => FlatBuffers/SV/Zukan}/Schemas/RewardDataArray.fbs (100%) create mode 100644 FlatBuffers/SV/Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj create mode 100644 FlatBuffers/SWSH/Directory.Build.props rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Gift/GiftEncounter.cs (89%) create mode 100644 FlatBuffers/SWSH/Gen8/Model/GFBModel.cs create mode 100644 FlatBuffers/SWSH/Gen8/Model/GFBPokeConfig.cs rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/EncounterNestArchive.cs (92%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/EncounterUndergroundArchive.cs (65%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/NestHoleCrystalEncounterArchive.cs (92%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/NestHoleDistributionEncounterArchive.cs (92%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/NestHoleDistributionRewardArchive.cs (56%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Nest/NestHoleRewardArchive.cs (54%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Other/CellTable.cs (50%) create mode 100644 FlatBuffers/SWSH/Gen8/Other/Rental.cs rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Other/ShopInventory.cs (94%) create mode 100644 FlatBuffers/SWSH/Gen8/Other/SymbolBehavior.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/PlacementArea8_F24.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs (91%) create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs (60%) create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs create mode 100644 FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Placement/Zone/PlacementZone8.cs (88%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Static/EncounterStaticArchive.cs (87%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Trade/EncounterTradeArchive.cs (89%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Waza/Waza.cs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Gen8/Wild/EncounterTableUtil.cs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/ArchiveContent.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/BattleTowerPoke.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/BattleTowerTrainer.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/CellTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/EncounterArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/EncounterNestArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/EncounterStaticArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/EncounterTradeArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/GiftArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Model/GFBModel.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Model/GFBPokeConfig.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleCrystalEncounterArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleDistributionEncounterArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleDistributionRewardArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleLevelArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleRewardArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/NestHoleUndergroundArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/Placement.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementShared.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZone.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneAdvancedTipHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneBerryTreeHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneEnvironmentHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneFieldItemHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneFishingPointHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneFlightAnchorHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneHiddenItemHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneIKStepHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneLadderHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneMovementPathHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneNPCHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneNestHoleHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneOtherNPCHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneParticleHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZonePokeCenterSpawnAnchorHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZonePopupHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneQuadrantHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneRotomRallyEntry.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneSpeciesHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneStaticObjectsHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneStepJumpHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneSymbolSpawnHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneTrainerHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneTrainerTipHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneTriggerHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneUnitObjectHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Placement/PlacementZoneWarpHolder.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/PokeResourceTable.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/RentalArchive.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/ScriptMeta.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/SymbolBehavior.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/Waza.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/WeatherEntry.fbs (100%) rename {pkNX.Structures.FlatBuffers.SWSH => FlatBuffers/SWSH}/Schemas/shop.fbs (100%) create mode 100644 FlatBuffers/SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj rename {pkNX.Structures.FlatBuffers.Reflection => FlatBuffers/pkNX.Structures.FlatBuffers.Reflection}/ReflectionDumpSchema.cs (93%) rename {pkNX.Structures.FlatBuffers.Reflection => FlatBuffers/pkNX.Structures.FlatBuffers.Reflection}/SchemaDumpSettings.cs (100%) rename {pkNX.Structures.FlatBuffers.Reflection => FlatBuffers/pkNX.Structures.FlatBuffers.Reflection}/Schemas/reflection.fbs (100%) create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/ExpandableAttributeGenerator.cs create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/LICENSE create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/pkNX.Structures.FlatBuffers.SourceGen.csproj rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Data/Color3f.cs (75%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Data/Color4f.cs (92%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Data/Unorm16.cs (99%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Data/Unorm8.cs (99%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/FlatBufferConverter.cs (96%) rename {pkNX.Structures.FlatBuffers/Geomerty => FlatBuffers/pkNX.Structures.FlatBuffers/Geometry}/AABB.cs (79%) rename {pkNX.Structures.FlatBuffers/Geomerty => FlatBuffers/pkNX.Structures.FlatBuffers/Geometry}/PackedAABB.cs (86%) rename {pkNX.Structures.FlatBuffers/Geomerty => FlatBuffers/pkNX.Structures.FlatBuffers/Geometry}/Sphere.cs (59%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/PackedVec2f.cs (67%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/PackedVec3f.cs (97%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/PackedVec4f.cs (69%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/PackedVec4i.cs (69%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/Vec2f.cs (90%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/Vec3f.cs (97%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Math/Vec4f.cs (91%) rename {pkNX.Structures.FlatBuffers/Data => FlatBuffers/pkNX.Structures.FlatBuffers/Math}/Vec4i.cs (77%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Geometry/AABB.fbs (81%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Geometry/PackedAABB.fbs (84%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Geometry/Sphere.fbs (84%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Matrix4x3f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/PackedVec2f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/PackedVec3f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/PackedVec4f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/PackedVec4i.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Quat4f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Transform.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Vec2f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Vec3f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/Vec4f.fbs (100%) create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4i.fbs rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Math/math.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Utils/Color3f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Utils/Color4f.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Schemas/Utils/SpeciesSize.fbs (100%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Util/FlatDumper.cs (92%) rename {pkNX.Structures.FlatBuffers => FlatBuffers/pkNX.Structures.FlatBuffers}/Util/FlatSchemaDump.cs (88%) create mode 100644 FlatBuffers/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/AppConfigList.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/ConfigureTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/DressUp/DressUpTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Event/Trigger.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/MassOutbreakTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakLottery.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakTimeLimit.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/OybnSettingTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementItemArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocationArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementParameters.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerData.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaBGMTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaSettingsTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaWeatherTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/KeyAssignmentTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/LbPointsTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/MoveShopTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/NPC/NPCModelSet.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/PlayReportTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/BoneScalarMesh.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Mesh.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MultiMaterialTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokeConfig.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Skeleton.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWaza.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaSeArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Waza.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PersonalInfoLAfb.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBattleSpawnArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBodyParticleArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDefaultLocatorArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeEatingHabitsArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexDistributionTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexRankTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexResearchTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/ScriptIDRecordRelease.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Shop/HaShopTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/CommonCaptureConfigTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowParamTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowPermissionSetDictionary.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableBaitParamDictionary.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableParamTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceDictionary.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceSetDictionary.cs delete mode 100644 pkNX.Structures.FlatBuffers.Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj delete mode 100644 pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj delete mode 100644 pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/Directory.Build.props delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/pkNX.Structures.FlatBuffers.SV.Event.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/pkNX.Structures.FlatBuffers.SV.Item.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Misc/DanCarBattleDataArray.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/PersonalTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoDex.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoEvolution.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/FlatDummyEntry.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataEventBattle.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataFull.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataSymbol.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataTrade.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/WazaSet.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/pkNX.Structures.FlatBuffers.SV.UI.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/AreaInfo.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreak.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/PointDataArray.cs delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/pkNX.Structures.FlatBuffers.SV.World.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerPokeArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerTrainerArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/EncounterGiftArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBModel.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBPokeConfig.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleLevelArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ArchiveContent.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/PokeResourceTable.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Rental.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ScriptMeta.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/SymbolBehavior.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Waza.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/WeatherEntry.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8Archive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F04.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F24.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneAdvancedTipHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneBerryTreeHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneEnvironmentHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFieldItemHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFlightAnchorHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneHiddenItemHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneIKStepHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneLadderHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNPCHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNestHoleHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePokeCenterSpawnAnchorHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePopupHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneQuadrantHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneRotomRallyEntry.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStepJumpHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSymbolSpawnHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerTipHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTriggerHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterArchive.cs delete mode 100644 pkNX.Structures.FlatBuffers.SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj delete mode 100644 pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj create mode 100644 pkNX.Tests/pkNX.Tests.SourceGen/InsertedAttributeTests.cs create mode 100644 pkNX.Tests/pkNX.Tests.SourceGen/pkNX.Tests.SourceGen.csproj rename pkNX.WinForms/Subforms/{ => GenericEditor}/GenericEditor.Designer.cs (100%) rename pkNX.WinForms/Subforms/{ => GenericEditor}/GenericEditor.cs (97%) create mode 100644 pkNX.WinForms/Subforms/GenericEditor/TypeRegistrationHelper.cs diff --git a/.editorconfig b/.editorconfig index 6ebb4863..45c6b9fb 100644 --- a/.editorconfig +++ b/.editorconfig @@ -45,6 +45,23 @@ dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:sug dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:suggest dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:suggest dotnet_style_parentheses_in_other_operators = always_for_clarity:suggest +csharp_using_directive_placement = outside_namespace:silent +csharp_prefer_simple_using_statement = true:suggestion +csharp_style_namespace_declarations = block_scoped:silent +csharp_style_prefer_method_group_conversion = true:silent +csharp_style_prefer_top_level_statements = true:silent +csharp_style_prefer_primary_constructors = true:suggestion +csharp_prefer_system_threading_lock = true:suggestion +csharp_style_expression_bodied_methods = false:silent +csharp_style_expression_bodied_constructors = false:silent +csharp_style_expression_bodied_operators = false:silent +csharp_style_expression_bodied_properties = true:silent +csharp_style_expression_bodied_indexers = true:silent +csharp_style_expression_bodied_accessors = true:silent +csharp_style_expression_bodied_lambdas = true:silent +csharp_style_expression_bodied_local_functions = false:silent +csharp_indent_labels = one_less_than_current +dotnet_diagnostic.WFO1000.severity = none # Generated Code [**/obj/**.cs] @@ -64,4 +81,54 @@ dotnet_analyzer_diagnostic.severity = none # Naming rules dotnet_naming_style.begins_with_i.required_prefix = I -dotnet_naming_style.begins_with_i.capitalization = pascal_case \ No newline at end of file +dotnet_naming_style.begins_with_i.capitalization = pascal_case +[*.{cs,vb}] +#### Naming styles #### + +# Naming rules + +dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion +dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface +dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i + +dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.types_should_be_pascal_case.symbols = types +dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case + +dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members +dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case + +# Symbol specifications + +dotnet_naming_symbols.interface.applicable_kinds = interface +dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.interface.required_modifiers = + +dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum +dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.types.required_modifiers = + +dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method +dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.non_field_members.required_modifiers = + +# Naming styles + +dotnet_naming_style.begins_with_i.required_prefix = I +dotnet_naming_style.begins_with_i.required_suffix = +dotnet_naming_style.begins_with_i.word_separator = +dotnet_naming_style.begins_with_i.capitalization = pascal_case + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case +dotnet_style_coalesce_expression = true:suggestion +dotnet_style_operator_placement_when_wrapping = beginning_of_line +tab_width = 4 diff --git a/Directory.Build.props b/Directory.Build.props index d37588b1..8db53cbb 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,7 +1,8 @@ - 12 + 13 enable + net9.0 en pkNX Project Pokémon diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Condition/ConditionUtil.cs b/FlatBuffers/Arceus/Arceus/Condition/ConditionUtil.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Condition/ConditionUtil.cs rename to FlatBuffers/Arceus/Arceus/Condition/ConditionUtil.cs diff --git a/FlatBuffers/Arceus/Arceus/Config/ConfigureTable.cs b/FlatBuffers/Arceus/Arceus/Config/ConfigureTable.cs new file mode 100644 index 00000000..f22207ce --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Config/ConfigureTable.cs @@ -0,0 +1,10 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class ConfigEntry +{ + public string ConfiguredValue + { + get => Parameters[0]; + set => Parameters[0] = value; + } +} diff --git a/FlatBuffers/Arceus/Arceus/Event/Trigger.cs b/FlatBuffers/Arceus/Arceus/Event/Trigger.cs new file mode 100644 index 00000000..0056d6b6 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Event/Trigger.cs @@ -0,0 +1,8 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class TriggerCondition : IHasCondition +{ + // For interface compat + public string ConditionArg4 { get; set; } = string.Empty; + public string ConditionArg5 { get; set; } = string.Empty; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/ISlotTableConsumer.cs b/FlatBuffers/Arceus/Arceus/Field/ISlotTableConsumer.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/ISlotTableConsumer.cs rename to FlatBuffers/Arceus/Arceus/Field/ISlotTableConsumer.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemSpawnTable.cs b/FlatBuffers/Arceus/Arceus/Field/LandmarkItemSpawnTable.cs similarity index 84% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemSpawnTable.cs rename to FlatBuffers/Arceus/Arceus/Field/LandmarkItemSpawnTable.cs index af68a4e2..915d9802 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemSpawnTable.cs +++ b/FlatBuffers/Arceus/Arceus/Field/LandmarkItemSpawnTable.cs @@ -1,21 +1,5 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using pkNX.Containers; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LandmarkItemSpawnTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class LandmarkItemSpawn { public bool UsesTable(ulong table) => EncounterTableID == table; @@ -90,6 +74,3 @@ public string NameSummary return result; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LandmarkItemSpawn_F03; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemTable.cs b/FlatBuffers/Arceus/Arceus/Field/LandmarkItemTable.cs similarity index 89% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemTable.cs rename to FlatBuffers/Arceus/Arceus/Field/LandmarkItemTable.cs index 3c809cf2..cdb7a674 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/LandmarkItemTable.cs +++ b/FlatBuffers/Arceus/Arceus/Field/LandmarkItemTable.cs @@ -1,18 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LandmarkItemTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class LandmarkItem : ISlotTableConsumer { public PlacementParameters Parameters diff --git a/FlatBuffers/Arceus/Arceus/Field/MassOutbreakTable.cs b/FlatBuffers/Arceus/Arceus/Field/MassOutbreakTable.cs new file mode 100644 index 00000000..f6bd0b59 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Field/MassOutbreakTable.cs @@ -0,0 +1,3 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class MassOutbreakCondition : IHasCondition; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs b/FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs similarity index 55% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs rename to FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs index 7f2681b2..4a58abdd 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs +++ b/FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroup.cs @@ -1,18 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NewHugeOutbreakGroupArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NewHugeOutbreakGroup { public int SumTable => Table.Sum(z => z.Rate); @@ -26,7 +13,6 @@ public bool UsesTable(ulong tableID) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NewHugeOutbreakDetail : IHasCondition { public override string ToString() => $"PlacementParameters(/* ConditionTypeID = */ {this.GetConditionTypeSummary()}, /* Condition = */ {this.GetConditionSummary()}, {EncounterTableID:X16}, {Rate})"; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs b/FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs similarity index 76% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs rename to FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs index ca66d8bd..20d134c4 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs +++ b/FlatBuffers/Arceus/Arceus/Field/NewHuge/NewHugeOutbreakGroupLottery.cs @@ -1,17 +1,5 @@ -using System; -using System.ComponentModel; -using System.Linq; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NewHugeOutbreakGroupLotteryArchive { public bool IsAreaGroup(PlacementSpawner spawner, NewHugeOutbreakGroupArchive groups, ulong tableID) @@ -25,7 +13,6 @@ public bool IsAreaGroup(PlacementSpawner spawner, NewHugeOutbreakGroupArchive gr } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NewHugeOutbreakGroupLottery { public int SumTableCommon => TableCommon.Sum(z => z.Rate); @@ -53,7 +40,6 @@ public bool IsUseTable(NewHugeOutbreakGroupArchive groups, ulong tableID) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NewHugeOutbreakGroupLotteryDetail { public override string ToString() => $"{Group:X16}|{Rate}"; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocation.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementLocation.cs similarity index 94% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocation.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementLocation.cs index de5ac768..ba30e2b6 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocation.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementLocation.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; using System.Numerics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementLocation { public const ulong ShapeIdSphere = 0x645FB59E96A6F998; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs similarity index 68% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs index 8c02b212..3178cc63 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementMkrgTable.cs @@ -1,18 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementMkrgTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementMkrgEntry { public PlacementParameters Parameters diff --git a/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementParameters.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementParameters.cs new file mode 100644 index 00000000..ad04cf35 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementParameters.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class PlacementParameters : IHasCondition +{ + public override string ToString() => $"PlacementParameters(/* ConditionTypeID = */ {this.GetConditionTypeSummary()}, /* Condition = */ {this.GetConditionSummary()}, {Coordinates}, {Rotation}, {Scale})"; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs similarity index 65% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs index 1e587bee..4749c629 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSearchItemTable.cs @@ -1,21 +1,5 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementSearchItemTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementSearchItem { public PlacementParameters Parameters diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawner.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawner.cs similarity index 95% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawner.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawner.cs index c0b86703..b6a878c8 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawner.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawner.cs @@ -1,15 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementSpawner : ISlotTableConsumer { public PlacementParameters Parameters diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs similarity index 50% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs index 4f5b0c40..222e94b9 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF20.cs @@ -1,15 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementSpawnerF20 : IHasCondition { public override string ToString() => $"Spawn_20(/* EncounterTableId = */ {EncounterTable.GetTableName(EncounterTableID)}, /* ConditionTypeID = */ {this.GetConditionTypeSummary()}, /* Condition = */ {this.GetConditionSummary()}, {BonusLevelMin}, {BonusLevelMax})"; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs similarity index 76% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs index f754e092..164ca8dc 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementSpawnerF21.cs @@ -1,15 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementSpawnerF21 { public string SlotSummary diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs similarity index 78% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs rename to FlatBuffers/Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs index d40bcbb5..2fba4f4f 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Placement/PlacementUnnnTable.cs @@ -1,18 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementUnnnTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementUnnnEntry { public PlacementParameters Parameters diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaInstance.cs b/FlatBuffers/Arceus/Arceus/Field/Resident/AreaInstance.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaInstance.cs rename to FlatBuffers/Arceus/Arceus/Field/Resident/AreaInstance.cs diff --git a/FlatBuffers/Arceus/Arceus/Field/Resident/AreaSettingsTable.cs b/FlatBuffers/Arceus/Arceus/Field/Resident/AreaSettingsTable.cs new file mode 100644 index 00000000..cb56dfce --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Field/Resident/AreaSettingsTable.cs @@ -0,0 +1,25 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class AreaSettingsTable +{ + public AreaSettings Find(string name) => Table.First(z => z.Name == name); +} + +public partial class AreaSettings +{ + // Get the in game name of the area + public string FriendlyAreaName + { + get => Name switch + { + "ha_area00" => "Jubilife Village", + "ha_area01" => "Obsidian Fieldlands", + "ha_area02" => "Crimson Mirelands", + "ha_area03" => "Cobalt Coastlands", + "ha_area04" => "Coronet Highlands", + "ha_area05" => "Alabaster Icelands", + "ha_area06" => "Ancient Retreat", + _ => $"Unknown Area ({Name})", + }; + } +} diff --git a/FlatBuffers/Arceus/Arceus/Field/Resident/AreaWeatherTable.cs b/FlatBuffers/Arceus/Arceus/Field/Resident/AreaWeatherTable.cs new file mode 100644 index 00000000..333c2b2e --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Field/Resident/AreaWeatherTable.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class AreaWeather +{ + public int WeightTotal => WeightSunny + WeightCloudy + WeightRain + WeightSnow + WeightDrought + WeightFog + WeightRainstorm + WeightSnowstorm; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/Editing/ResidentArea.cs b/FlatBuffers/Arceus/Arceus/Field/Resident/Editing/ResidentArea.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/Editing/ResidentArea.cs rename to FlatBuffers/Arceus/Arceus/Field/Resident/Editing/ResidentArea.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs b/FlatBuffers/Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs similarity index 98% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs rename to FlatBuffers/Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs index 2a08d317..711f6b5b 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Resident/Editing/ResidentInfo.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; - namespace pkNX.Structures.FlatBuffers.Arceus; /// diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterDataArchive.cs b/FlatBuffers/Arceus/Arceus/Field/Slots/EncounterDataArchive.cs similarity index 89% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterDataArchive.cs rename to FlatBuffers/Arceus/Arceus/Field/Slots/EncounterDataArchive.cs index 4f1ba3f1..010ac85e 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterDataArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Slots/EncounterDataArchive.cs @@ -1,27 +1,12 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterDataArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterEligiblityTraits : IHasCondition, ISlotModifierTime, ISlotModifierWeather; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterOybnTraits { public bool IsOybnAny => Oybn1 || Oybn2 || Field02 || Field03; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterTable { // lazy init @@ -95,7 +80,6 @@ public static string GetTableName(ulong tableId) public override string ToString() => $"{TableName} (Lv. {MinLevel}-{MaxLevel})"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterSlot { public override string ToString() => $"{(Species)Species}{(Form == 0 ? "" : $"-{Form}")}{(Oybn.IsOybnAny ? "*" : "")} - {BaseProbability}={ShinyLock}"; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs b/FlatBuffers/Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs similarity index 83% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs rename to FlatBuffers/Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs index 71e01ebe..265ad585 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Slots/EncounterMultiplerArchive.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterMultiplier : ISlotModifierTime, ISlotModifierWeather { public float GetTimeMultiplier(int index) => index switch @@ -40,7 +31,6 @@ public partial class EncounterMultiplier : ISlotModifierTime, ISlotModifierWeath public bool HasWeatherModifier(int index) => index != 0 && GetWeatherMultiplier(index) != -1.0f; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterMultiplierArchive { public EncounterMultiplier GetEncounterMultiplier(EncounterSlot slot) diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierTime.cs b/FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierTime.cs similarity index 75% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierTime.cs rename to FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierTime.cs index 8b110b28..f17fedad 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierTime.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierTime.cs @@ -1,13 +1,11 @@ -using System; - namespace pkNX.Structures.FlatBuffers.Arceus; public interface ISlotModifierTime { - float TimeOfDayMultiplier0 {get;set;} - float TimeOfDayMultiplier1 {get;set;} - float TimeOfDayMultiplier2 {get;set;} - float TimeOfDayMultiplier3 {get;set;} + float TimeOfDayMultiplier0 { get; set; } + float TimeOfDayMultiplier1 { get; set; } + float TimeOfDayMultiplier2 { get; set; } + float TimeOfDayMultiplier3 { get; set; } } public static class SlotModifierTimeExtensions diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs b/FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs similarity index 70% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs rename to FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs index 48ffc8c6..18ccb989 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Slots/ISlotModifierWeather.cs @@ -1,17 +1,15 @@ -using System; - namespace pkNX.Structures.FlatBuffers.Arceus; public interface ISlotModifierWeather { - float WeatherMultiplier1 {get; set;} - float WeatherMultiplier2 {get; set;} - float WeatherMultiplier3 {get; set;} - float WeatherMultiplier4 {get; set;} - float WeatherMultiplier5 {get; set;} - float WeatherMultiplier6 {get; set;} - float WeatherMultiplier7 {get; set;} - float WeatherMultiplier8 {get; set;} + float WeatherMultiplier1 { get; set; } + float WeatherMultiplier2 { get; set; } + float WeatherMultiplier3 { get; set; } + float WeatherMultiplier4 { get; set; } + float WeatherMultiplier5 { get; set; } + float WeatherMultiplier6 { get; set; } + float WeatherMultiplier7 { get; set; } + float WeatherMultiplier8 { get; set; } } public static class SlotModifierWeatherExtensions diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Static/EventEncountArchive.cs b/FlatBuffers/Arceus/Arceus/Field/Static/EventEncountArchive.cs similarity index 71% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Static/EventEncountArchive.cs rename to FlatBuffers/Arceus/Arceus/Field/Static/EventEncountArchive.cs index b25920cc..d58ab9e6 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Static/EventEncountArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Field/Static/EventEncountArchive.cs @@ -1,22 +1,5 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EventEncount; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EventEncountArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EventEncountPoke { public bool HasMoveset => Move1 != 0; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/EvolutionTable.cs b/FlatBuffers/Arceus/Arceus/Poke/EvolutionTable.cs similarity index 69% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/EvolutionTable.cs rename to FlatBuffers/Arceus/Arceus/Poke/EvolutionTable.cs index 09b4702e..b4a48093 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/EvolutionTable.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/EvolutionTable.cs @@ -1,21 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EvolutionTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EvolutionEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EvolutionSet { public byte[] Write() diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model Set/PokeModelSet.cs b/FlatBuffers/Arceus/Arceus/Poke/Model Set/PokeModelSet.cs similarity index 86% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model Set/PokeModelSet.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model Set/PokeModelSet.cs index fece2079..7ea5006d 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model Set/PokeModelSet.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model Set/PokeModelSet.cs @@ -1,10 +1,8 @@ -using System.ComponentModel; using System.Diagnostics; namespace pkNX.Structures.FlatBuffers.Arceus; // resident_release.bin -> bin/field/param/placement/common/pokemon_model_set.bin -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeModelSet { public PokeModelSetEntry GetEntry(ushort species) @@ -39,6 +37,3 @@ public PokeModelSetEntry AddEntry(ushort species, ushort form) return entry; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeModelSetEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Material.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/Material.cs similarity index 68% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Material.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model/Material.cs index 5edddd20..0c586fef 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Material.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/Material.cs @@ -1,14 +1,7 @@ -using System; -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers.Arceus; // *.trmtr -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SamplerState; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Float4Parameter { public Float4Parameter(string shaderPropertyBinding, Color4f value) @@ -20,7 +13,6 @@ public Float4Parameter(string shaderPropertyBinding, Color4f value) public override string ToString() => $"{{ {PropertyBinding}: {ColorValue} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class FloatParameter { public FloatParameter(string shaderPropertyBinding, float value) @@ -32,7 +24,6 @@ public FloatParameter(string shaderPropertyBinding, float value) public override string ToString() => $"{{ {PropertyBinding}: {FloatValue} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class IntParameter { public IntParameter(string shaderPropertyBinding, int value) @@ -44,7 +35,6 @@ public IntParameter(string shaderPropertyBinding, int value) public override string ToString() => $"{{ {PropertyBinding}: {IntValue} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class StringParameter { public StringParameter(string shaderPropertyBinding, string value) @@ -56,13 +46,11 @@ public StringParameter(string shaderPropertyBinding, string value) public override string ToString() => $"{{ {PropertyBinding}: {StringValue} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class ShaderBinding { public override string ToString() => $"{{ {ShaderName} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TextureParameter { public TextureParameter(string shaderPropertyBinding, uint slot, string textureFile) @@ -75,14 +63,3 @@ public TextureParameter(string shaderPropertyBinding, uint slot, string textureF public override string ToString() => $"{{ {TextureFile}, Bound to: {PropertyBinding}, t{TextureSlot} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class WriteMaskData; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class IntExtraData; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialPass; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Material; diff --git a/FlatBuffers/Arceus/Arceus/Poke/Model/Mesh.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/Mesh.cs new file mode 100644 index 00000000..5cab7312 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/Mesh.cs @@ -0,0 +1,18 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +// *.trmsh + +public partial class BoneWeight +{ + public override string ToString() => $"{{ [{RigIndex}]: {Weight} }}"; +} + +public partial class InputLayoutElement +{ + public override string ToString() => $"{{ {SemanticName}{SemanticIndex:#} ({Format}) @ {Offset:00} }}"; +} + +public partial class VertexSize +{ + public override string ToString() => $"{{ {Size} }}"; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MeshBuffer.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/MeshBuffer.cs similarity index 88% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MeshBuffer.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model/MeshBuffer.cs index 4c4da45e..037f8cde 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MeshBuffer.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/MeshBuffer.cs @@ -1,10 +1,3 @@ -using pkNX.Containers; -using System; -using System.ComponentModel; -using System.Diagnostics; -using System.Linq; -using System.Runtime.InteropServices; -using System.Xml.Linq; using static System.Buffers.Binary.BinaryPrimitives; namespace pkNX.Structures.FlatBuffers.Arceus; @@ -19,7 +12,6 @@ public class VertexWrapper(InputLayoutElement layoutElement, object data) public override string ToString() => $"{{ {LayoutElement.SemanticName}{LayoutElement.SemanticIndex:#}, {Data} }}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class ByteBuffer { public VertexAttributeLayout? Debug_InputLayout { get; set; } @@ -55,8 +47,3 @@ public VertexWrapper[][] FromInputLayout(VertexAttributeLayout inputLayout) } } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshBuffer; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshBufferTable; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Model.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/Model.cs similarity index 55% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Model.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model/Model.cs index f4204bec..90c92ad9 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Model.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/Model.cs @@ -1,12 +1,7 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers.Arceus; // *.trmdl -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class FileReference { public override string ToString() => $"{{ {Filename} }}"; @@ -14,13 +9,6 @@ public partial class FileReference public static FileReference Empty => new() { Filename = string.Empty }; } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LODIndex; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LOD; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Model { public static Model Empty => new() diff --git a/FlatBuffers/Arceus/Arceus/Poke/Model/MultiMaterialTable.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/MultiMaterialTable.cs new file mode 100644 index 00000000..81ee2b34 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/MultiMaterialTable.cs @@ -0,0 +1,11 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +// *.trmmt + +public partial class MultiMaterialTable +{ + public static MultiMaterialTable Empty => new() + { + Material = [], + }; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokemonModelArchive.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/PokemonModelArchive.cs similarity index 90% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokemonModelArchive.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model/PokemonModelArchive.cs index 6b1cea8a..76f21448 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokemonModelArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/PokemonModelArchive.cs @@ -1,17 +1,14 @@ using pkNX.Containers; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using FlatSharp.Attributes; +using System.ComponentModel; namespace pkNX.Structures.FlatBuffers.Arceus; -[FlatBufferTable, TypeConverter(typeof(ExpandableObjectConverter))] +// ReSharper disable once PartialTypeWithSinglePart +#pragma warning disable RCS1043 +[FlatBufferTable] public partial class MeshMaterialWrapper +#pragma warning restore RCS1043 { [FlatBufferItem(0)] public string Name { get; set; } = string.Empty; [FlatBufferItem(1)] public Material[] Materials { get; set; } = []; @@ -37,12 +34,12 @@ public PokemonModelArchive(GFPack sourceArchive) { SourceArchive = sourceArchive; - string FileName = Path.GetFileNameWithoutExtension(sourceArchive.FilePath); + string FileName = Path.GetFileNameWithoutExtension(sourceArchive.FilePath)!; int SpeciesId = int.Parse(FileName.Substring(2, 4)); string BasePath = $"bin/pokemon/pm{SpeciesId:0000}/{FileName}/"; string ModelPath = BasePath + "mdl/"; - string AnimationsPath = BasePath + "anm/"; + //string AnimationsPath = BasePath + "anm/"; Config = FlatBufferConverter.DeserializeFrom(SourceArchive.GetDataFullPath(BasePath + $"{FileName}.trpokecfg")); TRMMT = FlatBufferConverter.DeserializeFrom(SourceArchive.GetDataFullPath(ModelPath + $"{FileName}.trmmt")); @@ -62,7 +59,7 @@ public PokemonModelArchive(GFPack sourceArchive) MeshMaterials = TRMMT.Material.Select( x => new MeshMaterialWrapper { - Name = x.Name, + Name = x.Name!, Materials = x.FileNames.Select( fileName => FlatBufferConverter.DeserializeFrom(SourceArchive.GetDataFullPath(ModelPath + $"{fileName}")) ).ToArray(), diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Shader.cs b/FlatBuffers/Arceus/Arceus/Poke/Model/Shader.cs similarity index 99% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Shader.cs rename to FlatBuffers/Arceus/Arceus/Poke/Model/Shader.cs index 31ff8447..82b041fa 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Shader.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Model/Shader.cs @@ -1,7 +1,3 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers.Arceus; // *.trsha diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Learnset.cs b/FlatBuffers/Arceus/Arceus/Poke/Moves/Learnset.cs similarity index 56% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Learnset.cs rename to FlatBuffers/Arceus/Arceus/Poke/Moves/Learnset.cs index 8f35fbe3..2d85cc42 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Learnset.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/Moves/Learnset.cs @@ -1,23 +1,5 @@ -using System; -using System.ComponentModel; -using System.IO; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Learnset; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LearnsetEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class LearnsetMeta { public byte[] WriteLearnsetAsLearn6() diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAIArchive.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeAIArchive.cs similarity index 88% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAIArchive.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeAIArchive.cs index 606b1953..34ee96b3 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAIArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeAIArchive.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeAIArchive { public PokeAI GetEntry(ushort species, ushort form) @@ -37,7 +28,6 @@ public PokeAI AddEntry(ushort species, ushort form, bool isAlpha) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeAI { public static PokeAI GetNew(ushort species = 0, ushort form = 0, bool isAlpha = false) => new() @@ -65,13 +55,6 @@ public static PokeAI GetNew(ushort species = 0, ushort form = 0, bool isAlpha = }; } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeAI_F24; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeAI_F18; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeAI_F09 { public static readonly PokeAI_F09 DefaultBehaviour02 = new() @@ -127,7 +110,6 @@ public partial class PokeAI_F09 }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeAIBehaviour { public static readonly PokeAIBehaviour DefaultBehaviour02 = new() { BehaviourHash = 9252365659083253459, Parameters = ["0.2", "35"] }; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAdd.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeAdd.cs similarity index 70% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAdd.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeAdd.cs index cb60f9bd..0f35fe80 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeAdd.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeAdd.cs @@ -1,19 +1,5 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeAddArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeAdd { public string Dump(string[] speciesNames) diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs similarity index 76% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs index c2ee577e..4109c2f1 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeCaptureCollisionArchive.cs @@ -1,22 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeCaptureCollision; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeCaptureCollider; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeCaptureCollisionArchive { public PokeCaptureCollision GetEntry(ushort species, ushort form) diff --git a/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemArchive.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemArchive.cs new file mode 100644 index 00000000..e22de0c6 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemArchive.cs @@ -0,0 +1,13 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class PokeDropItem +{ + public string Dump(string[] itemNames) => $"{Hash:X16}\t{itemNames[RegularItem]}\t{RegularItemProbability}\t{itemNames[RareItem]}\t{RareItemProbability}"; + + public override string ToString() => + $"Hash: {Hash:X16}, " + + $"RegularItem: {RegularItem}, " + + $"RegularItemProbability: {RegularItemProbability}, " + + $"RareItem: {RareItem}, " + + $"RareItemProbability: {RareItemProbability}"; +} diff --git a/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs new file mode 100644 index 00000000..6b6327d7 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class PokeDropItemBattle +{ + public string Dump(string[] n) => $"{RateItem1}\t{n[IndexItem1]}\t{RateItem2}\t{n[IndexItem2]}\t{RateItem3}\t{n[IndexItem3]}\t{RateItem4}\t{n[IndexItem4]}\t{RateItem5}\t{n[IndexItem5]}"; +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeMiscTable.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeMiscTable.cs similarity index 75% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeMiscTable.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeMiscTable.cs index ccdaf103..2236fde6 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeMiscTable.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeMiscTable.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeMisc { // lazy set reference for remembering the fetched object @@ -18,7 +9,6 @@ public partial class PokeMisc public PokeDropItem? AlphaDropTable { get; set; } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeMiscTable { public PokeMisc GetEntry(ushort species, ushort form) diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs similarity index 80% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs index ad9c408d..c32657b5 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeInfoList.cs @@ -1,18 +1,9 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; // bin/appli/res_pokemon/list/pokemon_info_list.bin -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeInfoList { public PokeInfo GetEntry(ushort species) @@ -131,21 +122,3 @@ public IEnumerable GetDexFormEntries() } } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfo; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfoDetail; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfoDetail_2; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfoDetail_3; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfoDetail_5; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeInfoGender; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs b/FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs similarity index 75% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs rename to FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs index 50e4e614..159e3c85 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs +++ b/FlatBuffers/Arceus/Arceus/Poke/PokeResource/PokeResourceTable.cs @@ -1,33 +1,10 @@ -using System; -using System.ComponentModel; using System.Diagnostics; -using System.Linq; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global // poke_resource_table.trpmcatalog namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeResourceMeta; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeModelConfig; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeModelSpeciesInfo; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class FileNamePathPair; - /// for Legends: Arceus, adding -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeResourceTable { public PokeModelConfig GetEntry(ushort species, ushort form, byte gender) diff --git a/FlatBuffers/Arceus/Arceus/Pokedex/PokedexResearchTable.cs b/FlatBuffers/Arceus/Arceus/Pokedex/PokedexResearchTable.cs new file mode 100644 index 00000000..645277f1 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Pokedex/PokedexResearchTable.cs @@ -0,0 +1,22 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class PokedexResearchTable +{ + public PokedexResearchTask[] GetEntries(int species) + { + return Table.Where(z => z.Species == species).ToArray(); + } + + public PokedexResearchTask AddTask(int species) + { + var task = new PokedexResearchTask { Species = species }; + AddTask(task); + return task; + } + + public void AddTask(PokedexResearchTask task) => Table = Table.Append(task).ToArray(); + public bool RemoveTask(PokedexResearchTask taskToRemove) + { + return Table.Remove(taskToRemove); + } +} diff --git a/FlatBuffers/Arceus/Arceus/Throw/ThrowParamTable.cs b/FlatBuffers/Arceus/Arceus/Throw/ThrowParamTable.cs new file mode 100644 index 00000000..2614869b --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Throw/ThrowParamTable.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class ThrowParam +{ + public string Dump() => $"{ThrowParamType:X16}\t{Velocity}\t{Arc}\t{GravityDirection}\t{ThrowAngle}"; +} diff --git a/FlatBuffers/Arceus/Arceus/Throw/ThrowableParamTable.cs b/FlatBuffers/Arceus/Arceus/Throw/ThrowableParamTable.cs new file mode 100644 index 00000000..4f1a4f49 --- /dev/null +++ b/FlatBuffers/Arceus/Arceus/Throw/ThrowableParamTable.cs @@ -0,0 +1,13 @@ +namespace pkNX.Structures.FlatBuffers.Arceus; + +public partial class ThrowableParamTable +{ + public void AddEntry(int i) + { + Table = Table.Append(new ThrowableParam + { + Label01 = string.Empty, + Label02 = string.Empty, + }).ToList(); + } +} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/TrData.cs b/FlatBuffers/Arceus/Arceus/TrData.cs similarity index 57% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/TrData.cs rename to FlatBuffers/Arceus/Arceus/TrData.cs index cd72fde4..38d0dd2f 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/TrData.cs +++ b/FlatBuffers/Arceus/Arceus/TrData.cs @@ -1,21 +1,10 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrainerData { public string TeamSummary => Environment.NewLine + string.Join(Environment.NewLine, Team.Select(z => "\t" + z)); } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrainerPoke { public override string ToString() @@ -24,13 +13,11 @@ public override string ToString() } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class WazaSet { public override string ToString() => $"{Move}{(Mastered ? "*":"")}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrFloatQuad { public override string ToString() => $"({Float00},{Float01},{Float02},{Float03})"; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/ArchiveContents.cs b/FlatBuffers/Arceus/Arceus/Util/ArchiveContents.cs similarity index 60% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/ArchiveContents.cs rename to FlatBuffers/Arceus/Arceus/Util/ArchiveContents.cs index 15197375..d6cd4260 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/ArchiveContents.cs +++ b/FlatBuffers/Arceus/Arceus/Util/ArchiveContents.cs @@ -1,15 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.Arceus; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class ArchiveContents { public ArchiveContent AddEntry() @@ -35,6 +25,3 @@ public ArchiveContent AddEntry(string archiveFile, string[] internalArchiveFiles return entry; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ArchiveContent; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/EncounterDetail.cs b/FlatBuffers/Arceus/Arceus/Util/EncounterDetail.cs similarity index 98% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/EncounterDetail.cs rename to FlatBuffers/Arceus/Arceus/Util/EncounterDetail.cs index f836f6b5..52cd4bba 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/EncounterDetail.cs +++ b/FlatBuffers/Arceus/Arceus/Util/EncounterDetail.cs @@ -1,6 +1,3 @@ -using System.Collections.Generic; -using System.Linq; - namespace pkNX.Structures.FlatBuffers.Arceus; public record struct EncounterDetail(double Rate, double MultT, double MultW, int Unk, EncounterSlot Slot) diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/EncounterTableUtil.cs b/FlatBuffers/Arceus/Arceus/Util/EncounterTableUtil.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/EncounterTableUtil.cs rename to FlatBuffers/Arceus/Arceus/Util/EncounterTableUtil.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/IHasCondition.cs b/FlatBuffers/Arceus/Arceus/Util/IHasCondition.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/IHasCondition.cs rename to FlatBuffers/Arceus/Arceus/Util/IHasCondition.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/SpawnerType.cs b/FlatBuffers/Arceus/Arceus/Util/SpawnerType.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/SpawnerType.cs rename to FlatBuffers/Arceus/Arceus/Util/SpawnerType.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/Time.cs b/FlatBuffers/Arceus/Arceus/Util/Time.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/Time.cs rename to FlatBuffers/Arceus/Arceus/Util/Time.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/TriggerUtil.cs b/FlatBuffers/Arceus/Arceus/Util/TriggerUtil.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/TriggerUtil.cs rename to FlatBuffers/Arceus/Arceus/Util/TriggerUtil.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/Weather.cs b/FlatBuffers/Arceus/Arceus/Util/Weather.cs similarity index 84% rename from pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/Weather.cs rename to FlatBuffers/Arceus/Arceus/Util/Weather.cs index eb6c9e97..17082979 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Util/Weather.cs +++ b/FlatBuffers/Arceus/Arceus/Util/Weather.cs @@ -1,7 +1,5 @@ namespace pkNX.Structures.FlatBuffers.Arceus; -// ReSharper disable UnusedMember.Global - public enum Weather { None = 0, diff --git a/FlatBuffers/Arceus/Directory.Build.props b/FlatBuffers/Arceus/Directory.Build.props new file mode 100644 index 00000000..90de73c1 --- /dev/null +++ b/FlatBuffers/Arceus/Directory.Build.props @@ -0,0 +1,11 @@ + + + + + + + + ..\pkNX.Structures.FlatBuffers\Schemas\ + + + diff --git a/pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalDumperPLA.cs b/FlatBuffers/Arceus/Dumpers/PersonalDumperPLA.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalDumperPLA.cs rename to FlatBuffers/Arceus/Dumpers/PersonalDumperPLA.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalInfo8LA.cs b/FlatBuffers/Arceus/Dumpers/PersonalInfo8LA.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalInfo8LA.cs rename to FlatBuffers/Arceus/Dumpers/PersonalInfo8LA.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalTable8LA.cs b/FlatBuffers/Arceus/Dumpers/PersonalTable8LA.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Dumpers/PersonalTable8LA.cs rename to FlatBuffers/Arceus/Dumpers/PersonalTable8LA.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/FnvHash.cs b/FlatBuffers/Arceus/FnvHash.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/FnvHash.cs rename to FlatBuffers/Arceus/FnvHash.cs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Config/AppConfigList.fbs b/FlatBuffers/Arceus/Schemas/Config/AppConfigList.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Config/AppConfigList.fbs rename to FlatBuffers/Arceus/Schemas/Config/AppConfigList.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Config/ConfigureTable.fbs b/FlatBuffers/Arceus/Schemas/Config/ConfigureTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Config/ConfigureTable.fbs rename to FlatBuffers/Arceus/Schemas/Config/ConfigureTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/DressUp/DressUpTable.fbs b/FlatBuffers/Arceus/Schemas/DressUp/DressUpTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/DressUp/DressUpTable.fbs rename to FlatBuffers/Arceus/Schemas/DressUp/DressUpTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Event/Trigger.fbs b/FlatBuffers/Arceus/Schemas/Event/Trigger.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Event/Trigger.fbs rename to FlatBuffers/Arceus/Schemas/Event/Trigger.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/LandmarkItemSpawnTable.fbs b/FlatBuffers/Arceus/Schemas/Field/LandmarkItemSpawnTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/LandmarkItemSpawnTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/LandmarkItemSpawnTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/LandmarkItemTable.fbs b/FlatBuffers/Arceus/Schemas/Field/LandmarkItemTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/LandmarkItemTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/LandmarkItemTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/MassOutbreakTable.fbs b/FlatBuffers/Arceus/Schemas/Field/MassOutbreakTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/MassOutbreakTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/MassOutbreakTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroup.fbs b/FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroup.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroup.fbs rename to FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroup.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroupLottery.fbs b/FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroupLottery.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroupLottery.fbs rename to FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakGroupLottery.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakLottery.fbs b/FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakLottery.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakLottery.fbs rename to FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakLottery.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakTimeLimit.fbs b/FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakTimeLimit.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/NewHuge/NewHugeOutbreakTimeLimit.fbs rename to FlatBuffers/Arceus/Schemas/Field/NewHuge/NewHugeOutbreakTimeLimit.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaBGMTable.fbs b/FlatBuffers/Arceus/Schemas/Field/Resident/AreaBGMTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaBGMTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/Resident/AreaBGMTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaSettingsTable.fbs b/FlatBuffers/Arceus/Schemas/Field/Resident/AreaSettingsTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaSettingsTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/Resident/AreaSettingsTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaWeatherTable.fbs b/FlatBuffers/Arceus/Schemas/Field/Resident/AreaWeatherTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Resident/AreaWeatherTable.fbs rename to FlatBuffers/Arceus/Schemas/Field/Resident/AreaWeatherTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Slots/EncounterDataArchive.fbs b/FlatBuffers/Arceus/Schemas/Field/Slots/EncounterDataArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Slots/EncounterDataArchive.fbs rename to FlatBuffers/Arceus/Schemas/Field/Slots/EncounterDataArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Slots/EncounterMultiplerArchive.fbs b/FlatBuffers/Arceus/Schemas/Field/Slots/EncounterMultiplerArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Slots/EncounterMultiplerArchive.fbs rename to FlatBuffers/Arceus/Schemas/Field/Slots/EncounterMultiplerArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Static/EventEncountArchive.fbs b/FlatBuffers/Arceus/Schemas/Field/Static/EventEncountArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Field/Static/EventEncountArchive.fbs rename to FlatBuffers/Arceus/Schemas/Field/Static/EventEncountArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Ginkgo/GinkgoItem.fbs b/FlatBuffers/Arceus/Schemas/Ginkgo/GinkgoItem.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Ginkgo/GinkgoItem.fbs rename to FlatBuffers/Arceus/Schemas/Ginkgo/GinkgoItem.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Ginkgo/GinkgoItemTable.fbs b/FlatBuffers/Arceus/Schemas/Ginkgo/GinkgoItemTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Ginkgo/GinkgoItemTable.fbs rename to FlatBuffers/Arceus/Schemas/Ginkgo/GinkgoItemTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/HaShopTable.fbs b/FlatBuffers/Arceus/Schemas/HaShopTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/HaShopTable.fbs rename to FlatBuffers/Arceus/Schemas/HaShopTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/ArchiveContents.fbs b/FlatBuffers/Arceus/Schemas/Misc/ArchiveContents.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/ArchiveContents.fbs rename to FlatBuffers/Arceus/Schemas/Misc/ArchiveContents.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/KeyAssignmentTable.fbs b/FlatBuffers/Arceus/Schemas/Misc/KeyAssignmentTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/KeyAssignmentTable.fbs rename to FlatBuffers/Arceus/Schemas/Misc/KeyAssignmentTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/LbPointsTable.fbs b/FlatBuffers/Arceus/Schemas/Misc/LbPointsTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/LbPointsTable.fbs rename to FlatBuffers/Arceus/Schemas/Misc/LbPointsTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/MoveShopTable.fbs b/FlatBuffers/Arceus/Schemas/Misc/MoveShopTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/MoveShopTable.fbs rename to FlatBuffers/Arceus/Schemas/Misc/MoveShopTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/PlayReportTable.fbs b/FlatBuffers/Arceus/Schemas/Misc/PlayReportTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/PlayReportTable.fbs rename to FlatBuffers/Arceus/Schemas/Misc/PlayReportTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/ScriptIDRecordRelease.fbs b/FlatBuffers/Arceus/Schemas/Misc/ScriptIDRecordRelease.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Misc/ScriptIDRecordRelease.fbs rename to FlatBuffers/Arceus/Schemas/Misc/ScriptIDRecordRelease.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/NPC/NPCModelSet.fbs b/FlatBuffers/Arceus/Schemas/NPC/NPCModelSet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/NPC/NPCModelSet.fbs rename to FlatBuffers/Arceus/Schemas/NPC/NPCModelSet.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/OybnSettingTable.fbs b/FlatBuffers/Arceus/Schemas/Placement/OybnSettingTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/OybnSettingTable.fbs rename to FlatBuffers/Arceus/Schemas/Placement/OybnSettingTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementItemArchive.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementItemArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementItemArchive.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementItemArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementLocationArchive.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementLocationArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementLocationArchive.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementLocationArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementMkrgTable.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementMkrgTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementMkrgTable.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementMkrgTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementParameters.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementParameters.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementParameters.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementParameters.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementSearchItemTable.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementSearchItemTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementSearchItemTable.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementSearchItemTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementSpawnerData.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementSpawnerData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementSpawnerData.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementSpawnerData.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementUnnnTable.fbs b/FlatBuffers/Arceus/Schemas/Placement/PlacementUnnnTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Placement/PlacementUnnnTable.fbs rename to FlatBuffers/Arceus/Schemas/Placement/PlacementUnnnTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/EvolutionTable.fbs b/FlatBuffers/Arceus/Schemas/Poke/EvolutionTable.fbs similarity index 88% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/EvolutionTable.fbs rename to FlatBuffers/Arceus/Schemas/Poke/EvolutionTable.fbs index 2bd13e8e..8c12b222 100644 --- a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/EvolutionTable.fbs +++ b/FlatBuffers/Arceus/Schemas/Poke/EvolutionTable.fbs @@ -4,7 +4,7 @@ attribute "fs_serializer"; table EvolutionSet { Species:ushort; Form:ushort; - Table:[EvolutionEntry]; + Table:[EvolutionEntry]; // not required! } table EvolutionEntry { diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model Set/PokeModelSet.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model Set/PokeModelSet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model Set/PokeModelSet.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model Set/PokeModelSet.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/BoneScalarMesh.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/BoneScalarMesh.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/BoneScalarMesh.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/BoneScalarMesh.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Material.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/Material.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Material.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/Material.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Mesh.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/Mesh.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Mesh.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/Mesh.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/MeshBuffer.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/MeshBuffer.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/MeshBuffer.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/MeshBuffer.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Model.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/Model.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Model.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/Model.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/MultiMaterialTable.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/MultiMaterialTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/MultiMaterialTable.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/MultiMaterialTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/PokeConfig.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/PokeConfig.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/PokeConfig.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/PokeConfig.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Shader.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/Shader.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Shader.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/Shader.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Skeleton.fbs b/FlatBuffers/Arceus/Schemas/Poke/Model/Skeleton.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Model/Skeleton.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Model/Skeleton.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/Learnset.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/Learnset.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/Learnset.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/Learnset.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWaza.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWaza.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWaza.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWaza.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaSeArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaSeArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaSeArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaSeArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/Waza.fbs b/FlatBuffers/Arceus/Schemas/Poke/Moves/Waza.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/Moves/Waza.fbs rename to FlatBuffers/Arceus/Schemas/Poke/Moves/Waza.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PersonalInfoLAfb.fbs b/FlatBuffers/Arceus/Schemas/Poke/PersonalInfoLAfb.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PersonalInfoLAfb.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PersonalInfoLAfb.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeAIArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeAIArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeAIArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeAIArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeAdd.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeAdd.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeAdd.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeAdd.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeBattleSpawnArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeBattleSpawnArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeBattleSpawnArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeBattleSpawnArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeBodyParticleArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeBodyParticleArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeBodyParticleArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeBodyParticleArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeCaptureCollisionArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeCaptureCollisionArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeCaptureCollisionArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeCaptureCollisionArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDefaultLocatorArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeDefaultLocatorArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDefaultLocatorArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeDefaultLocatorArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItem.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeDropItem.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItem.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeDropItem.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItemArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeDropItemArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItemArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeDropItemArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItemBattleArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeDropItemBattleArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeDropItemBattleArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeDropItemBattleArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeEatingHabitsArchive.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeEatingHabitsArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeEatingHabitsArchive.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeEatingHabitsArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeMiscTable.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeMiscTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeMiscTable.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeMiscTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeResource/PokeInfoList.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeResource/PokeInfoList.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeResource/PokeInfoList.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeResource/PokeInfoList.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeResource/PokeResourceTable.fbs b/FlatBuffers/Arceus/Schemas/Poke/PokeResource/PokeResourceTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Poke/PokeResource/PokeResourceTable.fbs rename to FlatBuffers/Arceus/Schemas/Poke/PokeResource/PokeResourceTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexDistributionTable.fbs b/FlatBuffers/Arceus/Schemas/Pokedex/PokedexDistributionTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexDistributionTable.fbs rename to FlatBuffers/Arceus/Schemas/Pokedex/PokedexDistributionTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexRankTable.fbs b/FlatBuffers/Arceus/Schemas/Pokedex/PokedexRankTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexRankTable.fbs rename to FlatBuffers/Arceus/Schemas/Pokedex/PokedexRankTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexResearchTable.fbs b/FlatBuffers/Arceus/Schemas/Pokedex/PokedexResearchTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Pokedex/PokedexResearchTable.fbs rename to FlatBuffers/Arceus/Schemas/Pokedex/PokedexResearchTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/AbilityType.fbs b/FlatBuffers/Arceus/Schemas/Shared/AbilityType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/AbilityType.fbs rename to FlatBuffers/Arceus/Schemas/Shared/AbilityType.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/FlatDummyObject.fbs b/FlatBuffers/Arceus/Schemas/Shared/FlatDummyObject.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/FlatDummyObject.fbs rename to FlatBuffers/Arceus/Schemas/Shared/FlatDummyObject.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/NatureType.fbs b/FlatBuffers/Arceus/Schemas/Shared/NatureType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/NatureType.fbs rename to FlatBuffers/Arceus/Schemas/Shared/NatureType.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/ShinyType.fbs b/FlatBuffers/Arceus/Schemas/Shared/ShinyType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Shared/ShinyType.fbs rename to FlatBuffers/Arceus/Schemas/Shared/ShinyType.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/CommonCaptureConfigTable.fbs b/FlatBuffers/Arceus/Schemas/Throw/CommonCaptureConfigTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/CommonCaptureConfigTable.fbs rename to FlatBuffers/Arceus/Schemas/Throw/CommonCaptureConfigTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowParamTable.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowParamTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowParamTable.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowParamTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowPermissionSet.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowPermissionSet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowPermissionSet.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowPermissionSet.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableBaitParamDictionary.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowableBaitParamDictionary.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableBaitParamDictionary.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowableBaitParamDictionary.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableParamTable.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowableParamTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableParamTable.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowableParamTable.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableResourceDictionary.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowableResourceDictionary.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableResourceDictionary.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowableResourceDictionary.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableResourceSetDictionary.fbs b/FlatBuffers/Arceus/Schemas/Throw/ThrowableResourceSetDictionary.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/Throw/ThrowableResourceSetDictionary.fbs rename to FlatBuffers/Arceus/Schemas/Throw/ThrowableResourceSetDictionary.fbs diff --git a/pkNX.Structures.FlatBuffers.Arceus/Schemas/TrainerData.fbs b/FlatBuffers/Arceus/Schemas/TrainerData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Arceus/Schemas/TrainerData.fbs rename to FlatBuffers/Arceus/Schemas/TrainerData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj b/FlatBuffers/Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj rename to FlatBuffers/Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj diff --git a/FlatBuffers/Directory.Build.props b/FlatBuffers/Directory.Build.props new file mode 100644 index 00000000..2be46e15 --- /dev/null +++ b/FlatBuffers/Directory.Build.props @@ -0,0 +1,33 @@ + + + + + + + true + + + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + GreedyMutable + true + + + + diff --git a/FlatBuffers/LGPE/Directory.Build.props b/FlatBuffers/LGPE/Directory.Build.props new file mode 100644 index 00000000..90de73c1 --- /dev/null +++ b/FlatBuffers/LGPE/Directory.Build.props @@ -0,0 +1,11 @@ + + + + + + + + ..\pkNX.Structures.FlatBuffers\Schemas\ + + + diff --git a/pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterTableUtil.cs b/FlatBuffers/LGPE/Gen7/EncounterTableUtil.cs similarity index 98% rename from pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterTableUtil.cs rename to FlatBuffers/LGPE/Gen7/EncounterTableUtil.cs index 48f0fbf5..b444f453 100644 --- a/pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterTableUtil.cs +++ b/FlatBuffers/LGPE/Gen7/EncounterTableUtil.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace pkNX.Structures.FlatBuffers.LGPE; public static class EncounterTableUtil diff --git a/pkNX.Structures.FlatBuffers.LGPE/Gen7/ShopInventory.cs b/FlatBuffers/LGPE/Gen7/ShopInventory.cs similarity index 65% rename from pkNX.Structures.FlatBuffers.LGPE/Gen7/ShopInventory.cs rename to FlatBuffers/LGPE/Gen7/ShopInventory.cs index 2c6bbed1..2baa3f95 100644 --- a/pkNX.Structures.FlatBuffers.LGPE/Gen7/ShopInventory.cs +++ b/FlatBuffers/LGPE/Gen7/ShopInventory.cs @@ -1,17 +1,5 @@ -using System.Collections.Generic; -using System.ComponentModel; -using System.Linq; - -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - namespace pkNX.Structures.FlatBuffers.LGPE; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ShopInventory; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class SingleShop { public override string ToString() => $"{Hash:X16} - {Inventories}"; @@ -23,7 +11,6 @@ public partial class SingleShop }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class MultiShop { public override string ToString() => $"{Hash:X16} - {string.Join(", ", Inventories.Select(z => z.ToString()))}"; @@ -34,7 +21,6 @@ public partial class MultiShop }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Inventory { public override string ToString() => $"{string.Join(",", Items.Select(z => z.ToString()))}"; diff --git a/pkNX.Structures.FlatBuffers.LGPE/Schemas/shop.fbs b/FlatBuffers/LGPE/Schemas/shop.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.LGPE/Schemas/shop.fbs rename to FlatBuffers/LGPE/Schemas/shop.fbs diff --git a/pkNX.Structures.FlatBuffers.LGPE/Schemas/wild.fbs b/FlatBuffers/LGPE/Schemas/wild.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.LGPE/Schemas/wild.fbs rename to FlatBuffers/LGPE/Schemas/wild.fbs diff --git a/FlatBuffers/LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj b/FlatBuffers/LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/BGMEventArray.fbs b/FlatBuffers/SV/Audio/Schemas/BGMEventArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/BGMEventArray.fbs rename to FlatBuffers/SV/Audio/Schemas/BGMEventArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/BGMEventType.fbs b/FlatBuffers/SV/Audio/Schemas/BGMEventType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/BGMEventType.fbs rename to FlatBuffers/SV/Audio/Schemas/BGMEventType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/EnvPokeVoiceLotterySetting.fbs b/FlatBuffers/SV/Audio/Schemas/EnvPokeVoiceLotterySetting.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/Schemas/EnvPokeVoiceLotterySetting.fbs rename to FlatBuffers/SV/Audio/Schemas/EnvPokeVoiceLotterySetting.fbs diff --git a/FlatBuffers/SV/Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj b/FlatBuffers/SV/Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/GameBaseParamTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/GameBaseParamTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/GameBaseParamTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/GameBaseParamTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/OjamaPokemonCommonTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/OjamaPokemonCommonTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/OjamaPokemonCommonTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/OjamaPokemonCommonTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/OjamaPokemonUniqueTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/OjamaPokemonUniqueTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/OjamaPokemonUniqueTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/OjamaPokemonUniqueTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/ResultDemoTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/ResultDemoTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/ResultDemoTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/ResultDemoTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/RewardActionTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/RewardActionTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/RewardActionTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/RewardActionTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/RewardTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/RewardTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/RewardTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/RewardTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/ScoreBaseTableArray.fbs b/FlatBuffers/SV/Balloon/Schemas/ScoreBaseTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/Schemas/ScoreBaseTableArray.fbs rename to FlatBuffers/SV/Balloon/Schemas/ScoreBaseTableArray.fbs diff --git a/FlatBuffers/SV/Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj b/FlatBuffers/SV/Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/BattleConfig.fbs b/FlatBuffers/SV/Battle/Schemas/BattleConfig.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/BattleConfig.fbs rename to FlatBuffers/SV/Battle/Schemas/BattleConfig.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/BattleEffectTableArray.fbs b/FlatBuffers/SV/Battle/Schemas/BattleEffectTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/BattleEffectTableArray.fbs rename to FlatBuffers/SV/Battle/Schemas/BattleEffectTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/ItemTableArray.fbs b/FlatBuffers/SV/Battle/Schemas/ItemTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/ItemTableArray.fbs rename to FlatBuffers/SV/Battle/Schemas/ItemTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/NetBattle/NetBattleRuleDataArray.fbs b/FlatBuffers/SV/Battle/Schemas/NetBattle/NetBattleRuleDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/NetBattle/NetBattleRuleDataArray.fbs rename to FlatBuffers/SV/Battle/Schemas/NetBattle/NetBattleRuleDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/NetBattle/NetBattleRuleParamArray.fbs b/FlatBuffers/SV/Battle/Schemas/NetBattle/NetBattleRuleParamArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/NetBattle/NetBattleRuleParamArray.fbs rename to FlatBuffers/SV/Battle/Schemas/NetBattle/NetBattleRuleParamArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/PokeExceptionTableArray.fbs b/FlatBuffers/SV/Battle/Schemas/PokeExceptionTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/Schemas/PokeExceptionTableArray.fbs rename to FlatBuffers/SV/Battle/Schemas/PokeExceptionTableArray.fbs diff --git a/FlatBuffers/SV/Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj b/FlatBuffers/SV/Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Food/FoodPokeTypeParam.cs b/FlatBuffers/SV/Cooking/Food/FoodPokeTypeParam.cs similarity index 97% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Food/FoodPokeTypeParam.cs rename to FlatBuffers/SV/Cooking/Food/FoodPokeTypeParam.cs index 1b60efef..d9b8660b 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Food/FoodPokeTypeParam.cs +++ b/FlatBuffers/SV/Cooking/Food/FoodPokeTypeParam.cs @@ -1,5 +1,3 @@ -using System; - namespace pkNX.Structures.FlatBuffers.SV; public partial struct FoodPokeTypeParam diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/BufDataArray.fbs b/FlatBuffers/SV/Cooking/Schemas/BufDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/BufDataArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/BufDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/CookingCommonData.fbs b/FlatBuffers/SV/Cooking/Schemas/CookingCommonData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/CookingCommonData.fbs rename to FlatBuffers/SV/Cooking/Schemas/CookingCommonData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/FoodSkillType.fbs b/FlatBuffers/SV/Cooking/Schemas/Enums/FoodSkillType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/FoodSkillType.fbs rename to FlatBuffers/SV/Cooking/Schemas/Enums/FoodSkillType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/IngredientType.fbs b/FlatBuffers/SV/Cooking/Schemas/Enums/IngredientType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/IngredientType.fbs rename to FlatBuffers/SV/Cooking/Schemas/Enums/IngredientType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/RecipeType.fbs b/FlatBuffers/SV/Cooking/Schemas/Enums/RecipeType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/RecipeType.fbs rename to FlatBuffers/SV/Cooking/Schemas/Enums/RecipeType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/SeasoningType.fbs b/FlatBuffers/SV/Cooking/Schemas/Enums/SeasoningType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Enums/SeasoningType.fbs rename to FlatBuffers/SV/Cooking/Schemas/Enums/SeasoningType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/FoodPowerComboArray.fbs b/FlatBuffers/SV/Cooking/Schemas/FoodPowerComboArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/FoodPowerComboArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/FoodPowerComboArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/IngredientDataArray.fbs b/FlatBuffers/SV/Cooking/Schemas/IngredientDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/IngredientDataArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/IngredientDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/IngredientDishDataArray.fbs b/FlatBuffers/SV/Cooking/Schemas/IngredientDishDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/IngredientDishDataArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/IngredientDishDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPokeTypeParam.fbs b/FlatBuffers/SV/Cooking/Schemas/Param/FoodPokeTypeParam.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPokeTypeParam.fbs rename to FlatBuffers/SV/Cooking/Schemas/Param/FoodPokeTypeParam.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPowerComboParam.fbs b/FlatBuffers/SV/Cooking/Schemas/Param/FoodPowerComboParam.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPowerComboParam.fbs rename to FlatBuffers/SV/Cooking/Schemas/Param/FoodPowerComboParam.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPowerParam.fbs b/FlatBuffers/SV/Cooking/Schemas/Param/FoodPowerParam.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/FoodPowerParam.fbs rename to FlatBuffers/SV/Cooking/Schemas/Param/FoodPowerParam.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/IngredientParam.fbs b/FlatBuffers/SV/Cooking/Schemas/Param/IngredientParam.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/Param/IngredientParam.fbs rename to FlatBuffers/SV/Cooking/Schemas/Param/IngredientParam.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/RecipeDataArray.fbs b/FlatBuffers/SV/Cooking/Schemas/RecipeDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/RecipeDataArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/RecipeDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/SeasoningDataArray.fbs b/FlatBuffers/SV/Cooking/Schemas/SeasoningDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/SeasoningDataArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/SeasoningDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/TakaraSpicePowerTableArray.fbs b/FlatBuffers/SV/Cooking/Schemas/TakaraSpicePowerTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/Schemas/TakaraSpicePowerTableArray.fbs rename to FlatBuffers/SV/Cooking/Schemas/TakaraSpicePowerTableArray.fbs diff --git a/FlatBuffers/SV/Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj b/FlatBuffers/SV/Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj @@ -0,0 +1,2 @@ + + diff --git a/FlatBuffers/SV/Directory.Build.props b/FlatBuffers/SV/Directory.Build.props new file mode 100644 index 00000000..d197f783 --- /dev/null +++ b/FlatBuffers/SV/Directory.Build.props @@ -0,0 +1,26 @@ + + + + + + + + ..\..\pkNX.Structures.FlatBuffers\Schemas\ + + + + + + + + + ..\Shared\Schemas\ + + + + + + + + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventAddPokemonArray.fbs b/FlatBuffers/SV/Event/Schemas/EventAddPokemonArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventAddPokemonArray.fbs rename to FlatBuffers/SV/Event/Schemas/EventAddPokemonArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventSub012.RewardTableArray.fbs b/FlatBuffers/SV/Event/Schemas/EventSub012.RewardTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventSub012.RewardTableArray.fbs rename to FlatBuffers/SV/Event/Schemas/EventSub012.RewardTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventTradeListArray.fbs b/FlatBuffers/SV/Event/Schemas/EventTradeListArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventTradeListArray.fbs rename to FlatBuffers/SV/Event/Schemas/EventTradeListArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventTradePokemonArray.fbs b/FlatBuffers/SV/Event/Schemas/EventTradePokemonArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/EventTradePokemonArray.fbs rename to FlatBuffers/SV/Event/Schemas/EventTradePokemonArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/LegendPokeTableArray.fbs b/FlatBuffers/SV/Event/Schemas/LegendPokeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/LegendPokeTableArray.fbs rename to FlatBuffers/SV/Event/Schemas/LegendPokeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcFaceType.fbs b/FlatBuffers/SV/Event/Schemas/Motion/FieldNpcFaceType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcFaceType.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/FieldNpcFaceType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcMotion.fbs b/FlatBuffers/SV/Event/Schemas/Motion/FieldNpcMotion.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcMotion.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/FieldNpcMotion.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcMotionType.fbs b/FlatBuffers/SV/Event/Schemas/Motion/FieldNpcMotionType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcMotionType.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/FieldNpcMotionType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcPokemonDefaultMotion.fbs b/FlatBuffers/SV/Event/Schemas/Motion/FieldNpcPokemonDefaultMotion.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcPokemonDefaultMotion.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/FieldNpcPokemonDefaultMotion.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcPokemonMotion.fbs b/FlatBuffers/SV/Event/Schemas/Motion/FieldNpcPokemonMotion.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/FieldNpcPokemonMotion.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/FieldNpcPokemonMotion.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/NpcTrafficFormation.fbs b/FlatBuffers/SV/Event/Schemas/Motion/NpcTrafficFormation.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/NpcTrafficFormation.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/NpcTrafficFormation.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/NpcTrafficPartnerType.fbs b/FlatBuffers/SV/Event/Schemas/Motion/NpcTrafficPartnerType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/Motion/NpcTrafficPartnerType.fbs rename to FlatBuffers/SV/Event/Schemas/Motion/NpcTrafficPartnerType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/NpcTrafficGenerateTableArray.fbs b/FlatBuffers/SV/Event/Schemas/NpcTrafficGenerateTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/NpcTrafficGenerateTableArray.fbs rename to FlatBuffers/SV/Event/Schemas/NpcTrafficGenerateTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/PopupWindowTableArray.fbs b/FlatBuffers/SV/Event/Schemas/PopupWindowTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/PopupWindowTableArray.fbs rename to FlatBuffers/SV/Event/Schemas/PopupWindowTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/ReleasePokeTableArray.fbs b/FlatBuffers/SV/Event/Schemas/ReleasePokeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/ReleasePokeTableArray.fbs rename to FlatBuffers/SV/Event/Schemas/ReleasePokeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/TreeShakePokemonArray.fbs b/FlatBuffers/SV/Event/Schemas/TreeShakePokemonArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/Schemas/TreeShakePokemonArray.fbs rename to FlatBuffers/SV/Event/Schemas/TreeShakePokemonArray.fbs diff --git a/FlatBuffers/SV/Event/pkNX.Structures.FlatBuffers.SV.Event.csproj b/FlatBuffers/SV/Event/pkNX.Structures.FlatBuffers.SV.Event.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Event/pkNX.Structures.FlatBuffers.SV.Event.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/ExerciseRewardData.fbs b/FlatBuffers/SV/Gym/Schemas/ExerciseRewardData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/ExerciseRewardData.fbs rename to FlatBuffers/SV/Gym/Schemas/ExerciseRewardData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/ExerciseSetting.fbs b/FlatBuffers/SV/Gym/Schemas/ExerciseSetting.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/ExerciseSetting.fbs rename to FlatBuffers/SV/Gym/Schemas/ExerciseSetting.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/GymKooriCoursePokemonTable.fbs b/FlatBuffers/SV/Gym/Schemas/GymKooriCoursePokemonTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/GymKooriCoursePokemonTable.fbs rename to FlatBuffers/SV/Gym/Schemas/GymKooriCoursePokemonTable.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/GymKooriCourseTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/GymKooriCourseTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/GymKooriCourseTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/GymKooriCourseTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.denki.PopupPosTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.denki.PopupPosTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.denki.PopupPosTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.denki.PopupPosTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.esper.ENDLESS_BORDERArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.esper.ENDLESS_BORDERArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.esper.ENDLESS_BORDERArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.esper.ENDLESS_BORDERArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.esper.EXERCISE_COURSESArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.esper.EXERCISE_COURSESArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.esper.EXERCISE_COURSESArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.esper.EXERCISE_COURSESArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.kusa.PokeTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.kusa.PokeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.kusa.PokeTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.kusa.PokeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.kusa.RewardTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.kusa.RewardTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.kusa.RewardTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.kusa.RewardTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.FixTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mizu.FixTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.FixTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mizu.FixTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriItemTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriItemTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriItemTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriItemTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriNpcTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriNpcTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriNpcTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriNpcTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriVenueTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriVenueTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mizu.SeriVenueTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mizu.SeriVenueTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mushi.GymMushiData.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mushi.GymMushiData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mushi.GymMushiData.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mushi.GymMushiData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mushi.GymMushiRewardArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym.mushi.GymMushiRewardArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym.mushi.GymMushiRewardArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym.mushi.GymMushiRewardArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym_denki.PopupFixTableArray.fbs b/FlatBuffers/SV/Gym/Schemas/gym_denki.PopupFixTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/Schemas/gym_denki.PopupFixTableArray.fbs rename to FlatBuffers/SV/Gym/Schemas/gym_denki.PopupFixTableArray.fbs diff --git a/FlatBuffers/SV/Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj b/FlatBuffers/SV/Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/DLCItemGroupArray.fbs b/FlatBuffers/SV/Item/Schemas/DLCItemGroupArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/DLCItemGroupArray.fbs rename to FlatBuffers/SV/Item/Schemas/DLCItemGroupArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/DropItemDataArray.fbs b/FlatBuffers/SV/Item/Schemas/DropItemDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/DropItemDataArray.fbs rename to FlatBuffers/SV/Item/Schemas/DropItemDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/BattleFunctionType.fbs b/FlatBuffers/SV/Item/Schemas/Enums/BattleFunctionType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/BattleFunctionType.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/BattleFunctionType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/EquipEffect.fbs b/FlatBuffers/SV/Item/Schemas/Enums/EquipEffect.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/EquipEffect.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/EquipEffect.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/FieldFunctionType.fbs b/FlatBuffers/SV/Item/Schemas/Enums/FieldFunctionType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/FieldFunctionType.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/FieldFunctionType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/FieldPocket.fbs b/FlatBuffers/SV/Item/Schemas/Enums/FieldPocket.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/FieldPocket.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/FieldPocket.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/ItemGroup.fbs b/FlatBuffers/SV/Item/Schemas/Enums/ItemGroup.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/ItemGroup.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/ItemGroup.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/ItemType.fbs b/FlatBuffers/SV/Item/Schemas/Enums/ItemType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/ItemType.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/ItemType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/PluckEffect.fbs b/FlatBuffers/SV/Item/Schemas/Enums/PluckEffect.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/PluckEffect.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/PluckEffect.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/WorkPpSelTgt.fbs b/FlatBuffers/SV/Item/Schemas/Enums/WorkPpSelTgt.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/WorkPpSelTgt.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/WorkPpSelTgt.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/WorkType.fbs b/FlatBuffers/SV/Item/Schemas/Enums/WorkType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/Enums/WorkType.fbs rename to FlatBuffers/SV/Item/Schemas/Enums/WorkType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/HiddenItemBiomeTableArray.fbs b/FlatBuffers/SV/Item/Schemas/HiddenItemBiomeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/HiddenItemBiomeTableArray.fbs rename to FlatBuffers/SV/Item/Schemas/HiddenItemBiomeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/HiddenItemDataTableArray.fbs b/FlatBuffers/SV/Item/Schemas/HiddenItemDataTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/HiddenItemDataTableArray.fbs rename to FlatBuffers/SV/Item/Schemas/HiddenItemDataTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/ItemDataArray.fbs b/FlatBuffers/SV/Item/Schemas/ItemDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/ItemDataArray.fbs rename to FlatBuffers/SV/Item/Schemas/ItemDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/ItemPointTypeBiomeTableArray.fbs b/FlatBuffers/SV/Item/Schemas/ItemPointTypeBiomeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/ItemPointTypeBiomeTableArray.fbs rename to FlatBuffers/SV/Item/Schemas/ItemPointTypeBiomeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/MonohiroiItemArray.fbs b/FlatBuffers/SV/Item/Schemas/MonohiroiItemArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/MonohiroiItemArray.fbs rename to FlatBuffers/SV/Item/Schemas/MonohiroiItemArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/RummagingItemDataTableArray.fbs b/FlatBuffers/SV/Item/Schemas/RummagingItemDataTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/Schemas/RummagingItemDataTableArray.fbs rename to FlatBuffers/SV/Item/Schemas/RummagingItemDataTableArray.fbs diff --git a/FlatBuffers/SV/Item/pkNX.Structures.FlatBuffers.SV.Item.csproj b/FlatBuffers/SV/Item/pkNX.Structures.FlatBuffers.SV.Item.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Item/pkNX.Structures.FlatBuffers.SV.Item.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoCommonLevelArray.fbs b/FlatBuffers/SV/Misc/Schemas/Ajito/AjitoCommonLevelArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoCommonLevelArray.fbs rename to FlatBuffers/SV/Misc/Schemas/Ajito/AjitoCommonLevelArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoDifficultEnum.fbs b/FlatBuffers/SV/Misc/Schemas/Ajito/AjitoDifficultEnum.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoDifficultEnum.fbs rename to FlatBuffers/SV/Misc/Schemas/Ajito/AjitoDifficultEnum.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoPokemonArray.fbs b/FlatBuffers/SV/Misc/Schemas/Ajito/AjitoPokemonArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoPokemonArray.fbs rename to FlatBuffers/SV/Misc/Schemas/Ajito/AjitoPokemonArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoTypeEnum.fbs b/FlatBuffers/SV/Misc/Schemas/Ajito/AjitoTypeEnum.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoTypeEnum.fbs rename to FlatBuffers/SV/Misc/Schemas/Ajito/AjitoTypeEnum.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoUnitArray.fbs b/FlatBuffers/SV/Misc/Schemas/Ajito/AjitoUnitArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/Ajito/AjitoUnitArray.fbs rename to FlatBuffers/SV/Misc/Schemas/Ajito/AjitoUnitArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/DanBattle/DanCarBattleData.fbs b/FlatBuffers/SV/Misc/Schemas/DanBattle/DanCarBattleData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/DanBattle/DanCarBattleData.fbs rename to FlatBuffers/SV/Misc/Schemas/DanBattle/DanCarBattleData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/GemSettingRootTableArray.fbs b/FlatBuffers/SV/Misc/Schemas/GemSettingRootTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/GemSettingRootTableArray.fbs rename to FlatBuffers/SV/Misc/Schemas/GemSettingRootTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/ObjectGenerationRangeArray.fbs b/FlatBuffers/SV/Misc/Schemas/ObjectGenerationRangeArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/ObjectGenerationRangeArray.fbs rename to FlatBuffers/SV/Misc/Schemas/ObjectGenerationRangeArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/RibbonDataArray.fbs b/FlatBuffers/SV/Misc/Schemas/RibbonDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Schemas/RibbonDataArray.fbs rename to FlatBuffers/SV/Misc/Schemas/RibbonDataArray.fbs diff --git a/FlatBuffers/SV/Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj b/FlatBuffers/SV/Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Dumpers/PersonalDumperSV.cs b/FlatBuffers/SV/Personal/Dumpers/PersonalDumperSV.cs similarity index 94% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Dumpers/PersonalDumperSV.cs rename to FlatBuffers/SV/Personal/Dumpers/PersonalDumperSV.cs index 1a83471a..fa1fd2c4 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Dumpers/PersonalDumperSV.cs +++ b/FlatBuffers/SV/Personal/Dumpers/PersonalDumperSV.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; using System.Diagnostics; -using System.Linq; namespace pkNX.Structures.FlatBuffers.SV; @@ -9,22 +6,22 @@ public class PersonalDumperSV { public const bool HasAbilities = true; - public IReadOnlyList Abilities { private get; init; } - public IReadOnlyList Types { private get; init; } - public IReadOnlyList Items { private get; init; } - public IReadOnlyList Colors { private get; init; } - public IReadOnlyList EggGroups { private get; init; } - public IReadOnlyList ExpGroups { private get; init; } - public IReadOnlyList Moves { protected get; init; } - public IReadOnlyList Species { private get; init; } - public IReadOnlyList ZukanA { private get; init; } - public IReadOnlyList ZukanB { private get; init; } + public required IReadOnlyList Abilities { private get; init; } + public required IReadOnlyList Types { private get; init; } + public required IReadOnlyList Items { private get; init; } + public required IReadOnlyList Colors { private get; init; } + public required IReadOnlyList EggGroups { private get; init; } + public required IReadOnlyList ExpGroups { private get; init; } + public required IReadOnlyList Moves { protected get; init; } + public required IReadOnlyList Species { private get; init; } + public required IReadOnlyList ZukanA { private get; init; } + public required IReadOnlyList ZukanB { private get; init; } public static ushort[] TMIndexes => PersonalInfo9SV.TMIndexes; private static readonly string[] AbilitySuffix = [" (1)", " (2)", " (H)"]; - public IReadOnlyList> MoveSpeciesLearn { get; private set; } + public IReadOnlyList> MoveSpeciesLearn { get; private set; } = []; public readonly PersonalDumperSettings Settings = new(); diff --git a/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoDex.cs b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoDex.cs new file mode 100644 index 00000000..4a4abe12 --- /dev/null +++ b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoDex.cs @@ -0,0 +1,3 @@ +namespace pkNX.Structures.FlatBuffers.SV; + +public partial class PersonalInfoDex; diff --git a/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoEvolution.cs b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoEvolution.cs new file mode 100644 index 00000000..c4151fad --- /dev/null +++ b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoEvolution.cs @@ -0,0 +1,3 @@ +namespace pkNX.Structures.FlatBuffers.SV; + +public partial class PersonalInfoEvolution; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoGender.cs b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoGender.cs similarity index 84% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoGender.cs rename to FlatBuffers/SV/Personal/Personal/Types/PersonalInfoGender.cs index ac1f09b4..6f41845d 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoGender.cs +++ b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoGender.cs @@ -1,7 +1,3 @@ -using System; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global namespace pkNX.Structures.FlatBuffers.SV; public partial class PersonalInfoGender diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoStats.cs b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoStats.cs similarity index 65% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoStats.cs rename to FlatBuffers/SV/Personal/Personal/Types/PersonalInfoStats.cs index 1411e21b..1d37daf5 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoStats.cs +++ b/FlatBuffers/SV/Personal/Personal/Types/PersonalInfoStats.cs @@ -1,7 +1,3 @@ -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; public partial class PersonalInfoStats diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalInfo9SV.cs b/FlatBuffers/SV/Personal/Personal/Wrapper/PersonalInfo9SV.cs similarity index 99% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalInfo9SV.cs rename to FlatBuffers/SV/Personal/Personal/Wrapper/PersonalInfo9SV.cs index 5727543f..78d65f5d 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalInfo9SV.cs +++ b/FlatBuffers/SV/Personal/Personal/Wrapper/PersonalInfo9SV.cs @@ -1,6 +1,3 @@ -using System; -using System.IO; - namespace pkNX.Structures.FlatBuffers.SV; /// diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalTable9SV.cs b/FlatBuffers/SV/Personal/Personal/Wrapper/PersonalTable9SV.cs similarity index 97% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalTable9SV.cs rename to FlatBuffers/SV/Personal/Personal/Wrapper/PersonalTable9SV.cs index 9cf3e163..74d6ec87 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Wrapper/PersonalTable9SV.cs +++ b/FlatBuffers/SV/Personal/Personal/Wrapper/PersonalTable9SV.cs @@ -1,9 +1,5 @@ -using System; using System.Collections; using pkNX.Containers; -using System.Collections.Generic; -using System.IO; -using System.Linq; using FlatSharp; namespace pkNX.Structures.FlatBuffers.SV; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoDetail.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoDetail.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoDetail.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoDetail.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoDex.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoDex.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoDex.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoDex.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoEvolution.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoEvolution.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoEvolution.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoEvolution.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoGender.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoGender.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoGender.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoGender.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoHatch.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoHatch.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoHatch.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoHatch.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoMove.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoMove.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoMove.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoMove.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoStats.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalInfoStats.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalInfoStats.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalInfoStats.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalTable.fbs b/FlatBuffers/SV/Personal/Schemas/PersonalTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Schemas/PersonalTable.fbs rename to FlatBuffers/SV/Personal/Schemas/PersonalTable.fbs diff --git a/FlatBuffers/SV/Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj b/FlatBuffers/SV/Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicPokemon.fbs b/FlatBuffers/SV/Picnic/Schemas/PicnicPokemon.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicPokemon.fbs rename to FlatBuffers/SV/Picnic/Schemas/PicnicPokemon.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicSystemData.fbs b/FlatBuffers/SV/Picnic/Schemas/PicnicSystemData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicSystemData.fbs rename to FlatBuffers/SV/Picnic/Schemas/PicnicSystemData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicTablesetData.fbs b/FlatBuffers/SV/Picnic/Schemas/PicnicTablesetData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicTablesetData.fbs rename to FlatBuffers/SV/Picnic/Schemas/PicnicTablesetData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicWagonData.fbs b/FlatBuffers/SV/Picnic/Schemas/PicnicWagonData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/Schemas/PicnicWagonData.fbs rename to FlatBuffers/SV/Picnic/Schemas/PicnicWagonData.fbs diff --git a/FlatBuffers/SV/Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj b/FlatBuffers/SV/Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidEnemyTableArray.cs b/FlatBuffers/SV/Raid/Raid/DeliveryRaidEnemyTableArray.cs similarity index 88% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidEnemyTableArray.cs rename to FlatBuffers/SV/Raid/Raid/DeliveryRaidEnemyTableArray.cs index 27cef942..ccf47d24 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidEnemyTableArray.cs +++ b/FlatBuffers/SV/Raid/Raid/DeliveryRaidEnemyTableArray.cs @@ -1,13 +1,5 @@ -using System.ComponentModel; -using System.IO; - -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class RaidEnemyInfo { public void SerializePKHeX(BinaryWriter bw, byte star, sbyte rate, RaidSerializationFormat format) @@ -58,7 +50,6 @@ public void SerializeMight(BinaryWriter bw) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class RaidBossSizeData { public void SerializePKHeX() diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidFixedRewardItemArray.cs b/FlatBuffers/SV/Raid/Raid/DeliveryRaidFixedRewardItemArray.cs similarity index 68% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidFixedRewardItemArray.cs rename to FlatBuffers/SV/Raid/Raid/DeliveryRaidFixedRewardItemArray.cs index 7a08765b..8bebd93a 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidFixedRewardItemArray.cs +++ b/FlatBuffers/SV/Raid/Raid/DeliveryRaidFixedRewardItemArray.cs @@ -1,15 +1,5 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DeliveryRaidFixedRewardItemArray; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class DeliveryRaidFixedRewardItem { public const int Count = 15; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs b/FlatBuffers/SV/Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs similarity index 84% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs rename to FlatBuffers/SV/Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs index 361115b6..d19e0ad3 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs +++ b/FlatBuffers/SV/Raid/Raid/DeliveryRaidLotteryRewardItemArray.cs @@ -1,12 +1,5 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class DeliveryRaidLotteryRewardItem { public const int RewardItemCount = 30; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidFixedRewardItemArray.cs b/FlatBuffers/SV/Raid/Raid/RaidFixedRewardItemArray.cs similarity index 75% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidFixedRewardItemArray.cs rename to FlatBuffers/SV/Raid/Raid/RaidFixedRewardItemArray.cs index 75762634..bfb1ea55 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidFixedRewardItemArray.cs +++ b/FlatBuffers/SV/Raid/Raid/RaidFixedRewardItemArray.cs @@ -1,12 +1,5 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class RaidFixedRewardItem { public const int Count = 15; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidLotteryRewardItemArray.cs b/FlatBuffers/SV/Raid/Raid/RaidLotteryRewardItemArray.cs similarity index 83% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidLotteryRewardItemArray.cs rename to FlatBuffers/SV/Raid/Raid/RaidLotteryRewardItemArray.cs index d8d107ce..ebffe18a 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Raid/RaidLotteryRewardItemArray.cs +++ b/FlatBuffers/SV/Raid/Raid/RaidLotteryRewardItemArray.cs @@ -1,12 +1,5 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class RaidLotteryRewardItem { public const int RewardItemCount = 30; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidEnemyTableArray.fbs b/FlatBuffers/SV/Raid/Schemas/DeliveryRaidEnemyTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidEnemyTableArray.fbs rename to FlatBuffers/SV/Raid/Schemas/DeliveryRaidEnemyTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidFixedRewardItemArray.fbs b/FlatBuffers/SV/Raid/Schemas/DeliveryRaidFixedRewardItemArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidFixedRewardItemArray.fbs rename to FlatBuffers/SV/Raid/Schemas/DeliveryRaidFixedRewardItemArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidLotteryRewardItemArray.fbs b/FlatBuffers/SV/Raid/Schemas/DeliveryRaidLotteryRewardItemArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidLotteryRewardItemArray.fbs rename to FlatBuffers/SV/Raid/Schemas/DeliveryRaidLotteryRewardItemArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidPriorityArray.fbs b/FlatBuffers/SV/Raid/Schemas/DeliveryRaidPriorityArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/DeliveryRaidPriorityArray.fbs rename to FlatBuffers/SV/Raid/Schemas/DeliveryRaidPriorityArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidBossExtraActType.fbs b/FlatBuffers/SV/Raid/Schemas/Enums/RaidBossExtraActType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidBossExtraActType.fbs rename to FlatBuffers/SV/Raid/Schemas/Enums/RaidBossExtraActType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidBossExtraTimingType.fbs b/FlatBuffers/SV/Raid/Schemas/Enums/RaidBossExtraTimingType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidBossExtraTimingType.fbs rename to FlatBuffers/SV/Raid/Schemas/Enums/RaidBossExtraTimingType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRewardItemCategoryType.fbs b/FlatBuffers/SV/Raid/Schemas/Enums/RaidRewardItemCategoryType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRewardItemCategoryType.fbs rename to FlatBuffers/SV/Raid/Schemas/Enums/RaidRewardItemCategoryType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRewardItemSubjectType.fbs b/FlatBuffers/SV/Raid/Schemas/Enums/RaidRewardItemSubjectType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRewardItemSubjectType.fbs rename to FlatBuffers/SV/Raid/Schemas/Enums/RaidRewardItemSubjectType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRomType.fbs b/FlatBuffers/SV/Raid/Schemas/Enums/RaidRomType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/Enums/RaidRomType.fbs rename to FlatBuffers/SV/Raid/Schemas/Enums/RaidRomType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidDifficultyLotteryTableArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidDifficultyLotteryTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidDifficultyLotteryTableArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidDifficultyLotteryTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidEnemyInfo.fbs b/FlatBuffers/SV/Raid/Schemas/RaidEnemyInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidEnemyInfo.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidEnemyInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidEnemyTableArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidEnemyTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidEnemyTableArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidEnemyTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidFixedRewardItemArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidFixedRewardItemArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidFixedRewardItemArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidFixedRewardItemArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidFixedRewardItemInfo.fbs b/FlatBuffers/SV/Raid/Schemas/RaidFixedRewardItemInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidFixedRewardItemInfo.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidFixedRewardItemInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidGemItemRewardBoost.fbs b/FlatBuffers/SV/Raid/Schemas/RaidGemItemRewardBoost.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidGemItemRewardBoost.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidGemItemRewardBoost.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidGemSetting.fbs b/FlatBuffers/SV/Raid/Schemas/RaidGemSetting.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidGemSetting.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidGemSetting.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidLotteryRewardItemArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidLotteryRewardItemArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidLotteryRewardItemArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidLotteryRewardItemArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidLotteryRewardItemInfo.fbs b/FlatBuffers/SV/Raid/Schemas/RaidLotteryRewardItemInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidLotteryRewardItemInfo.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidLotteryRewardItemInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidPokeScaleDataArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidPokeScaleDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidPokeScaleDataArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidPokeScaleDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidRewardSlotArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidRewardSlotArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidRewardSlotArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidRewardSlotArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidTrainerArray.fbs b/FlatBuffers/SV/Raid/Schemas/RaidTrainerArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/Schemas/RaidTrainerArray.fbs rename to FlatBuffers/SV/Raid/Schemas/RaidTrainerArray.fbs diff --git a/FlatBuffers/SV/Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj b/FlatBuffers/SV/Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj @@ -0,0 +1,2 @@ + + diff --git a/FlatBuffers/SV/Shared/Gen9/PokeData/ParamSet.cs b/FlatBuffers/SV/Shared/Gen9/PokeData/ParamSet.cs new file mode 100644 index 00000000..f53b2ac7 --- /dev/null +++ b/FlatBuffers/SV/Shared/Gen9/PokeData/ParamSet.cs @@ -0,0 +1,8 @@ +namespace pkNX.Structures.FlatBuffers.SV; + +public partial class ParamSet +{ + public string SlashSeparated() => $"{HP}/{ATK}/{DEF}/{SPA}/{SPD}/{SPE}"; + + public int[] ToArray() => [HP, ATK, DEF, SPA, SPD, SPE]; +} diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataBattle.cs b/FlatBuffers/SV/Shared/Gen9/PokeData/PokeDataBattle.cs similarity index 93% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataBattle.cs rename to FlatBuffers/SV/Shared/Gen9/PokeData/PokeDataBattle.cs index 1ca20f94..8634ffc2 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataBattle.cs +++ b/FlatBuffers/SV/Shared/Gen9/PokeData/PokeDataBattle.cs @@ -1,13 +1,5 @@ -using System; -using System.ComponentModel; -using System.IO; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PokeDataBattle { public void SerializePKHeX(BinaryWriter bw, sbyte captureLv, RaidSerializationFormat format) diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/SpeciesConverterSV.cs b/FlatBuffers/SV/Shared/Gen9/SpeciesConverterSV.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/SpeciesConverterSV.cs rename to FlatBuffers/SV/Shared/Gen9/SpeciesConverterSV.cs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/CollisionShape.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/CollisionShape.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/CollisionShape.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/CollisionShape.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ComparisonOperatorType.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/ComparisonOperatorType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ComparisonOperatorType.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/ComparisonOperatorType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ConditionSimpleAutoBattleHecklerAreaArray.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/ConditionSimpleAutoBattleHecklerAreaArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ConditionSimpleAutoBattleHecklerAreaArray.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/ConditionSimpleAutoBattleHecklerAreaArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/OwnerInfo.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/OwnerInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/OwnerInfo.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/OwnerInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ParamSet.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/ParamSet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/ParamSet.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/ParamSet.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokeObjArray.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/PokeObjArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokeObjArray.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/PokeObjArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokemonTriggerID.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/PokemonTriggerID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokemonTriggerID.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/PokemonTriggerID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokemonUniquePathData.fbs b/FlatBuffers/SV/Shared/Schemas/Entity/PokemonUniquePathData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Entity/PokemonUniquePathData.fbs rename to FlatBuffers/SV/Shared/Schemas/Entity/PokemonUniquePathData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataBattle.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataBattle.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataBattle.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataBattle.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataEventBattle.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataEventBattle.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataEventBattle.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataEventBattle.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataFull.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataFull.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataFull.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataFull.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataSymbol.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataSymbol.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataSymbol.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataSymbol.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataTrade.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataTrade.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/PokeDataTrade.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/PokeDataTrade.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/WazaSet.fbs b/FlatBuffers/SV/Shared/Schemas/PokeData/WazaSet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/PokeData/WazaSet.fbs rename to FlatBuffers/SV/Shared/Schemas/PokeData/WazaSet.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/BallType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/BallType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/BallType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/BallType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/BattleType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/BattleType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/BattleType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/BattleType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ClerkType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/ClerkType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ClerkType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/ClerkType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/CondEnum.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/CondEnum.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/CondEnum.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/CondEnum.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/DataType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/DataType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/DataType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/DataType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/DevID.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/DevID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/DevID.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/DevID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/GemType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/GemType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/GemType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/GemType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ItemID.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/ItemID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ItemID.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/ItemID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/LangType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/LangType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/LangType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/LangType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/MahoippuViewID.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/MahoippuViewID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/MahoippuViewID.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/MahoippuViewID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/MoveType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/MoveType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/MoveType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/MoveType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/PayType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/PayType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/PayType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/PayType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/PokeMemoType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/PokeMemoType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/PokeMemoType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/PokeMemoType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/RareType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/RareType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/RareType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/RareType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/RibbonType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/RibbonType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/RibbonType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/RibbonType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SeikakuType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/SeikakuType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SeikakuType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/SeikakuType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SellType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/SellType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SellType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/SellType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/Sex.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/Sex.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/Sex.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/Sex.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SexType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/SexType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SexType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/SexType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ShopKind.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/ShopKind.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/ShopKind.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/ShopKind.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SizeType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/SizeType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/SizeType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/SizeType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TalentType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/TalentType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TalentType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/TalentType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TokuseiID.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/TokuseiID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TokuseiID.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/TokuseiID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TokuseiType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/TokuseiType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/TokuseiType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/TokuseiType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/WazaID.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/WazaID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/WazaID.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/WazaID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/WazaType.fbs b/FlatBuffers/SV/Shared/Schemas/Shared/WazaType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Schemas/Shared/WazaType.fbs rename to FlatBuffers/SV/Shared/Schemas/Shared/WazaType.fbs diff --git a/FlatBuffers/SV/Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj b/FlatBuffers/SV/Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/CheckCategory.fbs b/FlatBuffers/SV/Trainers/Schemas/Talk/CheckCategory.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/CheckCategory.fbs rename to FlatBuffers/SV/Trainers/Schemas/Talk/CheckCategory.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/TalkData.fbs b/FlatBuffers/SV/Trainers/Schemas/Talk/TalkData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/TalkData.fbs rename to FlatBuffers/SV/Trainers/Schemas/Talk/TalkData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/TalkRankEffect.fbs b/FlatBuffers/SV/Trainers/Schemas/Talk/TalkRankEffect.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/Talk/TalkRankEffect.fbs rename to FlatBuffers/SV/Trainers/Schemas/Talk/TalkRankEffect.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerBodySize.fbs b/FlatBuffers/SV/Trainers/Schemas/TrainerBodySize.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerBodySize.fbs rename to FlatBuffers/SV/Trainers/Schemas/TrainerBodySize.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerCategory.fbs b/FlatBuffers/SV/Trainers/Schemas/TrainerCategory.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerCategory.fbs rename to FlatBuffers/SV/Trainers/Schemas/TrainerCategory.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerDataArray.fbs b/FlatBuffers/SV/Trainers/Schemas/TrainerDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerDataArray.fbs rename to FlatBuffers/SV/Trainers/Schemas/TrainerDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerEnvArray.fbs b/FlatBuffers/SV/Trainers/Schemas/TrainerEnvArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerEnvArray.fbs rename to FlatBuffers/SV/Trainers/Schemas/TrainerEnvArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerTypeArray.fbs b/FlatBuffers/SV/Trainers/Schemas/TrainerTypeArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/Schemas/TrainerTypeArray.fbs rename to FlatBuffers/SV/Trainers/Schemas/TrainerTypeArray.fbs diff --git a/FlatBuffers/SV/Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj b/FlatBuffers/SV/Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileDescriptors.cs b/FlatBuffers/SV/Trinity/Archive/TrinityFileDescriptors.cs similarity index 56% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileDescriptors.cs rename to FlatBuffers/SV/Trinity/Archive/TrinityFileDescriptors.cs index 55bb469b..ce03ad5f 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileDescriptors.cs +++ b/FlatBuffers/SV/Trinity/Archive/TrinityFileDescriptors.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.SV.Trinity; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrinityFileDescriptors { public ulong GetSubFileIndex(ulong hash) @@ -45,12 +36,3 @@ private int BinarySearch(ulong hash) return -1; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TrinityFileDescriptorSubFileInfo; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TrinityFileDescriptorInfo; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TrinityFileDescriptorSubFileUnknown; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemManager.cs b/FlatBuffers/SV/Trinity/Archive/TrinityFileSystemManager.cs similarity index 99% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemManager.cs rename to FlatBuffers/SV/Trinity/Archive/TrinityFileSystemManager.cs index a00980c4..1181f0b5 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemManager.cs +++ b/FlatBuffers/SV/Trinity/Archive/TrinityFileSystemManager.cs @@ -1,6 +1,4 @@ -using System; using System.Diagnostics; -using System.IO; using FlatSharp; using pkNX.Containers; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemMetadata.cs b/FlatBuffers/SV/Trinity/Archive/TrinityFileSystemMetadata.cs similarity index 68% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemMetadata.cs rename to FlatBuffers/SV/Trinity/Archive/TrinityFileSystemMetadata.cs index e77caec8..366b63f0 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityFileSystemMetadata.cs +++ b/FlatBuffers/SV/Trinity/Archive/TrinityFileSystemMetadata.cs @@ -1,16 +1,5 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.SV.Trinity; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrinityFileSystemMetadata { public ulong GetFileOffset(ulong hashFnv) diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPak.cs b/FlatBuffers/SV/Trinity/Archive/TrinityPak.cs similarity index 77% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPak.cs rename to FlatBuffers/SV/Trinity/Archive/TrinityPak.cs index ed49fe58..b5314f56 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPak.cs +++ b/FlatBuffers/SV/Trinity/Archive/TrinityPak.cs @@ -1,18 +1,8 @@ -using System; -using System.ComponentModel; using System.Diagnostics; using pkNX.Containers; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - namespace pkNX.Structures.FlatBuffers.SV.Trinity; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrinityPak { public TrinityPakFileData GetFileData(ulong hash) @@ -42,7 +32,6 @@ private int BinarySearch(ulong hash) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class TrinityPakFileData { public byte[] GetUncompressedData() => CompressionType switch diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPakExtractor.cs b/FlatBuffers/SV/Trinity/Archive/TrinityPakExtractor.cs similarity index 96% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPakExtractor.cs rename to FlatBuffers/SV/Trinity/Archive/TrinityPakExtractor.cs index fcf19e2b..46518e2a 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Archive/TrinityPakExtractor.cs +++ b/FlatBuffers/SV/Trinity/Archive/TrinityPakExtractor.cs @@ -1,6 +1,3 @@ -using System; -using System.IO; -using FlatSharp; using pkNX.Containers; using static System.Buffers.Binary.BinaryPrimitives; @@ -47,7 +44,7 @@ private static void ExportArc(TrinityFileSystemManager reader, int packIndex, st var outexpakdir = Path.Combine(outexdir, packFilePath); Directory.CreateDirectory(outexpakdir); - var trpak = FlatBufferConverter.DeserializeFrom(data, FlatBufferDeserializationOption.GreedyMutable); + var trpak = FlatBufferConverter.DeserializeFrom(data); ExtractPack(trpak, outexpakdir); } diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Scene/SceneDumper.cs b/FlatBuffers/SV/Trinity/Scene/SceneDumper.cs similarity index 99% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Scene/SceneDumper.cs rename to FlatBuffers/SV/Trinity/Scene/SceneDumper.cs index 85c2f11c..1929155d 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Scene/SceneDumper.cs +++ b/FlatBuffers/SV/Trinity/Scene/SceneDumper.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; -using System.IO; using pkNX.Containers; namespace pkNX.Structures.FlatBuffers.SV.Trinity; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIAIPerceptualComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TIAIPerceptualComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIAIPerceptualComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TIAIPerceptualComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIDynamicExclusionComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TIDynamicExclusionComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIDynamicExclusionComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TIDynamicExclusionComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIModelDitherFadeComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TIModelDitherFadeComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TIModelDitherFadeComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TIModelDitherFadeComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityEnvironmentParameter.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityEnvironmentParameter.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityEnvironmentParameter.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityEnvironmentParameter.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityFileDescriptors.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityFileDescriptors.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityFileDescriptors.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityFileDescriptors.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityFileSystemMetadata.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityFileSystemMetadata.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityFileSystemMetadata.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityFileSystemMetadata.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityGroundPlaceComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityGroundPlaceComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityGroundPlaceComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityGroundPlaceComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityModelComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityModelComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityModelComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityModelComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityOverrideSensorData.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityOverrideSensorData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityOverrideSensorData.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityOverrideSensorData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityPak.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityPak.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityPak.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityPak.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityParticleComponent.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityParticleComponent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityParticleComponent.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityParticleComponent.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityPropertySheet.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityPropertySheet.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityPropertySheet.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityPropertySheet.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinitySceneObject.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinitySceneObject.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinitySceneObject.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinitySceneObject.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinitySceneObjectTemplate.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinitySceneObjectTemplate.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinitySceneObjectTemplate.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinitySceneObjectTemplate.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityScenePoint.fbs b/FlatBuffers/SV/Trinity/Schemas/TrinityScenePoint.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/Schemas/TrinityScenePoint.fbs rename to FlatBuffers/SV/Trinity/Schemas/TrinityScenePoint.fbs diff --git a/FlatBuffers/SV/Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj b/FlatBuffers/SV/Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj new file mode 100644 index 00000000..51a0cc4d --- /dev/null +++ b/FlatBuffers/SV/Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj @@ -0,0 +1,5 @@ + + + + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/BattleBgmSelectTableArray.fbs b/FlatBuffers/SV/UI/Schemas/BattleBgmSelectTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/BattleBgmSelectTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/BattleBgmSelectTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupCategoryDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Dressup/DressupCategoryDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupCategoryDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Dressup/DressupCategoryDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupItemDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Dressup/DressupItemDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupItemDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Dressup/DressupItemDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupShopDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Dressup/DressupShopDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupShopDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Dressup/DressupShopDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupStyleDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Dressup/DressupStyleDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupStyleDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Dressup/DressupStyleDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupStylePresetDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Dressup/DressupStylePresetDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Dressup/DressupStylePresetDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Dressup/DressupStylePresetDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineEffectTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineEffectTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineEffectTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineEffectTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineItemTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineItemTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineItemTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineItemTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineLotteryTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineLotteryTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineLotteryTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineLotteryTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineSpecialTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineSpecialTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/ItemMachineSpecialTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ItemMachine/ItemMachineSpecialTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/MaterialBaseParamArray.fbs b/FlatBuffers/SV/UI/Schemas/ItemMachine/MaterialBaseParamArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ItemMachine/MaterialBaseParamArray.fbs rename to FlatBuffers/SV/UI/Schemas/ItemMachine/MaterialBaseParamArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/DanQuestClearArray.fbs b/FlatBuffers/SV/UI/Schemas/Quest/DanQuestClearArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/DanQuestClearArray.fbs rename to FlatBuffers/SV/UI/Schemas/Quest/DanQuestClearArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/EventSkyFlyArray.fbs b/FlatBuffers/SV/UI/Schemas/Quest/EventSkyFlyArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/EventSkyFlyArray.fbs rename to FlatBuffers/SV/UI/Schemas/Quest/EventSkyFlyArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/GymQuestClearArray.fbs b/FlatBuffers/SV/UI/Schemas/Quest/GymQuestClearArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/GymQuestClearArray.fbs rename to FlatBuffers/SV/UI/Schemas/Quest/GymQuestClearArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/NushiQuestClearArray.fbs b/FlatBuffers/SV/UI/Schemas/Quest/NushiQuestClearArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Quest/NushiQuestClearArray.fbs rename to FlatBuffers/SV/UI/Schemas/Quest/NushiQuestClearArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Restaurant/RestaurantMenuDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Restaurant/RestaurantMenuDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Restaurant/RestaurantMenuDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Restaurant/RestaurantMenuDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Restaurant/RestaurantShopDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Restaurant/RestaurantShopDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Restaurant/RestaurantShopDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Restaurant/RestaurantShopDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/SchoolMapDataArray.fbs b/FlatBuffers/SV/UI/Schemas/SchoolMapDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/SchoolMapDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/SchoolMapDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/FriendlyShopDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Shop/FriendlyShopDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/FriendlyShopDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Shop/FriendlyShopDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/LineupDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Shop/LineupDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/LineupDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Shop/LineupDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/ShopDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Shop/ShopDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/ShopDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Shop/ShopDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/ShopWazamachineDataArray.fbs b/FlatBuffers/SV/UI/Schemas/Shop/ShopWazamachineDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/Shop/ShopWazamachineDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/Shop/ShopWazamachineDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/SystemBgArray.fbs b/FlatBuffers/SV/UI/Schemas/SystemBgArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/SystemBgArray.fbs rename to FlatBuffers/SV/UI/Schemas/SystemBgArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/TipsDataArray.fbs b/FlatBuffers/SV/UI/Schemas/TipsDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/TipsDataArray.fbs rename to FlatBuffers/SV/UI/Schemas/TipsDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/DestinationDataTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ymap/DestinationDataTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/DestinationDataTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ymap/DestinationDataTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/NpcDestinationDataTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ymap/NpcDestinationDataTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/NpcDestinationDataTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ymap/NpcDestinationDataTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/PlaceNameDataTableArray.fbs b/FlatBuffers/SV/UI/Schemas/ymap/PlaceNameDataTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/Schemas/ymap/PlaceNameDataTableArray.fbs rename to FlatBuffers/SV/UI/Schemas/ymap/PlaceNameDataTableArray.fbs diff --git a/FlatBuffers/SV/UI/pkNX.Structures.FlatBuffers.SV.UI.csproj b/FlatBuffers/SV/UI/pkNX.Structures.FlatBuffers.SV.UI.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/UI/pkNX.Structures.FlatBuffers.SV.UI.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/TokuseiArray.fbs b/FlatBuffers/SV/Waza/Schemas/TokuseiArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/TokuseiArray.fbs rename to FlatBuffers/SV/Waza/Schemas/TokuseiArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/Waza.fbs b/FlatBuffers/SV/Waza/Schemas/Waza.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/Waza.fbs rename to FlatBuffers/SV/Waza/Schemas/Waza.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaAffinity.fbs b/FlatBuffers/SV/Waza/Schemas/WazaAffinity.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaAffinity.fbs rename to FlatBuffers/SV/Waza/Schemas/WazaAffinity.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaEntityStat.fbs b/FlatBuffers/SV/Waza/Schemas/WazaEntityStat.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaEntityStat.fbs rename to FlatBuffers/SV/Waza/Schemas/WazaEntityStat.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaInflict.fbs b/FlatBuffers/SV/Waza/Schemas/WazaInflict.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Waza/Schemas/WazaInflict.fbs rename to FlatBuffers/SV/Waza/Schemas/WazaInflict.fbs diff --git a/FlatBuffers/SV/Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj b/FlatBuffers/SV/Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Waza/pkNX.Structures.FlatBuffers.SV.Waza.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaInfo.fbs b/FlatBuffers/SV/World/Schemas/Area/AreaInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaInfo.fbs rename to FlatBuffers/SV/World/Schemas/Area/AreaInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaTag.fbs b/FlatBuffers/SV/World/Schemas/Area/AreaTag.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaTag.fbs rename to FlatBuffers/SV/World/Schemas/Area/AreaTag.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaType.fbs b/FlatBuffers/SV/World/Schemas/Area/AreaType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/AreaType.fbs rename to FlatBuffers/SV/World/Schemas/Area/AreaType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/BandType.fbs b/FlatBuffers/SV/World/Schemas/Area/BandType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/BandType.fbs rename to FlatBuffers/SV/World/Schemas/Area/BandType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/Biome.fbs b/FlatBuffers/SV/World/Schemas/Area/Biome.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/Biome.fbs rename to FlatBuffers/SV/World/Schemas/Area/Biome.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/BringItem.fbs b/FlatBuffers/SV/World/Schemas/Area/BringItem.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/BringItem.fbs rename to FlatBuffers/SV/World/Schemas/Area/BringItem.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EnableTable.fbs b/FlatBuffers/SV/World/Schemas/Area/EnableTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EnableTable.fbs rename to FlatBuffers/SV/World/Schemas/Area/EnableTable.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EncAttr.fbs b/FlatBuffers/SV/World/Schemas/Area/EncAttr.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EncAttr.fbs rename to FlatBuffers/SV/World/Schemas/Area/EncAttr.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EncBiome.fbs b/FlatBuffers/SV/World/Schemas/Area/EncBiome.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/EncBiome.fbs rename to FlatBuffers/SV/World/Schemas/Area/EncBiome.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldAttrKey.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldAttrKey.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldAttrKey.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldAttrKey.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldDungeonAreaArray.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldDungeonAreaArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldDungeonAreaArray.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldDungeonAreaArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldInsideAreaArray.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldInsideAreaArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldInsideAreaArray.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldInsideAreaArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldLocationArray.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldLocationArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldLocationArray.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldLocationArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldMainAreaArray.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldMainAreaArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldMainAreaArray.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldMainAreaArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldSubAreaArray.fbs b/FlatBuffers/SV/World/Schemas/Area/FieldSubAreaArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/FieldSubAreaArray.fbs rename to FlatBuffers/SV/World/Schemas/Area/FieldSubAreaArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/OverrideBiome.fbs b/FlatBuffers/SV/World/Schemas/Area/OverrideBiome.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Area/OverrideBiome.fbs rename to FlatBuffers/SV/World/Schemas/Area/OverrideBiome.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubNpcRewardListArray.fbs b/FlatBuffers/SV/World/Schemas/ClubNpcRewardListArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubNpcRewardListArray.fbs rename to FlatBuffers/SV/World/Schemas/ClubNpcRewardListArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomBoardInfoArray.fbs b/FlatBuffers/SV/World/Schemas/ClubRoomBoardInfoArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomBoardInfoArray.fbs rename to FlatBuffers/SV/World/Schemas/ClubRoomBoardInfoArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomCoach.fbs b/FlatBuffers/SV/World/Schemas/ClubRoomCoach.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomCoach.fbs rename to FlatBuffers/SV/World/Schemas/ClubRoomCoach.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomNpcPairTable.fbs b/FlatBuffers/SV/World/Schemas/ClubRoomNpcPairTable.fbs similarity index 97% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomNpcPairTable.fbs rename to FlatBuffers/SV/World/Schemas/ClubRoomNpcPairTable.fbs index 0efd0f2e..598314f9 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/ClubRoomNpcPairTable.fbs +++ b/FlatBuffers/SV/World/Schemas/ClubRoomNpcPairTable.fbs @@ -106,7 +106,7 @@ enum ClubRoomPairStory : byte CoachPair097 = 97, } -table ClubRoomNpcPairTable (fs_serializer) { +table ClubRoomNpcPairTable { NpcType1:ClubRoomCoach; NpcType2:ClubRoomCoach; PairType:ClubRoomPairStory; @@ -114,7 +114,7 @@ table ClubRoomNpcPairTable (fs_serializer) { } table ClubRoomNpcPairTableArray (fs_serializer) { - Table:[ClubRoomNpcPairTable]; + Table:[ClubRoomNpcPairTable] (required); } root_type ClubRoomNpcPairTableArray; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/DeliveryOutbreakArray.fbs b/FlatBuffers/SV/World/Schemas/DeliveryOutbreakArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/DeliveryOutbreakArray.fbs rename to FlatBuffers/SV/World/Schemas/DeliveryOutbreakArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/DeliveryOutbreakPokeDataArray.fbs b/FlatBuffers/SV/World/Schemas/DeliveryOutbreakPokeDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/DeliveryOutbreakPokeDataArray.fbs rename to FlatBuffers/SV/World/Schemas/DeliveryOutbreakPokeDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/EncountPokeDataArray.fbs b/FlatBuffers/SV/World/Schemas/EncountPokeDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/EncountPokeDataArray.fbs rename to FlatBuffers/SV/World/Schemas/EncountPokeDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/EventBattlePokemonArray.fbs b/FlatBuffers/SV/World/Schemas/EventBattlePokemonArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/EventBattlePokemonArray.fbs rename to FlatBuffers/SV/World/Schemas/EventBattlePokemonArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/AreaFlyFlagArray.fbs b/FlatBuffers/SV/World/Schemas/Field/AreaFlyFlagArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/AreaFlyFlagArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/AreaFlyFlagArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/CoinSymbolManager.fbs b/FlatBuffers/SV/World/Schemas/Field/CoinSymbolManager.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/CoinSymbolManager.fbs rename to FlatBuffers/SV/World/Schemas/Field/CoinSymbolManager.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/ExclusionGroupArray.fbs b/FlatBuffers/SV/World/Schemas/Field/ExclusionGroupArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/ExclusionGroupArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/ExclusionGroupArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldAutoReturnPosTableArray.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldAutoReturnPosTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldAutoReturnPosTableArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldAutoReturnPosTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldAutomaticReturnTableArray.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldAutomaticReturnTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldAutomaticReturnTableArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldAutomaticReturnTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldCamera.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldCamera.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldCamera.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldCamera.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldInteriorCamera.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldInteriorCamera.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldInteriorCamera.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldInteriorCamera.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldOutOfRangeTableArray.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldOutOfRangeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldOutOfRangeTableArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldOutOfRangeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldPlayer.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldPlayer.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldPlayer.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldPlayer.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldRide.fbs b/FlatBuffers/SV/World/Schemas/Field/FieldRide.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/FieldRide.fbs rename to FlatBuffers/SV/World/Schemas/Field/FieldRide.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/GemSymbolLotteryTableArray.fbs b/FlatBuffers/SV/World/Schemas/Field/GemSymbolLotteryTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/GemSymbolLotteryTableArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/GemSymbolLotteryTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/GemSymbolSetting.fbs b/FlatBuffers/SV/World/Schemas/Field/GemSymbolSetting.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/GemSymbolSetting.fbs rename to FlatBuffers/SV/World/Schemas/Field/GemSymbolSetting.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/MapChangeParametersArray.fbs b/FlatBuffers/SV/World/Schemas/Field/MapChangeParametersArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/Field/MapChangeParametersArray.fbs rename to FlatBuffers/SV/World/Schemas/Field/MapChangeParametersArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/BehaviorFrequency.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/BehaviorFrequency.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/BehaviorFrequency.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/BehaviorFrequency.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolAI.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolAI.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolAI.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolAI.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolArray.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolArray.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolGeneration.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolGeneration.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolGeneration.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolGeneration.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolManager.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolManager.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/FixedSymbolManager.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/FixedSymbolManager.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/GenerationPattern.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/GenerationPattern.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/GenerationPattern.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/GenerationPattern.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/PokemonActionID.fbs b/FlatBuffers/SV/World/Schemas/FixedSymbol/PokemonActionID.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/FixedSymbol/PokemonActionID.fbs rename to FlatBuffers/SV/World/Schemas/FixedSymbol/PokemonActionID.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MetamonBlockInfo.fbs b/FlatBuffers/SV/World/Schemas/MetamonBlockInfo.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MetamonBlockInfo.fbs rename to FlatBuffers/SV/World/Schemas/MetamonBlockInfo.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionDifficulty.fbs b/FlatBuffers/SV/World/Schemas/MissionDifficulty.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionDifficulty.fbs rename to FlatBuffers/SV/World/Schemas/MissionDifficulty.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionDifficultyWeight.fbs b/FlatBuffers/SV/World/Schemas/MissionDifficultyWeight.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionDifficultyWeight.fbs rename to FlatBuffers/SV/World/Schemas/MissionDifficultyWeight.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionInfosArray.fbs b/FlatBuffers/SV/World/Schemas/MissionInfosArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionInfosArray.fbs rename to FlatBuffers/SV/World/Schemas/MissionInfosArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionSettingsArray.fbs b/FlatBuffers/SV/World/Schemas/MissionSettingsArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionSettingsArray.fbs rename to FlatBuffers/SV/World/Schemas/MissionSettingsArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionType.fbs b/FlatBuffers/SV/World/Schemas/MissionType.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/MissionType.fbs rename to FlatBuffers/SV/World/Schemas/MissionType.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/OutbreakPointArray.fbs b/FlatBuffers/SV/World/Schemas/OutbreakPointArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/OutbreakPointArray.fbs rename to FlatBuffers/SV/World/Schemas/OutbreakPointArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/OutbreakSetting.fbs b/FlatBuffers/SV/World/Schemas/OutbreakSetting.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/OutbreakSetting.fbs rename to FlatBuffers/SV/World/Schemas/OutbreakSetting.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/PointDataArray.fbs b/FlatBuffers/SV/World/Schemas/PointDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/PointDataArray.fbs rename to FlatBuffers/SV/World/Schemas/PointDataArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/SettingData.fbs b/FlatBuffers/SV/World/Schemas/SettingData.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/SettingData.fbs rename to FlatBuffers/SV/World/Schemas/SettingData.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/TimeTable.fbs b/FlatBuffers/SV/World/Schemas/TimeTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/TimeTable.fbs rename to FlatBuffers/SV/World/Schemas/TimeTable.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/VersionTable.fbs b/FlatBuffers/SV/World/Schemas/VersionTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/Schemas/VersionTable.fbs rename to FlatBuffers/SV/World/Schemas/VersionTable.fbs diff --git a/FlatBuffers/SV/World/World/AreaInfo.cs b/FlatBuffers/SV/World/World/AreaInfo.cs new file mode 100644 index 00000000..66d4ab5d --- /dev/null +++ b/FlatBuffers/SV/World/World/AreaInfo.cs @@ -0,0 +1,7 @@ +namespace pkNX.Structures.FlatBuffers.SV; + +public partial class AreaInfo +{ + public int ActualMinLevel => MinEncLv != 0 ? MinEncLv : 1; + public int ActualMaxLevel => MaxEncLv != 0 ? MaxEncLv : 100; +} diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreakPokeData.cs b/FlatBuffers/SV/World/World/DeliveryOutbreakPokeData.cs similarity index 85% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreakPokeData.cs rename to FlatBuffers/SV/World/World/DeliveryOutbreakPokeData.cs index e9e89a5a..4e382d5f 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreakPokeData.cs +++ b/FlatBuffers/SV/World/World/DeliveryOutbreakPokeData.cs @@ -1,14 +1,5 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DeliveryOutbreakPokeDataArray; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class DeliveryOutbreakPokeData { public bool IsAreaLimited(out uint areaBits) @@ -68,10 +59,6 @@ public bool IsLevelRangeCompatible(PackedVec2f range) } } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaNo; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class OutbreakEnableTable { public bool IsUnrestricted => !Air1 && !Air2 && !Land && !UpWater && !UnderWater; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/EncountPokeData.cs b/FlatBuffers/SV/World/World/EncountPokeData.cs similarity index 77% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/EncountPokeData.cs rename to FlatBuffers/SV/World/World/EncountPokeData.cs index 037ce1ed..d65bb0ac 100644 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/EncountPokeData.cs +++ b/FlatBuffers/SV/World/World/EncountPokeData.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers.SV; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncountPokeData { public bool IsLevelRangeOverlap(int min, int max) => min <= MaxLevel && MinLevel <= max; diff --git a/FlatBuffers/SV/World/pkNX.Structures.FlatBuffers.SV.World.csproj b/FlatBuffers/SV/World/pkNX.Structures.FlatBuffers.SV.World.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/World/pkNX.Structures.FlatBuffers.SV.World.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/BlacklistArray.fbs b/FlatBuffers/SV/Zukan/Schemas/BlacklistArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/BlacklistArray.fbs rename to FlatBuffers/SV/Zukan/Schemas/BlacklistArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/DistributionRootArray.fbs b/FlatBuffers/SV/Zukan/Schemas/DistributionRootArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/DistributionRootArray.fbs rename to FlatBuffers/SV/Zukan/Schemas/DistributionRootArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/MemoPokeTableArray.fbs b/FlatBuffers/SV/Zukan/Schemas/MemoPokeTableArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/MemoPokeTableArray.fbs rename to FlatBuffers/SV/Zukan/Schemas/MemoPokeTableArray.fbs diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/RewardDataArray.fbs b/FlatBuffers/SV/Zukan/Schemas/RewardDataArray.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/Schemas/RewardDataArray.fbs rename to FlatBuffers/SV/Zukan/Schemas/RewardDataArray.fbs diff --git a/FlatBuffers/SV/Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj b/FlatBuffers/SV/Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SV/Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj @@ -0,0 +1,2 @@ + + diff --git a/FlatBuffers/SWSH/Directory.Build.props b/FlatBuffers/SWSH/Directory.Build.props new file mode 100644 index 00000000..90de73c1 --- /dev/null +++ b/FlatBuffers/SWSH/Directory.Build.props @@ -0,0 +1,11 @@ + + + + + + + + ..\pkNX.Structures.FlatBuffers\Schemas\ + + + diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/GiftEncounter.cs b/FlatBuffers/SWSH/Gen8/Gift/GiftEncounter.cs similarity index 89% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/GiftEncounter.cs rename to FlatBuffers/SWSH/Gen8/Gift/GiftEncounter.cs index 7a440999..1dc9870b 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/GiftEncounter.cs +++ b/FlatBuffers/SWSH/Gen8/Gift/GiftEncounter.cs @@ -1,13 +1,5 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterGift { public Species SpeciesID => (Species)Species; diff --git a/FlatBuffers/SWSH/Gen8/Model/GFBModel.cs b/FlatBuffers/SWSH/Gen8/Model/GFBModel.cs new file mode 100644 index 00000000..98f2bba8 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Model/GFBModel.cs @@ -0,0 +1,23 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +// *.gfbmdl + +public partial class Texture +{ + public override string ToString() => $"{{ texture[{TextureIndex}], Bound to: {SamplerName}, {Settings} }}"; +} + +public partial class Flag +{ + public override string ToString() => $"{{ {FlagName}: {FlagEnable} }}"; +} + +public partial class FloatParam +{ + public override string ToString() => $"{{ {ValueName}: {Value} }}"; +} + +public partial class Color3Param +{ + public override string ToString() => $"{{ {ColorName}: {Color} }}"; +} diff --git a/FlatBuffers/SWSH/Gen8/Model/GFBPokeConfig.cs b/FlatBuffers/SWSH/Gen8/Model/GFBPokeConfig.cs new file mode 100644 index 00000000..8974f299 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Model/GFBPokeConfig.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class GFBPokeConfig +{ + public AABB Bounds => new() { Min = new() { X = MinBX / 100, Y = MinBY / 100, Z = MinBZ / 100 }, Max = new() { X = MaxBX / 100, Y = MaxBY / 100, Z = MaxBZ / 100 } }; +} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterNestArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/EncounterNestArchive.cs similarity index 92% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterNestArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/EncounterNestArchive.cs index 0491117a..6a7066ed 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterNestArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/EncounterNestArchive.cs @@ -1,17 +1,7 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterNestArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterNestTable { public string GetSummarySimple() @@ -141,7 +131,6 @@ string GetItemName(uint itemID) } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterNest { public Species SpeciesID => (Species)Species; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterUndergroundArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/EncounterUndergroundArchive.cs similarity index 65% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterUndergroundArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/EncounterUndergroundArchive.cs index 97961374..7131ae9c 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/EncounterUndergroundArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/EncounterUndergroundArchive.cs @@ -1,18 +1,5 @@ -using System.Collections.Generic; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterUndergroundArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterUnderground { public int Gender => 0; // Random diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs similarity index 92% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs index c6a5cb9f..468b1af2 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/NestHoleCrystalEncounterArchive.cs @@ -1,18 +1,9 @@ -using System.ComponentModel; using System.Diagnostics; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleCrystalEncounterArchive; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleCrystalEncounterTable { public IEnumerable GetPrettySummary(IReadOnlyList species, IReadOnlyList items, IReadOnlyList moves, IReadOnlyList tmtrs, @@ -153,6 +144,3 @@ public string GetSummarySimple() return tableID + Environment.NewLine + tableData + Environment.NewLine; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleCrystalEncounter; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs similarity index 92% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs index de1036c3..9b405ef8 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionEncounterArchive.cs @@ -1,22 +1,7 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; using System.Diagnostics; -using System.Linq; -using FlatSharp.Attributes; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleDistributionEncounterArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleDistributionEncounterTable { public IEnumerable GetPrettySummary(IReadOnlyList species, IReadOnlyList items, IReadOnlyList moves, IReadOnlyList tmtrs, @@ -168,7 +153,6 @@ public string GetSummarySimple() } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleDistributionEncounter { public int MinRank => Array.FindIndex(Probabilities.ToArray(), z => z != 0); diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs similarity index 56% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs index de0238bc..2d5e555d 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/NestHoleDistributionRewardArchive.cs @@ -1,22 +1,10 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleDistributionRewardArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleDistributionRewardTable : INestHoleRewardTable { public IList Rewards => (IList)Entries; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleDistributionReward : INestHoleReward { public uint Item => ItemID; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleRewardArchive.cs b/FlatBuffers/SWSH/Gen8/Nest/NestHoleRewardArchive.cs similarity index 54% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleRewardArchive.cs rename to FlatBuffers/SWSH/Gen8/Nest/NestHoleRewardArchive.cs index 74bdbc85..73d9db14 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleRewardArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Nest/NestHoleRewardArchive.cs @@ -1,23 +1,10 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleRewardArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleRewardTable : INestHoleRewardTable { public IList Rewards => (IList)Entries; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class NestHoleReward : INestHoleReward { public uint Item => ItemID; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/CellTable.cs b/FlatBuffers/SWSH/Gen8/Other/CellTable.cs similarity index 50% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/CellTable.cs rename to FlatBuffers/SWSH/Gen8/Other/CellTable.cs index b8fcc9b0..0da73bd0 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/CellTable.cs +++ b/FlatBuffers/SWSH/Gen8/Other/CellTable.cs @@ -1,16 +1,9 @@ -using System.ComponentModel; using System.Text; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global namespace pkNX.Structures.FlatBuffers.SWSH; // poke_memory_data.prmb and others // this is oddly similar to the map data FlatBuffer, assumed the same schema to encode an excel table? -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellTable { public string[] Dump(int cellsPerRow, char tab = '\t') @@ -32,13 +25,11 @@ public string[] Dump(int cellsPerRow, char tab = '\t') } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellMetaQuad { public override string ToString() => $"{Field0}|{Field1}|{Field2}|{Field3}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial struct CellUnion { public override string ToString() => Discriminator switch @@ -51,16 +42,12 @@ public partial struct CellUnion }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellInt { public override string ToString() => Value.ToString(); } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellFloat { public override string ToString() => Value.ToString("R"); } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellBool { public override string ToString() => Flag.ToString(); } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellString { public override string ToString() => Name; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellHash { public override string ToString() => Hash.ToString("X16"); } +public partial class CellInt { public override string ToString() => Value.ToString(); } +public partial class CellFloat { public override string ToString() => Value.ToString("R"); } +public partial class CellBool { public override string ToString() => Flag.ToString(); } +public partial class CellString { public override string ToString() => Name; } +public partial class CellHash { public override string ToString() => Hash.ToString("X16"); } -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class CellMetaHashes; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class CellHashTuple { public override string ToString() => $"{Hash0:X16} {Hash1:X16}"; diff --git a/FlatBuffers/SWSH/Gen8/Other/Rental.cs b/FlatBuffers/SWSH/Gen8/Other/Rental.cs new file mode 100644 index 00000000..5242c609 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Other/Rental.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class Rental +{ + public Species SpeciesID => (Species)Species; +} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ShopInventory.cs b/FlatBuffers/SWSH/Gen8/Other/ShopInventory.cs similarity index 94% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ShopInventory.cs rename to FlatBuffers/SWSH/Gen8/Other/ShopInventory.cs index 925a367a..590acbd4 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ShopInventory.cs +++ b/FlatBuffers/SWSH/Gen8/Other/ShopInventory.cs @@ -1,15 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ShopInventory; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class SingleShop { public override string ToString() => $"{Hash:X16} - {Inventories}"; @@ -111,7 +101,6 @@ public partial class SingleShop }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class MultiShop { public override string ToString() => $"{Hash:X16} - {string.Join(", ", Inventories.Select(z => z.ToString()))}"; @@ -123,7 +112,6 @@ public partial class MultiShop }; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Inventory { public override string ToString() => $"{string.Join(",", Items.Select(z => z.ToString()))}"; diff --git a/FlatBuffers/SWSH/Gen8/Other/SymbolBehavior.cs b/FlatBuffers/SWSH/Gen8/Other/SymbolBehavior.cs new file mode 100644 index 00000000..48822128 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Other/SymbolBehavior.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class SymbolBehave +{ + public Species Species => (Species)SpeciesID; +} diff --git a/FlatBuffers/SWSH/Gen8/Placement/PlacementArea8_F24.cs b/FlatBuffers/SWSH/Gen8/Placement/PlacementArea8_F24.cs new file mode 100644 index 00000000..b5ed1dc1 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/PlacementArea8_F24.cs @@ -0,0 +1,11 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementArea_F24 +{ + public override string ToString() => $"{Field00}, {Field02}: {Field01}"; +} + +public partial class PlacementAreaUnknownTiny +{ + public override string ToString() => $"{Field00}, {Field01}, {Field02}"; +} diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs new file mode 100644 index 00000000..ec1a0680 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZoneFishingPointHolder +{ + public override string ToString() => $"{Object.Identifier}" + (Object.IterateForSlotsExceptLastN == 0 ? "" : $" SkipLast{Object.IterateForSlotsExceptLastN}"); +} diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs new file mode 100644 index 00000000..f5eb7cc8 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs @@ -0,0 +1,8 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZone_V3f +{ + public string Location3f => $"({LocationX}, {LocationY}, {LocationZ})"; + + public override string ToString() => Location3f; +} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs similarity index 91% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs rename to FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs index 16a79d27..521ffe29 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneOtherNPCHolder.cs @@ -1,14 +1,6 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; // more NPCs? Trainers? -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZoneOtherNPCHolder { public static readonly Dictionary Models = new() @@ -170,15 +162,3 @@ public override string ToString() return $"{name}: {ident.HashObjectName:X16} v{ModelVariant} @ {ident.Location3f}"; } } - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F16_ArrayEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F16; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F16_A; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F16_IntFloat; diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs new file mode 100644 index 00000000..64b4aac0 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs @@ -0,0 +1,8 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZoneParticleHolder +{ + public override string ToString() => Field00.ParticleFile; +} + +public partial class PlacementZoneParticle; diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs new file mode 100644 index 00000000..912bf645 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZoneSpeciesHolder +{ + public override string ToString() => $"{(Species)Species}{(Form != 0 ? $"-{Form}" : "")}"; +} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs similarity index 60% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs rename to FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs index 8892f607..c100b0fc 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStaticObjectsHolder.cs @@ -1,20 +1,5 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneStaticObjectsHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneStaticObject; - -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZoneStaticObjectSpawn { public IEnumerable GetSummary(IList statics, IReadOnlyList species) @@ -31,7 +16,6 @@ public IEnumerable GetSummary(IList statics, IReadOnlyL } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZoneStaticObjectUnknown { public override string ToString() => $"{Field00} {Field01} {Field02} {Field03} {Field04}"; diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs new file mode 100644 index 00000000..22f682de --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs @@ -0,0 +1,11 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZoneTrainerHolder +{ + public override string ToString() + { + var hashModel = Field00.Field00.HashModel; + var name = PlacementZoneOtherNPCHolder.Models.TryGetValue(hashModel, out var model) ? model : hashModel.ToString("X16"); + return name; + } +} diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs new file mode 100644 index 00000000..40a24a28 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs @@ -0,0 +1,7 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +// Gates, Elevators, Tents, Flags, FossilRepair? +public partial class PlacementZoneUnitObjectHolder +{ + public override string ToString() => Object.NameModel; +} diff --git a/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs new file mode 100644 index 00000000..cc56ba02 --- /dev/null +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs @@ -0,0 +1,6 @@ +namespace pkNX.Structures.FlatBuffers.SWSH; + +public partial class PlacementZoneWarpHolder +{ + public override string ToString() => $"{Field00.NameAreaOther} via {Field00.NameModel}"; +} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/PlacementZone8.cs b/FlatBuffers/SWSH/Gen8/Placement/Zone/PlacementZone8.cs similarity index 88% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/PlacementZone8.cs rename to FlatBuffers/SWSH/Gen8/Placement/Zone/PlacementZone8.cs index d5a2099a..e9facf2d 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/PlacementZone8.cs +++ b/FlatBuffers/SWSH/Gen8/Placement/Zone/PlacementZone8.cs @@ -1,13 +1,5 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZone { public override string ToString() => Meta.ZoneID.ToString("X16"); @@ -79,13 +71,11 @@ public partial class PlacementZone } } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZoneMeta { public override string ToString() => $"{Field00.HashObjectName:X16}"; } -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class PlacementZoneMetaTripleXYZ { public string Location3f => $"({LocationX}, {LocationY}, {LocationZ})"; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Static/EncounterStaticArchive.cs b/FlatBuffers/SWSH/Gen8/Static/EncounterStaticArchive.cs similarity index 87% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Static/EncounterStaticArchive.cs rename to FlatBuffers/SWSH/Gen8/Static/EncounterStaticArchive.cs index a0196123..a9a187d1 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Static/EncounterStaticArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Static/EncounterStaticArchive.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -#nullable disable - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterStaticArchive; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterStatic { public Species SpeciesID => (Species)Species; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Trade/EncounterTradeArchive.cs b/FlatBuffers/SWSH/Gen8/Trade/EncounterTradeArchive.cs similarity index 89% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Trade/EncounterTradeArchive.cs rename to FlatBuffers/SWSH/Gen8/Trade/EncounterTradeArchive.cs index 7cfc24d3..5ecb26e4 100644 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Trade/EncounterTradeArchive.cs +++ b/FlatBuffers/SWSH/Gen8/Trade/EncounterTradeArchive.cs @@ -1,16 +1,7 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - namespace pkNX.Structures.FlatBuffers.SWSH; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterTradeArchive; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class EncounterTrade { public Species SpeciesID => (Species)Species; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Waza/Waza.cs b/FlatBuffers/SWSH/Gen8/Waza/Waza.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Waza/Waza.cs rename to FlatBuffers/SWSH/Gen8/Waza/Waza.cs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterTableUtil.cs b/FlatBuffers/SWSH/Gen8/Wild/EncounterTableUtil.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterTableUtil.cs rename to FlatBuffers/SWSH/Gen8/Wild/EncounterTableUtil.cs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/ArchiveContent.fbs b/FlatBuffers/SWSH/Schemas/ArchiveContent.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/ArchiveContent.fbs rename to FlatBuffers/SWSH/Schemas/ArchiveContent.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/BattleTowerPoke.fbs b/FlatBuffers/SWSH/Schemas/BattleTowerPoke.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/BattleTowerPoke.fbs rename to FlatBuffers/SWSH/Schemas/BattleTowerPoke.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/BattleTowerTrainer.fbs b/FlatBuffers/SWSH/Schemas/BattleTowerTrainer.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/BattleTowerTrainer.fbs rename to FlatBuffers/SWSH/Schemas/BattleTowerTrainer.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/CellTable.fbs b/FlatBuffers/SWSH/Schemas/CellTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/CellTable.fbs rename to FlatBuffers/SWSH/Schemas/CellTable.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterArchive.fbs b/FlatBuffers/SWSH/Schemas/EncounterArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterArchive.fbs rename to FlatBuffers/SWSH/Schemas/EncounterArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterNestArchive.fbs b/FlatBuffers/SWSH/Schemas/EncounterNestArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterNestArchive.fbs rename to FlatBuffers/SWSH/Schemas/EncounterNestArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterStaticArchive.fbs b/FlatBuffers/SWSH/Schemas/EncounterStaticArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterStaticArchive.fbs rename to FlatBuffers/SWSH/Schemas/EncounterStaticArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterTradeArchive.fbs b/FlatBuffers/SWSH/Schemas/EncounterTradeArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/EncounterTradeArchive.fbs rename to FlatBuffers/SWSH/Schemas/EncounterTradeArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/GiftArchive.fbs b/FlatBuffers/SWSH/Schemas/GiftArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/GiftArchive.fbs rename to FlatBuffers/SWSH/Schemas/GiftArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Model/GFBModel.fbs b/FlatBuffers/SWSH/Schemas/Model/GFBModel.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Model/GFBModel.fbs rename to FlatBuffers/SWSH/Schemas/Model/GFBModel.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Model/GFBPokeConfig.fbs b/FlatBuffers/SWSH/Schemas/Model/GFBPokeConfig.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Model/GFBPokeConfig.fbs rename to FlatBuffers/SWSH/Schemas/Model/GFBPokeConfig.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleCrystalEncounterArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleCrystalEncounterArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleCrystalEncounterArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleCrystalEncounterArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleDistributionEncounterArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleDistributionEncounterArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleDistributionEncounterArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleDistributionEncounterArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleDistributionRewardArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleDistributionRewardArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleDistributionRewardArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleDistributionRewardArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleLevelArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleLevelArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleLevelArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleLevelArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleRewardArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleRewardArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleRewardArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleRewardArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleUndergroundArchive.fbs b/FlatBuffers/SWSH/Schemas/NestHoleUndergroundArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/NestHoleUndergroundArchive.fbs rename to FlatBuffers/SWSH/Schemas/NestHoleUndergroundArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/Placement.fbs b/FlatBuffers/SWSH/Schemas/Placement/Placement.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/Placement.fbs rename to FlatBuffers/SWSH/Schemas/Placement/Placement.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementShared.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementShared.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementShared.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementShared.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZone.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZone.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZone.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZone.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneAdvancedTipHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneAdvancedTipHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneAdvancedTipHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneAdvancedTipHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneBerryTreeHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneBerryTreeHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneBerryTreeHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneBerryTreeHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneEnvironmentHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneEnvironmentHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneEnvironmentHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneEnvironmentHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFieldItemHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFieldItemHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFieldItemHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFieldItemHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFishingPointHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFishingPointHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFishingPointHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFishingPointHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFlightAnchorHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFlightAnchorHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneFlightAnchorHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneFlightAnchorHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneHiddenItemHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneHiddenItemHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneHiddenItemHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneHiddenItemHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneIKStepHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneIKStepHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneIKStepHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneIKStepHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneLadderHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneLadderHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneLadderHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneLadderHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneMovementPathHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneMovementPathHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneMovementPathHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneMovementPathHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneNPCHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneNPCHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneNPCHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneNPCHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneNestHoleHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneNestHoleHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneNestHoleHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneNestHoleHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneOtherNPCHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneOtherNPCHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneOtherNPCHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneOtherNPCHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneParticleHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneParticleHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneParticleHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneParticleHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZonePokeCenterSpawnAnchorHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZonePokeCenterSpawnAnchorHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZonePokeCenterSpawnAnchorHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZonePokeCenterSpawnAnchorHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZonePopupHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZonePopupHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZonePopupHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZonePopupHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneQuadrantHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneQuadrantHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneQuadrantHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneQuadrantHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneRotomRallyEntry.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneRotomRallyEntry.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneRotomRallyEntry.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneRotomRallyEntry.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneSpeciesHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneSpeciesHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneSpeciesHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneSpeciesHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneStaticObjectsHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneStaticObjectsHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneStaticObjectsHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneStaticObjectsHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneStepJumpHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneStepJumpHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneStepJumpHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneStepJumpHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneSymbolSpawnHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneSymbolSpawnHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneSymbolSpawnHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneSymbolSpawnHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTrainerHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTrainerHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTrainerHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTrainerHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTrainerTipHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTrainerTipHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTrainerTipHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTrainerTipHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTriggerHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTriggerHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneTriggerHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneTriggerHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneUnitObjectHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneUnitObjectHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneUnitObjectHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneUnitObjectHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneWarpHolder.fbs b/FlatBuffers/SWSH/Schemas/Placement/PlacementZoneWarpHolder.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Placement/PlacementZoneWarpHolder.fbs rename to FlatBuffers/SWSH/Schemas/Placement/PlacementZoneWarpHolder.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/PokeResourceTable.fbs b/FlatBuffers/SWSH/Schemas/PokeResourceTable.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/PokeResourceTable.fbs rename to FlatBuffers/SWSH/Schemas/PokeResourceTable.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/RentalArchive.fbs b/FlatBuffers/SWSH/Schemas/RentalArchive.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/RentalArchive.fbs rename to FlatBuffers/SWSH/Schemas/RentalArchive.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/ScriptMeta.fbs b/FlatBuffers/SWSH/Schemas/ScriptMeta.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/ScriptMeta.fbs rename to FlatBuffers/SWSH/Schemas/ScriptMeta.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/SymbolBehavior.fbs b/FlatBuffers/SWSH/Schemas/SymbolBehavior.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/SymbolBehavior.fbs rename to FlatBuffers/SWSH/Schemas/SymbolBehavior.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/Waza.fbs b/FlatBuffers/SWSH/Schemas/Waza.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/Waza.fbs rename to FlatBuffers/SWSH/Schemas/Waza.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/WeatherEntry.fbs b/FlatBuffers/SWSH/Schemas/WeatherEntry.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/WeatherEntry.fbs rename to FlatBuffers/SWSH/Schemas/WeatherEntry.fbs diff --git a/pkNX.Structures.FlatBuffers.SWSH/Schemas/shop.fbs b/FlatBuffers/SWSH/Schemas/shop.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.SWSH/Schemas/shop.fbs rename to FlatBuffers/SWSH/Schemas/shop.fbs diff --git a/FlatBuffers/SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj b/FlatBuffers/SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj @@ -0,0 +1,2 @@ + + diff --git a/pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs similarity index 93% rename from pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs index c0b43ce0..af56d491 100644 --- a/pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/ReflectionDumpSchema.cs @@ -1,6 +1,3 @@ -using System; -using System.IO; -using System.Linq; using FlatSharp; namespace pkNX.Structures.FlatBuffers.Reflection; @@ -10,10 +7,10 @@ public static class SchemaDump /// /// Exports fbs, cs /// - /// - /// - /// - /// + /// Reflection schema to dump from + /// File path of the schema + /// Output directory + /// Settings for the dump public static Schema HandleReflection(Memory data, ReadOnlySpan filePath, string dir, SchemaDumpSettings settings) { var schema = Schema.Serializer.Parse(data, FlatBufferDeserializationOption.GreedyMutable); @@ -73,13 +70,9 @@ private static void WriteHeaderFBS(Schema schema, TextWriter fbs, ReadOnlySpan fileNameSpace) { - cs.WriteLine("using System.Collections.Generic;"); - cs.WriteLine("using System.ComponentModel;"); - cs.WriteLine("using FlatSharp.Attributes;"); - cs.WriteLine("// ReSharper disable UnusedMember.Global"); cs.WriteLine("// ReSharper disable ClassNeverInstantiated.Global"); + cs.WriteLine("// ReSharper disable UnusedMember.Global"); cs.WriteLine("// ReSharper disable UnusedType.Global"); - cs.WriteLine("#nullable disable"); cs.WriteLine(); cs.WriteLine($"namespace {fileNameSpace};"); cs.WriteLine(); @@ -107,7 +100,6 @@ private static void DumpObjects(Schema schema, TextWriter fbs, TextWriter cs, bo var obj = list[i]; cs.WriteLine(); - cs.WriteLine("[TypeConverter(typeof(ExpandableObjectConverter))]"); cs.WriteLine($"public partial {(obj.IsStruct ? "struct" : "class")} {GetName(obj.Name, stripNamespace)};"); DumpObjectFBS(schema, fbs, stripNamespace, obj); diff --git a/pkNX.Structures.FlatBuffers.Reflection/SchemaDumpSettings.cs b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/SchemaDumpSettings.cs similarity index 100% rename from pkNX.Structures.FlatBuffers.Reflection/SchemaDumpSettings.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/SchemaDumpSettings.cs diff --git a/pkNX.Structures.FlatBuffers.Reflection/Schemas/reflection.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/Schemas/reflection.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers.Reflection/Schemas/reflection.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/Schemas/reflection.fbs diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj new file mode 100644 index 00000000..35e3d842 --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj @@ -0,0 +1,2 @@ + + diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/ExpandableAttributeGenerator.cs b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/ExpandableAttributeGenerator.cs new file mode 100644 index 00000000..e338ab92 --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/ExpandableAttributeGenerator.cs @@ -0,0 +1,103 @@ +using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.CSharp; +using Microsoft.CodeAnalysis.CSharp.Syntax; +using Microsoft.CodeAnalysis.Text; +using System.Text; + +namespace pkNX.Structures.FlatBuffers.SourceGen; + +/// +/// A source generator that adds the ExpandableObject attribute to all classes and structs that have a FlatBuffer attribute. +/// +[Generator] +public class ExpandableAttributeGenerator : IIncrementalGenerator +{ + private static bool IsFlatBufferTableAttribute(AttributeSyntax a) + => a.Name.ToString() is "FlatBufferTable" or "FlatBufferStruct"; + + public void Initialize(IncrementalGeneratorInitializationContext context) + { + var declarations = context.SyntaxProvider + .CreateSyntaxProvider( + predicate: static (node, _) => node switch + { + ClassDeclarationSyntax => true, + RecordDeclarationSyntax => true, + StructDeclarationSyntax => true, + _ => false, + }, + transform: static (ctx, _) => ctx.Node) + .Where(static node => (node switch + { + MemberDeclarationSyntax c => c.AttributeLists, + _ => throw new InvalidOperationException("Unexpected node type."), + }).SelectMany(x => x.Attributes).Any(IsFlatBufferTableAttribute)) + .Collect(); + + context.RegisterSourceOutput(declarations, static (spc, source) => + { + var sb = new StringBuilder(); + var newAttribute = GetExpandableObjectAttribute(); + + sb.AppendLine("// "); + sb.AppendLine("using System.ComponentModel;"); + sb.AppendLine(); + + // Group declarations by their namespace (or global if none). + var groups = source.GroupBy(GetNamespace); + foreach (var group in groups) + { + var ns = group.Key; + if (!string.IsNullOrEmpty(ns)) + { + sb.AppendLine($"namespace {ns}"); + sb.AppendLine("{"); + } + + foreach (var node in group) + { + var type = (TypeDeclarationSyntax)node; + var keyword = type.Keyword.Text; // "class" or "struct" + var identifier = type.Identifier.Text; + + // [Attribute] class; + sb.AppendLine($" {newAttribute} partial {keyword} {identifier};"); + } + + if (!string.IsNullOrEmpty(ns)) + { + sb.AppendLine("}"); // close namespace + sb.AppendLine(); + } + } + + spc.AddSource("ExpandableAttributes.g.cs", SourceText.From(sb.ToString(), Encoding.UTF8)); + }); + } + + private static AttributeListSyntax GetExpandableObjectAttribute() => SyntaxFactory.AttributeList( + SyntaxFactory.SingletonSeparatedList( + SyntaxFactory.Attribute( + SyntaxFactory.ParseName("TypeConverter"), + SyntaxFactory.AttributeArgumentList( + SyntaxFactory.SingletonSeparatedList( + SyntaxFactory.AttributeArgument( + SyntaxFactory.ParseExpression("typeof(ExpandableObjectConverter)") + ) + ) + ) + ) + ) + ); + + /// + /// Gets the full namespace of a type declaration by walking its ancestors. + /// Returns an empty string for the global namespace. + /// + private static string GetNamespace(SyntaxNode node) + { + // Look for both regular and file-scoped namespace declarations. + var namespaceDeclaration = node.Ancestors().OfType().FirstOrDefault(); + return namespaceDeclaration != null ? namespaceDeclaration.Name.ToString() : ""; + } +} diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/LICENSE b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/LICENSE new file mode 100644 index 00000000..c32dd18f --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/LICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to \ No newline at end of file diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/pkNX.Structures.FlatBuffers.SourceGen.csproj b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/pkNX.Structures.FlatBuffers.SourceGen.csproj new file mode 100644 index 00000000..5d72349f --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers.SourceGen/pkNX.Structures.FlatBuffers.SourceGen.csproj @@ -0,0 +1,21 @@ + + + true + + + + netstandard2.0 + true + true + Generated + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + diff --git a/pkNX.Structures.FlatBuffers/Data/Color3f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color3f.cs similarity index 75% rename from pkNX.Structures.FlatBuffers/Data/Color3f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color3f.cs index b73d5da7..ad0f13c1 100644 --- a/pkNX.Structures.FlatBuffers/Data/Color3f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color3f.cs @@ -1,10 +1,7 @@ -using System; -using System.ComponentModel; using System.Runtime.CompilerServices; namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] [method: MethodImpl(MethodImplOptions.AggressiveInlining)] public partial struct Color3f(float r = 1.0f, float g = 1.0f, float b = 1.0f) { diff --git a/pkNX.Structures.FlatBuffers/Data/Color4f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color4f.cs similarity index 92% rename from pkNX.Structures.FlatBuffers/Data/Color4f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color4f.cs index 8fd2c6b9..ca2bfb89 100644 --- a/pkNX.Structures.FlatBuffers/Data/Color4f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Color4f.cs @@ -1,9 +1,7 @@ -using System.ComponentModel; using System.Runtime.CompilerServices; namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] [method: MethodImpl(MethodImplOptions.AggressiveInlining)] public partial struct Color4f(float r = 1.0f, float g = 1.0f, float b = 1.0f, float a = 1.0f) { diff --git a/pkNX.Structures.FlatBuffers/Data/Unorm16.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm16.cs similarity index 99% rename from pkNX.Structures.FlatBuffers/Data/Unorm16.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm16.cs index 72c422dd..23db7aa0 100644 --- a/pkNX.Structures.FlatBuffers/Data/Unorm16.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm16.cs @@ -1,4 +1,3 @@ -using System; using System.Globalization; using System.Runtime.CompilerServices; diff --git a/pkNX.Structures.FlatBuffers/Data/Unorm8.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm8.cs similarity index 99% rename from pkNX.Structures.FlatBuffers/Data/Unorm8.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm8.cs index 58c5d9b8..8b3bf5a4 100644 --- a/pkNX.Structures.FlatBuffers/Data/Unorm8.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Data/Unorm8.cs @@ -1,4 +1,3 @@ -using System; using System.Globalization; using System.Runtime.CompilerServices; diff --git a/pkNX.Structures.FlatBuffers/FlatBufferConverter.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/FlatBufferConverter.cs similarity index 96% rename from pkNX.Structures.FlatBuffers/FlatBufferConverter.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/FlatBufferConverter.cs index 0d9940ea..50d6f0a2 100644 --- a/pkNX.Structures.FlatBuffers/FlatBufferConverter.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/FlatBufferConverter.cs @@ -1,6 +1,4 @@ -using System; using System.Buffers; -using System.IO; using FlatSharp; using static FlatSharp.FlatBufferDeserializationOption; @@ -56,8 +54,9 @@ public static T DeserializeFrom(Memory data, FlatBufferDeserializationO var pool = ArrayPool.Shared; var serializer = obj.Serializer; var data = pool.Rent(serializer.GetMaxSize(obj)); + data.AsSpan().Clear(); var len = serializer.Write(data, obj); - var result = data.AsSpan(0, len).ToArray(); + var result = data[..len]; pool.Return(data); return result; } diff --git a/pkNX.Structures.FlatBuffers/Geomerty/AABB.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/AABB.cs similarity index 79% rename from pkNX.Structures.FlatBuffers/Geomerty/AABB.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/AABB.cs index 1c2183f8..f8611e60 100644 --- a/pkNX.Structures.FlatBuffers/Geomerty/AABB.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/AABB.cs @@ -1,9 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - namespace pkNX.Structures.FlatBuffers; public partial class AABB diff --git a/pkNX.Structures.FlatBuffers/Geomerty/PackedAABB.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/PackedAABB.cs similarity index 86% rename from pkNX.Structures.FlatBuffers/Geomerty/PackedAABB.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/PackedAABB.cs index cc797876..ba86c643 100644 --- a/pkNX.Structures.FlatBuffers/Geomerty/PackedAABB.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/PackedAABB.cs @@ -1,9 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - namespace pkNX.Structures.FlatBuffers; public partial struct PackedAABB diff --git a/pkNX.Structures.FlatBuffers/Geomerty/Sphere.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/Sphere.cs similarity index 59% rename from pkNX.Structures.FlatBuffers/Geomerty/Sphere.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/Sphere.cs index 09496aa2..3110cff7 100644 --- a/pkNX.Structures.FlatBuffers/Geomerty/Sphere.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Geometry/Sphere.cs @@ -1,9 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - namespace pkNX.Structures.FlatBuffers; public partial struct Sphere(AABB bounds) diff --git a/pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs similarity index 67% rename from pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs index eee6dafa..a89fa7f2 100644 --- a/pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec2f.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial struct PackedVec2f { public static implicit operator PackedVec2f(Vec2f v) => new() { X = v.X, Y = v.Y }; diff --git a/pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs similarity index 97% rename from pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs index bb533a09..67aa4398 100644 --- a/pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec3f.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial struct PackedVec3f : IEquatable { public static readonly PackedVec3f Zero = new(); diff --git a/pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs similarity index 69% rename from pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs index 2f0a3353..03c7b70e 100644 --- a/pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4f.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial struct PackedVec4f { public static implicit operator PackedVec4f(Vec4f v) => new() { X = v.X, Y = v.Y, Z = v.Z, W = v.W }; diff --git a/pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs similarity index 69% rename from pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs index 9224a362..7f5ee86c 100644 --- a/pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/PackedVec4i.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial struct PackedVec4i { public static implicit operator PackedVec4i(Vec4i v) => new() { X = v.X, Y = v.Y, Z = v.Z, W = v.W }; diff --git a/pkNX.Structures.FlatBuffers/Math/Vec2f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec2f.cs similarity index 90% rename from pkNX.Structures.FlatBuffers/Math/Vec2f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec2f.cs index 87a806c8..bbfe5795 100644 --- a/pkNX.Structures.FlatBuffers/Math/Vec2f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec2f.cs @@ -1,9 +1,5 @@ -using System; -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Vec2f : IEquatable { public static readonly Vec2f Zero = new(); diff --git a/pkNX.Structures.FlatBuffers/Math/Vec3f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec3f.cs similarity index 97% rename from pkNX.Structures.FlatBuffers/Math/Vec3f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec3f.cs index 1a0f0266..6bc06592 100644 --- a/pkNX.Structures.FlatBuffers/Math/Vec3f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec3f.cs @@ -1,8 +1,5 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Vec3f : IEquatable { public static readonly Vec3f Zero = new(); diff --git a/pkNX.Structures.FlatBuffers/Math/Vec4f.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4f.cs similarity index 91% rename from pkNX.Structures.FlatBuffers/Math/Vec4f.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4f.cs index 41decc7a..6d9a56ce 100644 --- a/pkNX.Structures.FlatBuffers/Math/Vec4f.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4f.cs @@ -1,9 +1,5 @@ -using System; -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] public partial class Vec4f : IEquatable { public static readonly Vec4f Zero = new(); diff --git a/pkNX.Structures.FlatBuffers/Data/Vec4i.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4i.cs similarity index 77% rename from pkNX.Structures.FlatBuffers/Data/Vec4i.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4i.cs index 497c0023..de0cabb8 100644 --- a/pkNX.Structures.FlatBuffers/Data/Vec4i.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Math/Vec4i.cs @@ -1,20 +1,10 @@ -using System.ComponentModel; - namespace pkNX.Structures.FlatBuffers; -[TypeConverter(typeof(ExpandableObjectConverter))] -public class Vec4i : IEquatable +public partial class Vec4i : IEquatable { - public int X { get; set; } - public int Y { get; set; } - public int Z { get; set; } - public int W { get; set; } - public static readonly Vec4i Zero = new(); public static readonly Vec4i One = new(1, 1, 1, 1); - public Vec4i() { } - public Vec4i(int x = 0, int y = 0, int z = 0, int w = 0) { X = x; diff --git a/pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs similarity index 81% rename from pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs index 5fcfd833..a8bca917 100644 --- a/pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/AABB.fbs @@ -1,4 +1,4 @@ -include "Math/math.fbs"; +include "../Math/math.fbs"; namespace pkNX.Structures.FlatBuffers; diff --git a/pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs similarity index 84% rename from pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs index 2d81942e..33acc16d 100644 --- a/pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/PackedAABB.fbs @@ -1,4 +1,4 @@ -include "Math/math.fbs"; +include "../Math/math.fbs"; namespace pkNX.Structures.FlatBuffers; attribute "fs_valueStruct"; diff --git a/pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs similarity index 84% rename from pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs index 0869e919..d25122c9 100644 --- a/pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Geometry/Sphere.fbs @@ -1,4 +1,4 @@ -include "Math/math.fbs"; +include "../Math/math.fbs"; namespace pkNX.Structures.FlatBuffers; attribute "fs_valueStruct"; diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Matrix4x3f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Matrix4x3f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Matrix4x3f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Matrix4x3f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec2f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec2f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec2f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec2f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec3f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec3f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec3f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec3f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4i.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4i.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4i.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/PackedVec4i.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Quat4f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Quat4f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Quat4f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Quat4f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Transform.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Transform.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Transform.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Transform.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Vec2f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec2f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Vec2f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec2f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Vec3f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec3f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Vec3f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec3f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/Vec4f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4f.fbs diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4i.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4i.fbs new file mode 100644 index 00000000..c30d83cb --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/Vec4i.fbs @@ -0,0 +1,8 @@ +namespace pkNX.Structures.FlatBuffers; + +table Vec4i { + X: int; + Y: int; + Z: int; + W: int; +} diff --git a/pkNX.Structures.FlatBuffers/Schemas/Math/math.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/math.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Math/math.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Math/math.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Utils/Color3f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/Color3f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Utils/Color3f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/Color3f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Utils/Color4f.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/Color4f.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Utils/Color4f.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/Color4f.fbs diff --git a/pkNX.Structures.FlatBuffers/Schemas/Utils/SpeciesSize.fbs b/FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/SpeciesSize.fbs similarity index 100% rename from pkNX.Structures.FlatBuffers/Schemas/Utils/SpeciesSize.fbs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Schemas/Utils/SpeciesSize.fbs diff --git a/pkNX.Structures.FlatBuffers/Util/FlatDumper.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatDumper.cs similarity index 92% rename from pkNX.Structures.FlatBuffers/Util/FlatDumper.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatDumper.cs index 2310f84c..c8435aff 100644 --- a/pkNX.Structures.FlatBuffers/Util/FlatDumper.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatDumper.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; -using System.IO; using FlatSharp; namespace pkNX.Structures.FlatBuffers; diff --git a/pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs b/FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs similarity index 88% rename from pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs rename to FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs index b110b152..40fa62d6 100644 --- a/pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/Util/FlatSchemaDump.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; using System.Reflection; using FlatSharp.Attributes; @@ -17,9 +14,11 @@ public class FlatSchemaDump public FlatSchemaDump(object obj) => Recurse(obj.GetType()); public string GetSingleFileSchema(Type type) => - $@"namespace {type.Namespace}; -{string.Join(Environment.NewLine + Environment.NewLine, GeneratedSchemas)} -root_type {GetName(type)};"; + $""" + namespace {type.Namespace}; + {string.Join(Environment.NewLine + Environment.NewLine, GeneratedSchemas)} + root_type {GetName(type)}; + """; private void Recurse(Type t) { @@ -45,9 +44,11 @@ private void AddTable(Type type, string name) var defType = type.GetTypeInfo().GetCustomAttribute() != null ? "struct" : "table"; var schema = - @$"{defType} {name} {{ - {string.Join(Environment.NewLine + " ", lines)} -}}"; + $$""" + {{defType}} {{name}} { + {{string.Join(Environment.NewLine + " ", lines)}} + } + """; GeneratedClasses.Add(name); GeneratedSchemas.Add(schema); @@ -74,9 +75,11 @@ private void AddEnum(Type type, string name) var underlying = type.GetEnumUnderlyingType(); var underlyingName = Aliases[underlying]; var kvps = GetEnumMembers(type); - var schema = $@"enum {GetName(type)} : {underlyingName} {{ - {string.Join(Environment.NewLine + " ", kvps)} -}}"; + var schema = $$""" + enum {{GetName(type)}} : {{underlyingName}} { + {{string.Join(Environment.NewLine + " ", kvps)}} + } + """; GeneratedClasses.Add(name); GeneratedSchemas.Add(schema); } diff --git a/FlatBuffers/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj b/FlatBuffers/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj new file mode 100644 index 00000000..57ef1a8b --- /dev/null +++ b/FlatBuffers/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj @@ -0,0 +1,15 @@ + + + + Data Structures - With FlatBuffers! + + + + + + + + true + + + diff --git a/pkNX.Containers/pkNX.Containers.csproj b/pkNX.Containers/pkNX.Containers.csproj index 2fb238bb..d7f71bb8 100644 --- a/pkNX.Containers/pkNX.Containers.csproj +++ b/pkNX.Containers/pkNX.Containers.csproj @@ -1,7 +1,6 @@ - net8.0 Packing & Unpacking diff --git a/pkNX.Game/pkNX.Game.csproj b/pkNX.Game/pkNX.Game.csproj index 42106b3c..3d8335f8 100644 --- a/pkNX.Game/pkNX.Game.csproj +++ b/pkNX.Game/pkNX.Game.csproj @@ -1,18 +1,17 @@ - net8.0 Game Data Manager + - - - - + + + diff --git a/pkNX.Randomization/pkNX.Randomization.csproj b/pkNX.Randomization/pkNX.Randomization.csproj index d4fdd2d6..01380734 100644 --- a/pkNX.Randomization/pkNX.Randomization.csproj +++ b/pkNX.Randomization/pkNX.Randomization.csproj @@ -1,7 +1,6 @@ - net8.0 Randomizer Utility diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/AppConfigList.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/AppConfigList.cs deleted file mode 100644 index 467e1780..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/AppConfigList.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AppConfigEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AppConfigList; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/ConfigureTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/ConfigureTable.cs deleted file mode 100644 index 9232fa0a..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Config/ConfigureTable.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ConfigArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ConfigEntry -{ - public string ConfiguredValue - { - get => Parameters[0]; - set => Parameters[0] = value; - } -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/DressUp/DressUpTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/DressUp/DressUpTable.cs deleted file mode 100644 index 7623f025..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/DressUp/DressUpTable.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DressUpTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DressUpEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Event/Trigger.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Event/Trigger.cs deleted file mode 100644 index 29233368..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Event/Trigger.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TriggerTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Trigger; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TriggerMeta; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TriggerCondition : IHasCondition -{ - // For interface compat - public string ConditionArg4 { get; set; } = string.Empty; - public string ConditionArg5 { get; set; } = string.Empty; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TriggerCommand; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/MassOutbreakTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/MassOutbreakTable.cs deleted file mode 100644 index 57035f4d..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/MassOutbreakTable.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MassOutbreakTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MassOutbreak; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MassOutbreakCondition : IHasCondition; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakLottery.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakLottery.cs deleted file mode 100644 index de309984..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakLottery.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NewHugeOutbreakLotteryArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NewHugeOutbreakLottery; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakTimeLimit.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakTimeLimit.cs deleted file mode 100644 index e29e9a1d..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/NewHuge/NewHugeOutbreakTimeLimit.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NewHugeOutbreakTimeLimitArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NewHugeOutbreakTimeLimit; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/OybnSettingTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/OybnSettingTable.cs deleted file mode 100644 index f9b0ae97..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/OybnSettingTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class OybnSettingTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class OybnSetting; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementItemArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementItemArchive.cs deleted file mode 100644 index fa9b6864..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementItemArchive.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementItemArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementItem; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementItem_F03; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementItem_F08; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocationArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocationArchive.cs deleted file mode 100644 index 3db2e1f4..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementLocationArchive.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementLocationArchive; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementParameters.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementParameters.cs deleted file mode 100644 index 2b30a7bd..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementParameters.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementParameters : IHasCondition -{ - public override string ToString() => $"PlacementParameters(/* ConditionTypeID = */ {this.GetConditionTypeSummary()}, /* Condition = */ {this.GetConditionSummary()}, {Coordinates}, {Rotation}, {Scale})"; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerData.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerData.cs deleted file mode 100644 index eac5e473..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Placement/PlacementSpawnerData.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementSpawnerArchive; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaBGMTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaBGMTable.cs deleted file mode 100644 index b434c7de..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaBGMTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaBGMTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaBGM; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaSettingsTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaSettingsTable.cs deleted file mode 100644 index a44c6a1f..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaSettingsTable.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.ComponentModel; -using System.Linq; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaSettingsTable -{ - public AreaSettings Find(string name) => Table.First(z => z.Name == name); -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaSettings -{ - // Get the in game name of the area - public string FriendlyAreaName - { - get - { - return Name switch - { - "ha_area00" => "Jubilife Village", - "ha_area01" => "Obsidian Fieldlands", - "ha_area02" => "Crimson Mirelands", - "ha_area03" => "Cobalt Coastlands", - "ha_area04" => "Coronet Highlands", - "ha_area05" => "Alabaster Icelands", - "ha_area06" => "Ancient Retreat", - _ => $"Unknown Area ({Name})", - }; - } - } -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaSettings_F50; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaWeatherTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaWeatherTable.cs deleted file mode 100644 index 55cea374..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Field/Resident/AreaWeatherTable.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaWeatherTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaWeather -{ - public int WeightTotal => WeightSunny + WeightCloudy + WeightRain + WeightSnow + WeightDrought + WeightFog + WeightRainstorm + WeightSnowstorm; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/KeyAssignmentTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/KeyAssignmentTable.cs deleted file mode 100644 index 734fbc3d..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/KeyAssignmentTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class KeyAssignmentTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class KeyAssignment; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/LbPointsTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/LbPointsTable.cs deleted file mode 100644 index a4a13f4d..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/LbPointsTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LbPointsTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LbPointsInfo; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/MoveShopTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/MoveShopTable.cs deleted file mode 100644 index d913b4b3..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/MoveShopTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MoveShopTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MoveShopIndex; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/NPC/NPCModelSet.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/NPC/NPCModelSet.cs deleted file mode 100644 index eeaefad7..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/NPC/NPCModelSet.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.ComponentModel; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelSet; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelSetEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelAnimations; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelMeshes; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelRigs; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NPCModelColorConfig; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/PlayReportTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/PlayReportTable.cs deleted file mode 100644 index 30c14d76..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/PlayReportTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlayReportTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlayReportItem; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/BoneScalarMesh.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/BoneScalarMesh.cs deleted file mode 100644 index b0382fcb..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/BoneScalarMesh.cs +++ /dev/null @@ -1,22 +0,0 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -// *.trbsm - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class UnkEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BoneEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ScalerEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BoneMeshScalar; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Mesh.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Mesh.cs deleted file mode 100644 index 082a4ab7..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Mesh.cs +++ /dev/null @@ -1,39 +0,0 @@ -using pkNX.Containers; -using System; -using System.ComponentModel; -using System.Diagnostics; -using System.Linq; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -// *.trmsh - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BoneWeight -{ - public override string ToString() => $"{{ [{RigIndex}]: {Weight} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class InputLayoutElement -{ - public override string ToString() => $"{{ {SemanticName}{SemanticIndex:#} ({Format}) @ {Offset:00} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class VertexSize -{ - public override string ToString() => $"{{ {Size} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class VertexAttributeLayout; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SubMesh; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshShape; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Mesh; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MultiMaterialTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MultiMaterialTable.cs deleted file mode 100644 index f27b4766..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/MultiMaterialTable.cs +++ /dev/null @@ -1,32 +0,0 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -// *.trmmt - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialSwitch; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialMapper; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EmbeddedTracm; - -//Appears only on Arceus? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialProperty; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MultiMaterialTable -{ - public static MultiMaterialTable Empty => new() - { - Material = [], - }; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokeConfig.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokeConfig.cs deleted file mode 100644 index 8cdd1fb4..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/PokeConfig.cs +++ /dev/null @@ -1,12 +0,0 @@ -using pkNX.Containers; -using System; -using System.ComponentModel; -using System.Diagnostics; -using System.Linq; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -// *.trpokecfg - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeConfig; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Skeleton.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Skeleton.cs deleted file mode 100644 index f1c6f999..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Model/Skeleton.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System; -using System.ComponentModel; - -namespace pkNX.Structures.FlatBuffers.Arceus; - -// *.trskl - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Skeleton; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TransformNode; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class IKControl; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Bone; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWaza.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWaza.cs deleted file mode 100644 index b2a70915..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWaza.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWaza; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.cs deleted file mode 100644 index adf9dda6..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaNsLegendArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaNsLegend; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.cs deleted file mode 100644 index 587c59cc..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaNsLegendEffectArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaNsLegendEffectArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaNsLegendEffect; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaSeArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaSeArchive.cs deleted file mode 100644 index 49d9302b..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaSeArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaSeArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaSe; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildArchive.cs deleted file mode 100644 index 302c9334..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildArchive.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildArchive; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.cs deleted file mode 100644 index 2c039614..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildEffectArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildEffectArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildEffect; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.cs deleted file mode 100644 index 9bb9733a..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterArchive.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildWaterArchive; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.cs deleted file mode 100644 index f66151a3..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/PokeFieldObstructionWazaWildWaterEffectArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildWaterEffectArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeFieldObstructionWazaWildWaterEffect; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Waza.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Waza.cs deleted file mode 100644 index 51a63c24..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/Moves/Waza.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Waza; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PersonalInfoLAfb.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PersonalInfoLAfb.cs deleted file mode 100644 index 0a09245e..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PersonalInfoLAfb.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -/// -/// Personal Info class with values from the games. -/// -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PersonalTable; - -/// -/// Personal Info class with values from the games. -/// -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PersonalInfo; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBattleSpawnArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBattleSpawnArchive.cs deleted file mode 100644 index 01dc4141..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBattleSpawnArchive.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -/// -/// Seems to be a file left over from development. Only has test entries -/// -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeBattleSpawnArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeBattleSpawn; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBodyParticleArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBodyParticleArchive.cs deleted file mode 100644 index ed0fe5e9..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeBodyParticleArchive.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeBodyParticleArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeBodyParticle; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeBodyParticle_F03; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDefaultLocatorArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDefaultLocatorArchive.cs deleted file mode 100644 index 5ef7c078..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDefaultLocatorArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDefaultLocatorArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDefaultLocator; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemArchive.cs deleted file mode 100644 index 69667ee4..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemArchive.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDropItemArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDropItem -{ - public string Dump(string[] itemNames) => $"{Hash:X16}\t{itemNames[RegularItem]}\t{RegularItemProbability}\t{itemNames[RareItem]}\t{RareItemProbability}"; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs deleted file mode 100644 index 623b8d1a..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeDropItemBattleArchive.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDropItemBattleArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDropItemBattle -{ - public string Dump(string[] n) => $"{RateItem1}\t{n[IndexItem1]}\t{RateItem2}\t{n[IndexItem2]}\t{RateItem3}\t{n[IndexItem3]}\t{RateItem4}\t{n[IndexItem4]}\t{RateItem5}\t{n[IndexItem5]}"; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeEatingHabitsArchive.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeEatingHabitsArchive.cs deleted file mode 100644 index 4609af1f..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Poke/PokeEatingHabitsArchive.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeEatingHabitsArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeEatingHabits; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexDistributionTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexDistributionTable.cs deleted file mode 100644 index 5d1ca87a..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexDistributionTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexDistributionTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexDistributionEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexRankTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexRankTable.cs deleted file mode 100644 index d868c3ed..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexRankTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexRankTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexRankLevel; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexResearchTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexResearchTable.cs deleted file mode 100644 index 82d060e7..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Pokedex/PokedexResearchTable.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexResearchTable -{ - public PokedexResearchTask[] GetEntries(int species) - { - return Table.Where(z => z.Species == species).ToArray(); - } - - public PokedexResearchTask AddTask(int Species) - { - var task = new PokedexResearchTask { Species = Species }; - AddTask(task); - return task; - } - - public void AddTask(PokedexResearchTask task) => Table = Table.Append(task).ToArray(); - public bool RemoveTask(PokedexResearchTask taskToRemove) - { - return Table.Remove(taskToRemove); - } -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokedexResearchTask; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/ScriptIDRecordRelease.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/ScriptIDRecordRelease.cs deleted file mode 100644 index c70af417..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/ScriptIDRecordRelease.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ScriptIDRecordRelease; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ScriptIDRecord; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Shop/HaShopTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Shop/HaShopTable.cs deleted file mode 100644 index d397d2de..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Shop/HaShopTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class HaShopTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class HaShopItem; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/CommonCaptureConfigTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/CommonCaptureConfigTable.cs deleted file mode 100644 index a739007e..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/CommonCaptureConfigTable.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class CommonCaptureConfigTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class CommonCaptureConfig; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowParamTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowParamTable.cs deleted file mode 100644 index e2659810..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowParamTable.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowParamTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowParam -{ - public string Dump() => $"{ThrowParamType:X16}\t{Velocity}\t{Arc}\t{GravityDirection}\t{ThrowAngle}"; -} diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowPermissionSetDictionary.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowPermissionSetDictionary.cs deleted file mode 100644 index b39da877..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowPermissionSetDictionary.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowPermissionSetDictionary; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowPermissionSetEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableBaitParamDictionary.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableBaitParamDictionary.cs deleted file mode 100644 index 3db59e9b..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableBaitParamDictionary.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableBaitParamDictionary; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableBaitParamEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableParamTable.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableParamTable.cs deleted file mode 100644 index 2946ca49..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableParamTable.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableParamTable -{ - public void AddEntry(int i) - { - Table = Table.Append(new ThrowableParam - { - Label01 = string.Empty, - Label02 = string.Empty, - }).ToList(); - } -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableParam; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceDictionary.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceDictionary.cs deleted file mode 100644 index 8d885a57..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceDictionary.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableResourceDictionary; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableResourceEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceSetDictionary.cs b/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceSetDictionary.cs deleted file mode 100644 index d981f405..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/Arceus/Throw/ThrowableResourceSetDictionary.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.Arceus; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableResourceSetDictionary; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ThrowableResourceSetEntry; diff --git a/pkNX.Structures.FlatBuffers.Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj b/pkNX.Structures.FlatBuffers.Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj deleted file mode 100644 index acddd6b2..00000000 --- a/pkNX.Structures.FlatBuffers.Arceus/pkNX.Structures.FlatBuffers.Arceus.csproj +++ /dev/null @@ -1,39 +0,0 @@ - - - - net8.0 - enable - enable - - - - - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - GreedyMutable - true - - - - - ..\pkNX.Structures.FlatBuffers\Schemas\ - - - - - - - - - - - diff --git a/pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterArchive.cs b/pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterArchive.cs deleted file mode 100644 index 765d7214..00000000 --- a/pkNX.Structures.FlatBuffers.LGPE/Gen7/EncounterArchive.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.LGPE; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterSlot; diff --git a/pkNX.Structures.FlatBuffers.LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj b/pkNX.Structures.FlatBuffers.LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj deleted file mode 100644 index 26c1e4d6..00000000 --- a/pkNX.Structures.FlatBuffers.LGPE/pkNX.Structures.FlatBuffers.LGPE.csproj +++ /dev/null @@ -1,34 +0,0 @@ - - - - net8.0 - enable - - - - - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - GreedyMutable - true - - - - - ..\pkNX.Structures.FlatBuffers\Schemas\ - - - - - - - diff --git a/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj b/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj deleted file mode 100644 index 4f7f1bc0..00000000 --- a/pkNX.Structures.FlatBuffers.Reflection/pkNX.Structures.FlatBuffers.Reflection.csproj +++ /dev/null @@ -1,28 +0,0 @@ - - - - net8.0 - enable - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - GreedyMutable - true - - - - - - - - - - diff --git a/pkNX.Structures.FlatBuffers.SV/Directory.Build.props b/pkNX.Structures.FlatBuffers.SV/Directory.Build.props deleted file mode 100644 index 3e899450..00000000 --- a/pkNX.Structures.FlatBuffers.SV/Directory.Build.props +++ /dev/null @@ -1,26 +0,0 @@ - - - net8.0 - en - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - GreedyMutable - true - - - - - - - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Audio/pkNX.Structures.FlatBuffers.SV.Audio.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Balloon/pkNX.Structures.FlatBuffers.SV.Balloon.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj deleted file mode 100644 index b1ac3808..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Battle/pkNX.Structures.FlatBuffers.SV.Battle.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\;..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Cooking/pkNX.Structures.FlatBuffers.SV.Cooking.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/pkNX.Structures.FlatBuffers.SV.Event.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/pkNX.Structures.FlatBuffers.SV.Event.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Event/pkNX.Structures.FlatBuffers.SV.Event.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Gym/pkNX.Structures.FlatBuffers.SV.Gym.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/pkNX.Structures.FlatBuffers.SV.Item.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/pkNX.Structures.FlatBuffers.SV.Item.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Item/pkNX.Structures.FlatBuffers.SV.Item.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Misc/DanCarBattleDataArray.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Misc/DanCarBattleDataArray.cs deleted file mode 100644 index f31a53c4..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/Misc/DanCarBattleDataArray.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DanCarBattleDataArray; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DanBossCarBattleTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DanCarBattleData; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj deleted file mode 100644 index b1ac3808..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Misc/pkNX.Structures.FlatBuffers.SV.Misc.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\;..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/PersonalTable.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/PersonalTable.cs deleted file mode 100644 index 693ae59b..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/PersonalTable.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PersonalTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PersonalInfo; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoDex.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoDex.cs deleted file mode 100644 index 0bd5655b..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoDex.cs +++ /dev/null @@ -1,7 +0,0 @@ -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -public partial class PersonalInfoDex; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoEvolution.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoEvolution.cs deleted file mode 100644 index 0c9408cd..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/Personal/Types/PersonalInfoEvolution.cs +++ /dev/null @@ -1,7 +0,0 @@ -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -public partial class PersonalInfoEvolution; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj deleted file mode 100644 index 44307490..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Personal/pkNX.Structures.FlatBuffers.SV.Personal.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj deleted file mode 100644 index 48142e0f..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Picnic/pkNX.Structures.FlatBuffers.SV.Picnic.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Raid/pkNX.Structures.FlatBuffers.SV.Raid.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/FlatDummyEntry.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/FlatDummyEntry.cs deleted file mode 100644 index dd704a7a..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/FlatDummyEntry.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.ComponentModel; - -// ReSharper disable ClassNeverInstantiated.Global -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class FlatDummyEntry -{ - // Throw on ctor as all arrays of this object type should never have any entries. - public FlatDummyEntry() => throw new ArgumentException("Cannot create an instance of a dummy object."); - public override string ToString() => "UNUSED ARRAY"; -} diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataEventBattle.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataEventBattle.cs deleted file mode 100644 index 66f992d0..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataEventBattle.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDataEventBattle; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataFull.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataFull.cs deleted file mode 100644 index 971e507a..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataFull.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDataFull; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataSymbol.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataSymbol.cs deleted file mode 100644 index 7b3a51df..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataSymbol.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDataSymbol; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataTrade.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataTrade.cs deleted file mode 100644 index 33312c87..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/PokeDataTrade.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PokeDataTrade; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/WazaSet.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/WazaSet.cs deleted file mode 100644 index 7838f4c6..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/Gen9/PokeData/WazaSet.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class WazaSet; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ParamSet -{ - public string SlashSeparated() => $"{HP}/{ATK}/{DEF}/{SPA}/{SPD}/{SPE}"; - - public int[] ToArray() => [HP, ATK, DEF, SPA, SPD, SPE]; -} diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj deleted file mode 100644 index abfb3a2c..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Shared/pkNX.Structures.FlatBuffers.SV.Shared.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trainers/pkNX.Structures.FlatBuffers.SV.Trainers.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj deleted file mode 100644 index 074d0161..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Trinity/pkNX.Structures.FlatBuffers.SV.Trinity.csproj +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - ..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/pkNX.Structures.FlatBuffers.SV.UI.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/pkNX.Structures.FlatBuffers.SV.UI.csproj deleted file mode 100644 index b1ac3808..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.UI/pkNX.Structures.FlatBuffers.SV.UI.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\;..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/AreaInfo.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/AreaInfo.cs deleted file mode 100644 index c27f0a98..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/AreaInfo.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class AreaInfo -{ - public int ActualMinLevel => MinEncLv != 0 ? MinEncLv : 1; - public int ActualMaxLevel => MaxEncLv != 0 ? MaxEncLv : 100; -} diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreak.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreak.cs deleted file mode 100644 index 394ab33c..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/DeliveryOutbreak.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DeliveryOutbreakArray; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class DeliveryOutbreak; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/PointDataArray.cs b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/PointDataArray.cs deleted file mode 100644 index bc2d39c5..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/World/PointDataArray.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedMember.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable UnusedType.Global - -namespace pkNX.Structures.FlatBuffers.SV; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PointDataArray; diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/pkNX.Structures.FlatBuffers.SV.World.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/pkNX.Structures.FlatBuffers.SV.World.csproj deleted file mode 100644 index b1ac3808..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.World/pkNX.Structures.FlatBuffers.SV.World.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\;..\..\pkNX.Structures.FlatBuffers\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj b/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj deleted file mode 100644 index b782ecb2..00000000 --- a/pkNX.Structures.FlatBuffers.SV/pkNX.Structures.FlatBuffers.SV.Zukan/pkNX.Structures.FlatBuffers.SV.Zukan.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - ..\pkNX.Structures.FlatBuffers.SV.Shared\Schemas\ - - - diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerPokeArchive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerPokeArchive.cs deleted file mode 100644 index f94b725d..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerPokeArchive.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BattleTowerPokeArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BattleTowerPoke; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerTrainerArchive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerTrainerArchive.cs deleted file mode 100644 index faf194e9..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/BattleTower/BattleTowerTrainerArchive.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BattleTowerTrainerArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class BattleTowerTrainer8; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/EncounterGiftArchive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/EncounterGiftArchive.cs deleted file mode 100644 index adc7d6e8..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Gift/EncounterGiftArchive.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterGiftArchive; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBModel.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBModel.cs deleted file mode 100644 index 928fd2a4..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBModel.cs +++ /dev/null @@ -1,70 +0,0 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// *.gfbmdl - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class LayerData; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class RenderLayer; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class VersionInfo; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class GFBModel; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class VertexAttribute; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Polygon; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Shape; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Mesh; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class TransparencyGroupNode; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Bone; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class UberShaderSettings; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SamplerState; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Texture -{ - public override string ToString() => $"{{ texture[{TextureIndex}], Bound to: {SamplerName}, {Settings} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Flag -{ - public override string ToString() => $"{{ {FlagName}: {FlagEnable} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class FloatParam -{ - public override string ToString() => $"{{ {ValueName}: {Value} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Color3Param -{ - public override string ToString() => $"{{ {ColorName}: {Color} }}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Material; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBPokeConfig.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBPokeConfig.cs deleted file mode 100644 index 217201b4..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Model/GFBPokeConfig.cs +++ /dev/null @@ -1,24 +0,0 @@ -using FlatSharp.Attributes; -using System; -using System.ComponentModel; -using FlatSharp; - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshProperty; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MeshEntries; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SpeciesModelProperties; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class MaterialEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class GFBPokeConfig -{ - public AABB Bounds => new() { Min = new() { X = MinBX / 100, Y = MinBY / 100, Z = MinBZ / 100 }, Max = new() { X = MaxBX / 100, Y = MaxBY / 100, Z = MaxBZ / 100 } }; -} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleLevelArchive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleLevelArchive.cs deleted file mode 100644 index 1e1716d8..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Nest/NestHoleLevelArchive.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.ComponentModel; -using FlatSharp.Attributes; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleLevelArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleLevelTable; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class NestHoleLevel; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ArchiveContent.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ArchiveContent.cs deleted file mode 100644 index ebf49db2..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ArchiveContent.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// archive_contents.bin -- 7707 entry table (file, files) -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ArchiveContents; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ArchiveContent; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/PokeResourceTable.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/PokeResourceTable.cs deleted file mode 100644 index 63cffa49..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/PokeResourceTable.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; - -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -// ReSharper disable AutoPropertyCanBeMadeGetOnly.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// poke_resource_table.gfbpmcatalog -/// for Sword/Shield -[TypeConverter(typeof(ExpandableObjectConverter))] -partial class GFBpmcatalog; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Rental.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Rental.cs deleted file mode 100644 index 81aca745..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Rental.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class RentalArchive; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Rental -{ - public Species SpeciesID => (Species)Species; -} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ScriptMeta.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ScriptMeta.cs deleted file mode 100644 index 44855c9e..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/ScriptMeta.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// script_id_record.bin -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ScriptMeta; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class ScriptMetaEntry; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/SymbolBehavior.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/SymbolBehavior.cs deleted file mode 100644 index 4830d443..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/SymbolBehavior.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// symbol_encount_mons_param.bin -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SymbolBehaveRoot; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class SymbolBehave -{ - public Species Species => (Species)SpeciesID; -} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Waza.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Waza.cs deleted file mode 100644 index c15e7766..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/Waza.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class Waza8; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/WeatherEntry.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/WeatherEntry.cs deleted file mode 100644 index 396a5377..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Other/WeatherEntry.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// field\param\weather\weather_data.bin -// field\param\weather\weather_data_alt.bin -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class WeatherTable; -public partial class WeatherEntry; -public partial class PentaFloat; -public partial class QuadFloatSet; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8Archive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8Archive.cs deleted file mode 100644 index 1eba7775..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8Archive.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneArchive; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F04.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F04.cs deleted file mode 100644 index 05ec855e..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F04.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementArea_F04; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F24.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F24.cs deleted file mode 100644 index f131a725..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/PlacementArea8_F24.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementArea_F24 -{ - public override string ToString() => $"{Field00}, {Field02}: {Field01}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementAreaUnknownTiny -{ - public override string ToString() => $"{Field00}, {Field01}, {Field02}"; -} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneAdvancedTipHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneAdvancedTipHolder.cs deleted file mode 100644 index 6c75edcb..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneAdvancedTipHolder.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneAdvancedTipHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneAdvancedTip; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F14; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F14_B; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F14_Union; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F14_Sub; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneBerryTreeHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneBerryTreeHolder.cs deleted file mode 100644 index 39c39087..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneBerryTreeHolder.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneBerryTreeHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F22_0; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F22_0_0; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F22_Sub; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F22_BoolObject14; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F22_Inner; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneBerryTreeRandom; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneEnvironmentHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneEnvironmentHolder.cs deleted file mode 100644 index 6d4890c8..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneEnvironmentHolder.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneEnvironmentHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F10; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFieldItemHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFieldItemHolder.cs deleted file mode 100644 index 0f5f1d26..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFieldItemHolder.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFieldItemHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFieldItem; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFieldItem_A; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs deleted file mode 100644 index 80c73c0a..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFishingPointHolder.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFishingPointHolder -{ - public override string ToString() => $"{Object.Identifier}" + (Object.IterateForSlotsExceptLastN == 0 ? "" : $" SkipLast{Object.IterateForSlotsExceptLastN}"); -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFishingPoint; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFlightAnchorHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFlightAnchorHolder.cs deleted file mode 100644 index 8d5d8226..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneFlightAnchorHolder.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// player flying to location -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFlightAnchorHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneFlightAnchor; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneHiddenItemHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneHiddenItemHolder.cs deleted file mode 100644 index 76490adc..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneHiddenItemHolder.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneHiddenItemHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneHiddenItem; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneHiddenItemValue; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneHiddenItemChance; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneIKStepHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneIKStepHolder.cs deleted file mode 100644 index baeae05a..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneIKStepHolder.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// IK_Step -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneIKStepHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F25; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F25_X; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneLadderHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneLadderHolder.cs deleted file mode 100644 index 682ab123..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneLadderHolder.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneLadderHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneLadder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F23_Sub; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs deleted file mode 100644 index 08c6d0a5..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneMovementPathHolder.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneMovementPathHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_V3f -{ - public string Location3f => $"({LocationX}, {LocationY}, {LocationZ})"; - - public override string ToString() => Location3f; -} diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNPCHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNPCHolder.cs deleted file mode 100644 index aeb26770..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNPCHolder.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneNPCHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneNPC; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNestHoleHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNestHoleHolder.cs deleted file mode 100644 index 09476db7..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneNestHoleHolder.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneNestHoleHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F21_A; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F21_B; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F21_IntFloat; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F21_BoolObject14; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F21_Inner; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs deleted file mode 100644 index 2a09e066..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneParticleHolder.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneParticleHolder -{ - public override string ToString() => Field00.ParticleFile; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneParticle; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePokeCenterSpawnAnchorHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePokeCenterSpawnAnchorHolder.cs deleted file mode 100644 index 27661ef0..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePokeCenterSpawnAnchorHolder.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZonePokeCenterSpawnAnchorHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F12; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePopupHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePopupHolder.cs deleted file mode 100644 index ce45be6f..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZonePopupHolder.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.ComponentModel; -using FlatSharp.Attributes; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZonePopupHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F24; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F24_Table; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F24_IntFloat; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneQuadrantHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneQuadrantHolder.cs deleted file mode 100644 index af966506..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneQuadrantHolder.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// highplace? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneQuadrantHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F17; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F17_Sub; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneRotomRallyEntry.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneRotomRallyEntry.cs deleted file mode 100644 index c58129c0..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneRotomRallyEntry.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// No maps have data for this. -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneRotomRallyEntry; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs deleted file mode 100644 index fdd829ba..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSpeciesHolder.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneSpeciesHolder -{ - public override string ToString() => $"{(Species)Species}{(Form != 0 ? $"-{Form}" : "")}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F02_Nine; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F02; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F02_Field1; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F02_Inner; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F02_IntFloat; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStepJumpHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStepJumpHolder.cs deleted file mode 100644 index 8a5ecb5c..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneStepJumpHolder.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneStepJumpHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneStepJump; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSymbolSpawnHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSymbolSpawnHolder.cs deleted file mode 100644 index 933ec5c2..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneSymbolSpawnHolder.cs +++ /dev/null @@ -1,18 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// wild encounter spawner? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneSymbolSpawnHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneSymbolSpawn; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F20_Sub; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs deleted file mode 100644 index 3d84559e..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerHolder.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneTrainerHolder -{ - public override string ToString() - { - var hashModel = Field00.Field00.HashModel; - var name = PlacementZoneOtherNPCHolder.Models.TryGetValue(hashModel, out var model) ? model : hashModel.ToString("X16"); - return name; - } -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F08_ArrayEntry; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F08_Nine; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F08; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F08_A; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F08_IntFloat; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerTipHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerTipHolder.cs deleted file mode 100644 index 3f7ca07e..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTrainerTipHolder.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneTrainerTipHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneTrainerTip; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F09; - -// union? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F09_Union; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZone_F09_Sub; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTriggerHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTriggerHolder.cs deleted file mode 100644 index d91f9c39..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneTriggerHolder.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// Trigger tiles? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneTriggerHolder; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneTrigger; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneDeepX; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneDeepY; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs deleted file mode 100644 index 18230ca5..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneUnitObjectHolder.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -// Gates, Elevators, Tents, Flags, FossilRepair? -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneUnitObjectHolder -{ - public override string ToString() => Object.NameModel; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneUnitObject; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneUnitObjectDetails; - -// probably a union, with only 1 object type used -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneUnitObjectToggle; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneUnitObjectInner; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs deleted file mode 100644 index d6d79df7..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Placement/Zone/Holders/PlacementZoneWarpHolder.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneWarpHolder -{ - public override string ToString() => $"{Field00.NameAreaOther} via {Field00.NameModel}"; -} - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneWarp8; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class PlacementZoneWarpDetails8; diff --git a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterArchive.cs b/pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterArchive.cs deleted file mode 100644 index b17e668a..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/Gen8/Wild/EncounterArchive.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System.ComponentModel; -// ReSharper disable UnusedAutoPropertyAccessor.Global -// ReSharper disable ClassNeverInstantiated.Global -// ReSharper disable MemberCanBePrivate.Global -// ReSharper disable UnusedType.Global -// ReSharper disable UnusedMember.Global -#nullable disable - -namespace pkNX.Structures.FlatBuffers.SWSH; - -[TypeConverter(typeof(ExpandableObjectConverter))] -public partial class EncounterArchive; -public partial class EncounterTable; -public partial class EncounterSubTable; -public partial class EncounterSlot; diff --git a/pkNX.Structures.FlatBuffers.SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj b/pkNX.Structures.FlatBuffers.SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj deleted file mode 100644 index f27511b1..00000000 --- a/pkNX.Structures.FlatBuffers.SWSH/pkNX.Structures.FlatBuffers.SWSH.csproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - net8.0 - enable - enable - - - - - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - GreedyMutable - true - - - - - ..\pkNX.Structures.FlatBuffers\Schemas\ - - - - - - - diff --git a/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj b/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj deleted file mode 100644 index 5fb25655..00000000 --- a/pkNX.Structures.FlatBuffers/pkNX.Structures.FlatBuffers.csproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - net8.0 - Data Structures - With FlatBuffers! - enable - enable - - - - - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - true - - - - - Schemas\ - - - - - - - diff --git a/pkNX.Structures/pkNX.Structures.csproj b/pkNX.Structures/pkNX.Structures.csproj index ba4f0f40..0e75ddf1 100644 --- a/pkNX.Structures/pkNX.Structures.csproj +++ b/pkNX.Structures/pkNX.Structures.csproj @@ -1,7 +1,6 @@ - net8.0 Data Structures diff --git a/pkNX.Tests/pkNX.Tests.FileSystem/pkNX.Tests.FileSystem.csproj b/pkNX.Tests/pkNX.Tests.FileSystem/pkNX.Tests.FileSystem.csproj index 08934908..bf130be9 100644 --- a/pkNX.Tests/pkNX.Tests.FileSystem/pkNX.Tests.FileSystem.csproj +++ b/pkNX.Tests/pkNX.Tests.FileSystem/pkNX.Tests.FileSystem.csproj @@ -1,17 +1,17 @@ - net8.0 Ensuring functionality works as intended + true false - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/pkNX.Tests/pkNX.Tests.SourceGen/InsertedAttributeTests.cs b/pkNX.Tests/pkNX.Tests.SourceGen/InsertedAttributeTests.cs new file mode 100644 index 00000000..7bc3907a --- /dev/null +++ b/pkNX.Tests/pkNX.Tests.SourceGen/InsertedAttributeTests.cs @@ -0,0 +1,23 @@ +using System.ComponentModel; +using FluentAssertions; +using pkNX.Structures.FlatBuffers; +using pkNX.Structures.FlatBuffers.Arceus; + +namespace pkNX.Tests.SourceGen; + +public class InsertedAttributeTests +{ + [Fact] + public void IsAttributeInserted() + { + var converter = TypeDescriptor.GetConverter(typeof(Vec2f)); + converter.Should().BeOfType("Attribute should be inserted."); + } + + [Fact] + public void IsAttributeInserted2() + { + var converter = TypeDescriptor.GetConverter(typeof(PlacementParameters)); + converter.Should().BeOfType("Attribute should be inserted."); + } +} diff --git a/pkNX.Tests/pkNX.Tests.SourceGen/pkNX.Tests.SourceGen.csproj b/pkNX.Tests/pkNX.Tests.SourceGen/pkNX.Tests.SourceGen.csproj new file mode 100644 index 00000000..3a46e59f --- /dev/null +++ b/pkNX.Tests/pkNX.Tests.SourceGen/pkNX.Tests.SourceGen.csproj @@ -0,0 +1,26 @@ + + + + false + true + + + + + + + + + + + + + + + + + + + + + diff --git a/pkNX.Tests/pkNX.Tests.Trinity/pkNX.Tests.Trinity.csproj b/pkNX.Tests/pkNX.Tests.Trinity/pkNX.Tests.Trinity.csproj index 88ed0959..af86a447 100644 --- a/pkNX.Tests/pkNX.Tests.Trinity/pkNX.Tests.Trinity.csproj +++ b/pkNX.Tests/pkNX.Tests.Trinity/pkNX.Tests.Trinity.csproj @@ -1,24 +1,24 @@ - net8.0 Ensuring functionality works as intended + true false - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/pkNX.WinForms/Subforms/GenericEditor.Designer.cs b/pkNX.WinForms/Subforms/GenericEditor/GenericEditor.Designer.cs similarity index 100% rename from pkNX.WinForms/Subforms/GenericEditor.Designer.cs rename to pkNX.WinForms/Subforms/GenericEditor/GenericEditor.Designer.cs diff --git a/pkNX.WinForms/Subforms/GenericEditor.cs b/pkNX.WinForms/Subforms/GenericEditor/GenericEditor.cs similarity index 97% rename from pkNX.WinForms/Subforms/GenericEditor.cs rename to pkNX.WinForms/Subforms/GenericEditor/GenericEditor.cs index 399fa322..924bfc67 100644 --- a/pkNX.WinForms/Subforms/GenericEditor.cs +++ b/pkNX.WinForms/Subforms/GenericEditor/GenericEditor.cs @@ -21,6 +21,8 @@ public GenericEditor(DataCache Cache, string[] names, string title, Action? r public GenericEditor(Func, DataCache> loadCache, Func nameSelector, string title, Action>? randomizeCallback = null, Action? addEntryCallback = null, bool canSave = true) { InitializeComponent(); + + TypeRegistrationHelper.RegisterIListConvertersRecursively(typeof(T)); Text = title; Cache = loadCache(this); diff --git a/pkNX.WinForms/Subforms/GenericEditor/TypeRegistrationHelper.cs b/pkNX.WinForms/Subforms/GenericEditor/TypeRegistrationHelper.cs new file mode 100644 index 00000000..3cd02d3e --- /dev/null +++ b/pkNX.WinForms/Subforms/GenericEditor/TypeRegistrationHelper.cs @@ -0,0 +1,180 @@ +// This is free and unencumbered software released into the public domain. +// +// Anyone is free to copy, modify, publish, use, compile, sell, or +// distribute this software, either in source code form or as a compiled +// binary, for any purpose, commercial or non-commercial, and by any +// means. +// +// In jurisdictions that recognize copyright laws, the author or authors +// of this software dedicate any and all copyright interest in the +// software to the public domain.We make this dedication for the benefit +// of the public at large and to the detriment of our heirs and +// successors. We intend this dedication to be an overt act of +// relinquishment in perpetuity of all present and future rights to this +// software under copyright law. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +// IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +// OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +// OTHER DEALINGS IN THE SOFTWARE. +// +// For more information, please refer to + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Linq; +using System.Reflection; +using System.Threading; + +namespace pkNX.WinForms; + +public static class TypeRegistrationHelper +{ + // Keep track of types we’ve already processed. + private static readonly HashSet RegisteredTypes = []; + private static readonly Lock LockObj = new(); + + /// + /// Scans the type (and its nested types) for any properties of type IList<> + /// and registers a custom type descriptor provider for types that have such properties. + /// + public static void RegisterIListConvertersRecursively(Type type) + { + lock (LockObj) + { + if (!RegisteredTypes.Add(type)) + return; + } + + // Check each public instance property. + foreach (var prop in type.GetProperties(BindingFlags.Public | BindingFlags.Instance)) + { + var propType = prop.PropertyType; + + // Is it a generic type and exactly an IList<> + if (propType.IsGenericType && propType.GetGenericTypeDefinition() == typeof(IList<>)) + { + // For this type, add our custom provider that overrides the IList property converter. + // (The provider itself will decide which property to wrap based on its name or other criteria.) + TypeDescriptor.AddProvider(new DynamicListTypeDescriptionProvider(type), type); + + // Also, register for the element type in case it in turn contains IList<> properties. + var elementType = propType.GetGenericArguments()[0]; + if (elementType.IsClass && elementType != typeof(string)) + RegisterIListConvertersRecursively(elementType); + } + else if (propType.IsClass && propType != typeof(string)) + { + // Also check non-list properties recursively. + RegisterIListConvertersRecursively(propType); + } + } + } +} +public class DynamicListTypeDescriptionProvider(Type type) + : TypeDescriptionProvider(TypeDescriptor.GetProvider(type)) +{ + private readonly TypeDescriptionProvider _baseProvider = TypeDescriptor.GetProvider(type); + + public override ICustomTypeDescriptor GetTypeDescriptor(Type objectType, object? instance) + { + var baseDescriptor = _baseProvider.GetTypeDescriptor(objectType, instance); + return new DynamicListTypeDescriptor(baseDescriptor); + } +} + +public class DynamicListTypeDescriptor(ICustomTypeDescriptor? parent) + : CustomTypeDescriptor(parent) +{ + public override PropertyDescriptorCollection GetProperties(Attribute[]? attributes) + { + var originalProps = base.GetProperties(attributes); + List newProps = []; + + foreach (PropertyDescriptor pd in originalProps) + { + // Check if this is our target property. + // For example, check by name or by type. + var type = pd.PropertyType; + if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(IList<>)) + { + // Wrap the property descriptor with one that supplies a custom type converter. + newProps.Add(new DynamicListPropertyDescriptor(pd)); + } + else + { + newProps.Add(pd); + } + } + + return new PropertyDescriptorCollection(newProps.ToArray(), true); + } +} + +public class DynamicListPropertyDescriptor(PropertyDescriptor baseDescriptor) + : PropertyDescriptor(baseDescriptor) +{ + public override bool CanResetValue(object component) => baseDescriptor.CanResetValue(component); + public override Type ComponentType => baseDescriptor.ComponentType; + public override object? GetValue(object? component) => baseDescriptor.GetValue(component); + public override bool IsReadOnly => baseDescriptor.IsReadOnly; + public override Type PropertyType => baseDescriptor.PropertyType; + public override void ResetValue(object component) => baseDescriptor.ResetValue(component); + public override void SetValue(object? component, object? value) => baseDescriptor.SetValue(component, value); + public override bool ShouldSerializeValue(object component) => baseDescriptor.ShouldSerializeValue(component); + + public override TypeConverter Converter + { + get + { + // Get the element type (T) from IList + var elementType = PropertyType.GetGenericArguments().FirstOrDefault(); + if (elementType == null) + return baseDescriptor.Converter; + + // Create an instance of our custom converter, e.g. ListTypeConverter. + var converterType = typeof(ListTypeConverter<>).MakeGenericType(elementType); + if (Activator.CreateInstance(converterType) is TypeConverter converter) + return converter; + return baseDescriptor.Converter; + } + } +} + +public class ListTypeConverter : ExpandableObjectConverter +{ + public override bool GetPropertiesSupported(ITypeDescriptorContext? context) + { + // We want the properties (the list items) to be shown in the grid. + return true; + } + + public override PropertyDescriptorCollection GetProperties(ITypeDescriptorContext? context, object value, Attribute[]? attributes) + { + if (value is not IList list) + return base.GetProperties(context, value, attributes); + + var props = new PropertyDescriptor[list.Count]; + for (int i = 0; i < list.Count; i++) + props[i] = new ListItemPropertyDescriptor(list, i); + + return new PropertyDescriptorCollection(props); + } +} + +public class ListItemPropertyDescriptor(IList list, int index) + : PropertyDescriptor($"[{index}]", null) +{ + public override object? GetValue(object? component) => list[index]; + public override void SetValue(object? component, object? value) => list[index] = (T?)value; + public override bool IsReadOnly => false; + public override Type ComponentType => list.GetType(); + public override bool CanResetValue(object component) => false; + public override Type PropertyType => typeof(T); + public override void ResetValue(object component) { } + public override bool ShouldSerializeValue(object component) => true; +} diff --git a/pkNX.WinForms/Subforms/ModelConverter.cs b/pkNX.WinForms/Subforms/ModelConverter.cs index de4835a3..994463c7 100644 --- a/pkNX.WinForms/Subforms/ModelConverter.cs +++ b/pkNX.WinForms/Subforms/ModelConverter.cs @@ -112,13 +112,6 @@ public ModelConverter(GameManager rom) CB_SWSHSpecies.SelectedIndex = 1; } - [FlatBufferTable, TypeConverter(typeof(ExpandableObjectConverter))] - public class MeshMaterialWrapper - { - [FlatBufferItem(0)] public string Name { get; set; } = string.Empty; - [FlatBufferItem(1)] public Material[] Materials { get; set; } = []; - } - [FlatBufferTable, TypeConverter(typeof(ExpandableObjectConverter))] public class PokemonModelGfpak { @@ -130,7 +123,6 @@ public class PokemonModelGfpak [FlatBufferItem(5)] public Material[] DefaultMaterials { get; set; } = []; [FlatBufferItem(6)] public MeshMaterialWrapper[] MeshMaterials { get; set; } = []; [FlatBufferItem(7)] public Skeleton Skeleton { get; set; } = new(); - [FlatBufferItem(8)] public string[] UsedTextures { get; set; } = []; } diff --git a/pkNX.WinForms/Subforms/PokeDataUI8a.cs b/pkNX.WinForms/Subforms/PokeDataUI8a.cs index 985ee20e..a8a36fd4 100644 --- a/pkNX.WinForms/Subforms/PokeDataUI8a.cs +++ b/pkNX.WinForms/Subforms/PokeDataUI8a.cs @@ -86,7 +86,7 @@ public PokeDataUI8a(PokeEditor8a editor, GameManager rom, GameData8a data) InitLearn(); InitEvo(); - CB_HatchSpecies.Items.AddRange(speciesNames.ToArray()); + CB_HatchSpecies.Items.AddRange([.. speciesNames]); CB_Species.SelectedIndex = 1; Loaded = true; @@ -121,10 +121,10 @@ private void InitPersonal() cb.Items.AddRange(types); foreach (ComboBox cb in eggGroup_boxes) - cb.Items.AddRange(Enum.GetNames(typeof(EggGroup))); + cb.Items.AddRange(Enum.GetNames()); - CB_Color.Items.AddRange(Enum.GetNames(typeof(PokeColor))); - CB_EXPGroup.Items.AddRange(Enum.GetNames(typeof(EXPGroup))); + CB_Color.Items.AddRange(Enum.GetNames()); + CB_EXPGroup.Items.AddRange(Enum.GetNames()); } private void InitLearn() @@ -158,7 +158,7 @@ private void InitLearn() FlatStyle = FlatStyle.Flat, }; dgvMove.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft; - dgvMove.Items.AddRange(movelist.ToImmutableSortedSet().ToArray()); // add only the Names + dgvMove.Items.AddRange(movelist.ToImmutableSortedSet().ToArray()); // add only the Names dgv.Columns.Add(dgvLevel); dgv.Columns.Add(dgvLevelMastery); @@ -198,7 +198,7 @@ private void LoadIndex(int index) var evoTable = Editor.Evolve.Root.Table; LoadEvolutions(evoTable.First(x => x.Species == spec && x.Form == form)); - Bitmap rawImg = (Bitmap)SpriteUtil.GetSprite((ushort)spec, (byte)form, 0, 0, 0, false, PKHeX.Core.Shiny.Never); + Bitmap rawImg = SpriteUtil.GetSprite((ushort)spec, (byte)form, 0, 0, 0, false, PKHeX.Core.Shiny.Never); Bitmap bigImg = ResizeBitmap(rawImg, rawImg.Width * 2, rawImg.Height * 2); PB_MonSprite.Image = bigImg; } @@ -388,9 +388,7 @@ private bool SavePersonal() allValid |= ValidateRegionalDexIndex(); if (!allValid) - { return false; - } var pkm = cPersonal; pkm.HP = Util.ToInt32(TB_BaseHP.Text); @@ -522,7 +520,7 @@ private bool SaveLearnset() }); } - pkm.Arceus = entries.ToArray(); + pkm.Arceus = [.. entries]; return true; } @@ -531,7 +529,10 @@ private void LoadEvolutions(EvolutionSet s) { cEvos = s; - var numPossibleEvos = cEvos.Table.Count; + var evos = cEvos.Table; + if (evos is null) + return; + var numPossibleEvos = evos.Count; flowLayoutPanel1.SuspendLayout(); flowLayoutPanel1.Controls.Clear(); @@ -544,7 +545,7 @@ private void LoadEvolutions(EvolutionSet s) flowLayoutPanel1.SetFlowBreak(row, true); EvoRows[i] = row; - row.LoadEvolution(cEvos.Table[i]); + row.LoadEvolution(evos[i]); } flowLayoutPanel1.ResumeLayout(); } @@ -552,7 +553,7 @@ private void LoadEvolutions(EvolutionSet s) private bool SaveEvolutions() { var s = cEvos; - Debug.Assert(EvoRows.Length == s.Table.Count); + Debug.Assert(s.Table?.Count == EvoRows.Length); foreach (var row in EvoRows) row.SaveEvolution(); @@ -607,9 +608,7 @@ private void AutoFillEvolutions() var form = evoSet.Form; if (species > Legal.MaxSpeciesID_8) - { continue; - } int index = swshPersonal.GetFormIndex(species, (byte)form); if (index == 0) @@ -634,7 +633,7 @@ private void AutoFillEvolutions() Level = evo.Level, }); } - evoSet.Table = entries.ToArray(); + evoSet.Table = [.. entries]; } } @@ -819,7 +818,7 @@ private void B_AddTask_Click(object sender, EventArgs e) private void B_CloneTask_Click(object sender, EventArgs e) { - Debug.Assert(PG_DexResearchTasks.SelectedGridItem.Value is PokedexResearchTask); + Debug.Assert(PG_DexResearchTasks.SelectedGridItem?.Value is PokedexResearchTask); var task = (PokedexResearchTask)PG_DexResearchTasks.SelectedGridItem.Value; Data.DexResearch.Root.AddTask(task); @@ -828,7 +827,7 @@ private void B_CloneTask_Click(object sender, EventArgs e) private void B_DeleteTask_Click(object sender, EventArgs e) { - Debug.Assert(PG_DexResearchTasks.SelectedGridItem.Value is PokedexResearchTask); + Debug.Assert(PG_DexResearchTasks.SelectedGridItem?.Value is PokedexResearchTask); var task = (PokedexResearchTask)PG_DexResearchTasks.SelectedGridItem.Value; Data.DexResearch.Root.RemoveTask(task); diff --git a/pkNX.WinForms/UI/PokemonEditor.xaml.cs b/pkNX.WinForms/UI/PokemonEditor.xaml.cs index e35fd7a7..7d5ea4dc 100644 --- a/pkNX.WinForms/UI/PokemonEditor.xaml.cs +++ b/pkNX.WinForms/UI/PokemonEditor.xaml.cs @@ -94,7 +94,7 @@ private void LoadSelectedSpecies() IC_EvolutionsItems.ItemsSource = Editor.Evolve.Root.Table.FirstOrDefault(x => x is not null && x.Species == SelectedSpecies && x.Form == SelectedForm, default)?.Table; - Bitmap rawImg = (Bitmap)SpriteUtil.GetSprite(SelectedSpecies, SelectedForm, 0, 0, 0, false, PKHeX.Core.Shiny.Never); + Bitmap rawImg = SpriteUtil.GetSprite(SelectedSpecies, SelectedForm, 0, 0, 0, false, PKHeX.Core.Shiny.Never); Bitmap bigImg = Utils.ResizeBitmap(rawImg, rawImg.Width * 2, rawImg.Height * 2); IMG_MonSprite.Source = Utils.ImageSourceFromBitmap(bigImg); @@ -106,9 +106,7 @@ public bool SaveCurrent() allValid |= ValidateRegionalDexIndex(); if (!allValid) - { return false; - } var pkm = cPersonal; pkm.HP = Util.ToInt32(TB_BaseHP.Text); @@ -391,23 +389,18 @@ private void AutoFillEvolutions() for (int i = 0; i < la.Length; i++) { var evoSet = la[i]; - if (evoSet.Table != null && evoSet.Table.Count != 0) + if (evoSet.Table is not { Count: > 0 }) continue; var species = evoSet.Species; var form = evoSet.Form; if (species > Legal.MaxSpeciesID_8) - { continue; - } int index = swshPersonal.GetFormIndex(species, (byte)form); if (index == 0) - { - // Assume the form doesn't exsist in the game - continue; - } + continue; // Assume the form doesn't exist in the game var swshEvos = swsh[index]; var entries = new List(); diff --git a/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.deps.json b/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.deps.json index cbd13ebf..2117cf66 100644 --- a/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.deps.json +++ b/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.deps.json @@ -1,104 +1,132 @@ { "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", + "name": ".NETCoreApp,Version=v9.0", "signature": "" }, "compilationOptions": {}, "targets": { - ".NETCoreApp,Version=v8.0": { - "PKHeX.Drawing.PokeSprite/24.05.05": { + ".NETCoreApp,Version=v9.0": { + "PKHeX.Drawing.PokeSprite/24.11.11": { "dependencies": { - "PKHeX.Core": "24.5.5", - "PKHeX.Drawing": "24.5.5", - "System.Resources.Extensions": "8.0.0" + "PKHeX.Core": "24.11.11", + "PKHeX.Drawing": "24.11.11", + "System.Resources.Extensions": "9.0.0" }, "runtime": { "PKHeX.Drawing.PokeSprite.dll": {} } }, - "Microsoft.Win32.SystemEvents/8.0.0": { + "Microsoft.Win32.SystemEvents/9.0.0": { "runtime": { - "lib/net8.0/Microsoft.Win32.SystemEvents.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.23.53103" + "lib/net9.0/Microsoft.Win32.SystemEvents.dll": { + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52809" } }, "runtimeTargets": { - "runtimes/win/lib/net8.0/Microsoft.Win32.SystemEvents.dll": { + "runtimes/win/lib/net9.0/Microsoft.Win32.SystemEvents.dll": { "rid": "win", "assetType": "runtime", - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.23.53103" + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52809" } } }, - "System.Drawing.Common/8.0.0": { + "System.Drawing.Common/9.0.0": { "dependencies": { - "Microsoft.Win32.SystemEvents": "8.0.0" + "Microsoft.Win32.SystemEvents": "9.0.0" }, "runtime": { - "lib/net8.0/System.Drawing.Common.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.23.53105" + "lib/net9.0/System.Drawing.Common.dll": { + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52901" + }, + "lib/net9.0/System.Private.Windows.Core.dll": { + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52901" } } }, - "System.Resources.Extensions/8.0.0": { + "System.Formats.Nrbf/9.0.0": { "runtime": { - "lib/net8.0/System.Resources.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.23.53103" + "lib/net9.0/System.Formats.Nrbf.dll": { + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52809" } } }, - "PKHeX.Core/24.5.5": { - "runtime": { - "PKHeX.Core.dll": {} - } - }, - "PKHeX.Drawing/24.5.5": { + "System.Resources.Extensions/9.0.0": { "dependencies": { - "System.Drawing.Common": "8.0.0" + "System.Formats.Nrbf": "9.0.0" }, "runtime": { - "PKHeX.Drawing.dll": {} + "lib/net9.0/System.Resources.Extensions.dll": { + "assemblyVersion": "9.0.0.0", + "fileVersion": "9.0.24.52809" + } + } + }, + "PKHeX.Core/24.11.11": { + "runtime": { + "PKHeX.Core.dll": { + "assemblyVersion": "24.11.11", + "fileVersion": "24.11.11.0" + } + } + }, + "PKHeX.Drawing/24.11.11": { + "dependencies": { + "System.Drawing.Common": "9.0.0" + }, + "runtime": { + "PKHeX.Drawing.dll": { + "assemblyVersion": "24.11.11", + "fileVersion": "24.11.11.0" + } } } } }, "libraries": { - "PKHeX.Drawing.PokeSprite/24.05.05": { + "PKHeX.Drawing.PokeSprite/24.11.11": { "type": "project", "serviceable": false, "sha512": "" }, - "Microsoft.Win32.SystemEvents/8.0.0": { + "Microsoft.Win32.SystemEvents/9.0.0": { "type": "package", "serviceable": true, - "sha512": "sha512-9opKRyOKMCi2xJ7Bj7kxtZ1r9vbzosMvRrdEhVhDz8j8MoBGgB+WmC94yH839NPH+BclAjtQ/pyagvi/8gDLkw==", - "path": "microsoft.win32.systemevents/8.0.0", - "hashPath": "microsoft.win32.systemevents.8.0.0.nupkg.sha512" + "sha512": "sha512-z8FfGIaoeALdD+KF44A2uP8PZIQQtDGiXsOLuN8nohbKhkyKt7zGaZb+fKiCxTuBqG22Q7myIAioSWaIcOOrOw==", + "path": "microsoft.win32.systemevents/9.0.0", + "hashPath": "microsoft.win32.systemevents.9.0.0.nupkg.sha512" }, - "System.Drawing.Common/8.0.0": { + "System.Drawing.Common/9.0.0": { "type": "package", "serviceable": true, - "sha512": "sha512-JkbHJjtI/dWc5dfmEdJlbe3VwgZqCkZRtfuWFh5GOv0f+gGCfBtzMpIVkmdkj2AObO9y+oiOi81UGwH3aBYuqA==", - "path": "system.drawing.common/8.0.0", - "hashPath": "system.drawing.common.8.0.0.nupkg.sha512" + "sha512": "sha512-uoozjI3+dlgKh2onFJcz8aNLh6TRCPlLSh8Dbuljc8CdvqXrxHOVysJlrHvlsOCqceqGBR1wrMPxlnzzhynktw==", + "path": "system.drawing.common/9.0.0", + "hashPath": "system.drawing.common.9.0.0.nupkg.sha512" }, - "System.Resources.Extensions/8.0.0": { + "System.Formats.Nrbf/9.0.0": { "type": "package", "serviceable": true, - "sha512": "sha512-psnQ6GRQOvt+evda5C4nD5EuV49mz2Tv0DD2JDVDEbE/TKoMukxSkGJcsBJ0pajpPuFRr67syFYlkJ4Wj6A5Zw==", - "path": "system.resources.extensions/8.0.0", - "hashPath": "system.resources.extensions.8.0.0.nupkg.sha512" + "sha512": "sha512-F/6tNE+ckmdFeSQAyQo26bQOqfPFKEfZcuqnp4kBE6/7jP26diP+QTHCJJ6vpEfaY6bLy+hBLiIQUSxSmNwLkA==", + "path": "system.formats.nrbf/9.0.0", + "hashPath": "system.formats.nrbf.9.0.0.nupkg.sha512" }, - "PKHeX.Core/24.5.5": { + "System.Resources.Extensions/9.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-tvhuT1D2OwPROdL1kRWtaTJliQo0WdyhvwDpd8RM997G7m3Hya5nhbYhNTS75x6Vu+ypSOgL5qxDCn8IROtCxw==", + "path": "system.resources.extensions/9.0.0", + "hashPath": "system.resources.extensions.9.0.0.nupkg.sha512" + }, + "PKHeX.Core/24.11.11": { "type": "project", "serviceable": false, "sha512": "" }, - "PKHeX.Drawing/24.5.5": { + "PKHeX.Drawing/24.11.11": { "type": "project", "serviceable": false, "sha512": "" diff --git a/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.dll b/pkNX.WinForms/deps/PKHeX.Drawing.PokeSprite.dll index d987d7e0389ba52dd3acf3abad7c8b30a69e37d6..02a8a0278ec85315d2cf80c9c7749ac11550abcc 100644 GIT binary patch delta 441681 zcmcG%4|r5*Uguj$sLDS=x;h=wG?NaQ3{9m&nqe}Lj+kW-5iugeBF0Q)nTU}^#B>S~ z5i@5HS;UBlS(ck+xhxx5E|*0_WMf1Yk&T#TS&W#=vWPK@$VF~0%jIG=vNZd9Pt~b< z&pGd(-}kxC?dKViR6d`2E9bm#z2|&7(|r4v{wn(IKY0@U^zjtH>AU z73X|868VdvNFp3rCz z@r-{t)Hj&(VG)@T8Y}W&hx*2IsuxVrlZ$`8kN%e%iAH|+TQeemvLPDDaUYFDe&Npx zBVU{U+hUB`zOU#0?su1cIWMx3zDYnllGimS5-FPVdCu(5bBbaMbL$r8=5>8Q5A~GO zpt*a*pH<)ac}{Wu!V3D%T>8$pzR>qc-t3ulM8wO8SJdZ3`hFm9PR-2si|PvI6xGd` zT~rqlkH$VO`*Ln%q0D_duiTkA?=3w3Uj-@MhARm-PTzJ za~g{B=KUhQ;LmgFa%PtlE-X#GvP26J@8s5fIIG|TflPWx*^Ky%g#|MbKj3~pH*ZFC z){I&CiAoyRnN^UWlMyS*jpfaX&Wg>-rw4w}9Vt@qF};YgFGnLkP9N!z$0M_5&{3Hs zo?!Opd5I0;>2m1PTzY{sbMr_~tal%q6?LC{X2HTlWLETphEn>@hcw!U?vYKs=)Cve ziRR7vQZ(^Ht`f;Bn^6~u&!D4}ANgJyFzWvFGsvv!`)tO1rzkeR{+*A~FJ27w56LU8 zi{#U*6wWqsXhPBvn~|7DV-@A*#l+7k&~*aMfA8}g_eezFD~r~BEr0gB)1KWp4SzeIl~<~#IfNq*t%*@=(nGkStZJo>Raa63Iqz8EM`DPZp_jw*ohG+pD$W;+{aGIkl=y|g*p(rK}LNp#-Sd`nfioQkc+*s<< z*|X{A761IzvP44sjH&Y>j_!=ezoMT%QYZ$W5lz(6cZ=LPUGYglT_pDYCo}8b%k5g8 zdcIF`yS_X1*_To;Vn!F8&-9C^qT?{XKL4ZKu4O64T^sQk#d+ytE{=R#ZdW6HH+34? zK4_<}8)*Dk+swSK)HxA<(xYD$50>QR7Zm!=3cccJ=qw$WAyX>g!|9mq<-F+b?%H8ZwPhd77I5)?+3AkF`DB)Ce|9w{$e`IiB@{FxX%6b zhuu#jGz-OHqT`mHxHVP#pRN17566}zXnq#Glao86i{6uBMR_!?`(oXxD;%0}DW~th z#VQ;zyVA3oo-rr#8}wcGpWH55&ani&8^t2IU3ud3FQh)FmEtZh@i5z!eOU38(MkGFui_d9>i_huw#u^fI0>l?(;v4kih|lS5FD8Br@i|T8 zn0WoM$j4vIP0)cViuCFyhHr)2j8luedFT~bHD9= zq?4NKZY6a7;)%0#7K+{7@>hy0o$sh9s{0DjW`LTF3cPFiuocf~NovX#iSY5&U zGig7aSvRAC)~O&0GW+ER-=aC|j^lo$aq=Scrt40`cO%&|LHk{1-sC1|1!d--BUW#2 z+w|&k6SU{m(K~J4?00giX72b3&8?zX)uyfn`ow+jDf)f2&N~EccIA&M-pP&BmFLlR=)M;hJM^v3Qs1H>YjWr9 zrc7 zC|U0OWF$9nj=oC#u6W3$a=X4?e4ct6pp!z+{f;;(xryJR$3wg7{QB5Oi5$AV%3KS~ zh|rJWo_%-!k*9$C){&dYjX2pk;BJyT#Xe0VmwmY~Lhr6Ls@Md?YtL@(v+}#vh!;W| zA6={zM1G29&AaXk+)1xh?DBcD>uB?8q61ZwoA^%pFf+G{-XLkxe3$!YGyO@M?mvh` z9D0m4!XmmZ_!@mk{5yK$lH8qi&{8v_Fdh}#YLPe*bP?C|Pv|w#o3MDYdDHZ1`sCKT zFVX#@i`Glb{hm93|M|Oq(0%@@mf7=uk?eP4&b#>)iD7y$5|6o;KJnD1OCQ7*OCM5K zKlHhnUYX0EqPkzm-ASi7r)*|?=EB1GOtIy=uTo5x`H{qS+GEQ~3gab(?!F!`aX+-Z z-=4mHDymzWyR(*#e@Q#W#v#;`*@n#Z>oTB40TRf+DGpEbQB@w!Y|LI(JmHp)Bxig)Dh54zkigRbonvv@+mk+*? zdMLl`8|8@~p)pJ9Hs#UA;@-u48i|Uzntcv;x1cu?v2e?x;#p>UPZN)RCcL`Z_q0HhWPRG ztA3oGN351FbKrb`( zk9$v8=)R))d5LfKop|>HC-nq%-!E=kyE=#$cTPV>AM0W>x;E2Cx)u9`9{O?dt^7o% z_)awO6ZC;jLVQN(rO;`QrQg=SNu$1>I=kYXm##3xyY|ci_g%Zdeb+8_a=W&OXU?mr z%XzQ>Udk^KW2Y>pU=PN{njnE1!^yhPLd zr0a$+(c@oFY^8@tPMxedHPeg#X3lTT|LaT35ZsI@C7sa_Fwn^Td0a}s*3 z*c80IZ3R8EcnM-}dq0wJ+^tD$ZqgfINkk+M_uW@)U?sVQ?$_@7Zb@PK%|Kja(wljN zeopsVDR*asdk_~E#kzLWASH$MGjn&+U9Gr^D66Zgi_DI7{XBgmv4{ScS@$mGj;>#z z<6l&<>Cfm|c(!*f{PA~s*C&ZTq*viymlV=@_=0PEqbAJmcA_>5yR7|6EZP-=|haZ^^5M8;+b>1_R*iI6D>VS zv3y2{sQOAi97VoqPj%lPu-965~J?N_Y;5Setai!*Zo+K7;`_S!{}FXyAFss;5~D0 zgg%Q@NoT0o6^cK-L62w7k{GM_Q@U02PJrVbA+eI^42i*tKmGL#P?b4^VxMqNk$9cO zb)P9tLFyEV*I!)sb;T)6og(pb71w<^_5D@;dE%X=KX;jucMCo*r%Q&Mc!7JmzL>iu z@qoVLZcBNQzoykX&pVdioU{2y#d#_Ebh~)?E&T-UQ>V^W(WkBA(Y@l)A@Rp^`oleI zMV~f{?;NJDtCr6b3po9-xU-#iL_EB%syea1uj+$2wW$IAJ3Z)rXWl9C?Kx>-LVWRA z)$*#(i0=4cwv(dW;r>Q^FHu#SMo)_`Yu(o;zmi`Q4=+nSYZ|TVnfLef=)6CqKhi%+ z-A}p>4YWJ;baibc{bxampE~{6$|~pURUPxhi%LK8)vB+Pvn>79N2w?2md3ApH%af| zbYkg(GUvS=zf4E-=iOvUdFY^+$?iJ=y$gu`M(+ewo87m9g2Z3AXR9zb@n76eBKaSG zM4d~#FGlE|RJ?sOk@Q6&eT%O8W>8S2w~#MJlJr*o*`JouWK8@D!Ck%d$Btj6KZ^6e zEw~g-Z`kRqo+Aolq{e+7x^kwQWSR?KjO2b>d_iyEd2Sf|lK4K|#!?|j(rNwdTjIN2 zhv;dGVyUQ{D&X|O`~vYOK>oaecT@vhH3%yHHpoBB^5Xd0f8xokz~bMqdB;r&$&wuG z6jXvdbuINNra~q5uFyHA^{y5)d<)38r+J4v>9&Cb?BVfFY8lY1?&S#?{y4~=Q}T{} znO#u|dj1y3KM=eFtovu+0MiWKiFofsbP5V{u}L=v{{u;(R$=jHa90U1rBkzRYdY>7E zF#j6l3-hEo=P-7^3Rz(A^8udr-&nE%5Cp#*n$#pm* z@c2_)-bwun{p2OCkmj$0{9O(2h+nf%or1?2LB~&leBlgt6*%mx-inmK=4)6y%|G`# zT&x0?kmZ+y{8|<77kiQw?X?)WK z$o-ID=AVK58wV6hqtfQV*bAyHyyLqYrB$%VA_VznkYDZR9qZk0t6#A4oe=NDk~<(F zmfQ>ShfTbr*!@nK1O^y}xgqH)$I*!fEc zFZ%yAL?HeS$UiXf%KrbvAgFfBmmnW4$Sg}*e~b%|cvfKXm25uU|7+Po>faYMg8XtF zuj~J7bb@BLYz6tvX`bExyTAeV@OY{J^MuUp`Z16nQ1XWUe@Q9m`~NkNzax00|33f+ zc*fv;{eOxf$h&1;VP+k(mSt&}H~0TJVZpdtE&%z4La_g@00&ra1UxAb(%xIsN~!EHHM<7XVNDZ!Gx+ z5CmUXgsuB>Jx}8+ibl0wQ1bO4-<08*{eNXf;PwA?T;A*d?OY+<|F?kr4h^sE|Bgn` z-LCh7{IL|z@Bahf02f$1%|EYbTww`W{wB!ZRq>|&|4=0u`u{VKpCTUW|9QpOx-YZy zbo`~;?<%|COj6x z%hUQ-U4X363Tl2W$hUhuxBqYR1ZMy5Ve*;&f0!wFyX7g6zoh2%{eM_3X#4*?kbmm( zbpE;h|1~&3NeN@s$o;>HBS^dDB9LFM;Enx%y+SbUmYpEKs|4)-2f+c3TY0hmr9*n& zD){+pAb%&w+xq`_P_Xp>=OFLA1%=XCj9D!m(JC_^?*EI-La6^Q1^HDzp3(o;`viOc z--Pg@|8GMC;&*}kJ_E1p|9u8QwOgJ9`LkJ`)*qv2T+RwC{yLja_y1A0km~;rL4H!l z>-zt+PSEuKXeqWV%hNo&|5t+pEavgq{@=_KGPmoiL4JdhH}wAwrJ(Qs+dzJo;F12n z4;!dPlk9J-&8cFLxP!)zKbo(xC08+AYX6cL;b(WA_V*YN|0ac=k5J}qhGN0 z|E&;D{eL$k#FG0#{)mZJ_5TwlL9tt&2l*k1XZ8OPN#NYBkMa3b|DWIsLiVh%Z|ncHLBZ1h8$sS#1_~`8-)iQ={eQDr2=)Iikl*9u8U6o&Pq6p@K7<$j|0E(1 ze-7ja4ZO1dUo!}*-SQU5k7apUe~h9rkri0{B%4q7|7o_6>i>o1*!x7ej@R}7`8q+< z{}+RNbDC%O|JC3CZ9G2P|2ug?=61asHX-o)|4ksjGQeB=|GI!+ z>;D@u-brr7gye3J-*4m<{r`wj2>1UJAb(coIsN~#EHHM<>i|#tZ!CEW5Cne@T;Y0nu-6910{}zzn;pgrBA3Z|7 z{sAoizJU7wF-V|)`wj9JO}wiAUo{De-Esuv$0VNB{~t>N=XU)CpHKDwH+*4ST!0kL z39e)FvMkr~wEk5WAk|ty&DVo`lgD%W{|ZlF_WyNEKGXj-zs@ouKLe^!Lv(?sl^`uY1xwyZ`S42ROvzv;DuHCuDBdPlNnLC2#2eSCxXk|BrzD znBbBAKLHLf$>4qcf0`l4yJhqX*rY2B^XC3PH!K)$*B5|%!xzB*zXBX!y^Rm{|4lX_ z(EqzY-U;y5{@)uAZ2kWj#yiOYOh{e;`71_V(f@B6g>e5L1^I_E&*}e9Wr49G(^x-}QFE$2Woe$`DWEn~KJ|kYMIFg8X&|6n2CBehVM!|3@rBu>YR|`SX6> z-v6)o1xwG5C5IuN`u`{-#FFD6|IEaz`u~(kQ0$g@RoJpDm3UVFpDPKh+jTyl>i-RV zVO(6WECcx#El=xTbpf(LE2#Mnkni?*ZvXG`1ZMv~$mBEq|0q-NcFR*Be_qY&`~Q$y z(DwgfkRNqa|4WV_?UrvrzIa~veZtuPD-?ohx2ysAMf1S^zYH9p z#mbBIFCEfWtKjE1gM3$zxAlJ~C|LUcVUTxDg2Dxmzh>sc{eQ$Pg!=y&$WQoqM*pAm z3HJU!jqsxX7gmSYrD>U!gZz90uk8Pe4T5U7YzFz&S)SG(qiD2c1s31Q=F|PZn=PdJ z{~nM(pyPG@|CmnD^#1{nzmVqH{r?&`z%3r1?f(yWLgsdT66D`1c|-q?e-T@jH6Y(8 zc%=WY0taYg@V@@PjUmXpWe><73iIaveKbsLb(68f_$gUbNYX`EHHM<9)PF) zH?U)0{Q5d{OjIZ z#@hZL*9f})UkUQHDW2c|8^HmVvv`_+UeQ>?60&?7$akuEQ~&Q)35NdP1M&xmhkpP6 zC^*1?ou}h3-F{!N3qJk|$d8108sBuQH5L-g`~=8PQvZSemC7{8N9UWLKh*!@79rUG zD?z^2&)fTdgI}=r|K$)*{eKN4#FA|wztzO6`u|Ropx7<_c4H1Nv)f6gGNcFRGKzmer>{V|Hhovgs(@3Z-I z|9{LDQvLrG$mb+9%UIX{<2pgp|0_YhHqEp9ei8K@)YD>X?a@zstb^uh1jwz0r@!|&+Y&7J%QQ(7c==x|8Hgr z-nw56@*C8=zW;Ah3)=p_4di#ZJe_}T|33f@(8uBB{y)GGq}}oY$X`+L#{Pd(A((c{ zdm#U4A=v+4f&=8$+m^9d|I#5XwF-W|3gqj8ysiH)4GNau|6c|2PAe#E0r_2KKHUEg zn1xXPKLYY6eLSQ8pYsX!{y&KDqW|AO1mf?2`~w58?Eg;;f@-&X3G#2VJgq-Q(J21J zwvPSFaxR-s_y0P!km~-uw_;Q@{M8M-2YdF1>@~{8^~{61or>k z-~b10e6aub+k`;>KMV3h0p8mGM*@Pa|KG=WC;1o?k}p91t&vys|KcxWt6(n3*U3Dm z|1XsV#%|dH@U;KNk{bX)@EsuEt>Z|eVBRf3`a z?*{pU#6$hR9~|JUou}h3-F^?*1s^{G@?#;M#y1s>iI8CCUx54@2Nd$Zf-SQ$3m@wL zRTd%G{}+M$Qa^9+|Ev6hwg0b&cTV*N{pbiyk5`4=Fc^VPsIw)Ov#pkV3$l_2lbgF-XNuQv1H{=dO2g!+Fc z$anjAM*r{e3HJVf5aC7t??(jUPlNnL1F!7=*A0Sdw;Toei7Zd+k5M#UWCa%ghRvt@ ze@SCtU0Rk|1<2RvcwPT*&D^_=g(mT}26Ab(lrIsN~- zEHHMUIeil#j&np_ISwfb-2=Z4{ys7_>s02g*9|QRb z;-UUO2@WuA=jr%Mx8KoEv2`B@`N|Ma$QA7 z)&HCL!nn8qSq<`STAtRw>H=h|R#5Z1LH?k}bNhe4Coq5i|16Ww^#99D!P_l|LH?ea z*Z2RYYC+roUxR$fcZyX&=bzjED_w!l*K>He|2K04X}4Sh@*5SrvHx#Z2&Ub#2jmZZ zC)oe{!2wQNd9nVbLweCF`1z|KKN93^{r_%Iu!PA8kas3QVH)J4OS7AeV($p||F~HQ z_5Vtcul4ba{@>^m?EQZ^!i)aD1`&vF1NqGcUfKV<4T5U7>;d_MS)SG(qi7t>3M~E< zn@{)u^K2pY`~O2AKdj?*{eM&^X!`#{kbj!y+5P_oIKXQjpY8vJ-(`HG2(9}Hkgrkl zhW_866!iUn1<0=#JktL+fdh0gcwhhD!w}@%@&L&9g?V%TKN%K`x9jIXe(<}%{(l1; z;Es(C_W%1fA<+LHgZzsCZ|(nY0)nmo7dAu7*h!XSLb4j<>y5mk|2G+haQ|Nk^6O-t z)BoFLfw5a|0eISfW62$WAb1Dld-XhxuP7SF^n#Kf0Qn0Up4tDeWCULSzscpj{(qM% zc)$M-^3OE9w*OCQ1YQ5n`v=gvPnM>5e*d2f4zPg5)BN*_MgvR8^2ONVs6Rq*poAipNa+xmY;P_Xp>ognWV1cehIf6>f``~R?6 z2z9{wAV2Bj8T~)!yKR%mKPSo&UiAN3L?FHy>1%3Y?0{Pp5NBaK+IKV3g@9Y1C--AuMN|0Y1=FR3??EhzNLZJU&1^LkcZ|(n&1A?vpPh-53%v*__f>My5YvdLEe}Pd5_x}cvUncXM z{@)@CjNP&w;A#JjCAR>A;CF%iK0Qz4D~d*+UQqHULH=BZXZHWg8G+aTZ*Y09|KH&X z>Hhx!G(^x-^c8Nj~@W}OCg@dHx-R*A;HYw0{MIBA$&|ss4Y8FN})|kc%LHRm;=*S6zUNXazMt2J#ag&+Y%uJb~H&ryjcIzAsw~~etrz(CxX1K|4#-5OaGq+c_+FWT=yV9*UX3e{{piR z>i?=uLh-SQ;JpUd*J{uo7LFe|Y5 z>uf&V|L?GcRR4bf@=tWUuK&N(37X&ke+%-(-=A9c?EYVo7Pz}*4UfHpobz}PK&0G{^WSn?ns2>vL@pVIR*zM^QH*9%I12;_$|JhT6gW&~dUpWyOd z|9`<1(*6Gp$mjonf8Be_Slj>0G=i@GSAl$8is$$LCEx%nSUk-?um7)Q30b}!mi={{}xD~+i#FRY~oe@|CC8k?3R~7 z{+7hE`u~I^aBkP9_^Z%h{4(a;;9G#%)|MeihEX}j~|9WtMEj&Kk|M&2O z% zx9eRXzkfa0|NFrK&fEB4|G#b%0{wps85WH~c1%%+OS?LeiC!I8hoMa6q zB$t4Ei;-9K{|=)N?*F?${*cUb`u~6|Fm}t!08jfb{dIbPAoy{Rf2HSXd_~bH+yG6Y zWF^QqWO!!(U!4(n{eKge_xk@%u8{8ky&!)|!)yEhphnQG``aM@D8=*p{}ebt$q#ep z5Y0cYXwfnf5k6Y`~Mw?r~dy45@N|I zkT3ob!yHoe|01X{lBoyFzKW@lD;f;aa6DTQF#EsMXwn{?hBs{97n{}+P;thDlC{Y!_m%_{i$ z?I6E5$lLn=(V$@I|7Stoxe5w*K>m@L5BL8mvk>b4#qHRntMc)T{@>se?7#oN8sSC% z--HOn?*RD&2430!j~fKlZg~OZZ)AB|e~h9rmK9k1Q#POO|8Lnss{fb&C^qTpbiA(r zFV_iDyOrO#T0wq$nrHX_ec%Acczm}1pXUjg+w~hDe_zQP`u}sKpzr_Djo6%+D|n>; zF9HWx!Qg%Uzm*}#lWrTxJ7M13|NFv%@pkVingh2l<`A68K zs}Ati{@)l7Z2f;V#yiPPn2_uS`Ta&-(f|96Lb(5*2l?wV&*}eTvcT9ap8!1Vzp>G(^x-}mf-kADX8Z$mtdZz>vP9oVE>0P;&6P*@A{n=E{&|94x2VE^9_^8J3^ z-v7`01#ADm4)N6g#~>k=d1}7cJH>r7j|8G$X+Wx;0 zH|1;G{!% z(f=C}f%w%RztO-e`+v7VQ0n8Ck^cV>9N-0m z_x1ni7I4yme0`WV_y6T#!FapA0pz!Aaj>6w4>-VK8z1cd12!Sh|1X35NPxHY|Azs= z*8g8%ypxRnW9$@Efcyd@ujv0xMj_n)TR?uJ%yasGmn<-L%Y6V(`)@3H3=jl=4&<-t zc^Y5Q|L^JrCI1BEUuSq`|1aH&P0|`J@AdyBTp`{6SAl%HhS&E0E{&k;|NB7xSc>QO z|1;nKLoA-=pV$9yv4kxD5age$cvJt+`AKZjm4kdO@lgL?3J$Q=&eQRiZofC%1s}f) zcmZw2}P~utre?$^Ex9ekkKGpx9@`Z760rCRmr?ot-f7Jy@ z-cMn(x)kKAJf7SC7kdJ;|1V?mnf~9x6ujNC9ptyGd42!yQ48As-wX1`T%OK9xBs68 z2e`=L<^F%2BS^dDU67wp@W%c>sSr%NvkMgVgZvRQAMXDr%|fXEp9A^JKAzG4ulof1@Bfb?yy*Xr5JBvI zApgd|EBk-(Ph-oh0_5jsd0KyrqOmwDu=r(cKHdLY*g~rRw}E`8j@R}7ojO7D`~L?( z{%D$K_y1Gi02g?Cw*Oz@37OmV5s)8K@`nEZNGa(1|8tOkBY33$7j|LGvW&s|`u_rk zAn%sVAip}yoBMxjSTNqMZwC49F0lXifCC(|@xlIo(k2A@|9Oxf3h>tce={K1`u|;w zcajsBkemeh*G68^|MNe?mRUK-SIa!7|1XvW#%{R+;A#JjCD#Fh;5UN&Ha$<{D~iT0 zy`bdxgZz;U&+PxlGXn4T|IcuFum2Bng>?TP0r`6xUfcg4X#`#Wp9cAOx4X*t{l6+D zuy5DvSUk-?uV^%}ge<=j3gJ5R@7y8XUx7kvC} zkbe;3X?#=BcoGuK{40>pagx|(Qws8PEqti|*II;N|8E5O6@K2{|JV8jYyWS9cKHdK}vV~Ot?*jQA9k1*E2X%s` z{~rVSfi%zV{};gluJZV7|G&u-GPmn@L4HEX8~XpGQqcGR*C3z&v$QOc{$DPHPxu!s z)ePR({}(X?dAD2&@~gwVx&Lnn3&z{^%^=_PvuOVZ2RLZsgZ=-QO$hY=0g%5K;H~}t zYCy2{|63UEB=2EDasuQhjl81&zcvct-~Z3wg)Pf+ndkKXYFS|HmWu(N_TN}?1t7Tp zz5wJm>UkPp(f_yU1tq@=iT*Z2P#wV>_) zi$T8G<>~x$`+o~KKr4rr`+p}#kao*%karZkvH$lf1k-ML9OTdcJlOxQfCJpL@?!l< zhji2``1$)F|0u}Y`u~fdVCnxkd$48clz_rqkY8Zt!~K7WSqSz2)gZso$20nWmrt(s~Ehm|Fe5r1o9_kp40y?$O2=xybkcR|HhJ| zfFSrsApcU&)A)*_5e1iJ8OT>={&_{?0!zs9S3v%jiZ}KDhbqC)|DS>U6!B31kA555Y~psF zj=yyKJ=ZSy_yr)}7~*MsQ_)x+63qNMkl*ZpLO00wSol!?KV%Vt{r@D$pZD|j{y*dw ztfBEH#8dyj3kkIQf&42Iuj>DKd$DC!3i4GF&+7k+C4qChzKqYO`hN>w7#9~HZ6M#N z^9971^H7!-q!yw1O-d~zXI~k2q=t!{9`j8?*CI}A=Lk)`xwhiI>m7x&*=YieS*FJ zFF<(rzyFU2wEHaw`LzaK+5g)Of@-(i3i3O%Jgq-Q(b$(2So~o&pYH!B*g~rRp9T3r z9k1*EH*|ug|Br(F!!*zC|Ifeyrg(g||3`lbT*n|^rQ{9$zfLLW`+p{L|KG|G7~lznkHi{eL1O@cREtF7NgK{C@&1n`8yZ&)4wU{=Y;c==y&P z$hW6>e*fPJ4zP#C)BN*_#$lF_Hi~4!P_k#fc#T6ukZh_)PlDE=N&XG zGsUVYb$L4f-2Pt)4p7VC<^I2fBS^dD3Xor;;EnyiT_Kou%WWXP>mbh(P>ykl$_KmHq#KK~U|MeIS1-%hUQ}6piy)fyG~8^XdM7lP#qB{}{+m z=y+ZKf2I>O{eK$d3wu+`lHLEy(*k$5tl{z5{=bMPWNz1+L4LK8H}wBjrJ(Qsn?b%? z@JRpf0SD-1@V@?kj3LOo;5a|CU zziQlGL%Zdi0B`O8H37la{}*GtlU$Ao$u%I~ZsZmHe~VEF_y3(BzgOlt{r`w8Fm}rU zfT#U8mb?fEg1-v#xAZ)Xuedk6rx%p`V~~H5;hFvaZARer|KdZ;W$E?*Ib0$A`~UMn zzCpul`~NbHpzHr@K)x--^ZWl6aDW{wp5~udGhw6 z`u{C(fO~eHj=yyK{n#$}_!l7mHpJ8TrlL{&Ys__=UY2t}e!c?=4IsbF!iW0*8jBF@ z|7{?@#n0RO{|>)k?f-irp8EeGNQfnmf&57muj>EjOoC#!90K`U63^=Y{L(B>>yJ@1R%Znkzk$uC`~POP zkm~=0Lb(6W1^M|h&*}e*Wr49< zE(3Vle`CoOKoEQz$am^_8edT~cIX8q?|}TF4A1QU{TYGR|Ic!Hum4}+3hB@|0`g-T zUfcg4X#`#We-83*Qar!^7yeVzIu0+(3KmcE&np@=EFsG;2Kii^FzLa_h8 z0r|qCzGZCh{}q10+W%`Hp8Ee{NQfnyLB7SrtNMSdNl@&Togm*W@vQ#8M-n)<>j(IJ z`oI6r7skZ}$SIJ&sO4$>t1dupXazNY7vvv%Jh%V9@&so8&;Mt>Wu{#KQ&aCtia-2UGQ4zP>E%l&^pN04^QBOrfL!5jPkIfY=_Er&pU z_@9CO|1LPdxRn>{Upl0dR>99tgM8t!z_PUU|G7cI(*J8g-f0AdWgy>T=EMEJ%`Ala ze<#TA@bQfP@Aw3J|38fIqW_;l1mZ7%{1pSQ?EfPMLA6_sf&8N^PwS6SG@fS#7XOCL zr~7~5{}Nc2mSt7}@-;eM*Z&vm1Wo^M2KkmW&+h-N-~gRGKHLAhc|zuPeGkYVRPu)Y z->($({r@z`UlKgh|F3}q+-C5;{(qk#$h+kekbfEG&HX>GA6u5?AYaoD_WwoT0L?Z& z*#B4Cgh2mq1^LYZ-rE0n1O!|E-;eQ5vJVrICqe$akyrHpA)^oujW3-VV|Jiq^sfCG%Nc$$A+(Rj=fviuatM~^F3jj8{~Rf3`aSA%>5 z@lgL?4i2!!&eQRiZok{@f{)(<^1DJjjc+O%2Sb9H?+5vF4k%m!`P&vg)c+q?gkb-F z0`jl?yuJVD{0qghF|2}8h^PKP7ZPI0T99uv@v8p6%p@pw%NCGtlXzDD@00}2?fMQr zpX&b(UlgZz;!PwS6SG)`s(7JrV- zr~Cg9TS)!>|1ijp>3CiLf1(pK{eKGN3s0t&CAnJF zH}(G!m0&2JV<7*Cc&PtB2M2g#=jr%Mx8H^T3R}k&AYT*WX?#=BSR4|}d^5Kf|_pu`BsnT_Ww>#VD|rR zCZFm5dzpf_%=$q7l$zJ~|MP0W3x}awvnwEf)8*;>bBo3pIKTvlm;3(+M%KqPA5LCP6 zGLT=B3CiLKc*8j{eJ-DFQs{Q{~rbixXa_S z{ePS%WNz0dL4I1v8~T6#zs8nj8OT=)9_jz}-~dY*ys!VSVhHkXxdG%m!o0cvcZCJx z?fM>&Klrb~{(lr4V8F%)`~L--5Ga{fL4G8_Tl@drfMDzY;~4KGCov&84f6SCOv_l& z|I3U*xc^s!e7($b`u|c{VC;W!1msU-cxL}U zml1gVe~`<2{ePG%r2GFU$d7AyZU29!5p@0kHOQCzZ|<_>_y5Y2z`k8y#NuiGc|~Ix zOUUx;K)yr8oBIC_m0;-q`#}CE@lgLC00+2W=jr%Mx8Fl{!N(7S{M`^wxO+k?EV|2sj!(*OHF z-Z>2lLm+?4%!m8`xLFAG{}&)1{WtO)V)XwCpJ4C*bqFu|e={NwzXs$t8F*#??=lFg z-EuF;AIb8x{uo7LASe^X&d# z2M(~5$7lQh8lI53U2g~ZElS?d|92_{{qO(p1^L5*NBaM9aDcN6-q-&xGX#0JyaDoe z!o0cvKMV`T+x4d)KXo4L|9QWKEwd6EAMF3-HX+det3bX!z+3x&b3m~5|J4}pBwH~d zxf$fUjl81&_ZWq6V(A6>V=~X_|7T=@v0DxSJng@+j{9TZr(DO9DqG(L&1ttF) zQae>2E;rFee--wh6MfW_1N z^NPkXmXPHKK>nhNH}(IkD#6hIZ-M+h;-UWk7#!e*ou}h3-G0Bd3qHR1x4m`DTb6S| zJdJNE8uLSfnQs93WezB;0r@ryAL{>GEJCpV?*RF|e%{{y5BUXa|341#)c?;wLM(X^ zKWR$!GfiVW!~imM1{|teV&N|3S5&?f*AGe$?gZ{B!&NLvVm+9A57K zQyf9sEu+7KEz7uqH}?N3g<#q(>p;HgcfkI?5*%Qyl^5$@I;0z|f}h_G^1Fk)t^Xeg z3by_a^3DJ#Tn70YWp5N!Sb8OA%wSD28@ zxeP8#Bd_THHAW%a{~JJlrOb2s|9V;A?3Mse`)@3{9S{V+8{`k@c^Y3)H2U;{l0OCV z=QBLB|6k1rywG@u%X|I*Ay-KE|EC~7t>Lx(zxdx`%WN*l*Qa=X|8E8dSj*yR{&_`X zBTLBgTS0!8iZ}KDeJa7w|BrzD3F4vte-0dA(9YBGmu|m@?ShXV1^EXdp2jy7jVB?& z%)bKp9A^+)W~CrM*TRSTf1O1L_Wx#(Z}Ic?{@>~sto^?e;>GX(LjwK&Kgjo*cvb)J zHwlW}@-)a_l6Y4Cza|Ns+x6RgKGpy4^M!G70rCXoUut<;|Edd+!r#M|Wi`kz@_26l zU+M|W{=bsRXZrs-rr_Sgv-3BMmC@B|0~!+s{gMA`As@r*Z;e9f~NoP1^K=-&+h*N-~g9-e767J z;0c-A^*bOxuH+5<|AkV}|Nei@6>Qa%2_EVHHQ)e^4BprOS1<&5w_FSI8^gT0|8ETo z#@qE>AiwVl*#D1!1Dvq&!Tx{7CItHbWsn~Z@Yeo+Hz3&h|2W3efBy#)lG7lc{|BaJ zsp$V@Mj_n)t3iIT%yatxGFf2kmMs8J`)@4S1_*-R3i7-3JdLj?8vFEul0O3SCo(*< z|DVeUy#7DP<-Ptt%oV)<{tw8HYj|z{f2I+1zyCiC^3kjAvgG&wvXsESU9V#CH2=J! zQOgpt{9=%AR`I6(-=Y!>{l69DJBf$-|1NNVUOP|6U%LH1Y8QO`DUiPq;%R(S(YO*4 z%=`$*k2#?52;`qz_)!0UV-bS=zwqCgw%71(S>fmH{lCU9So{BCh^PMF3<41E%f;aa6;|jsFTb>8`E7!pOe-j*F%*u=PFCEeetKjFKf&5gExAp(%A7aZg4)RVF zDAa*`lbH|q|CMGT)c@Cm{3ajI=>OY&g1!ImMtITx45y8d6O6EyvQ0mwI`d3OI_4i2z}$7lP0 zJ5R{mu5SVPol4%&|Mw~deg8iU^2Y^_^#8Nq0GAoOum9g*2=Z=u2jm}yd2|1N8WxPV z>r)_~_eT!6j{gYbD{XwR|JT`sK>uF?^2-Cfwg0aP2)6#;j`2=%3nnCYf&4)uujv2B zj6%3*41oM4ndkKXVOe18mUjW3_TN}?91sLQ3G&l=p2k-cjr<$fGAjf5nhekE|BV@e z*Z)^=d9VMk|DOj3xXR*b{(1fX4ok@L4?+H^ ziZ}KDX_a8;|Hc0vTQzfthx-3~aDYZTPsd-n{a$4ke0(d&Zw>J@zNu*J4hd$y7vzsS zpl}}KuUPm{|G#Mwg8hFK_&FlMr=^tauvJ&KLU7pTAxBo8z2Ux-3<^I2hBS^bt8^~`_@W%eX zLm`-U%e^3f=#Rnve;gd(jFlJbUpl0ht%9Gw4)S+`ysiH~2nv?p|9=Yd&MQ!e-o%z= zg_#fc|2ne}>i^9kzs|=q`u}F1VDJCC5MK2EgNQ)<36Q^F;FbOVhCxv6mSZ6QG|SWa zV-$_oS%Jlu{t0)Iru%<2TS)c)Mvz~n<8}SNT_fX8S1|7D(# zxm_Oy`Fl#<(Epz(1%3aY2KmAfnxshopDTn<_!lg74BprOn;C+GxysG~{H3^E{ z@-@g8-_EWwR{yV*1kUYxJ)ckY|7Cn(TwH*x1^EswPwQWG0n)7%)cih>@AG(W|3B>s z%>I9w$!GfiO{U=OmSZ44q2~4d|G8Sw{{H`KkT3pEVinN&=l1_fSK#w?9A57KOE`kG zTdoB8bqe0t|JxOUX}9bG`ThS1?Ego=0Zv+ZvHqn)dd@2N`70oQJIGu6e^9XW|0f{t zyaI)sJK4>Hvlo<_`EdWAYZgNNzZT>heLSQ8ukZ=>{=XLCMgQN32*hs%`CSHH+5h($ z1l4YN1msU-d0KyrqH!)Ou=qhXpYH$H*+Q!S-v;>yI$qcRpXdZl|9=JYIe(g3#_axI znijab5$S{$CalZ2i9)HpxLb(5TfP9zCbNc@tSzzpzy#P=9Fa1IRAPD{($Pemy8edT~Zt4Xk ze;?$ZWO!!(f0+?@{Xgf={L4(cYP|km!WGi}e=f)`(D2&+->4CE{eL;gx1@M}|8E5c z*uvsz{&_`XH%rL!2SNV0iZ}KDb1K2q|3Us1@lgN22M+MW&eQRiZojAPf{!n}%UovO zstNHlzNu)`g#t3!xmEg{}RYw*YUdke_JPL`u_uv zf0E|e{r?p>K+ZkZGS2q@Ql5~xU7ri`wMyR5{~MKpzW=WP`L%*a`u|37fUOMP*Z+4h z1bMgI2l7Y4yt)6M2n)vB^)n!U`5xH+hrt0xZG5o*kK2Sm|9=MZuLHcb|Cjt{);i8C z%Sw!Ql8Z1QxeVmj8F@wj-((cR{eK(C@0NK^|KBeQjNP&i;A#JjB~Jo^;Ln5nke;XU z6-8r2FDUs3Apb1GGyDIWjKJ&v#rK)3#_RtTTp?XD7l3?|hS&E0RT@Fp|JQ?jM~dh7 z|Lx!adssZpKd)#UU-7@+Y*fNg)1=#=Rf&Q#Be_ux6_5Y(>-s}ITxk7rG4TAhl4X^G0_cem9|33lw zmnoj#|8pkzvsz5j5*APM&np^pSwfay0P>A0-qin>s{}*;Ukmc>#6$gmD>%STJ5R@7 zy8U+Sf{#B0@+U$(jc+O%XG4OS9|ZXu=ubQf4)D;zhx-3BixBMpQy?GxufAn$@BeYX zVCng>WEI3y|F46DSh5M^SDJWL|6gws6uadnkl!xxtp2}S5;(W(2l#xd|M&5Qaq-@M z3gpjgd0PLf3y?vrpyr1`e$3;!{eQv}nEn4blh5@3*G$3NEejv{*0FV2maBPv|F2OC z+Wx-?xD-Lf0xdlbB}|Mw~c({6bT ztbgf{-m(gQ{yxY*4)V7C|2!yI`u`NjJ2`)it>aRVuQK!D{$FnvLjAuP@|I=(C)&HZ9 zu~k#1<8}SNN+)Rge?7=IrFnM$Uj+`Zp2uhVe+N&<+^%m2`8`VB(Ekr81%3ZN3i77} zkM#cw-~d+`ys!U{G6Z?IduF@ z@|y#^wg2x42)6!z5aXTXQA|hKV4Bk=nFUM}zT|3h3M-T#k+{22|e?f(}w zg0BBx1^HVkp5OoPfdf2d@ihOuqVa+yWcjxsU;KY6mZhoxSE~d=|8D~MRm4O6e?2%r zhn=V6FWr7`w+lXg56B+~@ie}vXq*TMX8tnB-*7W@S*|9oLwT!5Se z`SV(y*1zfkWJoKh`8y#0#N)aB|CJ{&`+v^g`j(k?)nxjADO2!v%ef$5tLF9nzfmn{ z`~M1%U+eO8{<-~sBRIfT4lnnAha*V4BIQ|Dr-L?Uq+S{^s9;{eKJ`V8Y6a z^)DULDXZY;OP}$UnYU^xgS@T(*9HYk|6c;~&I(Xi2l5-ue7OJbFbkpn-wX2nKAzG4 zPx}OW|G$jzqW|AS1mf?3{8Iz3?Eg~+LA6`v{a@HBh-Z0Pe~hA0nH5-k9h*=0|0Qf8 z)&Ez5{5l=4>;D}(LDT%$;Fs^ks*e_Sc(`~NeL z&zYoEgY^G7LID2$-vtcb*Z&(Bg1lQU2l+K&-rWD&!-Da4eGAC%oCN#-UT}cJHa^(@ zkK2Sm|33@zmjk@D|KA7*w*G$yvfT#U8mfQdcg6{zNU3#9zR}_uIdO^vb0Qs{Sp4tBgGXk&w-{A6I{~zTF>Hhx^ z`SmK^)c?1r1VjJt z0r?}uL;e2@IKUMi@ef zLa_fI0{H&r3{~%u&cl$rcU()il{#6$sBU(YtKLq)g9?$Ln`Tvh$5-H|HC6mwe|HVwf zTV|_3zFp1h`+v7u(DwiRAb;HD>HKs1{{?V>VGb|%|N9(4+AW`heBR6O95VL*ISRqF zTh@d8ikD#jZv_X~Zso=Lmk#M(tKjF4f&953Z|ncpgMy|1kAb}N3>4mieEI(yo^;Y2 z3itn7vk>b4%Rqj;k7xA%tv;JoTf~Nl;2Kj+B&+h+2-~hLIe765T;t84C z^(l}q`8(AdGW7pyrJ(QsOF+Iw@JRpf00-E~;C=nSmm$czz|GPAYIQ@T)EHHMps1p;`3%qO z|JO4Dum9iU@?QUc#ud{2KWAE+M2tC6uHm))zfL3Q`u{SJ-;m<@{eLSsfWzWx{&_{C zk0oUJvmk#>#hd#7J(XbS|Bpa^l6a{9PlE&G|GjmR((#vWzsu}`kFN&#`Vdd!OLwE8 z8;PYM!OX7$`3(*zbbx%9g%9=rJr*I@|9e6HgrB$f|8su9+W!Y3p8EeyNQfoxgZvW{ zuj>CVO@d;#%zJHJX1-NZF7d4XUn2>e+x10!KGpx5`NFuk09g(4o3uQwf7J!ZF0G*E z_k;WqkLULPF#tcFTH@U!mZQ{l8ryn0CvpAiwi}fc<|TIKW{mFV??wNKaS=KYteF2ZOw= z|KA7-mi~ViiNdLbC4se~p`}+TFh9K{j4?zA& zm^b(Tsjy(YT`zo#t(rM+!Tw(d4$x%dgZ+P{O$hY=^&r0~z+3zO)_`E^|J@kxBzrI+ z*$eU~jJ%@%Uo;Bg{(lAJZ^}HU|KF1Z#%}o-;A#JjC0_u7;NOCLaU@6ge_W#R6-8sN zUQqJ&Aip%jGyDIljKJ&v8@RmJ|2w!sy8m~9{2mRj?f<&+q?(-~iWI zJk39^XxwHAS^gf#KT`3g{y(V_4E=u^Kz>0r@{5R@-?x{?hGtqh0XvEg;_- z;%R(S(dY;XW_~-!?{Yw4AIKlF@S*1@gUGp4PwW0_3DtQ1h2S z{-(!s`~L$^VD|s#Og_{9qj}h*n+x)b)x5s{uTl%z{=X6Acep&Ae{TOj01j}1!^{2u z5=W4B%Mp+tSMbLE|4Jd4cFW=!*c_^!k>fxY6idJX)>wJ5{-r~@*(&(?ogjZO$lLn= z$)I5A|Cd4DxdjRnAU|d1!~MS`icO*#kYD2C8U25aPq6p@%?L00|87Je{xHa&Ht@>+ zf5jlEcFR$af0E^C{V|Hho2_9LgsdT66EvpRdd47|0|S&zW>*O{4&8K{eL|;KqrIu_5VE#LEbHo zfc%*-Z|?tB!-Da4{VvEq&39CjLVu3mf&-KnSe`%F|Lbf*p#Lui`PKk$?f=^Yg027W z!+0mzj|s^OAU|y675)E#Q3&_{7a*TsD9s5@|F4t<#%|dF@U;KZuhRj7;5UK%PCZZK zEBb%0UQqIi=UZ!O;Jog8Uoeq2K?H7lV_|&eQRiZoixC zf{$MV@*N?b#y1s>T_M5D_k#Q>2NVWD{i^I9!npej2q0fp;+u5R z9HRBFx&WE471Vqa$glBuZvXG_1ZMx=$>cNr{~%NFcFPkWe^Jfr`~R?7(DwiPAV2By zbpE;h|1CH`*(}|plje}z{}*rsX}4So@@o~mvHx#Y2*%wK6a zzliXn|KC6a;_rd{GXt;e|8EU~YPT$V2b-h|vOKLn#@*}Etia;eviWrX-^>H%eEtBRDr~l891;%b!2k^B2#*)hb zLGbHAev6)`@fAg5k6uvnhe3WI!!!H;U`F8e|65$%>;L0iA>IF9f_(IUQg$wIGM4Qh ze=xJwVRIU%oZCS{PUDnw4RQ(@At4z_Y_dj@)k8+ohAn~E#m~O}+Prp!6zc!XWQT=~+EQbX3|IZcm=Y(FV{(n`m zgW?rqFS@8TB*s7L(`&Wl4*B#=6!i}j(u@8RRWt?_a!9Nnr>NI;MTfpI+o&>H)EX*LDe0n%T0^4#Uqi_uC9|2LzH1_Vtor|u zL=G{sWrm`DW|ZDg{eN+kgOQKx>x}DB|KDTW;hemH99Ps|h^rU-Kh_20dR&Lt`cjou z7F|kat%%-e{l7)T!C?KryFqWy`LL`ax9`>;K~vJJ6Hr<^GQv z(#1&~^6S?r>h~1XC#(M-FX)iu=l?G#>hX%Y)xci@$GI7Da535xoeh4qQ+|BDMd zB>cF(R#CsJnqvL`h++rdCes(J|6fVwP@w)_th(YNEuc?Y|8H2pAzA&ulbT-7?62mK zIa*OaHK9I6{eNCUhr;#$)r$I^(Rw5G|0B^32D0T@1-;0>;_v?`I7q#@hT5X58ecE^ zk5SQR5Z@uDzMZ1JZ?4{8{eM)hgR%PmWTW~>{eO;82iE_WE9$qz(Z{X-e-y_d-WBbX zqW%}?jo1HgDRxk%rjbP|)?cKek#5K#Pv2Tm-z%0rQT=~JEQbX3|4EAaIYO^g|6ifl z!Pew@G5%2>zduRtkWYVFQU6OJz34wtMdMZ>hs64FwTvvfyfsu;S9EBrsPB_RU#R{+ zGKoXM`u}7_{oMTe;J2a zI7DU39g6zHG4u)R|KG-NNR%zFDC&#crC9&3c$eBDZIDzi_kYxowoU4gU*AhnKdhiW zS^a-PL5C#u|Cx$X+o{#r`u;(b$mZU`W5uu%7k*6NVj7|G%iHzY$L# zul`@ks<`MB^)0A3T>tN`*uhX^`n>x81Y-`lAJ=Co>X*jUC#e5#is=yl=l}OB>Q73& zO8x($Vh1-2==0V8)9R`%x;l#bmWB0+>;F9pJ0$$LK1@+Rv97N6#QX# znL~m4|9(aN$pZSM_5Ys=I3%n8-&E7i@H&9Smg4POa`!TNuVTnA(I z|7J$@k@|mEqYkY94^q^RjiZlS|DP7eAzuA|o}zv=^v3J|I~6-PVn{F6U!?wj){sM< z{trdH`R>S~i&{g8>i<<^IV7n6H&)bl5_+Zj{{Y1f#w6E^@sIlWJuSIIKK%kk{hC60 z(SM?f#;!sRiSbu0%i~S$#0x~eJLu~z6Mg8=M-e~=QVZ^~;{eP`NeQy1Kw?T(Uw)|XC ze?GQ8e*OPiY=^k@e{(~_i!Qu|Du?xA{*BiE8!C3t$%sC>{y)HoLsYgLqo|)2L!Yqz zzaWM~qHMWFQNOdHV*UTHVh3lE>gE2A8q&*29rEjME9xsWDzHeC)&J`kbVySFZ>Ol& z`zSh$RMbyStS?;upPSgBQ2l?UqJCRGy@C4w!F&$MfByfpieA?Le^GG|`dfi@NjIpls^Z=tB~8dIO3{y!w9L;U)GhN6C^ z)T`A0mne3y!GJzr{ePbUhv;m1LQ#LQus(79|3+blgdf+_niyJixofCa6UF*}3&jq) zC({?K{|`;(P@w)lK~X=efIeyce`x`SWcB||YI;3$pPEDFaYg-wg!&lu|7!^y3fKQj zG*w%4HKO%K>i^B69Smg4t_pgQe^WAtC^$%chN6CEe7)#DMnz*ue219&4T}1Gxq5^3 z|Kqt1QMKEsGFntc;DbnIK->}cTm*#f!=ui ze}rNO6AbCa`ioRFW*TzH(=SxiuZ*QnRR7-;%OSy{+oh;KDD+D8{}YNGoJ+13;~(|$ z`%-d;eEJ)TdUNxFyGHb%sG?D!kV9g9Ek%7}UD2VfqP}|)eWCjQfFuqDPr8wc`i%Vg zHuVr0uBiuzMgdPDX93sDY6KCWLe zu1Ed>i~S$#0+JrrA-2AmqP{~!Z?yj3E8<|V{y)f|KDYiq z+Mq)uTTWEe>#_Cm>;DU4JH)O3uU6D=3G2oD8?FEEQS9Kb5q)(1|CAAjsBC#&QGX?d zK4Ja;W(R4?~`)R1;a>X2XGLs37dpgvjse^fz-sM>9; zgKMIqUZ1Y$kgcd+npj`B{=YV{L!tWrHbwpZe0l@*|D*XFlGp#wsOV+=|DuY6&|g#3 z7jGGVTgI&aS4-d!Ytc1U)OX3#i~VPyqA?)P!H|B8VLj{rQw=+y{y$Gqzbc+SUj2VZ zJcl^-|AUJ9Gt?Wd|6fw<;I=V+Uj4sZtN5!l)}pJcsBaxppP>HVE2cyI`u{LR{Y0r( zssGPX>|n70eZKntS_2Nz*>bm{{%B!+;`;x&!VU>PuK%H^H@8--|5t9Uwn!T$(-*A& zcSz#;nZ=<&8sw(J3{!Phjpx_|&?G*LB;_F5KF)A9v;yc9DXDI6RT)n~i|AJfxWA*>l zM)i^U|2Crztp9(as6P=$AGiL0HjYEQ`u`x~r`ZbFBZH4rr|3npy zeT5tn>yIkxPwR>f7Zvq?B+(bD|KCpHP_X`A>OQq?Sv9{tdHug`eut#>{}xJmQUC9x z-ae@r5W7};`?qJCzS-cbF2UX+88kLxRp>rww-XWZeOynyUf)PEFL zFZO?|3&`=f4zcxT6!jM)dZYFKs}To-_5a%j^||%`67AIXaYaRadTf3C`hSzy4sq-M z9TfFF!g?|PM(h8B6gwDYL?2!MpJ>D(DqBuh)Mv-gC#?T3jp2|eTdq;mZ)>Mm|KF$B z!O^68x&Nbv^mI~({Q8TE`acTllhyxk7j#Hc|1Z^EZ5!)V6&>m->RTk%7q0(zO6*Xm z{@+JYKPaExK>dGIK8NJ>|A{JkS^uA|;vn?diu$Dq^fBxIYZExc%9h&{^?UO4V*eSa z{~ykCFr+_aSkLaTWCtpDFu?4VS~B-^-P{l985hXVEgx{CT11@uYl|D6grB&+}TQPb<0 zL)08H$0+J2CDg~L|IbY5P`Lg-Pf@=jT5qKOzb@LrK(^eepcnZ!CG#T%2dO`T%0lDS_|e3SFHc{SL|S9QoY>&QA0W@sY8DK zOhx^?g8F3j{}lxtlGOj#DeCo|iVhzs>W?SZ7q0(*o7kaH{r?w5{k4301NHx652$Uk zGAepm|F5CqAoL9s^(_|%#Gf>eOo9AFiKgF<~_5WFh9Z>&Y zsHk5VPam)TzbT$WoS*;SrKmqhz2W-*3B?Z18Pn(0|1TMH$o;r}Ls4(G$J)jT>i-pD zI>fL4*HY9smU@-?e_O>4x*O2vtN#x$;1HcHM=I(w3hNWs|ECppNceGmj-q~vU5~XW z;?MDF#SXS6(-*A&?@8uRp#FbEQGcp{K56~`LIH=Gev!uXuXm8f8S^a1KDz@f?nj`l+3XT4pKi=Q9mcXUi2TMqOmx>Lrnc@ zMg5jsy}|nbo?HiGg~r21^^yAjDWeXo|DRXXUx}lSTmQcq$01(*zeG2+ZCMd|L|>@>U!uF(KCY~&PtUJUUjJ{F z-yv!Jzk`xq)c<=aIizF`Qq+%5q>okqpP0xYMz+)y_1RH+L-qe9Q4U5vuCF$(NBw`R zaffsA0aRrfM(h8#A`S-Y|0NzYwvBV^|CJ3oM6zYN zqP|&def;`=hu98r>;JtJ^@GBCG5<#E|DzQFUH{jOI7DU3Y(@Qw82W_u|1B{b z5@pMMiu&UZD%StcDR%HjQoY>&QA1j!hp}xF*##98_2~um$?E?t3pymJ|39Fp*ZV3u z3{}*RO{_0m|DT-Lp-}yQmZE+^KD~kZ|H^z0$$$QTgNk0(|97i62>nq-{h0*%nDzgQ z2^?Z&%WI1I;yrVBnb>~@DjF5@91Q8}7}m4?-^8#3>i_K&^*!S0j=Zp>0-8QQx4jK5_lOWnqVeAJ@Ao>Id~wtpATw>|lB_eZl(w!ekBw>i=sL z^}7n_lh*%_6mUpZ|39my*E6rEIb;^=t+q%jCe+8M|2IhJP`LizPEp@CT5qKOKQh|E zK(?H$pcnZ!C3B8~gVe83)NhHe7yZYmXzYvc5L16#QGYI1Z?OLVN3Mgh`hSr=1{Z0h z{$IhU1MC0kiu#su^l|I|UE?^!tN#yD)Q^GQc>RB>Vh3{#>Bahse3n~b$RSU^Nm0Kq zmOfGa|7a|S1oi*Ziu#K}uT=m4L$QO~$@OCVqdtC@dC1_l;V!77sBc(EFZxeZ(P&-B zA+f%zqJE&R=rBf6KP8F2Q2l>a5{H66|36PrzcRl*dHsKDeut#>|2;~2QU5=x-a|8^pW7}+wduiCDu5v4a&|8E%OVC3U^JL7uP|9cpBI43V40~Ph7;_Aiz zk97f=6xSiPezu~1K}2t~{=XvPV6gtb)}TJO{=dzjLnK>%q^Lg`TOYsve?GQD-1`4z zMg6U?Ud+GI`hS^zirdVHKDz$jz=%Uswrs1Y?-fIzu>LsKi1*A>(!tN(8+=#ZrTzfV!GA5nBTt*F0{SYNpQ|3_knLiPV5 z{nfT*g?xGg_5bvI4$15PEmicg{@+E#LFoG`>PIBd$E^QPOyCeJTh3I}XXoj~{xeX~ zSeoZxNWa#wp7sB2h8;}Y9#0>y{(nB6L!A2mWkvmU>J8Wbi#@Ei&C-nN^XmUq zjXC6gTu)cjH;JiFQ2%cm(;pIZaVNr?5V8 z{eNL$hlC&3S1Rf^Jgiv%-=)~WC&}~$>;ET{ITWb>pI6jhE}&0Z|G!zlAzA&u_yDDI zLeH$M=8)MyQQtbDK1TijfrJi)>;L@~^~0j|M(Y3Lq8$um%P9(ak$*+~U%^4@mn-Vm z#n+4eV^lP@#dnCQ->0ZQoU1oj|38`QV66Us)~G&G|Nq6P11q0b74^5{=;PM^OF5MG zab`tDeSPSS*Z-R-cF@U?UaY@JMWc@)hdljIMg7=V`b72rDX|<9)cK6;WQvH9O zVh8(^>&5s-ef<75xkEnvO+|g$z=Dff^q;7rQKyhYVtofi{UBY@Awy9=Gl{-X{eMXk zhl2J0wTk-P`Sr=`|3~vXB(49SSJI36|1~9tl+3h83NE6=YobOXeXRO_vqTOtvSn9A z{jey#q5A)XCM}-xOEBw84y`^*grzs;HL!qNc4EU)R?v zqNNXTWsZGj%p_6l)B63lnD*f#!ZvV#mfFXxl@+%1?gM++#n&o=-%njSe@4-IZAS_& zFaB#P{#z)jbYF|FMZ|yN!XS@0ZKC+ED8DZyzBU$`9^yaK(#tc7*3d5;hFrX!w*O;I zTVAn<_^$USk?+3D{Z13DFN@X+TG2|f1L-kQ*nT}IzuPTz#XpnZRm}ZvcJ6my3LRRn z)|_#gj-8$ z|7{`)HwQHB4sG&LO{;cDdMprqKsVxmIEUpsrD*kpv;3~4wpWCeE+w@)stXQ(cWYn7 z_K27!1neYiGGIyVZnmaqjgKL8N$mkKMpBoe9T6S>x0>wZC-E@yp-XC?>|#7!dqp&% zlMb@0aCg^gMr?uH@2>5Sv`)(X?r83JYbr-P4(x@lyw>IO$OHCf5^pW@u<5oj3ChSk)@t^RNJSV!l6&~s? zVpQ?nMXTx@RnnS?g_{;0 z{sH1U86`za5sXe=iwv;#Grzl2dr-u~nwcfO!wS$3iKl_fh1{WTmm5$MVbNMEcZ||< zzcb~2w=4IZOnm4Rt)*y{Yrdp5kyBDq8Q%9(T<82ksZr_PVx5mS45l&tHmj@Sge$f4@jG|=tYWX z+Ga5~($qs3s%kTZXpeYyX&ER6wW?O6NLj7r9dIivhJI++GWSDhq-Ap0@?(@`fv{-W z|HPXkawTm;*piiNsU|ElpAey);tkPR9cdDlyZ94_JD9cF}6O_)c5aNxrtGUDKLriz-XYqLM+<+Q z!mrNo*F2qW6CE57!bxJ8$gfkx`6RzC66;ldT_+aT0r5bW!@6?X*Wy9?6zxA_gcxSO zc#vu00pwSC{>iT|ioy1qT4}*DMYO}>>kTn-N5$7S#n}Gw1QEVo&^S zGUoowU@5AnifH z6{FZ81}<2nL~i>tf^V4ecv|=YO6ImN4L?90?+rgdDYol}(!LRfidw{QDD9eX=%kg- z4NxZh0Hw8lwWTR1HAf7233Hk@i2R=5G{GatatcbA@6etk%PB|`{0v!6L3wi-ZL(xt z1e8-ySs12MAg7?bxvb_U%PFWV_%*Veg7W5a+G4Vtg35wdkmU%KFqhZfAJfIanI*DSR}7QkC?+I<~+Vz+=!z2 zpW=a{Ir~6<{W>uv;r4L>6n)Z8`BU6;6T_a

WohNen4&DL3K>(BrPU&1in6qNWK2<()|iYb%F=9L zJr#45rL_wiB6F0b+3A37l%+jL#uQ~~y~7-tqAaa18B>&{Jxs^EyIFCshFc|tvwl2l&w8L#uR01J;|7&Y^^^TQU574j94ZYAGEuEh36xPu&A^+*8#YSWp#3Y%Ia<}v zHLX?3X056C^bpQ|g6~h+s(nu$FGiq$%1%u`)_V_Sx2Ik6c`Qf;^XUMhlWNih(U1@c=)S7yDld>@-vqb1&INUi%=}OD-ucL$WV$wdvcNX-oOxg;dFq>B581g%?0*^1PeX&Q5QNB=OkitgbTG*Rc91uT#V7sU z@@r~AM7HpS_$@&XKw}v$WsP^P4^?3g zUS1LGB%ctgUp}yhtn0mC@YC?yFmQ-mW&+sy06O@A59}a!c^&O;@~2OMedIT%f`jBf zuYxUhj=+PKBCzOG}PeBc?+7P*u_$mWhyP<=59C8QwGT+!u-p)7nkw@{3gXBZ^AfBbWjHl{rEpi0DWIP*r72`R{rTD-e$@266 z)b$A9r{D#SNQiv77TT>n(7|9ahO$Ekd3RZ`o4iWo0NL&%uNH4EIY_n+0b9gw5z8qj zwb|1!*o8rIjcH&Pd2=?{OFnrII6&UOH#UjIEd8J38{5b~a0H#?Qk)`BFWJ9v_@ZbG}8{5hx8N7gN950ZDa zWd65^j^r-rFZOeI7mzz21-r=aFr9kIA7-FEK+b*+! zeBx>oz;<%V-C!5_cj~?5^$pM-AoqD4Y!WXbt$`^l@?f%MQzI+_)AQ#C5yUAa_1on|HEdmF_Eb{;2)i7AZNXREX|327G9?E^~BG)d7b}#wE zs^9?m=6zt3crY1nuQ+n$1KY^=JOOq}migZ?2?h@Zb=+V-`F;;LM9x|RwvH45gnx_e zU~_wd9WU&p-&4K zEKece+3sLF`7v<-$q{mq$MWFvl6!Gq2gqk$gWe=AHgbe7t^nJ}*Efb)*PJwDcZR@2 zUKSYva&2a>5P7i3Uh;vgPosnX^Z+}^4?G5Tllw7Q`N;C;i^BOoNW*ewD~otD`NXXq z2w*1<5-}7fOs?cz<*5zJIGsJ1-r@XmVSb@c}Q(=fLydW*fat0((eM>$Uk>u{&&(aZU_V(^4hv!KlvFkRq~BP>yvy2D`~=T!cPyt&L*;%YZ=|bS^5(L4djmpp}U7$E=o zAlglth&Mo_UD=^27NFfU8S&1p z1lz!R>L;6Fa8mFzJMfU(rJ&tUK3x$UBA00mwu&QKzVYE+UrI7=je&uY)aOf6IW?SAp&1tBt@ea@Y63Uh)*Nn`8$8^1r!AP0u6V6ZfOtCRyhH z?13;iDHt>c>>c3U-h$eE@co_Z0{G1c&o~`^qo` zDVW#>Y zKl#9XaEScpJzy(es9#C2gZy(u44w1X0gRNp{ zWe4^9gB|48#NAQ8fSdf8IH1D$-$%o)*$@QD$CrRDvk>s67i=eA*a3EthwvctlDnj# zJwQHF9c&UKCm*nBN5Q&yA{z~R9)`e4P8|*QkOztbO1^=g+-nXvL>|5rY!xpeJ6QfM z*g@{S6YM5;9>o0bqhVoP2!iAjX0YXD1e901@ERb0RR-)Lzt9xyCI3_h93cOrE7&9+ zTt48Dbmo5>4XJ}6aFU1chT|bO5(i3n1jx;~&qL&&UPZfAT*YJu=a+*W$Yt*ZTeH!@+E!o(`QOFBZnFM#1sHrZEVF@wEs~@nA1GL!5x}g#zTCc%dkXJ?I#yhXL~B6ttUO7x85NFJ1`-n=}aS(HiU|UyqCcdF*hs`^m3O z0Efu^W`M0C&B}ONgHr7Gt9idLEoT1j)dvEb$b#~LJ{tjcl3UdSd&oaL3-*&g7CAt^VTgQF zJh)`52l1A_4R(4T?Pn}JC*=jL{5j|{G$nQ@Ad&$#9l9DeFAgA6F zX7T%`;*6G0=n+FL1vc_O*MObm+1tS$@=k6$Kl#f>Xb(mFOM$I#ApX)?U z@1|h|SFw-$HZK@K@(|9cMI6EMfd}3fsOp~ zPOy{w_ETUF`2ikGezII!;SnHLEDN^2jrhBpf*s@=U3D1TG;|*f_L1j~1qaFFUI1HG zYvNx{YQ1c*om^Y275M-za`O#fFL`$*aDZG+FA9U{9R$oS2ey&-H3!SzTaX>Ly9?|g zx9$S=lLzs_5h9zpD6L{QN&k7&JIMN1LlD4C!>OmiKJvk7;2?Q`$m8-2EnWm1Ay%_w zJ9*+pu!~%>4cJRAZvqFvdg>b$U@(c*DxYvkZLp2}sSWHTFNll)`H3EA_mf9k!6EX# zp*l}`Ue75eI9Hh|NaWtNnW@N>>+<6l8SsGKY6PdS;-;tBcs9AJ&3Qb zc@72#4a?_%-Q>+n!9Ma&A`8lZL9$n@1<97Z2a?>i{Ah}r`uw_3UxCs}XoxGtO+Fj&tn}fZQW&WSs9fkk}p&?+?0R+7I zG}uPIFb(V^PkasRAx~cc_LCQgv@2gAM4r?ZZ2gG&|H@r3$R8?~2g6XVQa8D&3GF`e zhZVp<@>D-q{-FWs|Dz3TC(q~sc9Fjw3if`?{QvWK7y=aRnGQC6f`BdOgXP~jkR4QA z33ifiZvuPB4Vm5iq!4*qWf3=Z;3Gr(^0`Pacd@{6m$LGlOhfi0gR-ZS@t?c`$fI1H$m{P1yUDA0RQt$(&qRBW+;|b#auo4Sy$!aL)87ZX$eUjhtcyAJ((r5v2m<6A zJZMbE5U~AyXt$ATq=TJg`Lm*O&B)&;l8bocNU)#0JQExuKRJu}-}*TmrY?rSL9X)- z*iD|Z4eTTD=Nkvf+e@O|@=wGYS_^C^_q-GAB6qLD{O_e>(fWfc<363l5P_Z5R7r4w>}}bTDQ$*g+o980;pODGm0K*H;4v$+z2s zEhi9fZhx?y{QD@di~OKI83r#6e{&HA$OpIxON3aX5 zr!EjjsC+^%1rH1W2gqyLZaRg4FONpMjePPsu#zFfTA3vU3C4{p8oGf(2^8ajLKiSg*9QszgzZ`)pLt(J~3;fr3u!DS@7ZNwQ$9%N=$c=d+ z36hub1uSO~ufk^N?c_Oq!7iPKY%>gAa{Y?n0C_|!u<1JlOzQ=l->3?ogyeDyC5!wY zqM=Dc2&_M#gN>`e4sv=V7m&Yx5A8nkqR2@|o@7V6o^b8?ckSst?#huK76FPwqUC`9DNM?Ux|1UPK3d7l9q* z>u-bIiUrdKXh=$eW!PcMA!SNPg2YJMUU^iL*n7&+8KJp2k zd_nS#EVNsGLA);Wz;<#A{Y@BLG}PP#_L56K01l8Z4+NWjMZmdZz&7&!=fO_0XD--7 zzOW4JC+n5g!w{mO$S$z;5<1wh80;X=eFy9&pYelzZ4GKa>QUE+e2`3v44d=nQs}i#fm^a{7~Cf0#x7pEw1E5Ct#X z3AX-@4#w31JIKYlfZgP+?7&B!#twqy-R+>aTtU1S`ho3|W&Z#82^d@y{5NtAkk7f% z9w67g2WOV8HNxAQ**%95ZZlf!4C2~AJ|Q{@Qr-r zOKE5il4sQbTdpDAuN}d5orXaJU~rM&7!CH4e|ioaAfKHBHvJa?|GgA!BR58U~btAw>S4h%4vNdL12%E(>;$do=^Q$(_1^edLXU!9nuzv0%%eh}W}z zn03ug!|@j&a76?Sz+UqBY;b`5VAE{` z{H!k6MlPEHc9Jhl2Ybk4=Ib!{Y3Q;N93t1>47O@TL=QQsXZwL2@hFLA?3;Fc|DKtbYdVB4_Xcz2t8epglmI^%mGv6aklS0o%xRM}eK>cj|#X zWW8K*82mKMsRRy@i}0wm7DERoJEPq}*15{vPAEyYDVng8#92?o0~2%fkI>>^iP z4fc}9yblhL`^^TMQsLi^_X8W*R|4%$a)+v5k6^L9a#Cm92ZNu2HhsY%@{W;UYYB94 zDHH4e;5CLdi4_K`O+y$8u>wxQipQvCfd`2bHXfx%u99js^wc9Bh`z+Up3cY*`t zZ`*-QrQrW2x2cVMoF}W3d@Pa+N{PS!B_E($c?9rN;Nn>wBFn$+5YC3Bp`XR0*+G7t zN3)xpnFYO%EdT0s_(nuN(gkeM(-81Bw~?KEl$S^sxybWy@RGlJ1sotxT?RIZKSwKH z=ws%88+qvmXm^r>Pk?m~4X^TG@RQSuK@cL(;Rsp9-!+vT?BobJ$Xz)?Zt}hN!{0|9 zG!QKRE~@lT9}{L>vy_El2;b07zIQGhT;!d6LofMnzF~lTl5c1#hj>-Et!?BY+$BzO z)$p1V`QJlBS1&sBlkeOC4v{@?Z%O8rVnf-vJyXf7@TM%>R}O z2-w^Sft|c!GT23)^D@{=-jD+hkb`T%CJW-N_JM8W*?b`g$epk@;%(W2csBA%o-?i-mJ6(wUdT+E_>!5=&Bft)F`)9#!a^~G&ANh6WhF~4$|DR_- zV7UtcyDtRW$-l1xyU5jfhx3v*@`Fc!{3}mRQ##_!PKCdX{4=j`&U77uw!Fi6D7erE z4u0|zkAp*G_e8MO3V-KIUZZ+6Pp35s-P^aN5p6!;p2>4YAIM~V0@XqEU zZ@UleUh-I8*#hL?NVJ>kA>JL6z&7%?yt3&|8va@gfrtFBcffw~xI4fh@`+ktYkhPu zs596>uEq?62snow+Q~=jpxs5T)&=Y(A7+OE@?v&q zYJhl0(4qLlqu{r~{fYeVq+ty^^pKaNqXR#AB0CI`FR(-FJqWm!9XiMt*`b^K55Ay} zykGVw^M8qKiSU?L*ypx z(ApFooN9=84)O==&`qB82-^$2(okh81eRt9c$ppA$-UU2i!A>>sC)r0xsx3n zAb-IQP0bOn=~HO8k#!q8bkb1bRR}!fUvj{Ha?4WS5PAQdU~3C>@Han-Imr9@QOr#) zJ_>ptSWj)|f+0x37k7g#HUw-w8*C@H;heh2J(r-}OP<9k2#}xiqTSRI@p|n5+rljJ zzx>63@EV}t5Qo%5UQ`9c98!Z40e;vPlJ6r4bRkvAs7)%16w*EpeGw_CvW8E02g`h2DE$0r#XcI z^1PyGH+4k3;`}(T+h}On0s<%bV0W;GZ0F|yKe_)nw1>zo_&LDZ2_3xL0PPO)N3Vh1 zE#N4y?W#1P1RZ=+#(D%eS`QU&ZG59Q|sKe@s~Xb+JW zJr1@$hz@-GoZujPUP8N@yiVr_1s@H4S3?jauY4bD>4AWqcy!vyzm`C|i~JHlCwR#R z`8gp#p57OFQ%}Ux{~QT}jfNNNft}>LCV@TVE3?3Ua#;^JME>_XU~4aQP;xuiL2kvP z-VN4Mdz6B}N5M&6D1zkj?a^-OjesZnf$ijKyimBveO+kxlDo|Y2gt*DUoiEN@kIWA zl@|nC*pQR@8k3EaT#d=bL!Pz+0sUls9XLe(xHQ=M5FU6a?+Xs{_6}%wOP2Y+JueJC z3Klyd2$H|&g~8Gn0gv&%U?-pBeZfV(llKKL`Lqx50%QlXrKunDf6GWZ6b5-8_?*eZ zNw)DQ_K;WeWb>1Qk#m6DiTU2zAMsjp(K^VDB5R;O^Z#THp^t)|e8M1kG4r?OVFcWC z5N~8Bf5LVbc|b9=d&%GPk{ci|?D8Abm<{45i)sh_{lxH zf-rpFL)74x-?T(dF)ILWt| zo;~DOnV$XRY|e3r{1r#gIt=kQa0DIXe?Q9n@1~)Ycp|y2eB@i>z(MjXKA>ed0v6>1 z+R5G8K<^@-=L37m&+vf*Wbd=g|E3WLIC&-l*vRiK1Ut#S-v)cguT}&5$>*7@LS*k& zv|ArX{0}>V9prO*77T70{zwJ;$SYp}2g%R!LSh+-fIHfv-A*3I3yF(-oA(DVIfJ_> zK-O&~5y12W0v@Xhwvns013Ssz^aXp!9iIUE$t9UyL*!P>u2y-%iQH0(+0y~mQ(t3t zb5k&a``Sl-miawMKHC}{TATm zr^GS_0pE|@h{%6(N?hbd91$-$og)$uEY`pH{eM1y=_v#p6S)zQ+jGvGQKJtc_(HWYDg<01eG|U|W zfty_MHL#CdX9YM&Zm|(;c@_Z|wglVB0bWpC5WinQZeWJLH52g<$`RDXDs<3ri*Mj2Z(;x+x#Tbe z2$CNi4z^4}!08jfcCz&uu#0@1>DNnsZ~^mwfQCPKgE6@f@cd>3u#vMK13Sq>QotT^ zN?EX=i;mEJW1ZX()Gz6w82>8J?u#Mc9$;V0lwintxVjh>?8ZygM;KDyfIm(BH$ukx$NWlq<|1;EyJSM|Ay8)lLJpZCBJpkVtNuxUC1j^&it$g{ai zoaF7Lp!bm5R|EUWZcbT<+>Y7L`l5(0^Z(nU;NXx3!QZ*SZt_v)YajW-60`@&W!8c% zOlH@a9qr_C+{P~QKxRj;;BfxGTpa-d6v+QQFnN}nX5fL2KMb~!tB(dd$zz!vJ>(J0 zj(&0`vtx+7h1tNW=AKv(gw79$T|-ue?%|B$Po>ZALl`3 z)!pb|QF90!30=CNm z+sI?M?VRMkKD2wt&usPXLgcPBM7zxY)>qNNo7{E|a{U1a;3hxKZRaEJ;@(Yn{NS?PC`VhIL z9{F(iIyzXf4FU)G#3Hbpd?=C)$;0nNdyxDIvzuih;!RzRb~`z}G}uMf_cB{~X{gWv zf&h7Cf3Rs00v>)JY$Lbi$>=1f@BuyKx0tT|4`zA}lD9e$ z&$1Np{+a={lbiBjatRLS|G#+hc_R*$;SeBS?*le1L%`=A2iwTYxJ#Vm=ebKf#7*wR5%H08I3huEZH|cL4aA$m5wVl6@~C#b z!TjH47drG((Eko_fc%R*tL2So1p*G~1h$b&JPCG^A3g&1khgpY_LHksD}s|yr(sMP z2&`|SgFQ{a4sy?8U^iJDgy8@_a+#XoAbH}~V9QFxoAo)^PIj|D-9^KVS`c{2GtYnn z#xy}9LN6U(Kng2sHoc<>|w7!E5{N=$8vdqeI5xU8vIOjg{GR}FB zT%PePYY^|ZvhcT)KNV9L&i^hNzHA18mt5-tI6w|`1Dm`ESnCqlMjkW->?Du;57T32AEKeccMw?DqJy8qb0jJxz5XehoB0legWa*jlMfV?b#cGEfp{7(z8jeM&*^iJ{}Rly$eW^Q9Y`Ml0K z3eixn0s>msql0(Yp@ZzOq1{a$cNf@4zWEI}NG=luTQ(qG@IkPhtl!`qx@hPz6ap`~ z%~f!K{K$B)X(IyezX7(98&3y2$?Y|c0C~?mwEMw&>TmbJ5Tf9#b71Qxbnr?F0yxN9 z-bA~bY$=U)A9?O3vz0c*vWp;DP*-W&Uq<3JxI(K57ZJzK0Ip;}bi`Lwlm#P406P>?03h z2SIY{8XSSGh}WBo(k@t+1&1}iA%Kg5&5wb-j!b?WXq;aM=IAHu91e!A|nU z$QmFQU4VA~`^^8);d9WI>z{WR453W5;1eH*a#ALw8`7mtO@kmreq$>FSofiWy_{nQc_)*PoBUN4^gi-Wso)^_ET_Qo ze~9;F6|Q1C4U0GhF7k%92;e1G{1F@=k9-Jh+K+&xeh1sg|9TwkB)7N*_C)l0CJcTW zf}Da7`3HWKvK~MOBa32$9OP?@;O{2C#3A;PSFT2Tko+@8*zytL>6hMzz)nMh3h2N^ zZmxm7WcfeK6TT6V?6V=-?6FfE?tp zjo|MlZ{xP}k+VvnJxJcgDY6`9{!gg}fn6A6He65#>>^L$rP3Q=&S8N3PZ<{H2N<%M1I2swjMzTS2;xv^1|6@caujK!w~z(8c=a{+nZ4zzp8cUaIKAeUrvG986~mrc;y$i40bJIQ;` zgFQM8<7R)AC8xkfzIQ3wo#d;S0$uaaF!o&t{N(XvFvKBp zy`5;c9!Cdrnt&bT7k&V{$uDz?eB_?IBL>Nf!g`VaEngtuMLPo6$)B3QF7n6B|6cMj z=Kla$WNX}rP9Wa=&%rkGyJf&ma*f)8b#aCA(6GHI1b*`5e}Y5gM&-fQFVR7(0N6o( zv<28rUULELBmdeR93;=X#QbkLiGX8yO}3N2`41difi1*!X zu#NoVYhWk&o)oeF!s@ShbB_{s9mame-%S^n>XNVc9r2er$g-9cV)2JLS0(#~KX zc`c_jNbY-_`QP#t0yeh5!A>rF3hW|}ZVC31UkQQ(>$58AMI}Pe^W3*K5`Z>r9ra(fCCPeGYHt} z-(Wj=)RSNrxzTm7m%MEXI6(fJ=Yr`Q#C!P_wA;u-On4wCSWg|f3<3`Y<4Qu{CvRMb z_7M4(GHADciw^V;(C#3YsEBqq*?to3KC+`JI2dM;|KH`oVfhyVdb&bjCvW=|>>~d# z2<#>Q{0BHdZoxvN=`7;C@F&`Bj$BX1q~|ylpw!t>2-8 zlFa`O^7QY~?k4}u5%rP(wI1z3!D9XAq>e6&4lL&oaNKbS?Bssj6)y4~A(PwCORm9# zDnPDR4(+Dz5pT3S>4e@!{+Qd;`91Uhcbp>+1*MzA!B1{-7dS+ge-}7>4xC2^EqT&8 z$p7hvc6X#*oODwE|2*A!{1(&u$MFv)K9vyDN+Oe`P?$tzAB75OEU8dUvLvaohKWX& zvZRrv#nKQ_$k=zr{v|XaOGOhxg+`XB-+kZj*ZltaKAz_~bDewU%$)1Yl)eeRcz~RL z8z{k(?bTp@CvVQ{vx6@!S3-Q*dFmhIXZDaYyvtJASfPCD%6kBh8K<}x&@isN2k>Sr zl_`Fwya#X#R!S?^03%r`UA)&^4G`jYnc@WR&B7MsG~B?-X0BAi*S1gs2mitx`?%W< zipO{!#VEsLY{iZ5m2U!5Xyf{?YVn}XqoF-ZX@oatDNXUVETsh=JWvBzKWKoXSV>*% zk5oLwi~p7r-21AkEA>C8;iNjAf*+M|A#XYkp1P&tK7M_M62`dg){19%4#mn?rF=v8 zReu}5`)$QR<*xK-IFD);;g~Cu;&#U=L4n&gkgcCIz$6}97r)438{#9F^8~M}OnL45 ze@?^m3~2tWgm*HagP&&#e7v4&7US=jf(*AFr5|YgqI_d1W;R}ZHShl(4I7w(2p@W@ z5~O(lt#pYC{KHJHz-kRJd27X8{NZDYhxl`@aDwmth5DbFDsHS*zTH>KHvS~&tp<;V9;@XD+h@orKE03&eCma=^{WQ>iA(I_ z4&xOM@tDnYg%TXxc$+%pG(5s3Hh<$6->bNTH|;I^xc*x?##=PuDZnSpSKRnr`A*+n zaa#`R$M2*Dj}G^>lq38GH&u$qvqLKI29{oHod($MEe+^mvxV}7xF<_XSg%R8-FO@f9$aAs;l*X=m;h7=+Kn}5k8az zDSneJSb^`lOvhX6H9+L;0{DiFiYFD<>i-2dsv)OCzw!$Fsf4GKz`-jF zT~Z%^!4@vY&o@#$!)Je>{Kj9(cLw?Gzo`G`w9o+_9Y&P*0A9}?FU6-eQ~v@#)<(Ae z)&TFdl3o1HR{8-U9``X<;BV@G&lX$(I&}U_Hvdt=aReoZ$s$ zDsF60z7D&~c0j{XY&bmp4$pan-yf|5QhdP%xxjO;k*$9TDX0W##g4 z|EqOCglFz0r?}HHxxl+Ol&wt~ple&%#f{l?hWN+YJy5Ct2@Man)B!o3S>6M6o7Yu$ z$v+;fxPy23UiR^Q$ICH()RHqi;%nL1O!=CxskmDIZ5o;kQ3nr?;U5z`wVWtp*yP+2^v059=<6 zc=q>!8WI}nPL%VqLv@ZSQ)F(bgx*lu!LKm|KE7$J;xWGdUpd34hO)7h^8FoD=Ab%& zO~a^29Xz~kL&YQf@NC6Xe8V=17x>Htid*#>;4!Aa#oJTfLmXVm7Am3P9qN0IbJhj3 zp%Tt&tN|SS22vmtCCsa#(Yv{x|$j4GA4yzfR8a=q+@K&8?Mi$sLM2cp_8e;|32Z z9^*|+QHEDPrMS_glCN6-TbbMg)rN{MWf$w=q3mKK+`EYqr1lHV) z+q^Px2(5#iYnDW2kMx8*6or#!8=)l~VWaD`p`MpN|b#qEaovx@Dd)w9KXaBGMg#k z_NOU@>w^^&dD%76IJvWp)d z!25ql!_B{|LxSV;C}H?Cnda;DX{T? zxk}*So%WR@{J^(ziWf0O1-^T+;#M2wpMRk2;(yBj|DTYC&6(2#`#b1>9KV^#=FUp^ zfGsrlSr+7J2RNzamQry}_ z`Ojes=HlSDo7EwtVHRJx68zf?#dF+&;$-fsgr7gExPvcdY4vf_m5RrBP;WVtgZdL# z8jW^JIE^W=@z16X@NggIG{Uk&abpUV4t65fcwf>K~RUM4>N_Yr+G#j^= zrMQRhWC|j@)jY*hyqYN}@J_20w{}vHERv&Ds4j~=3sl6Ii-i&b5=8EU| zd8WYJLkatLRouZnm~$U*)<^Le_u>a-dr<$!o}muLo=P~pkZnBeLfONAaET*)`gp}t zd=;0tz|Y^NxV4w^CtP87uRsl_+^Y^D9k$`kCc(jc#dAEIw_CG=jz5|o?BEsL6F&ZP zD;*!>iCp0R@zK!uHg28+WCid-%`8)jz^d@aK9dp6x1L;IY5T*51nB{WCdm zX?XM?HH7#T<}kr0_fM|OB8Lb4yzDju6 z2HD2{yGHi#CgwQ84Q^LF#T|KhE%5C76t_Al|HRr9SL(k@!-mJzA;ce1Y!ck?JH>PS zX?YKHR>BXsDINR_&%KY2X{h64ysml=RO^36!#ge2!Prj;A7+kh+^C!49&XB(Ey6?D zvZc7=_v&BZH;$LB{gr>$HPnBXhE7A&A;ic2At!i5W!qX^$#UG_U)elB2@jnhJNQ~& zZhhQus^T%8UC*EYXEgkMzd9JU5;o-3$;M|ssknzv=Iu7Z{kbPn-0U{>FL0}lveiZT z*Dhm@TpDg_qz)lI>k~P_?OMw@-sN-IJWvTQ>@GWaK2zZ1&L=7!<2QqHLqLOH?gzRm z;rz-RRWG@XCk~Z8`~g!G;TOg#p5oh?q5@wZDsCO5{DIj)4K58AE|WuS@M@OeS&`y7 zZq3`Td9V_GFyeCqzgQw){v$hnrZNjc!W#3f0fX-|Vdf9{#nqkFWe4 z68uGD#Zx@Htz6(fOJu8iHGif4f59BPwT8;)_#M?D#B*4R6CAP>=lHJj9_XPTJhz9A zckpl?Qy)*`F^#LP*8k4DerI$T(oYGDLzHkG_lS*e;U4jD`?cyH;kSp$DNb363w#?( zv2`f*|H$<^z^yb?_XEboa){0US7u)<~+j>pQ8juPbKWb7RtsCRBqMkCH3&*AIcGKyPcfk z;fv$~zuCF!O8vKbX@Hl$QwJAs(NhlbJ3q+@?suA;5y{R+_7qIK&5hBq#WergDx8F0t8L`QF)IaR>KmC;Rx@>i_?Db%23< zYxGgVQ&uQ$;~~9d4>x6{jBp(*Ws2`6e}T7I6)1t#R|E9^S$6UA$|sWA6~K4>E+=@| zd2){1mS0GYSH6Yg6nF3prr5`WgURX;)9_>Yi3FcJU2)?CCA_x$LW0N5Rouf%nd1mI z{Y>!`?{JV@;9w_14c3Vopvgkn#qkbui0|J;PVg$qX^ub26gT@R->0_h;OXsTUk>V< zmF18Q-E(!w@W^9j<0K`#sH}$gh_V{u&b;48_?>||KE>7lPuS{|7ByGue>PGLR(}of zGjr(TIaetj;<0=}N${?>D4yd-_<~}(%GY3~;trn72F9$B`*8}AcFJy`m zyz)53bNnS!V4kXc&S1qIyhS1Vr&9mV7^Q}o4mbWIXLvszQ{yxxY|1|0#@F7e{vJMt zJ!FJCvWHCZ16<+aH0pnQ>bo^S18l*&or|mg=h3xw06S;O37)y7oMWr9v{w6@rz>B3 zR#pe6Twy<;VMJFQ5aV9VX@;9Ir^Y}fJc%D<pyAA= zYOn@rfVvH`i${%@Lwo~Mkl+t*Q#{A7G6m*fF0 z<2`%}QyAf&u2DS2&B{OjFKB3WyE<4yHNb&=Gn@3(gfMTH5e&nmx=;P=ZfBsdr~MF$i#%xWZC=V*ZQKapL0U~4(V9eMjr z@PzJ)=lJ>WW%FF+b54{UIjDc0OYGC(o}uaxLMOn6i@D_<0sG56@%@ zB0N3R@oCMK`oAr2J_Q{XMCxFjuL0Wga_QnOQ;?9NC|L(l~`gFLspE|_2 zaeFz#)7kSGqm{7pTE%Vrsd@fr)C!k?Y`Iks={|9wIjCbMnI>X%)#f`B_*sc6KB=~HW zW)ENRxcW!Wf%c0Jr>m5z__ZYT5ppVIK$uj)|XwP(xL6&m2` zKV=uUzf2DCQ7kM8{^th8b3BW`H*AhmzM19!|F1*C?R;eN@%M9-AjaGAcAMcBpHbYn zQVBcr_kwNw6zhVA&l;}&5q@iZW&NvO;*^GYm&gUaljq*LN(0QkUU3&U34FDckL;g*VOU_^{ZJZ95vK` z&qCqjZ^~+jFFZ{NGHm`X8`tUwK6$QelAjZZSx z1PyS^J&L=y3y)!lPk%)51W)0n&GDj-6*t35zH0qHxTPALYD2|6c9nhXd@0BH;7YgJ zN{EjwSHkOb{8LR8w{fF#CB!TDS3Ih?R{uxVmcq(YK!>20Iuv+Fxe`v)02>D=?&A4O zL5Tl5Pw@nIDOW zm;w*q@R{P#4cz5d9;}9x4*#^13w#PUrFEkQIGd%_#p`}l{}4Ck?*k^d4Sydn$K4F| zH-np$aJPkOaPS*D$UY8JImXZMGMeF>IW{IK->%V!M60T&99K1zu9pK|%nW7jE9jthUTNSb~Mft8ACENI3 zrpUu5R384?-~W$j*rR+o#P{8*1O+~WZ#vfP8sOMjio5u^@=wk1QS%f}a4U*ejyGFV zS%0c4nK@MnpE^qiIQYdaWgmBA>5TDF%@xn^mt0~aQoifDDsJP!D`gKK(5G?-?y@j2RgEcgNfy5G8)?cp$=)8;3B!ed$FOg?$Q7a+bZtj z-`P)uxar}FC%79cWiAKxbINjfw-P?wLI*f_5NoxMzd1^`oOXUzJN6JYVXB(bZU9JD~ zPF4qVh7vaXO?Gh1P37bIYZZ@iNB){khP&RbxG_`t`tUk$<7M|L?p0j5|EJY2;HHY` zu+J0fkm7aRBL)7LA7sta08jISTzo}C9Uo%z6FI?Kw372#)c=e*Ht$u!p54^J!F#bs z^znsXDIVifS?e>rk+t5qPx<<;QGXksKScKK3)JCa?)r!hv&X1Iiue0hF7W6HvUR_X zpUo7wc*0c0L!2@N3GVoS;(0(r2R(&ATDKr2Jbn_*8z7 zF?1q4 z2Wz>HTWzg)jQ?heGQ40%#f?Xl?|G)c#tjdl{(Cg^(>IyA2v6;&1S#&hRxa>g!(?l& z1{k(pcJWCU%OP&Gmz>~bOR4`k4gWh*9n43Sa2`vggWqDM^l|gw)IY{u{*yC&*hJZQ zO!;o=Alvxy^6&q7G@NymIz;$Cen5(kI7RUS58ww_^EAMW@^8`LA=A`9#4mFXC1wBM zL3PM!IFRoF=6of*I8ofeCzgMW1}`o51Naq|?hLOi_XCeBU-R#j&&I)|azjAFq9*DP z;VVCtQ+$3Kxxn42_tp~{VELhnyZD||4)GhjxFm8=zlfVIr$gWVI>3BV37;T=gFhmH zkKf~_jPY&5b$o_D=B6|jDBm}iC~ntWss9gf(|B}P#5bM@n|$L*@%MKsL4mvQjmLUQ z1ME6SaTm{LN<+N#X~mPOtM&g~<}{~6TNVm4Q9@&r4sh^3H_1MJiMu++A1qTm!?$x& z8&4}=tDh9NE3Vc5_jp_N=dYy)6tAAcxY&uD;w+sQ7TvPcf`5&Ox> zGt~bdzf(g_hb}#3^I0YQkzefK`%Y8b$8CR?WBk^+a)zJ$OE#WUzPGNB?dPcfCvb^9 zIt=9-P=u%R0V2hN?oomQAI=8|>v;_@>Ji0VJcADqAwK*Q#gl-BJIXB)?pw)Idoy}L z3Ehum2fx!)_HnaJj`837%Nf3Og>1a2d{cYLflb3mzVUc?`_t7S!q0PwQ{41?#S47+ z-?H_R2H5OM*~Kq&g+qMnj1mbQ2ib-YhT&JYe^8{z)?KK=Te>v z{MRXpTOTRkeZR>rKJ6Si{D}I$KlM4G!xZk~9N+(k4loxgVVAM8gXb})ercvO#=Yy+ zKf?>S$&HT#C49eyI@lk}BR-Qoyy+l0!as47rudP*iWhh}H>vfB^6hz+;x69EO&SI? z9CwjAB=~V|!W?(FR&n!FB|MP#dj}7=U2z|u$_IxSZ^pZ2hI?_31jZsI?8F?~cw6S! z!-q4+5q_DQD8(l{p&wA-jZC4HDgR(zzg@g}SnD6ug*41)s00aa`-z<6_Uw?%#Y(u0 zDRS^Rly4so<$FSmccHdq__W%}SgHTUXG%DIhz7Lrcy2lmFB+qGgnMvCDZX!l;sySf zb;9~w`Ry$fckz24Ra~wAAr14lSBC`O#D*frUmu{j`Gpex$)3)^Baczs$KSH0i}5F? zE1uz9D*K7r_kUxF5-w#=XX82S={)=zd%6f)Y$#HE{LLDmz@ynuSYImt;WHF>@xP7v z@Bcy?IzFln3GTs$A;&{mYR#{duq8{agFj=b_3_^)D_@NFXCcb)9V4jE#@AedKXrhO zKe$Zx@a&CpgzvjiPVq+G6$`xfF2${Hl>aT>6mQE70>Z7{)U6O zR0-#o>i~Xgs`~qQVYv?AsShZg;UG`dU@TL@UwOT@@iBbW^6=|Vs(*yH>LjOl-|yrC z&to02mMi}ytRt=*)NgmH4hZQmk2y;4=yMd$@nO^o^IIjnhPP!0FXW2&c(+K$$M}~< za#nMt{!ePF2ID&=JZy<<<1UBG9(I3}BfPCEr+Bwt@FAhOO|5md*u&LRNVcZ`u}BZEv~GDbok#;bx81^EX6sl z^A$ILP{LPOiXFU4#ih>2dv{R(7+=XclKl`UL1z{c<41V~3yF=JvZL|vVcetE5TdL<_h3~k5=YtC2Y>0h&cGzt<~Sh#;0xxoF_%GO%tZ|zlFt^Y0!qt>fKi2aM@1Ru`2kmDf} z6*qrX!Z}Q#gC|T=+{f=Sg)x5RLF#`-!x4O`G=5XUI};_a@jyOQdiY%CG{S8(r*$d* zqlu0$@byfA^}F)l+=lmmmxi8S=ztIxhsp_F$|cV6kp7CB>y$9#5<55^uDFlC;tI$3 zw@ax184dHe#73cnKU}W_Hf~FO_wYY=Djwm(c`Q@hWsc$nex56A{h|E72T!YmOT!{A zaft8asYvkAtP45blXbyduY`jdE1!cazqj^*!^dBJD91Rsa62_*G|X5e8-FU{$@|GR zUiY2s;bVKsQ5mPcr#LxH@d9`FUAF$J7DIV`;? zo=5pE@b|6N-`Y^gU#E7(i}n7k^v`0?rL z5aN^emJ=K=mvj8{QL?$Y@*Tiq=-}tr!1y@)P5pzI2J0L(WVktxnX!cu&gZVT@#}Nd z-^2F4a)ckJ{-?MRuW|*xK-Dy;vkVQ;zK0UHc&H(V_)(sU1i#8tk>i6Gs=wJl`F`3# zcJM#kbUtp`r5dl)|Cojmxemzif@5W4OC=oii)`a2gJchX)?SYAwk%vJzHOc21#W#o z#nt+6ZKVNP{G$#oUVW7u;(K}BPVhyyD4yfx+(Tx)^7WpnxPyoA?byfrJx2YHX?Tn| z%J2sE?M6c-{GNTgjUQ>C0X+O6QxM^!n<<{+35(?dUv(h$-)f`*HZTP)?$}!ggm}x< za)R#~Ea$jWA)AerZ^0 z#3hdK?0Jf(xD#K+3cMj$qYhRR4Y2Pp*~RmAmqQ$KQzdxEtrXAki66`6Hp(}px$NL3 zY;t`Zbof#oVj7mQwr6-YYrC8@mxAEDm?H=C197lLjSLILf)hp#f4(c!MqXug` z4RAGc?BWJzDjwn)%yEMEAFX(f&)!oun=0SLrLu#=BW1tlO8uX>N)0g`y7K8Y!%N32 zZfviFIcvR*PiC$6aKb$l;X|hA_!R%lJycX(t^fJG>R|1l0Z!!8s*AUOT=5Xk;3i6N zOLnz69_p*VX)513u84ydaYg)!EBF7j`f>F-Ag061+(a2(+Cp)onG%lqOt$f^2g@G* zgE@}y2YnS!@y|?g(QJ##_>~`U+*#^iHP-+Q|Bzig@*+9JFEB+3?sKi;IX;4KKxPZ& z8+W_n4j#(8rQae@hu!X1hnNoUG6fmF=n2J*mi$1r=kJF$D>}shi?CzJR6MY^{7po}jpchq3MiJ`FDqQHK~$ zVhS?+#~8(p9hI;bXKdp)CMfRV=b3^CFP^G+ioetp1a$=sPd}gz)=nCrfBDzx@QNoD z5Ao#k%?S77?Kj64-J$+w8|8bbqwL^gmRDV=|2_@dG**Wg-^mnYWrEg<8#^oEsoKHR z*?47l#l6x@L4+SVQSlUiRo%o^>wiJRlFH__T8yl=8eqytvWxp~FNgS~Oiu7M?4oo0 z>I%ipU6ilsF|van`I-9f({S7A>Ja1g<*pddJYR8RS0%iv+!f>CO2s|=&n7v-O>UM` z+_U`u|0`&?=4*AZ+G&8rN60STlchSujZaoQ!H@nb=lJupWpg*>yXa5Z!A&l!tUuLD z?$dDKMmfgc-5_Up3h)1hrG(errMO+1_kRz6#QT4QwLdE8L9z8JdOQ9f~!w!^@MW#BKMHFyYfZcLkC+tOObEz#JMKlyKQIire@&rqIKiQ=TK- zj`EyVU9JD`v6L2cXiV|2I%P z_y4r|H7un*9Y&NN3h_)5W_b2KN?`1xghRgN3gGj%mOZ@fr*edio#b>M>i= zoZyDr$T_~9DKPg}zWduK9ym1g<8|7{^@piLj8`!Q8NRr`;>H0=xQr>V@pHo!_we`S zQ-B*>T8jsDX?XxsP~Z*MD}iNefDSyjF5ZU6HpIPoY!iI!937wIlqoQ~D4+REHD0Oz z4h>700v{VV#>*HW!^g8O7zZlhV(xkyztC1cz{3NU$Pw;yc*Q|w=}c)D@}oKwxZP&5 z)l~x=u(RyqNlaOY-($)WyaV}iyo@O`4^qB{m6f*k=l>23zkR3yd^}-0ImSoqB4_w% z&d4}e3Fj&9ijowqn^9?zov?ZxMR5|EPa6DIbO4q{<|UbP~{6Y zwp4>d!(A(MfRA77CCB($>V1a0v1c?6Q^JKzk&Sz?XY}w){@5;(EC2ovf7v{x!zpYk z3%u8r`T^GA8ekD~=;CK5D<0yud<9GJn|w*l@n_|q8y->3SE>K&`2kL?VOst3%(0Ib z^QAM!&C0K2cqPTlI8s0GEsB?oFER83J?t!$qpGX*f8!2nNa@gEv0UH-yU5m28sMs2 zcJar@$|2s9GfZ%g@;^SuV}4P8)1m(FI!FyprJ=eXn7&T-@xB+xF>d#doZ-!`mW`uz z{0sa58-KwM@bFwdWJX6*|F6462~s-z%p4Z@%$bT?JvG2cKC`*_=*JWf@v}@(g0G@@ z<@kh?)ZgqCDB-^C)!_7!pZ;3*@yiY57=OVWW_Um|#f@Wh{4GqOji(%_xQDk~DMtYf zhxJxNikq&M3;ft%**aDO4CNBL_zEs@h`SZ)pWwGg$vJ+FDGbcxl<@yoLVOHgv3&g3 ztx6E%fUj5?zJHeDMsMX?!W7x~*?Ee4xT#jkpe~}J3rl5+yOp0x@fbE3Rv!)U5PLiq zciKt=gm~b`a)KXhF6a1(+Dcfd|7Kq$e5qUs@s^+I03WaKD#!Rn<}kze^ikY6Uiofh z3T@o#OvOEXQFRKd^*^HFCgw23bC|;d_Z+PR)(INm>OEx_PhBd9cm}UtNf}?Ic#e;( zd_}9(fAd5o{C&JSIQZ4_9>D#kC?4bWs?dpYjdlE1HdWe_U}7KeI3OKceAZ zUL;by3+1%HM{|!@Cux8=+#@c&b-e}%@w$uUq>R_gIezzJ>c82aE6_q69Q-Qf(#QYf z9*OZ)+#?x2>R=sjxXM?@Hy|6Y?yIoTJ_u(^Kf@j{Yc#eY$_!MfMqJ&4^uMQ4g$wK4fEt!HCFDk#3;;B#Qc;i&%Gs`cf zcnI5kPY&vr@v0TkVR=I(NO6}>SsbmHU5M{TTM~<{%{;ez-a~_yS%e ze7u*dc#J#$DrflEvt?tj^0oO>w(*^p%HCk=|5|Q}hz=ufP=^#B$GcyF@8ArrGc>^K zoS}=C?5g8KJnKt2!FwGc=Vws=-{%a?GnH^LXXxOYIYS@c&l$$JKWCWX&pAWmEahvt zQ3KleF;376Xc)^GM)*n2FvTBph6SFzn-W?>G{DPW$u15!!w_%c1QYxlCm7^3%-{^o zp(NxC9XymX^zk~*Fvfduh8cdBGc<-N-?f~ejX%^026Y|{%Q(XbPhd-y;vd%T|Co8Ks5gk8=s#piQ|1-^!hXXxT%YiC&bTeUdh z1QQ%oPOw)0a~dw^49#$Y;VX`kjgiXNhz}e#9vGaW4jv6>bA}Oqhcis^Uz}lq|Kkj;3pBvX zoS}<9WeP*wviy6+I5>ne%xTz>Gc-pj;fjv>fes$ET=sFw8OGS+3^P216ErSVzKc0Q zTMp{~;|x7IZ1tB0i16;0%PIaJXIS73oS`*Z1MI;Wx_AI57~&3`U{Z6X{%^jo2FU3! z^;_AzND2EovV%|O41K(mGmP;R&M?D=o}=T9G0L|aCumn)t^Y@Ih8`Wh;tV6);wB|X z@qwISfe&SuY>m|b!`Y&__+36;hxqqt%9m7JtN({JRzpsQ2R@NaUkTr9EjxJV=dzFM zd&n{Vl^s=99)F_Z#>L9_>l)dN7fG+8f4_-J2F@z;CG1%7*}Y+a%OGPYbU z?s1*sA$B^*$t8gfxRK{Jr$bLJnR%(=?j1V7!ME~M__#YyMT`gW=K&cWAM1GIGUZ#$ zmdy@mIQc1c@Ni$|G{P5`Z^!s=w$%k*#eml38epG?l+VSV>?4Qx3U2Zsp<%|>>X75s ztmWnvO4wy5#U1=*c@N;phbSK7F+a!|Zhn$%j8nc5YikbbY#J`$ecr?4dGUzwJ>}am z4!K7P{Mp4Cz`9ZcoWh>c#cxbhJj5^8rnpl76B-utSmbyqm(;vU3Af{tI`{=HsgEz< zlE(N{{=gx_A0}LZtCep+r;4lf-=<;6ck1Bbi}(YG2oEJ;ihm+ufk#&pR`OZg)T7Af z;*M-cLi|=+>VHDRaNYxQJhQw9#_Jcq*+v66c+eNJk2@SD$M_pw%`*H8uV%(I%Gat5 z|NWm$!`|hGLR@eYMflGC8X(2zvPUfNS6?e`U8@0p(oI(9;xC6Q9^&81fB!e3q06P} zkmEPGiOdN~*pXeWgS(VFBHZpS9UtRU%0Dy0=g(2x2$k>0fSbssVInt?hYz6mM7S@- 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 BV5I;6 diff --git a/pkNX.WinForms/deps/PKHeX.Drawing.dll b/pkNX.WinForms/deps/PKHeX.Drawing.dll index 1879b9b378b99fd92ecdb923162ceaba99649c84..3f547bcf4a60fadeacfa6f5a47802690e9d889b7 100644 GIT binary patch literal 10240 zcmeHNeQ;dWbwBrg@29j{Tebz*Yh;tP*IG-m4F+OMwq(n~U-~kZWEp$4dX^UN?o)PG zwgm%-CYhl_gK-m>;%P}BFb!=9w2(=hP?7-C;mb_pByIjMAMRvmNz);nHfc#ac7Nx- zx7w93G)$&5`J>Nz=bm%!x#ymH?z!jQz0bRc?mMlh_6}Vg3y5Z-7&wN@eWMK})9rYPY9+3?b~A(Rm(L6!`247J`135v zf0fcBnT2N>diOHYPIQ7DG5{%|rw9>pqT-5m{CB7U&&Sbh2chD1rXbG62+- z#{+Eki4h%67K(*5IMTLuAUx2k@m4+Uus&I^vknB=RyvHAeQ*uls;8Z3YZWQcC)uxf z*fxc9dTBM$OHm>rxt|y_A3XfPD7Bl2^b_VxpQBNIoZD^0}mMZT3m;1elQohOfFnz0L*%q$%V@d8m1+chZ5vleY29)hSh8%bmRF&n>I8& zcy2ZN(`X48nCb|rVJ(h8GHQjQYI@w{?h<6cEV`oEpleaW1o*nR2))3yi%|qj$f^#M z_*JI?(76JDjNn@VbB$>_S2A_pf)atXp9C8sSz?0YChUdwuz^qs>(f(niYLIFX=?EhU)eBr_ef7r&{qikV=$PttXw}TsOWE z)mSL2AgRY|Fmx}t%QpF4KXW9zW5sa3fW<5Pm-E3Q#X(H_T@zjFj5(e{>v)2#Qp&L# zOc1XFo|{j@CM<#o)%z21tO;YuV0;aPyXr5hSU0s5PV5py`^ab*^c%3AgYlvkw3=R( z`K%L_$is-^IF@jNa|MsDVJMJTK{djJS}ZZCHfXI0){(h59bXGh{Q#MeGV3pD^&II< zKY%`sTA?rG*|oG{LA2{=2{aln|>t6rIC&HSh%zHXkPL{;bkpOP;rE{KZvE( zf-(@+LWyhO17F1lBC16+HrMBwYYvdFVJPI&rMXc(qBosImok4niW1ZLiTg}f_sJc? z5v+MlxVqoObrDU@!9~IKM#NaNvQl5cZZaEBKg7=~ZE>VWW3Itw#B93X^U-Ut7pV~T zE?ba1K;Q)dOEx>}Zu8mcQAH4UWsh&C_JM=g`t`h2#} zVzx1#?e{U;oX-wKtYwQwBfe#|qlY8@r2v7$QN(m4=u=)>aCA|%1O?WLk{EAXC!Zg-q0-aYl^t%p zaNB~fcU|}g=6bz?JJ`5tC);W zq=dDw9ya3GK@E~SGPX#Ar2YQ_ld&-(KO^OO12hf<>Vq3!bVp-VFD4FZedFV(v5bQa z2SS!{AgWQlPjiny2%kkmK5a0*9v+XH^%1RHVVR4DKzTL3h!OQCdMIK=1BrFi5b;L> z>hR!j6uCGOl!K0jBKX&(%WwoTlpQ`dc&?8kfklJSKqL_HT~v4q!;x^)^Az!e>xUZC z<<>-MnjV3X4TC|eGHbPw+8b80OJG0e&H_rrh|HZMb0eA znh1??Zz6QYJ*RzWQaI$Az61ld_TRKscqdjq{~lYPY)-CgUe|Ix2%L^Mo)=)_Y`ha^ zLzL&Sc{lc#3Yq+PktIfusF0|sabG_j297*Hja~b?Igd|*9zbQ|)~v&OBtHtapZ!-U zmJhn<*J2%SX4pvOxfi=2pT`JMK_hrEdz^a-@xuP$Go+N|{`iFgmD_RLBEpl zkcjIwbT3pH^v7aQHRw&{TFs#AC454{UkT6X;x_0xCtH0(!a=EXz-Z9? z6w+s)?Im!+^b>7H4buf;xD5O-P16?CMyUasi-PS501wkrgZU4r%=Zh{Q!iNl87cpL zV#(*!8vz$UrjA~a_|L?R>)L5(Z#8}6J)MB(Mf@VDGhia>$(9<4u9c@%pTCv=f{8QSjXmp21-EQnqO!|^X zouj>qpPrkg4k$HLi*p6{@S1T%iPA2Qx>d_73+Wz@x=%Zb2a#A zi7v1`EJ21?0_dkzfVI>j;q?-3k+56BUI~XJOi7rL@G}xlOL#Y+poah#(kl{PpofhZ zV)GQO#d{OA0d`8*0{94Idg(9eW!jG!KCRvYm@#ev=S}?nd5<;-1Dv(uHb~YOcj65H zXOQ_?;8E5(DA$P z*MLF#Z|JF|i^4)bs$x+_!W>z^?~wT25HyQU67VQB0Tuzj zN1vrl+B*`GU_2&ayM%`&oRRP=5`Is@n8K2pelK-sD*!iXKb5cn7g*P!?;Y5|KZkk# z35CT<(JDs8xVTf?Cmt4O#0%mT@s{`^{Tq!4ZH8zuMkOyY5VJ%DM5Rw+E_heO1Y>h~ zk6{JQ<-IREyuWOd%?+VDU6TOfFp}E73?wEnzi#|)Su0yZR*aY#_e5B z`Y24YXNU`GMDU|%9k=Zn>w;i-X>SlrakslsgTO{*+plnkhY7v&}It8 zZ7Jb^Hab;;q&+${KF&HTyggId>|D;4V$sfxW~T=-rE0-}Q~|TI9rw}pai?&!qM?6k za?&Z3?6JN5J=s+0h*QW_D&1Be=6B~SGUX1pXR`LqcA=PYE>qc^XT_-!DpT2yl6A61u0kQq0c_jk9jFg_aSPE6@G`4o6NvwDDAVesS^^bsxMpCQ$W0>OO=M@iVkOT zx{w*4sH!SE6sGXa^yS**5Yy9@3U4~u7#J{`$!1DbwOgk#bEDZQ%)ShpeMNgr#%^)% zWa=|ubB7opWpd-?0O3%>nLNqihO*4|I!b!(nGJM6)vCtsE;lLb4Ko}k^S(u7=9 z`!i#}j!TG8IJC>okAs25z{PGm=M<)QrwYZ1RF)igC4-qF8Rc73MZ3S0Dh)U#u;e1x zSIT&m5}RX3ax9xAL_=0~+l`R-ETayXRI)iI(0IYN^RzpYFIx>CWU*2(mt{`b4e)FZ z+>QyX2pcPJz^UNgDsshP**;6UAMdZAI7 zWe6FDM&S{e8^}3k7hFv0miC}JebmL$oFyokE&(DvOipCd#o6&?Qsa52SgK-`r??xz zS8yi#?ZPo+so56gYB%uh!iVb1$-~PP2ocU}Me52r$G44*S2UG<+f&HoGNsHh)O2L+ zRKCZ_W|3>W5T*TvOv!e`mAopC>O;I7D_2c&GA>eyy-J)-k&uhXruY)$q8x9s;dYq? z$V~=wql<%qqYM#yLY74)_Kx0)sGu!lW4w~~9ywC9OERu@*t~FQ!Yy`ZPOwvuQ1c~9 z!uQnbnB#8cuYMQ)b&WWNou50>nO4<135~1}h1f8e|SGjHHBK*NeI#g=Q&?t96Wq`rQ|k^!rXzPma`<*awM$9$3mpm;`|&9SB>onMfO1PoS#?!97e+GN zp&3)5Es}$N(Eb>tGa^bBEEIxU0yovG^tyvr={T)Lau#V~@m0EI>85HaiV+jF5b>KD z3tQmS)GD&!QWuiuS9I34Y~~b8%7Iv#saQ(LG~7n;o`M6MCcS9YnAR*?SD?@g@p$=x zd!frz-Fmn{4vx)br?II9OTa8sv(R>d8IkSebOEbneWs~%onk%RcId9ikNr1TuiqZM zbhhcuUhyn`!9RtAQG2^Q9cj4#xuo$|2djL`s^P#z)(0)`etqRnpJ`JJT`_`+Vd*4b zyo5m?hXel$8KlCTP=I(U_wjs({KV5Oag#8wb^Ah=TSmG)Im8!c*OgRovkXVS&$2owL zNvy{?`r;G3rQimKba|}8<&+@bP9$hY=3`v>lD~C*vZaOp@I|0O(84mEXx-4<+T7CG zyuP_*qpL)2fVeFd6q>Ua5*x2zr;`fzXYykh({-#+mp65QcreDwS)J&@oGO$?I-T@X4(YQv(v>Ogm>M0C194&bh%w@f-Z~;3Hj=kXaBC9| zDmYT8SCKz9RfcmLM~{k8V~MZWn6aIf;Wn_HH> z!-|9OvnWfDb3nPz)7ouN zDqvFyQW@~aFQe&ZDbtK`yZ_eXmHTH ze7AM*8~HudyB2ifMp(@D*9o~IB-xJ1Id=BoH|7r14pI`g7(ANeo~?xM{(&kTH$$ob zEtN60;^sMt+m)7C$d(iI)S(@Ft0ddxp*34&{YUqiq%lZlp<^RH6$#pf_T#cOdtwqd z$2@{@nt*142!#4asAKCX_PmaCLeV1pDDc6I)i4ALTB_`lm_VgG{Nl(w6 zgR<`kQuQB_o$s;v{z~Ah>junrE8Z3f*Gmj}k2Xu+Z^4*~@Iekyk;Uj^h{(CKFkfd< dMh_JHE`qnat#mUg@2C&bjBFd+xdCo_pWhzOlPWB_a*a*|S7XqUO>m;fI40Xs%oK zS9SD6_~qqKik&YnAD+sUl10~a`Pbf*i+Tp`)LdnlQACaiRAZR8Wa z>i#W6JB3Ok55M&f!Dy%H!eotTC0YuO;c@?M1L`E6PCP_0i7TGn%wYRvIROYh7nKhE z0gLi~rS?f?p?nE?cQevSRAfh-TMiLL!F%v3qTzGfK8#KhnN{s3=xtSWx@;XUgZ||b z0JO=u`gVhoB}sHB?UvjuC}~?K5T0lfPgUuJ^=a3#9SE|mbO;aY3Y-j-ODEB0iBy4C z*smyTn?gE0e+kj)dLkjYA0Hf5l24#ldqg>MA*!x@EjsEG9Vz(MSXpRLl8>NyG!-X` zutaC)zFZ1}87qkrttuTrE6BKlHtJ{%p}MK7r54rME`Spq%IH|cZwyPWGA4((smr+V z<(FRCI0ojTu8~tUbEs&@Ox_EPDNHSbp)i(4TTv?*YaXQ%V9yh>(o#Ci0dKy?AbM#xiowPI^ys@)8wDDQS?qhlkdRt~ClS_*++#Dt=1dMe~il`d#CXf5R6 zmbg-CfVzm0T8OG91TocV1gbiV0G%cPBl@FAXq6FiE&%b5=1LNXX@%-&(Zv+u@e-{% zZ9)qFzbWVc3w_VBVQaA>blr3R^3p@)QlTA;j!uV5~5lBr4B8 zzllEB`+@ol8u-Ze)oBaXvQ+pg4b?W-a_Rrd!!aAN;Bd=HI z$JCcXB%DuK08W|J9m;v$`=A?X9dXK0?%5d_5ILXy3l(PtB&&xq=FAekWn3%4urin61R?CVctfOR z`8+ZfjifGumY!9y3X#N-M}tPwNQ8I%#b|DObtUJab>L&$#uZLZEu0&W7$Z%iH7!f# zi4as_E>IP%r%+=y)dHenIE3aZSH{=; zWF!I0^^zTn*#GzHy=9aMNgQSeM3e?zeGQZ5xcClis$rX!HD;xngUYg) zk42QFK31c6ZBcbrtX7?sOK55!n9x;EGGQPyhtJ8(%!_O1FcYB=v-NY?rpavMTy}U_ z<9Ix@EH-{9ZY~7~A42SC^4P^WjB`bcnz}ifO7mI;aU|CYVUxNPTp4R)n0GD9dj}8) z8!vJVYF_1NLv732D!;F~5QGe6a}d}7KQY%I1l*D4OZMOO{a>ZN!)$LufqAMXpxBN; zT;jgM(40W;_|)06XIG9Xby}TXXQXgm8S;3<;bg!kIz0_rkuu_H(-%ur`uH4u~Z5hPdXl6Gmv^C@8-rlrUSm z;zlCevZg6+#>48^$XEgc#v^iSiJCb6dUP2_Kt}DcQzNGa<8XQ+91q7sYhH+(z)kek z*L>S-8i|^|wHl zAS|ZL^_+(>f5P2`*HpH%EX#0B^t$TR2JKZ^bc5cMa73JeS^FVo&@E!UYS42^L^CKU z;oTCxDVXz~gvTVumiT322lPB8dwp5L4ykj6aYl{M8`?o=`x-cP^k=~9=nZ1{uEb|3 z3H;}J5;6%o16U(rS!G-mXViMSUybS!nkTr|oR#VLvf`fF1$7&iJP2PqL0Ll45*I2rBs0H`Q+m zg+Av~>*=rY4)tF?_2=}A&}jQ|bVI-G#)~3EhkWWqIwc}>e3tr=m`Bh1)Pu%5B0-J3 zgy^?X`-NCQQ$97Wy(bpZ^FFm3)M85E9>J0i=!UYKj{DSqB7v`<=OlHKj#8s?5zWU9 zf+hb%yGU6{hi0iZ>)up32&9~w8lH*hkz>Wm7KdE zsn8z-s^rOhTgp5mWtgMU6M#D1CgsoHDrhk_l|nzzc|;GtU)oT?RkX%p8eL<=Vmdwa zF0f|r^f{@Mp+dL79+lS1UiYXx;;*G`b6eRSkN==RH4J@(@BrfGkD8=h-TD2z*R;c zI6uUD*xQsA1~@5^rFZBH#w5NQY&4Ea{P)oJwEkK81vH!l{`dO5^b}U=Po>UB(d%dW z(~y5xeID?3Xby`B<29Nu@%iBYJ1v&2Y}-6>lJ28ENPdH^LeBV^+9O^kLu-P6HM&9Q zxMkl67^Ry;6sOM3!i1(<0do@O>9fFZl=#gOe~Rt~=LNu8S|GjvyjOe$c%OJcTue96 z(`p*|`Y9!i-2HvP3+QdYX8LEq7D}OYEo}t+B<%p~qA|c7GzB<>6;I>Dx)U&q44h zhn+@dKc3i(|qpSLyiD}!~DCIX(k5%r^ zl**PpINBpw9vq~hsoddmw{xtpd1%-taz`2G9=YR|-JL0CnAn^v=QBk~jpx03f}6Iw zPJWX+IZnfltg_@<6SUd33KKMB=du>{<};JlPA7W=CRtKma%g8}#&SKh+sz#Fupz6w z$+o+AF2hcbo0-8}Z41g7FG;+&J69??rOY_^gI2bjDNF(zn!)t)>A~qjIhVJn%XSJD zd6E|GvZl*!#vZgv&a|7gN;}bK8dhy8FCR#b;FOnByL)$PY~yi;i2iCUy_?+nMrV$IVw7y%P_6JD&ZsV5z9owvtv@ajX z1*B_bvQyNTDNo5wvo|*Z?3jcIfrC4(!Xy}ob*}oXyyMRFW!%zK#wG{e$YF&@#`5M& z$r>tW%EL|>EE(#1$~nJLVsq?BPuMmg3T!!SF9O@Qj3!;nDo|gp5SWS;wXq4XZ~-Tn zJKUHDw`&T)ZeddmI~CmDVBS6*b~A-iG2>bV*yqd4<;m^LDrP0KGZ6LG;T+~{uAp(5 zG6?B{#xZ}n-^n>@xgI8!N<+|`J>p?m-uaZymH~@pm$2=NQ@Lzuc5=DQWWgzwt60IJ z_9Dz&r#NJ}N0D}Bdj!p1h+FRa+JmIv=Kur+C#n+l*v_#n6O$E9fn)pKTs~LM9Ysr* zZDk7mj%_1{_`yhf-CWu70+akEpBhAj91WU^oLx&)W|tDDM`YL%?J3}=0uSW~lO4Cp z{Z8JtpBqmc2^?35(c`i%F|m96T7-m*ooyCxN}BR2r+Bb8Uqn{Up-1jGy98;nP^L`Y zLE`D{U z@x`ifZW8|OZYh607*-ngB1`RZ3R{k6ts3#ED#jK!OMF(+3y^A_90H|6crT0S#2S+ z;uDUb@D5~3M2>(S2c9ND3qZAkSl80l-ny>!vex#t*4B1>e-ot3lZWtI z6xGf-gz$kL_T#j{ivmUV<_Z&-(|T5@%dc6O9li+r<&E%H{)j|hKhO6#p8viI5C2B& z7rqkXhdkm}`tk-m_)V+2#HtD4gG1dzw_ShrAF4kd==$no>0dQJcIUOMqwC83IQQMs z{vFe9d4IQ)oz5eFmG<}K%G;*L_sa=*FgVlqJLA{x_Z_vrV3py})wmn*WabK{ixcBC zv~5${y35EPT0QL#jp;2(EdKPXlXqP6seAupgZnI|5R^9=PX^T7I`|3K;~vENciVPf z2FG{4ltnOD@}!roXIDVUxo)V^h9CfiUu8~IF@egpAgs#!_$;>#&qya$mv^&Y>Q$^f zU5$6DgMeEIZvoVcU)pzp?giZH{pwEN)qeiJtY7C*0fV~3*Tb2^i*KKSsvD1h)(pAO zlf$=7yZ}&v4wEB=K7lt&{!a^O#%N7F7T(~5a} zf9*8RKA=u`N#M=Vp*$7k7&Dkr1{8J)N>aX9alrjg_g=3+o&DA*7*-x&3>y#ANEvP z$`@d>U1j+PkC&ziNZQbGIes+~v=jX&WpDOEk!GazlQad*1gkUPO`(Ooo`qfb<}AnF z?aQ&pdF){InDV^$QEXU+Z>GZc@&rvwFVFRV;5S~2hWE*y>n+b$tALJ1cHfEnhG|pXt^Z6g$fA + WinExe - net8.0-windows + net9.0-windows pkNX.WinForms en Project Pokémon @@ -19,34 +19,34 @@ - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - + + diff --git a/pkNX.sln b/pkNX.sln index 812f399d..af3722fd 100644 --- a/pkNX.sln +++ b/pkNX.sln @@ -27,53 +27,55 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution .editorconfig = .editorconfig EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.Reflection", "pkNX.Structures.FlatBuffers.Reflection\pkNX.Structures.FlatBuffers.Reflection.csproj", "{ECC93A01-CD80-4AF2-AB9F-FE46277571FF}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FlatBuffers", "FlatBuffers", "{8ED95003-D481-4E81-95E9-E44499E1A847}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SWSH", "pkNX.Structures.FlatBuffers.SWSH\pkNX.Structures.FlatBuffers.SWSH.csproj", "{F8916261-B21C-4CFC-B6D8-4179E1CBB730}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers", "FlatBuffers\pkNX.Structures.FlatBuffers\pkNX.Structures.FlatBuffers.csproj", "{7E843D65-0A79-4E6F-A770-A8612096AFEC}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.Arceus", "pkNX.Structures.FlatBuffers.Arceus\pkNX.Structures.FlatBuffers.Arceus.csproj", "{0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "pkNX.Structures.FlatBuffers.SourceGen", "FlatBuffers\pkNX.Structures.FlatBuffers.SourceGen\pkNX.Structures.FlatBuffers.SourceGen.csproj", "{56C9DC36-06E6-400D-B58E-1CCF1D934AD3}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.LGPE", "pkNX.Structures.FlatBuffers.LGPE\pkNX.Structures.FlatBuffers.LGPE.csproj", "{F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.Reflection", "FlatBuffers\pkNX.Structures.FlatBuffers.Reflection\pkNX.Structures.FlatBuffers.Reflection.csproj", "{ECC93A01-CD80-4AF2-AB9F-FE46277571FF}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers", "pkNX.Structures.FlatBuffers\pkNX.Structures.FlatBuffers.csproj", "{7E843D65-0A79-4E6F-A770-A8612096AFEC}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.LGPE", "FlatBuffers\LGPE\pkNX.Structures.FlatBuffers.LGPE.csproj", "{F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Shared", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Shared\pkNX.Structures.FlatBuffers.SV.Shared.csproj", "{96017CC2-78B1-4A1A-B543-2219F692A0FC}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SWSH", "FlatBuffers\SWSH\pkNX.Structures.FlatBuffers.SWSH.csproj", "{F8916261-B21C-4CFC-B6D8-4179E1CBB730}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "pkNX.Structures.FlatBuffers.SV", "pkNX.Structures.FlatBuffers.SV", "{37650547-FB5B-4CB4-A815-8785DB64BA90}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.Arceus", "FlatBuffers\Arceus\pkNX.Structures.FlatBuffers.Arceus.csproj", "{0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Zukan", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Zukan\pkNX.Structures.FlatBuffers.SV.Zukan.csproj", "{7D7FCAB8-B748-4512-8DF9-28C0B27AE0F1}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Shared", "FlatBuffers\SV\Shared\pkNX.Structures.FlatBuffers.SV.Shared.csproj", "{96017CC2-78B1-4A1A-B543-2219F692A0FC}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Balloon", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Balloon\pkNX.Structures.FlatBuffers.SV.Balloon.csproj", "{AB3B2BB3-BE88-47EB-9299-14E2243BC564}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Zukan", "FlatBuffers\SV\Zukan\pkNX.Structures.FlatBuffers.SV.Zukan.csproj", "{7D7FCAB8-B748-4512-8DF9-28C0B27AE0F1}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Battle", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Battle\pkNX.Structures.FlatBuffers.SV.Battle.csproj", "{DF90D20A-1F2E-49D1-AD88-78FCC3D9B000}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Balloon", "FlatBuffers\SV\Balloon\pkNX.Structures.FlatBuffers.SV.Balloon.csproj", "{AB3B2BB3-BE88-47EB-9299-14E2243BC564}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Cooking", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Cooking\pkNX.Structures.FlatBuffers.SV.Cooking.csproj", "{BB7D10EB-6685-42D5-AA0D-C6C5DB8D1F54}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Battle", "FlatBuffers\SV\Battle\pkNX.Structures.FlatBuffers.SV.Battle.csproj", "{DF90D20A-1F2E-49D1-AD88-78FCC3D9B000}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Event", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Event\pkNX.Structures.FlatBuffers.SV.Event.csproj", "{404CD793-A214-47AD-9C65-067FD6F55DDE}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Cooking", "FlatBuffers\SV\Cooking\pkNX.Structures.FlatBuffers.SV.Cooking.csproj", "{BB7D10EB-6685-42D5-AA0D-C6C5DB8D1F54}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Gym", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Gym\pkNX.Structures.FlatBuffers.SV.Gym.csproj", "{73135648-B72F-40CA-AB2E-74BEEF7B4084}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Event", "FlatBuffers\SV\Event\pkNX.Structures.FlatBuffers.SV.Event.csproj", "{404CD793-A214-47AD-9C65-067FD6F55DDE}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Item", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Item\pkNX.Structures.FlatBuffers.SV.Item.csproj", "{C518975C-2E23-456F-8548-748605FB575D}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Gym", "FlatBuffers\SV\Gym\pkNX.Structures.FlatBuffers.SV.Gym.csproj", "{73135648-B72F-40CA-AB2E-74BEEF7B4084}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Misc", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Misc\pkNX.Structures.FlatBuffers.SV.Misc.csproj", "{25DE5B0B-5A35-4003-A4AD-36E783DCBFFC}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Item", "FlatBuffers\SV\Item\pkNX.Structures.FlatBuffers.SV.Item.csproj", "{C518975C-2E23-456F-8548-748605FB575D}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Personal", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Personal\pkNX.Structures.FlatBuffers.SV.Personal.csproj", "{DA78EBE9-394D-45F8-A9A2-8EB6036C109E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Misc", "FlatBuffers\SV\Misc\pkNX.Structures.FlatBuffers.SV.Misc.csproj", "{25DE5B0B-5A35-4003-A4AD-36E783DCBFFC}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Picnic", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Picnic\pkNX.Structures.FlatBuffers.SV.Picnic.csproj", "{073247D9-342E-4C76-9D35-A2BA2701AABA}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Personal", "FlatBuffers\SV\Personal\pkNX.Structures.FlatBuffers.SV.Personal.csproj", "{DA78EBE9-394D-45F8-A9A2-8EB6036C109E}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Raid", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Raid\pkNX.Structures.FlatBuffers.SV.Raid.csproj", "{6D1E1751-E941-46F2-B703-E8EDF29565E6}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Picnic", "FlatBuffers\SV\Picnic\pkNX.Structures.FlatBuffers.SV.Picnic.csproj", "{073247D9-342E-4C76-9D35-A2BA2701AABA}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Trainers", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Trainers\pkNX.Structures.FlatBuffers.SV.Trainers.csproj", "{E21AB1FD-B4B8-4973-AB91-38C348C28E02}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Raid", "FlatBuffers\SV\Raid\pkNX.Structures.FlatBuffers.SV.Raid.csproj", "{6D1E1751-E941-46F2-B703-E8EDF29565E6}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Trinity", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Trinity\pkNX.Structures.FlatBuffers.SV.Trinity.csproj", "{989E1CDE-4A35-44D0-A142-B9DF7C3401CF}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Trainers", "FlatBuffers\SV\Trainers\pkNX.Structures.FlatBuffers.SV.Trainers.csproj", "{E21AB1FD-B4B8-4973-AB91-38C348C28E02}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.UI", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.UI\pkNX.Structures.FlatBuffers.SV.UI.csproj", "{8338BBC7-8F59-4C51-BEF0-665F53403A8C}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Trinity", "FlatBuffers\SV\Trinity\pkNX.Structures.FlatBuffers.SV.Trinity.csproj", "{989E1CDE-4A35-44D0-A142-B9DF7C3401CF}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Waza", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Waza\pkNX.Structures.FlatBuffers.SV.Waza.csproj", "{BB73E54A-20F9-44BA-B6E2-7C7E2C22CA77}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.UI", "FlatBuffers\SV\UI\pkNX.Structures.FlatBuffers.SV.UI.csproj", "{8338BBC7-8F59-4C51-BEF0-665F53403A8C}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.World", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.World\pkNX.Structures.FlatBuffers.SV.World.csproj", "{1B561015-5A83-422D-A75F-A1A2FC756C8D}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Waza", "FlatBuffers\SV\Waza\pkNX.Structures.FlatBuffers.SV.Waza.csproj", "{BB73E54A-20F9-44BA-B6E2-7C7E2C22CA77}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Audio", "pkNX.Structures.FlatBuffers.SV\pkNX.Structures.FlatBuffers.SV.Audio\pkNX.Structures.FlatBuffers.SV.Audio.csproj", "{97BC69AF-3CE9-48BC-A2AC-197D43184821}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.World", "FlatBuffers\SV\World\pkNX.Structures.FlatBuffers.SV.World.csproj", "{1B561015-5A83-422D-A75F-A1A2FC756C8D}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Structures.FlatBuffers.SV.Audio", "FlatBuffers\SV\Audio\pkNX.Structures.FlatBuffers.SV.Audio.csproj", "{97BC69AF-3CE9-48BC-A2AC-197D43184821}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{D571A50B-59B6-4DA6-9184-0C1A546D7137}" EndProject @@ -81,6 +83,16 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Tests.Trinity", "pkNX. EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "pkNX.Tests.FileSystem", "pkNX.Tests\pkNX.Tests.FileSystem\pkNX.Tests.FileSystem.csproj", "{E83E7B1A-1E56-4C2D-A704-A20003CDCAAF}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SV", "SV", "{F82C6DE0-48A5-45C5-AC50-3D0352ED2242}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Arceus", "Arceus", "{BD736B77-78CD-4E96-A31C-FA157E9D1B11}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "LGPE", "LGPE", "{79B294E4-9990-46D6-9014-788BE234792B}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SWSH", "SWSH", "{AF239399-CBF9-4EB3-8B18-F10ACC9C4E1D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "pkNX.Tests.SourceGen", "pkNX.Tests\pkNX.Tests.SourceGen\pkNX.Tests.SourceGen.csproj", "{A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -107,10 +119,22 @@ Global {3C4AF1ED-7C81-4AF8-A6DB-1D397650DA0A}.Debug|Any CPU.Build.0 = Debug|Any CPU {3C4AF1ED-7C81-4AF8-A6DB-1D397650DA0A}.Release|Any CPU.ActiveCfg = Release|Any CPU {3C4AF1ED-7C81-4AF8-A6DB-1D397650DA0A}.Release|Any CPU.Build.0 = Release|Any CPU + {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Release|Any CPU.Build.0 = Release|Any CPU + {56C9DC36-06E6-400D-B58E-1CCF1D934AD3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {56C9DC36-06E6-400D-B58E-1CCF1D934AD3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56C9DC36-06E6-400D-B58E-1CCF1D934AD3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {56C9DC36-06E6-400D-B58E-1CCF1D934AD3}.Release|Any CPU.Build.0 = Release|Any CPU {ECC93A01-CD80-4AF2-AB9F-FE46277571FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ECC93A01-CD80-4AF2-AB9F-FE46277571FF}.Debug|Any CPU.Build.0 = Debug|Any CPU {ECC93A01-CD80-4AF2-AB9F-FE46277571FF}.Release|Any CPU.ActiveCfg = Release|Any CPU {ECC93A01-CD80-4AF2-AB9F-FE46277571FF}.Release|Any CPU.Build.0 = Release|Any CPU + {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Release|Any CPU.Build.0 = Release|Any CPU {F8916261-B21C-4CFC-B6D8-4179E1CBB730}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {F8916261-B21C-4CFC-B6D8-4179E1CBB730}.Debug|Any CPU.Build.0 = Debug|Any CPU {F8916261-B21C-4CFC-B6D8-4179E1CBB730}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -119,14 +143,6 @@ Global {0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4}.Debug|Any CPU.Build.0 = Debug|Any CPU {0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4}.Release|Any CPU.ActiveCfg = Release|Any CPU {0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4}.Release|Any CPU.Build.0 = Release|Any CPU - {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487}.Release|Any CPU.Build.0 = Release|Any CPU - {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7E843D65-0A79-4E6F-A770-A8612096AFEC}.Release|Any CPU.Build.0 = Release|Any CPU {96017CC2-78B1-4A1A-B543-2219F692A0FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {96017CC2-78B1-4A1A-B543-2219F692A0FC}.Debug|Any CPU.Build.0 = Debug|Any CPU {96017CC2-78B1-4A1A-B543-2219F692A0FC}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -207,31 +223,46 @@ Global {E83E7B1A-1E56-4C2D-A704-A20003CDCAAF}.Debug|Any CPU.Build.0 = Debug|Any CPU {E83E7B1A-1E56-4C2D-A704-A20003CDCAAF}.Release|Any CPU.ActiveCfg = Release|Any CPU {E83E7B1A-1E56-4C2D-A704-A20003CDCAAF}.Release|Any CPU.Build.0 = Release|Any CPU + {A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {96017CC2-78B1-4A1A-B543-2219F692A0FC} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {7D7FCAB8-B748-4512-8DF9-28C0B27AE0F1} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {AB3B2BB3-BE88-47EB-9299-14E2243BC564} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {DF90D20A-1F2E-49D1-AD88-78FCC3D9B000} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {BB7D10EB-6685-42D5-AA0D-C6C5DB8D1F54} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {404CD793-A214-47AD-9C65-067FD6F55DDE} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {73135648-B72F-40CA-AB2E-74BEEF7B4084} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {C518975C-2E23-456F-8548-748605FB575D} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {25DE5B0B-5A35-4003-A4AD-36E783DCBFFC} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {DA78EBE9-394D-45F8-A9A2-8EB6036C109E} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {073247D9-342E-4C76-9D35-A2BA2701AABA} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {6D1E1751-E941-46F2-B703-E8EDF29565E6} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {E21AB1FD-B4B8-4973-AB91-38C348C28E02} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {989E1CDE-4A35-44D0-A142-B9DF7C3401CF} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {8338BBC7-8F59-4C51-BEF0-665F53403A8C} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {BB73E54A-20F9-44BA-B6E2-7C7E2C22CA77} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {1B561015-5A83-422D-A75F-A1A2FC756C8D} = {37650547-FB5B-4CB4-A815-8785DB64BA90} - {97BC69AF-3CE9-48BC-A2AC-197D43184821} = {37650547-FB5B-4CB4-A815-8785DB64BA90} + {7E843D65-0A79-4E6F-A770-A8612096AFEC} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {56C9DC36-06E6-400D-B58E-1CCF1D934AD3} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {ECC93A01-CD80-4AF2-AB9F-FE46277571FF} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {F9EAEF82-BBB2-4520-B59E-3EB74A4C7487} = {79B294E4-9990-46D6-9014-788BE234792B} + {F8916261-B21C-4CFC-B6D8-4179E1CBB730} = {AF239399-CBF9-4EB3-8B18-F10ACC9C4E1D} + {0ECF2003-0E48-4C6D-B11E-EA6199FFA8D4} = {BD736B77-78CD-4E96-A31C-FA157E9D1B11} + {96017CC2-78B1-4A1A-B543-2219F692A0FC} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {7D7FCAB8-B748-4512-8DF9-28C0B27AE0F1} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {AB3B2BB3-BE88-47EB-9299-14E2243BC564} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {DF90D20A-1F2E-49D1-AD88-78FCC3D9B000} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {BB7D10EB-6685-42D5-AA0D-C6C5DB8D1F54} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {404CD793-A214-47AD-9C65-067FD6F55DDE} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {73135648-B72F-40CA-AB2E-74BEEF7B4084} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {C518975C-2E23-456F-8548-748605FB575D} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {25DE5B0B-5A35-4003-A4AD-36E783DCBFFC} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {DA78EBE9-394D-45F8-A9A2-8EB6036C109E} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {073247D9-342E-4C76-9D35-A2BA2701AABA} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {6D1E1751-E941-46F2-B703-E8EDF29565E6} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {E21AB1FD-B4B8-4973-AB91-38C348C28E02} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {989E1CDE-4A35-44D0-A142-B9DF7C3401CF} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {8338BBC7-8F59-4C51-BEF0-665F53403A8C} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {BB73E54A-20F9-44BA-B6E2-7C7E2C22CA77} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {1B561015-5A83-422D-A75F-A1A2FC756C8D} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} + {97BC69AF-3CE9-48BC-A2AC-197D43184821} = {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} {7530A87C-4D49-41C4-8526-AAC6CBCCBA0B} = {D571A50B-59B6-4DA6-9184-0C1A546D7137} {E83E7B1A-1E56-4C2D-A704-A20003CDCAAF} = {D571A50B-59B6-4DA6-9184-0C1A546D7137} + {F82C6DE0-48A5-45C5-AC50-3D0352ED2242} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {BD736B77-78CD-4E96-A31C-FA157E9D1B11} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {79B294E4-9990-46D6-9014-788BE234792B} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {AF239399-CBF9-4EB3-8B18-F10ACC9C4E1D} = {8ED95003-D481-4E81-95E9-E44499E1A847} + {A3BF4AE5-59B0-44DB-A5D9-30C51BBEC5A1} = {D571A50B-59B6-4DA6-9184-0C1A546D7137} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {3EB083E9-2376-4061-91EB-BA8DC7F2712F}