diff --git a/.gitignore b/.gitignore index 8a30d25..baff175 100644 --- a/.gitignore +++ b/.gitignore @@ -396,3 +396,7 @@ FodyWeavers.xsd # JetBrains Rider *.sln.iml + +# Squad +.copilot +.squad diff --git a/src/Configuration/ServerOptions.cs b/src/Configuration/ServerOptions.cs new file mode 100644 index 0000000..c72b8a1 --- /dev/null +++ b/src/Configuration/ServerOptions.cs @@ -0,0 +1,21 @@ +namespace MariesWonderland.Configuration; + +public sealed class ServerOptions +{ + public const string SectionName = "Server"; + + public PathsOptions Paths { get; init; } = new(); + public DataOptions Data { get; init; } = new(); +} + +public sealed class PathsOptions +{ + public string AssetDatabase { get; init; } = string.Empty; + public string MasterDatabase { get; init; } = string.Empty; +} + +public sealed class DataOptions +{ + public string LatestMasterDataVersion { get; init; } = string.Empty; + public string UserDataBasePath { get; init; } = string.Empty; +} diff --git a/src/Data/DarkMasterMemoryDatabase.cs b/src/Data/DarkMasterMemoryDatabase.cs new file mode 100644 index 0000000..ef535ed --- /dev/null +++ b/src/Data/DarkMasterMemoryDatabase.cs @@ -0,0 +1,1220 @@ +using MariesWonderland.Models.Tables; + +namespace NierReincarnation.Core.Dark; + +public sealed class DarkMasterMemoryDatabase +{ + public EntityMAbilityTable EntityMAbilityTable { get; } + + public EntityMAbilityBehaviourTable EntityMAbilityBehaviourTable { get; } + + public EntityMAbilityBehaviourActionBlessTable EntityMAbilityBehaviourActionBlessTable { get; } + + public EntityMAbilityBehaviourActionPassiveSkillTable EntityMAbilityBehaviourActionPassiveSkillTable { get; } + + public EntityMAbilityBehaviourActionStatusTable EntityMAbilityBehaviourActionStatusTable { get; } + + public EntityMAbilityBehaviourActionStatusDownTable EntityMAbilityBehaviourActionStatusDownTable { get; } + + public EntityMAbilityBehaviourGroupTable EntityMAbilityBehaviourGroupTable { get; } + + public EntityMAbilityDetailTable EntityMAbilityDetailTable { get; } + + public EntityMAbilityLevelGroupTable EntityMAbilityLevelGroupTable { get; } + + public EntityMAbilityStatusTable EntityMAbilityStatusTable { get; } + + public EntityMActorTable EntityMActorTable { get; } + + public EntityMActorAnimationTable EntityMActorAnimationTable { get; } + + public EntityMActorAnimationCategoryTable EntityMActorAnimationCategoryTable { get; } + + public EntityMActorAnimationControllerTable EntityMActorAnimationControllerTable { get; } + + public EntityMActorObjectTable EntityMActorObjectTable { get; } + + public EntityMAppealDialogTable EntityMAppealDialogTable { get; } + + public EntityMAssetBackgroundTable EntityMAssetBackgroundTable { get; } + + public EntityMAssetCalculatorTable EntityMAssetCalculatorTable { get; } + + public EntityMAssetDataSettingTable EntityMAssetDataSettingTable { get; } + + public EntityMAssetEffectTable EntityMAssetEffectTable { get; } + + public EntityMAssetGradeIconTable EntityMAssetGradeIconTable { get; } + + public EntityMAssetTimelineTable EntityMAssetTimelineTable { get; } + + public EntityMAssetTurnbattlePrefabTable EntityMAssetTurnbattlePrefabTable { get; } + + public EntityMBattleTable EntityMBattleTable { get; } + + public EntityMBattleActorAiTable EntityMBattleActorAiTable { get; } + + public EntityMBattleActorSkillAiGroupTable EntityMBattleActorSkillAiGroupTable { get; } + + public EntityMBattleAdditionalAbilityTable EntityMBattleAdditionalAbilityTable { get; } + + public EntityMBattleAttributeDamageCoefficientDefineTable EntityMBattleAttributeDamageCoefficientDefineTable { get; } + + public EntityMBattleAttributeDamageCoefficientGroupTable EntityMBattleAttributeDamageCoefficientGroupTable { get; } + + public EntityMBattleBgmSetTable EntityMBattleBgmSetTable { get; } + + public EntityMBattleBgmSetGroupTable EntityMBattleBgmSetGroupTable { get; } + + public EntityMBattleBigHuntTable EntityMBattleBigHuntTable { get; } + + public EntityMBattleBigHuntDamageThresholdGroupTable EntityMBattleBigHuntDamageThresholdGroupTable { get; } + + public EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable { get; } + + public EntityMBattleBigHuntPhaseGroupTable EntityMBattleBigHuntPhaseGroupTable { get; } + + public EntityMBattleCompanionSkillAiGroupTable EntityMBattleCompanionSkillAiGroupTable { get; } + + public EntityMBattleCostumeSkillFireActTable EntityMBattleCostumeSkillFireActTable { get; } + + public EntityMBattleCostumeSkillSeTable EntityMBattleCostumeSkillSeTable { get; } + + public EntityMBattleDropRewardTable EntityMBattleDropRewardTable { get; } + + public EntityMBattleEnemySizeTypeConfigTable EntityMBattleEnemySizeTypeConfigTable { get; } + + public EntityMBattleEventTable EntityMBattleEventTable { get; } + + public EntityMBattleEventGroupTable EntityMBattleEventGroupTable { get; } + + public EntityMBattleEventReceiverBehaviourGroupTable EntityMBattleEventReceiverBehaviourGroupTable { get; } + + public EntityMBattleEventReceiverBehaviourHudActSequenceTable EntityMBattleEventReceiverBehaviourHudActSequenceTable { get; } + + public EntityMBattleEventReceiverBehaviourRadioMessageTable EntityMBattleEventReceiverBehaviourRadioMessageTable { get; } + + public EntityMBattleEventTriggerBehaviourBattleStartTable EntityMBattleEventTriggerBehaviourBattleStartTable { get; } + + public EntityMBattleEventTriggerBehaviourGroupTable EntityMBattleEventTriggerBehaviourGroupTable { get; } + + public EntityMBattleEventTriggerBehaviourWaveStartTable EntityMBattleEventTriggerBehaviourWaveStartTable { get; } + + public EntityMBattleGeneralViewConfigurationTable EntityMBattleGeneralViewConfigurationTable { get; } + + public EntityMBattleGroupTable EntityMBattleGroupTable { get; } + + public EntityMBattleNpcTable EntityMBattleNpcTable { get; } + + public EntityMBattleNpcCharacterTable EntityMBattleNpcCharacterTable { get; } + + public EntityMBattleNpcCharacterBoardTable EntityMBattleNpcCharacterBoardTable { get; } + + public EntityMBattleNpcCharacterBoardAbilityTable EntityMBattleNpcCharacterBoardAbilityTable { get; } + + public EntityMBattleNpcCharacterBoardCompleteRewardTable EntityMBattleNpcCharacterBoardCompleteRewardTable { get; } + + public EntityMBattleNpcCharacterBoardStatusUpTable EntityMBattleNpcCharacterBoardStatusUpTable { get; } + + public EntityMBattleNpcCharacterCostumeLevelBonusTable EntityMBattleNpcCharacterCostumeLevelBonusTable { get; } + + public EntityMBattleNpcCharacterRebirthTable EntityMBattleNpcCharacterRebirthTable { get; } + + public EntityMBattleNpcCharacterViewerFieldTable EntityMBattleNpcCharacterViewerFieldTable { get; } + + public EntityMBattleNpcCompanionTable EntityMBattleNpcCompanionTable { get; } + + public EntityMBattleNpcCostumeTable EntityMBattleNpcCostumeTable { get; } + + public EntityMBattleNpcCostumeActiveSkillTable EntityMBattleNpcCostumeActiveSkillTable { get; } + + public EntityMBattleNpcCostumeAwakenStatusUpTable EntityMBattleNpcCostumeAwakenStatusUpTable { get; } + + public EntityMBattleNpcCostumeLevelBonusReevaluateTable EntityMBattleNpcCostumeLevelBonusReevaluateTable { get; } + + public EntityMBattleNpcCostumeLevelBonusReleaseStatusTable EntityMBattleNpcCostumeLevelBonusReleaseStatusTable { get; } + + public EntityMBattleNpcCostumeLotteryEffectTable EntityMBattleNpcCostumeLotteryEffectTable { get; } + + public EntityMBattleNpcCostumeLotteryEffectAbilityTable EntityMBattleNpcCostumeLotteryEffectAbilityTable { get; } + + public EntityMBattleNpcCostumeLotteryEffectPendingTable EntityMBattleNpcCostumeLotteryEffectPendingTable { get; } + + public EntityMBattleNpcCostumeLotteryEffectStatusUpTable EntityMBattleNpcCostumeLotteryEffectStatusUpTable { get; } + + public EntityMBattleNpcDeckTable EntityMBattleNpcDeckTable { get; } + + public EntityMBattleNpcDeckBackupTable EntityMBattleNpcDeckBackupTable { get; } + + public EntityMBattleNpcDeckCharacterTable EntityMBattleNpcDeckCharacterTable { get; } + + public EntityMBattleNpcDeckCharacterDressupCostumeTable EntityMBattleNpcDeckCharacterDressupCostumeTable { get; } + + public EntityMBattleNpcDeckCharacterDropCategoryTable EntityMBattleNpcDeckCharacterDropCategoryTable { get; } + + public EntityMBattleNpcDeckCharacterTypeTable EntityMBattleNpcDeckCharacterTypeTable { get; } + + public EntityMBattleNpcDeckLimitContentBackupTable EntityMBattleNpcDeckLimitContentBackupTable { get; } + + public EntityMBattleNpcDeckLimitContentBackupRestoredTable EntityMBattleNpcDeckLimitContentBackupRestoredTable { get; } + + public EntityMBattleNpcDeckLimitContentDeletedCharacterTable EntityMBattleNpcDeckLimitContentDeletedCharacterTable { get; } + + public EntityMBattleNpcDeckLimitContentRestrictedTable EntityMBattleNpcDeckLimitContentRestrictedTable { get; } + + public EntityMBattleNpcDeckPartsGroupTable EntityMBattleNpcDeckPartsGroupTable { get; } + + public EntityMBattleNpcDeckSubWeaponGroupTable EntityMBattleNpcDeckSubWeaponGroupTable { get; } + + public EntityMBattleNpcDeckTypeNoteTable EntityMBattleNpcDeckTypeNoteTable { get; } + + public EntityMBattleNpcPartsTable EntityMBattleNpcPartsTable { get; } + + public EntityMBattleNpcPartsGroupNoteTable EntityMBattleNpcPartsGroupNoteTable { get; } + + public EntityMBattleNpcPartsPresetTable EntityMBattleNpcPartsPresetTable { get; } + + public EntityMBattleNpcPartsPresetTagTable EntityMBattleNpcPartsPresetTagTable { get; } + + public EntityMBattleNpcPartsStatusSubTable EntityMBattleNpcPartsStatusSubTable { get; } + + public EntityMBattleNpcSpecialEndActTable EntityMBattleNpcSpecialEndActTable { get; } + + public EntityMBattleNpcWeaponTable EntityMBattleNpcWeaponTable { get; } + + public EntityMBattleNpcWeaponAbilityTable EntityMBattleNpcWeaponAbilityTable { get; } + + public EntityMBattleNpcWeaponAbilityReevaluateTable EntityMBattleNpcWeaponAbilityReevaluateTable { get; } + + public EntityMBattleNpcWeaponAwakenTable EntityMBattleNpcWeaponAwakenTable { get; } + + public EntityMBattleNpcWeaponNoteTable EntityMBattleNpcWeaponNoteTable { get; } + + public EntityMBattleNpcWeaponNoteReevaluateTable EntityMBattleNpcWeaponNoteReevaluateTable { get; } + + public EntityMBattleNpcWeaponSkillTable EntityMBattleNpcWeaponSkillTable { get; } + + public EntityMBattleNpcWeaponStoryTable EntityMBattleNpcWeaponStoryTable { get; } + + public EntityMBattleNpcWeaponStoryReevaluateTable EntityMBattleNpcWeaponStoryReevaluateTable { get; } + + public EntityMBattleProgressUiTypeTable EntityMBattleProgressUiTypeTable { get; } + + public EntityMBattleQuestSceneBgmTable EntityMBattleQuestSceneBgmTable { get; } + + public EntityMBattleQuestSceneBgmSetGroupTable EntityMBattleQuestSceneBgmSetGroupTable { get; } + + public EntityMBattleRentalDeckTable EntityMBattleRentalDeckTable { get; } + + public EntityMBattleSkillBehaviourHitDamageConfigurationTable EntityMBattleSkillBehaviourHitDamageConfigurationTable { get; } + + public EntityMBattleSkillFireActTable EntityMBattleSkillFireActTable { get; } + + public EntityMBattleSkillFireActConditionAttributeTypeTable EntityMBattleSkillFireActConditionAttributeTypeTable { get; } + + public EntityMBattleSkillFireActConditionGroupTable EntityMBattleSkillFireActConditionGroupTable { get; } + + public EntityMBattleSkillFireActConditionSkillCategoryTypeTable EntityMBattleSkillFireActConditionSkillCategoryTypeTable { get; } + + public EntityMBattleSkillFireActConditionWeaponTypeTable EntityMBattleSkillFireActConditionWeaponTypeTable { get; } + + public EntityMBeginnerCampaignTable EntityMBeginnerCampaignTable { get; } + + public EntityMBigHuntBossTable EntityMBigHuntBossTable { get; } + + public EntityMBigHuntBossGradeGroupTable EntityMBigHuntBossGradeGroupTable { get; } + + public EntityMBigHuntBossGradeGroupAttributeTable EntityMBigHuntBossGradeGroupAttributeTable { get; } + + public EntityMBigHuntBossQuestTable EntityMBigHuntBossQuestTable { get; } + + public EntityMBigHuntBossQuestGroupTable EntityMBigHuntBossQuestGroupTable { get; } + + public EntityMBigHuntBossQuestGroupChallengeCategoryTable EntityMBigHuntBossQuestGroupChallengeCategoryTable { get; } + + public EntityMBigHuntLinkTable EntityMBigHuntLinkTable { get; } + + public EntityMBigHuntQuestTable EntityMBigHuntQuestTable { get; } + + public EntityMBigHuntQuestGroupTable EntityMBigHuntQuestGroupTable { get; } + + public EntityMBigHuntQuestScoreCoefficientTable EntityMBigHuntQuestScoreCoefficientTable { get; } + + public EntityMBigHuntRewardGroupTable EntityMBigHuntRewardGroupTable { get; } + + public EntityMBigHuntScheduleTable EntityMBigHuntScheduleTable { get; } + + public EntityMBigHuntScoreRewardGroupTable EntityMBigHuntScoreRewardGroupTable { get; } + + public EntityMBigHuntScoreRewardGroupScheduleTable EntityMBigHuntScoreRewardGroupScheduleTable { get; } + + public EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable { get; } + + public EntityMCageMemoryTable EntityMCageMemoryTable { get; } + + public EntityMCageOrnamentTable EntityMCageOrnamentTable { get; } + + public EntityMCageOrnamentMainQuestChapterStillTable EntityMCageOrnamentMainQuestChapterStillTable { get; } + + public EntityMCageOrnamentRewardTable EntityMCageOrnamentRewardTable { get; } + + public EntityMCageOrnamentStillReleaseConditionTable EntityMCageOrnamentStillReleaseConditionTable { get; } + + public EntityMCatalogCompanionTable EntityMCatalogCompanionTable { get; } + + public EntityMCatalogCostumeTable EntityMCatalogCostumeTable { get; } + + public EntityMCatalogPartsGroupTable EntityMCatalogPartsGroupTable { get; } + + public EntityMCatalogTermTable EntityMCatalogTermTable { get; } + + public EntityMCatalogThoughtTable EntityMCatalogThoughtTable { get; } + + public EntityMCatalogWeaponTable EntityMCatalogWeaponTable { get; } + + public EntityMCharacterTable EntityMCharacterTable { get; } + + public EntityMCharacterBoardTable EntityMCharacterBoardTable { get; } + + public EntityMCharacterBoardAbilityTable EntityMCharacterBoardAbilityTable { get; } + + public EntityMCharacterBoardAbilityMaxLevelTable EntityMCharacterBoardAbilityMaxLevelTable { get; } + + public EntityMCharacterBoardAssignmentTable EntityMCharacterBoardAssignmentTable { get; } + + public EntityMCharacterBoardCategoryTable EntityMCharacterBoardCategoryTable { get; } + + public EntityMCharacterBoardCompleteRewardTable EntityMCharacterBoardCompleteRewardTable { get; } + + public EntityMCharacterBoardCompleteRewardGroupTable EntityMCharacterBoardCompleteRewardGroupTable { get; } + + public EntityMCharacterBoardConditionTable EntityMCharacterBoardConditionTable { get; } + + public EntityMCharacterBoardConditionDetailTable EntityMCharacterBoardConditionDetailTable { get; } + + public EntityMCharacterBoardConditionGroupTable EntityMCharacterBoardConditionGroupTable { get; } + + public EntityMCharacterBoardConditionIgnoreTable EntityMCharacterBoardConditionIgnoreTable { get; } + + public EntityMCharacterBoardEffectTargetGroupTable EntityMCharacterBoardEffectTargetGroupTable { get; } + + public EntityMCharacterBoardGroupTable EntityMCharacterBoardGroupTable { get; } + + public EntityMCharacterBoardPanelTable EntityMCharacterBoardPanelTable { get; } + + public EntityMCharacterBoardPanelReleaseEffectGroupTable EntityMCharacterBoardPanelReleaseEffectGroupTable { get; } + + public EntityMCharacterBoardPanelReleasePossessionGroupTable EntityMCharacterBoardPanelReleasePossessionGroupTable { get; } + + public EntityMCharacterBoardPanelReleaseRewardGroupTable EntityMCharacterBoardPanelReleaseRewardGroupTable { get; } + + public EntityMCharacterBoardStatusUpTable EntityMCharacterBoardStatusUpTable { get; } + + public EntityMCharacterDisplaySwitchTable EntityMCharacterDisplaySwitchTable { get; } + + public EntityMCharacterLevelBonusAbilityGroupTable EntityMCharacterLevelBonusAbilityGroupTable { get; } + + public EntityMCharacterRebirthTable EntityMCharacterRebirthTable { get; } + + public EntityMCharacterRebirthMaterialGroupTable EntityMCharacterRebirthMaterialGroupTable { get; } + + public EntityMCharacterRebirthStepGroupTable EntityMCharacterRebirthStepGroupTable { get; } + + public EntityMCharacterViewerActorIconTable EntityMCharacterViewerActorIconTable { get; } + + public EntityMCharacterViewerFieldTable EntityMCharacterViewerFieldTable { get; } + + public EntityMCharacterViewerFieldSettingsTable EntityMCharacterViewerFieldSettingsTable { get; } + + public EntityMCharacterVoiceUnlockConditionTable EntityMCharacterVoiceUnlockConditionTable { get; } + + public EntityMCollectionBonusEffectTable EntityMCollectionBonusEffectTable { get; } + + public EntityMCollectionBonusQuestAssignmentTable EntityMCollectionBonusQuestAssignmentTable { get; } + + public EntityMCollectionBonusQuestAssignmentGroupTable EntityMCollectionBonusQuestAssignmentGroupTable { get; } + + public EntityMComboCalculationSettingTable EntityMComboCalculationSettingTable { get; } + + public EntityMComebackCampaignTable EntityMComebackCampaignTable { get; } + + public EntityMCompanionTable EntityMCompanionTable { get; } + + public EntityMCompanionAbilityGroupTable EntityMCompanionAbilityGroupTable { get; } + + public EntityMCompanionAbilityLevelTable EntityMCompanionAbilityLevelTable { get; } + + public EntityMCompanionBaseStatusTable EntityMCompanionBaseStatusTable { get; } + + public EntityMCompanionCategoryTable EntityMCompanionCategoryTable { get; } + + public EntityMCompanionDuplicationExchangePossessionGroupTable EntityMCompanionDuplicationExchangePossessionGroupTable { get; } + + public EntityMCompanionEnhancedTable EntityMCompanionEnhancedTable { get; } + + public EntityMCompanionEnhancementMaterialTable EntityMCompanionEnhancementMaterialTable { get; } + + public EntityMCompanionSkillLevelTable EntityMCompanionSkillLevelTable { get; } + + public EntityMCompanionStatusCalculationTable EntityMCompanionStatusCalculationTable { get; } + + public EntityMCompleteMissionGroupTable EntityMCompleteMissionGroupTable { get; } + + public EntityMConfigTable EntityMConfigTable { get; } + + public EntityMConsumableItemTable EntityMConsumableItemTable { get; } + + public EntityMConsumableItemEffectTable EntityMConsumableItemEffectTable { get; } + + public EntityMConsumableItemTermTable EntityMConsumableItemTermTable { get; } + + public EntityMContentsStoryTable EntityMContentsStoryTable { get; } + + public EntityMCostumeTable EntityMCostumeTable { get; } + + public EntityMCostumeAbilityGroupTable EntityMCostumeAbilityGroupTable { get; } + + public EntityMCostumeAbilityLevelGroupTable EntityMCostumeAbilityLevelGroupTable { get; } + + public EntityMCostumeActiveSkillEnhancementMaterialTable EntityMCostumeActiveSkillEnhancementMaterialTable { get; } + + public EntityMCostumeActiveSkillGroupTable EntityMCostumeActiveSkillGroupTable { get; } + + public EntityMCostumeAnimationStepTable EntityMCostumeAnimationStepTable { get; } + + public EntityMCostumeAutoOrganizationConditionTable EntityMCostumeAutoOrganizationConditionTable { get; } + + public EntityMCostumeAwakenTable EntityMCostumeAwakenTable { get; } + + public EntityMCostumeAwakenAbilityTable EntityMCostumeAwakenAbilityTable { get; } + + public EntityMCostumeAwakenEffectGroupTable EntityMCostumeAwakenEffectGroupTable { get; } + + public EntityMCostumeAwakenItemAcquireTable EntityMCostumeAwakenItemAcquireTable { get; } + + public EntityMCostumeAwakenMaterialGroupTable EntityMCostumeAwakenMaterialGroupTable { get; } + + public EntityMCostumeAwakenPriceGroupTable EntityMCostumeAwakenPriceGroupTable { get; } + + public EntityMCostumeAwakenStatusUpGroupTable EntityMCostumeAwakenStatusUpGroupTable { get; } + + public EntityMCostumeAwakenStepMaterialGroupTable EntityMCostumeAwakenStepMaterialGroupTable { get; } + + public EntityMCostumeBaseStatusTable EntityMCostumeBaseStatusTable { get; } + + public EntityMCostumeCollectionBonusTable EntityMCostumeCollectionBonusTable { get; } + + public EntityMCostumeCollectionBonusGroupTable EntityMCostumeCollectionBonusGroupTable { get; } + + public EntityMCostumeDefaultSkillGroupTable EntityMCostumeDefaultSkillGroupTable { get; } + + public EntityMCostumeDefaultSkillLotteryGroupTable EntityMCostumeDefaultSkillLotteryGroupTable { get; } + + public EntityMCostumeDeleteTable EntityMCostumeDeleteTable { get; } + + public EntityMCostumeDisplayCoordinateAdjustmentTable EntityMCostumeDisplayCoordinateAdjustmentTable { get; } + + public EntityMCostumeDisplaySwitchTable EntityMCostumeDisplaySwitchTable { get; } + + public EntityMCostumeDuplicationExchangePossessionGroupTable EntityMCostumeDuplicationExchangePossessionGroupTable { get; } + + public EntityMCostumeEmblemTable EntityMCostumeEmblemTable { get; } + + public EntityMCostumeEnhancedTable EntityMCostumeEnhancedTable { get; } + + public EntityMCostumeLevelBonusTable EntityMCostumeLevelBonusTable { get; } + + public EntityMCostumeLimitBreakMaterialGroupTable EntityMCostumeLimitBreakMaterialGroupTable { get; } + + public EntityMCostumeLimitBreakMaterialRarityGroupTable EntityMCostumeLimitBreakMaterialRarityGroupTable { get; } + + public EntityMCostumeLotteryEffectTable EntityMCostumeLotteryEffectTable { get; } + + public EntityMCostumeLotteryEffectMaterialGroupTable EntityMCostumeLotteryEffectMaterialGroupTable { get; } + + public EntityMCostumeLotteryEffectOddsGroupTable EntityMCostumeLotteryEffectOddsGroupTable { get; } + + public EntityMCostumeLotteryEffectReleaseScheduleTable EntityMCostumeLotteryEffectReleaseScheduleTable { get; } + + public EntityMCostumeLotteryEffectTargetAbilityTable EntityMCostumeLotteryEffectTargetAbilityTable { get; } + + public EntityMCostumeLotteryEffectTargetStatusUpTable EntityMCostumeLotteryEffectTargetStatusUpTable { get; } + + public EntityMCostumeOverflowExchangePossessionGroupTable EntityMCostumeOverflowExchangePossessionGroupTable { get; } + + public EntityMCostumeProperAttributeHpBonusTable EntityMCostumeProperAttributeHpBonusTable { get; } + + public EntityMCostumeRarityTable EntityMCostumeRarityTable { get; } + + public EntityMCostumeSpecialActActiveSkillTable EntityMCostumeSpecialActActiveSkillTable { get; } + + public EntityMCostumeSpecialActActiveSkillConditionAttributeTable EntityMCostumeSpecialActActiveSkillConditionAttributeTable { get; } + + public EntityMCostumeStatusCalculationTable EntityMCostumeStatusCalculationTable { get; } + + public EntityMDeckEntrustCoefficientAttributeTable EntityMDeckEntrustCoefficientAttributeTable { get; } + + public EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable { get; } + + public EntityMDeckEntrustCoefficientStatusTable EntityMDeckEntrustCoefficientStatusTable { get; } + + public EntityMDokanTable EntityMDokanTable { get; } + + public EntityMDokanContentGroupTable EntityMDokanContentGroupTable { get; } + + public EntityMDokanTextTable EntityMDokanTextTable { get; } + + public EntityMEnhanceCampaignTable EntityMEnhanceCampaignTable { get; } + + public EntityMEnhanceCampaignTargetGroupTable EntityMEnhanceCampaignTargetGroupTable { get; } + + public EntityMEvaluateConditionTable EntityMEvaluateConditionTable { get; } + + public EntityMEvaluateConditionValueGroupTable EntityMEvaluateConditionValueGroupTable { get; } + + public EntityMEventQuestChapterTable EntityMEventQuestChapterTable { get; } + + public EntityMEventQuestChapterCharacterTable EntityMEventQuestChapterCharacterTable { get; } + + public EntityMEventQuestChapterDifficultyLimitContentUnlockTable EntityMEventQuestChapterDifficultyLimitContentUnlockTable { get; } + + public EntityMEventQuestChapterLimitContentRelationTable EntityMEventQuestChapterLimitContentRelationTable { get; } + + public EntityMEventQuestDailyGroupTable EntityMEventQuestDailyGroupTable { get; } + + public EntityMEventQuestDailyGroupCompleteRewardTable EntityMEventQuestDailyGroupCompleteRewardTable { get; } + + public EntityMEventQuestDailyGroupMessageTable EntityMEventQuestDailyGroupMessageTable { get; } + + public EntityMEventQuestDailyGroupTargetChapterTable EntityMEventQuestDailyGroupTargetChapterTable { get; } + + public EntityMEventQuestDisplayItemGroupTable EntityMEventQuestDisplayItemGroupTable { get; } + + public EntityMEventQuestGuerrillaFreeOpenTable EntityMEventQuestGuerrillaFreeOpenTable { get; } + + public EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable { get; } + + public EntityMEventQuestLabyrinthMobTable EntityMEventQuestLabyrinthMobTable { get; } + + public EntityMEventQuestLabyrinthQuestDisplayTable EntityMEventQuestLabyrinthQuestDisplayTable { get; } + + public EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable { get; } + + public EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable { get; } + + public EntityMEventQuestLabyrinthQuestEffectDisplayTable EntityMEventQuestLabyrinthQuestEffectDisplayTable { get; } + + public EntityMEventQuestLabyrinthRewardGroupTable EntityMEventQuestLabyrinthRewardGroupTable { get; } + + public EntityMEventQuestLabyrinthSeasonTable EntityMEventQuestLabyrinthSeasonTable { get; } + + public EntityMEventQuestLabyrinthSeasonRewardGroupTable EntityMEventQuestLabyrinthSeasonRewardGroupTable { get; } + + public EntityMEventQuestLabyrinthStageTable EntityMEventQuestLabyrinthStageTable { get; } + + public EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable { get; } + + public EntityMEventQuestLimitContentTable EntityMEventQuestLimitContentTable { get; } + + public EntityMEventQuestLimitContentDeckRestrictionTable EntityMEventQuestLimitContentDeckRestrictionTable { get; } + + public EntityMEventQuestLimitContentDeckRestrictionTargetTable EntityMEventQuestLimitContentDeckRestrictionTargetTable { get; } + + public EntityMEventQuestLinkTable EntityMEventQuestLinkTable { get; } + + public EntityMEventQuestSequenceTable EntityMEventQuestSequenceTable { get; } + + public EntityMEventQuestSequenceGroupTable EntityMEventQuestSequenceGroupTable { get; } + + public EntityMEventQuestTowerAccumulationRewardTable EntityMEventQuestTowerAccumulationRewardTable { get; } + + public EntityMEventQuestTowerAccumulationRewardGroupTable EntityMEventQuestTowerAccumulationRewardGroupTable { get; } + + public EntityMEventQuestTowerAssetTable EntityMEventQuestTowerAssetTable { get; } + + public EntityMEventQuestTowerRewardGroupTable EntityMEventQuestTowerRewardGroupTable { get; } + + public EntityMEventQuestUnlockConditionTable EntityMEventQuestUnlockConditionTable { get; } + + public EntityMExploreTable EntityMExploreTable { get; } + + public EntityMExploreGradeAssetTable EntityMExploreGradeAssetTable { get; } + + public EntityMExploreGradeScoreTable EntityMExploreGradeScoreTable { get; } + + public EntityMExploreGroupTable EntityMExploreGroupTable { get; } + + public EntityMExploreUnlockConditionTable EntityMExploreUnlockConditionTable { get; } + + public EntityMExtraQuestGroupTable EntityMExtraQuestGroupTable { get; } + + public EntityMExtraQuestGroupInMainQuestChapterTable EntityMExtraQuestGroupInMainQuestChapterTable { get; } + + public EntityMFieldEffectBlessRelationTable EntityMFieldEffectBlessRelationTable { get; } + + public EntityMFieldEffectDecreasePointTable EntityMFieldEffectDecreasePointTable { get; } + + public EntityMFieldEffectGroupTable EntityMFieldEffectGroupTable { get; } + + public EntityMGachaMedalTable EntityMGachaMedalTable { get; } + + public EntityMGiftTextTable EntityMGiftTextTable { get; } + + public EntityMGimmickTable EntityMGimmickTable { get; } + + public EntityMGimmickAdditionalAssetTable EntityMGimmickAdditionalAssetTable { get; } + + public EntityMGimmickExtraQuestTable EntityMGimmickExtraQuestTable { get; } + + public EntityMGimmickGroupTable EntityMGimmickGroupTable { get; } + + public EntityMGimmickGroupEventLogTable EntityMGimmickGroupEventLogTable { get; } + + public EntityMGimmickIntervalTable EntityMGimmickIntervalTable { get; } + + public EntityMGimmickOrnamentTable EntityMGimmickOrnamentTable { get; } + + public EntityMGimmickSequenceTable EntityMGimmickSequenceTable { get; } + + public EntityMGimmickSequenceGroupTable EntityMGimmickSequenceGroupTable { get; } + + public EntityMGimmickSequenceRewardGroupTable EntityMGimmickSequenceRewardGroupTable { get; } + + public EntityMGimmickSequenceScheduleTable EntityMGimmickSequenceScheduleTable { get; } + + public EntityMHeadupDisplayViewTable EntityMHeadupDisplayViewTable { get; } + + public EntityMHelpTable EntityMHelpTable { get; } + + public EntityMHelpCategoryTable EntityMHelpCategoryTable { get; } + + public EntityMHelpItemTable EntityMHelpItemTable { get; } + + public EntityMHelpPageGroupTable EntityMHelpPageGroupTable { get; } + + public EntityMImportantItemTable EntityMImportantItemTable { get; } + + public EntityMImportantItemEffectTable EntityMImportantItemEffectTable { get; } + + public EntityMImportantItemEffectDropCountTable EntityMImportantItemEffectDropCountTable { get; } + + public EntityMImportantItemEffectDropRateTable EntityMImportantItemEffectDropRateTable { get; } + + public EntityMImportantItemEffectTargetItemGroupTable EntityMImportantItemEffectTargetItemGroupTable { get; } + + public EntityMImportantItemEffectTargetQuestGroupTable EntityMImportantItemEffectTargetQuestGroupTable { get; } + + public EntityMImportantItemEffectUnlockFunctionTable EntityMImportantItemEffectUnlockFunctionTable { get; } + + public EntityMLibraryEventQuestStoryGroupingTable EntityMLibraryEventQuestStoryGroupingTable { get; } + + public EntityMLibraryMainQuestGroupTable EntityMLibraryMainQuestGroupTable { get; } + + public EntityMLibraryMainQuestStoryTable EntityMLibraryMainQuestStoryTable { get; } + + public EntityMLibraryMovieTable EntityMLibraryMovieTable { get; } + + public EntityMLibraryMovieCategoryTable EntityMLibraryMovieCategoryTable { get; } + + public EntityMLibraryMovieUnlockConditionTable EntityMLibraryMovieUnlockConditionTable { get; } + + public EntityMLibraryRecordGroupingTable EntityMLibraryRecordGroupingTable { get; } + + public EntityMLibraryStoryGroupTable EntityMLibraryStoryGroupTable { get; } + + public EntityMLimitedOpenTextTable EntityMLimitedOpenTextTable { get; } + + public EntityMLimitedOpenTextGroupTable EntityMLimitedOpenTextGroupTable { get; } + + public EntityMListSettingAbilityGroupTable EntityMListSettingAbilityGroupTable { get; } + + public EntityMListSettingAbilityGroupTargetTable EntityMListSettingAbilityGroupTargetTable { get; } + + public EntityMLoginBonusTable EntityMLoginBonusTable { get; } + + public EntityMLoginBonusStampTable EntityMLoginBonusStampTable { get; } + + public EntityMMainQuestChapterTable EntityMMainQuestChapterTable { get; } + + public EntityMMainQuestPortalCageCharacterTable EntityMMainQuestPortalCageCharacterTable { get; } + + public EntityMMainQuestRouteTable EntityMMainQuestRouteTable { get; } + + public EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable { get; } + + public EntityMMainQuestSeasonTable EntityMMainQuestSeasonTable { get; } + + public EntityMMainQuestSequenceTable EntityMMainQuestSequenceTable { get; } + + public EntityMMainQuestSequenceGroupTable EntityMMainQuestSequenceGroupTable { get; } + + public EntityMMaintenanceTable EntityMMaintenanceTable { get; } + + public EntityMMaintenanceGroupTable EntityMMaintenanceGroupTable { get; } + + public EntityMMaterialTable EntityMMaterialTable { get; } + + public EntityMMaterialSaleObtainPossessionTable EntityMMaterialSaleObtainPossessionTable { get; } + + public EntityMMissionTable EntityMMissionTable { get; } + + public EntityMMissionClearConditionValueViewTable EntityMMissionClearConditionValueViewTable { get; } + + public EntityMMissionGroupTable EntityMMissionGroupTable { get; } + + public EntityMMissionLinkTable EntityMMissionLinkTable { get; } + + public EntityMMissionPassTable EntityMMissionPassTable { get; } + + public EntityMMissionPassLevelGroupTable EntityMMissionPassLevelGroupTable { get; } + + public EntityMMissionPassMissionGroupTable EntityMMissionPassMissionGroupTable { get; } + + public EntityMMissionPassRewardGroupTable EntityMMissionPassRewardGroupTable { get; } + + public EntityMMissionRewardTable EntityMMissionRewardTable { get; } + + public EntityMMissionSubCategoryTextTable EntityMMissionSubCategoryTextTable { get; } + + public EntityMMissionTermTable EntityMMissionTermTable { get; } + + public EntityMMissionUnlockConditionTable EntityMMissionUnlockConditionTable { get; } + + public EntityMMomBannerTable EntityMMomBannerTable { get; } + + public EntityMMomPointBannerTable EntityMMomPointBannerTable { get; } + + public EntityMMovieTable EntityMMovieTable { get; } + + public EntityMNaviCutInTable EntityMNaviCutInTable { get; } + + public EntityMNaviCutInContentGroupTable EntityMNaviCutInContentGroupTable { get; } + + public EntityMNaviCutInTextTable EntityMNaviCutInTextTable { get; } + + public EntityMNumericalFunctionTable EntityMNumericalFunctionTable { get; } + + public EntityMNumericalFunctionParameterGroupTable EntityMNumericalFunctionParameterGroupTable { get; } + + public EntityMNumericalParameterMapTable EntityMNumericalParameterMapTable { get; } + + public EntityMOmikujiTable EntityMOmikujiTable { get; } + + public EntityMOverrideHitEffectConditionCriticalTable EntityMOverrideHitEffectConditionCriticalTable { get; } + + public EntityMOverrideHitEffectConditionDamageAttributeTable EntityMOverrideHitEffectConditionDamageAttributeTable { get; } + + public EntityMOverrideHitEffectConditionGroupTable EntityMOverrideHitEffectConditionGroupTable { get; } + + public EntityMOverrideHitEffectConditionSkillExecutorTable EntityMOverrideHitEffectConditionSkillExecutorTable { get; } + + public EntityMPartsTable EntityMPartsTable { get; } + + public EntityMPartsEnhancedTable EntityMPartsEnhancedTable { get; } + + public EntityMPartsEnhancedSubStatusTable EntityMPartsEnhancedSubStatusTable { get; } + + public EntityMPartsGroupTable EntityMPartsGroupTable { get; } + + public EntityMPartsLevelUpPriceGroupTable EntityMPartsLevelUpPriceGroupTable { get; } + + public EntityMPartsLevelUpRateGroupTable EntityMPartsLevelUpRateGroupTable { get; } + + public EntityMPartsRarityTable EntityMPartsRarityTable { get; } + + public EntityMPartsSeriesTable EntityMPartsSeriesTable { get; } + + public EntityMPartsSeriesBonusAbilityGroupTable EntityMPartsSeriesBonusAbilityGroupTable { get; } + + public EntityMPartsStatusMainTable EntityMPartsStatusMainTable { get; } + + public EntityMPlatformPaymentTable EntityMPlatformPaymentTable { get; } + + public EntityMPlatformPaymentPriceTable EntityMPlatformPaymentPriceTable { get; } + + public EntityMPortalCageAccessPointFunctionGroupTable EntityMPortalCageAccessPointFunctionGroupTable { get; } + + public EntityMPortalCageAccessPointFunctionGroupScheduleTable EntityMPortalCageAccessPointFunctionGroupScheduleTable { get; } + + public EntityMPortalCageCharacterGroupTable EntityMPortalCageCharacterGroupTable { get; } + + public EntityMPortalCageGateTable EntityMPortalCageGateTable { get; } + + public EntityMPortalCageSceneTable EntityMPortalCageSceneTable { get; } + + public EntityMPossessionAcquisitionRouteTable EntityMPossessionAcquisitionRouteTable { get; } + + public EntityMPowerCalculationConstantValueTable EntityMPowerCalculationConstantValueTable { get; } + + public EntityMPowerReferenceStatusGroupTable EntityMPowerReferenceStatusGroupTable { get; } + + public EntityMPremiumItemTable EntityMPremiumItemTable { get; } + + public EntityMPvpBackgroundTable EntityMPvpBackgroundTable { get; } + + public EntityMPvpGradeTable EntityMPvpGradeTable { get; } + + public EntityMPvpGradeGroupTable EntityMPvpGradeGroupTable { get; } + + public EntityMPvpGradeOneMatchRewardTable EntityMPvpGradeOneMatchRewardTable { get; } + + public EntityMPvpGradeOneMatchRewardGroupTable EntityMPvpGradeOneMatchRewardGroupTable { get; } + + public EntityMPvpGradeWeeklyRewardGroupTable EntityMPvpGradeWeeklyRewardGroupTable { get; } + + public EntityMPvpRewardTable EntityMPvpRewardTable { get; } + + public EntityMPvpSeasonTable EntityMPvpSeasonTable { get; } + + public EntityMPvpSeasonGradeTable EntityMPvpSeasonGradeTable { get; } + + public EntityMPvpSeasonGroupingTable EntityMPvpSeasonGroupingTable { get; } + + public EntityMPvpSeasonRankRewardTable EntityMPvpSeasonRankRewardTable { get; } + + public EntityMPvpSeasonRankRewardGroupTable EntityMPvpSeasonRankRewardGroupTable { get; } + + public EntityMPvpSeasonRankRewardPerSeasonTable EntityMPvpSeasonRankRewardPerSeasonTable { get; } + + public EntityMPvpSeasonRankRewardRankGroupTable EntityMPvpSeasonRankRewardRankGroupTable { get; } + + public EntityMPvpWeeklyRankRewardGroupTable EntityMPvpWeeklyRankRewardGroupTable { get; } + + public EntityMPvpWeeklyRankRewardRankGroupTable EntityMPvpWeeklyRankRewardRankGroupTable { get; } + + public EntityMPvpWinStreakCountEffectTable EntityMPvpWinStreakCountEffectTable { get; } + + public EntityMQuestTable EntityMQuestTable { get; } + + public EntityMQuestBonusTable EntityMQuestBonusTable { get; } + + public EntityMQuestBonusAbilityTable EntityMQuestBonusAbilityTable { get; } + + public EntityMQuestBonusAllyCharacterTable EntityMQuestBonusAllyCharacterTable { get; } + + public EntityMQuestBonusCharacterGroupTable EntityMQuestBonusCharacterGroupTable { get; } + + public EntityMQuestBonusCostumeGroupTable EntityMQuestBonusCostumeGroupTable { get; } + + public EntityMQuestBonusCostumeSettingGroupTable EntityMQuestBonusCostumeSettingGroupTable { get; } + + public EntityMQuestBonusDropRewardTable EntityMQuestBonusDropRewardTable { get; } + + public EntityMQuestBonusEffectGroupTable EntityMQuestBonusEffectGroupTable { get; } + + public EntityMQuestBonusExpTable EntityMQuestBonusExpTable { get; } + + public EntityMQuestBonusTermGroupTable EntityMQuestBonusTermGroupTable { get; } + + public EntityMQuestBonusWeaponGroupTable EntityMQuestBonusWeaponGroupTable { get; } + + public EntityMQuestCampaignTable EntityMQuestCampaignTable { get; } + + public EntityMQuestCampaignEffectGroupTable EntityMQuestCampaignEffectGroupTable { get; } + + public EntityMQuestCampaignTargetGroupTable EntityMQuestCampaignTargetGroupTable { get; } + + public EntityMQuestCampaignTargetItemGroupTable EntityMQuestCampaignTargetItemGroupTable { get; } + + public EntityMQuestDeckMultiRestrictionGroupTable EntityMQuestDeckMultiRestrictionGroupTable { get; } + + public EntityMQuestDeckRestrictionGroupTable EntityMQuestDeckRestrictionGroupTable { get; } + + public EntityMQuestDeckRestrictionGroupUnlockTable EntityMQuestDeckRestrictionGroupUnlockTable { get; } + + public EntityMQuestDisplayAttributeGroupTable EntityMQuestDisplayAttributeGroupTable { get; } + + public EntityMQuestDisplayEnemyThumbnailReplaceTable EntityMQuestDisplayEnemyThumbnailReplaceTable { get; } + + public EntityMQuestFirstClearRewardGroupTable EntityMQuestFirstClearRewardGroupTable { get; } + + public EntityMQuestFirstClearRewardSwitchTable EntityMQuestFirstClearRewardSwitchTable { get; } + + public EntityMQuestMissionTable EntityMQuestMissionTable { get; } + + public EntityMQuestMissionConditionValueGroupTable EntityMQuestMissionConditionValueGroupTable { get; } + + public EntityMQuestMissionGroupTable EntityMQuestMissionGroupTable { get; } + + public EntityMQuestMissionRewardTable EntityMQuestMissionRewardTable { get; } + + public EntityMQuestPickupRewardGroupTable EntityMQuestPickupRewardGroupTable { get; } + + public EntityMQuestRelationMainFlowTable EntityMQuestRelationMainFlowTable { get; } + + public EntityMQuestReleaseConditionBigHuntScoreTable EntityMQuestReleaseConditionBigHuntScoreTable { get; } + + public EntityMQuestReleaseConditionCharacterLevelTable EntityMQuestReleaseConditionCharacterLevelTable { get; } + + public EntityMQuestReleaseConditionDeckPowerTable EntityMQuestReleaseConditionDeckPowerTable { get; } + + public EntityMQuestReleaseConditionGroupTable EntityMQuestReleaseConditionGroupTable { get; } + + public EntityMQuestReleaseConditionListTable EntityMQuestReleaseConditionListTable { get; } + + public EntityMQuestReleaseConditionQuestChallengeTable EntityMQuestReleaseConditionQuestChallengeTable { get; } + + public EntityMQuestReleaseConditionQuestClearTable EntityMQuestReleaseConditionQuestClearTable { get; } + + public EntityMQuestReleaseConditionUserLevelTable EntityMQuestReleaseConditionUserLevelTable { get; } + + public EntityMQuestReleaseConditionWeaponAcquisitionTable EntityMQuestReleaseConditionWeaponAcquisitionTable { get; } + + public EntityMQuestReplayFlowRewardGroupTable EntityMQuestReplayFlowRewardGroupTable { get; } + + public EntityMQuestSceneTable EntityMQuestSceneTable { get; } + + public EntityMQuestSceneBattleTable EntityMQuestSceneBattleTable { get; } + + public EntityMQuestSceneChoiceTable EntityMQuestSceneChoiceTable { get; } + + public EntityMQuestSceneChoiceCostumeEffectGroupTable EntityMQuestSceneChoiceCostumeEffectGroupTable { get; } + + public EntityMQuestSceneChoiceEffectTable EntityMQuestSceneChoiceEffectTable { get; } + + public EntityMQuestSceneChoiceWeaponEffectGroupTable EntityMQuestSceneChoiceWeaponEffectGroupTable { get; } + + public EntityMQuestSceneNotConfirmTitleDialogTable EntityMQuestSceneNotConfirmTitleDialogTable { get; } + + public EntityMQuestSceneOutgameBlendshapeMotionTable EntityMQuestSceneOutgameBlendshapeMotionTable { get; } + + public EntityMQuestScenePictureBookReplaceTable EntityMQuestScenePictureBookReplaceTable { get; } + + public EntityMQuestScheduleTable EntityMQuestScheduleTable { get; } + + public EntityMQuestScheduleCorrespondenceTable EntityMQuestScheduleCorrespondenceTable { get; } + + public EntityMReportTable EntityMReportTable { get; } + + public EntityMShopTable EntityMShopTable { get; } + + public EntityMShopDisplayPriceTable EntityMShopDisplayPriceTable { get; } + + public EntityMShopItemTable EntityMShopItemTable { get; } + + public EntityMShopItemAdditionalContentTable EntityMShopItemAdditionalContentTable { get; } + + public EntityMShopItemCellTable EntityMShopItemCellTable { get; } + + public EntityMShopItemCellGroupTable EntityMShopItemCellGroupTable { get; } + + public EntityMShopItemCellLimitedOpenTable EntityMShopItemCellLimitedOpenTable { get; } + + public EntityMShopItemCellTermTable EntityMShopItemCellTermTable { get; } + + public EntityMShopItemContentEffectTable EntityMShopItemContentEffectTable { get; } + + public EntityMShopItemContentMissionTable EntityMShopItemContentMissionTable { get; } + + public EntityMShopItemContentPossessionTable EntityMShopItemContentPossessionTable { get; } + + public EntityMShopItemLimitedStockTable EntityMShopItemLimitedStockTable { get; } + + public EntityMShopItemUserLevelConditionTable EntityMShopItemUserLevelConditionTable { get; } + + public EntityMShopReplaceableGemTable EntityMShopReplaceableGemTable { get; } + + public EntityMSideStoryQuestTable EntityMSideStoryQuestTable { get; } + + public EntityMSideStoryQuestLimitContentTable EntityMSideStoryQuestLimitContentTable { get; } + + public EntityMSideStoryQuestSceneTable EntityMSideStoryQuestSceneTable { get; } + + public EntityMSkillTable EntityMSkillTable { get; } + + public EntityMSkillAbnormalTable EntityMSkillAbnormalTable { get; } + + public EntityMSkillAbnormalBehaviourTable EntityMSkillAbnormalBehaviourTable { get; } + + public EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable { get; } + + public EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable { get; } + + public EntityMSkillAbnormalBehaviourActionBuffResistanceTable EntityMSkillAbnormalBehaviourActionBuffResistanceTable { get; } + + public EntityMSkillAbnormalBehaviourActionDamageTable EntityMSkillAbnormalBehaviourActionDamageTable { get; } + + public EntityMSkillAbnormalBehaviourActionDamageMultiplyTable EntityMSkillAbnormalBehaviourActionDamageMultiplyTable { get; } + + public EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable { get; } + + public EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable { get; } + + public EntityMSkillAbnormalBehaviourActionHitRatioDownTable EntityMSkillAbnormalBehaviourActionHitRatioDownTable { get; } + + public EntityMSkillAbnormalBehaviourActionModifyHateValueTable EntityMSkillAbnormalBehaviourActionModifyHateValueTable { get; } + + public EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable { get; } + + public EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable { get; } + + public EntityMSkillAbnormalBehaviourActionRecoveryTable EntityMSkillAbnormalBehaviourActionRecoveryTable { get; } + + public EntityMSkillAbnormalBehaviourActionTurnRestrictionTable EntityMSkillAbnormalBehaviourActionTurnRestrictionTable { get; } + + public EntityMSkillAbnormalBehaviourGroupTable EntityMSkillAbnormalBehaviourGroupTable { get; } + + public EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable { get; } + + public EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable { get; } + + public EntityMSkillAbnormalDamageMultiplyDetailCriticalTable EntityMSkillAbnormalDamageMultiplyDetailCriticalTable { get; } + + public EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable { get; } + + public EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable { get; } + + public EntityMSkillAbnormalLifetimeTable EntityMSkillAbnormalLifetimeTable { get; } + + public EntityMSkillAbnormalLifetimeBehaviourActivateCountTable EntityMSkillAbnormalLifetimeBehaviourActivateCountTable { get; } + + public EntityMSkillAbnormalLifetimeBehaviourFrameCountTable EntityMSkillAbnormalLifetimeBehaviourFrameCountTable { get; } + + public EntityMSkillAbnormalLifetimeBehaviourGroupTable EntityMSkillAbnormalLifetimeBehaviourGroupTable { get; } + + public EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable { get; } + + public EntityMSkillAbnormalLifetimeBehaviourTurnCountTable EntityMSkillAbnormalLifetimeBehaviourTurnCountTable { get; } + + public EntityMSkillBehaviourTable EntityMSkillBehaviourTable { get; } + + public EntityMSkillBehaviourActionAbnormalTable EntityMSkillBehaviourActionAbnormalTable { get; } + + public EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable { get; } + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable { get; } + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable { get; } + + public EntityMSkillBehaviourActionAttackTable EntityMSkillBehaviourActionAttackTable { get; } + + public EntityMSkillBehaviourActionAttackClampHpTable EntityMSkillBehaviourActionAttackClampHpTable { get; } + + public EntityMSkillBehaviourActionAttackComboTable EntityMSkillBehaviourActionAttackComboTable { get; } + + public EntityMSkillBehaviourActionAttackFixedDamageTable EntityMSkillBehaviourActionAttackFixedDamageTable { get; } + + public EntityMSkillBehaviourActionAttackHpRatioTable EntityMSkillBehaviourActionAttackHpRatioTable { get; } + + public EntityMSkillBehaviourActionAttackIgnoreVitalityTable EntityMSkillBehaviourActionAttackIgnoreVitalityTable { get; } + + public EntityMSkillBehaviourActionAttackMainWeaponAttributeTable EntityMSkillBehaviourActionAttackMainWeaponAttributeTable { get; } + + public EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable { get; } + + public EntityMSkillBehaviourActionAttackVitalityTable EntityMSkillBehaviourActionAttackVitalityTable { get; } + + public EntityMSkillBehaviourActionAttributeDamageCorrectionTable EntityMSkillBehaviourActionAttributeDamageCorrectionTable { get; } + + public EntityMSkillBehaviourActionBuffTable EntityMSkillBehaviourActionBuffTable { get; } + + public EntityMSkillBehaviourActionChangestepTable EntityMSkillBehaviourActionChangestepTable { get; } + + public EntityMSkillBehaviourActionDamageCorrectionHpRatioTable EntityMSkillBehaviourActionDamageCorrectionHpRatioTable { get; } + + public EntityMSkillBehaviourActionDamageMultiplyTable EntityMSkillBehaviourActionDamageMultiplyTable { get; } + + public EntityMSkillBehaviourActionDefaultSkillLotteryTable EntityMSkillBehaviourActionDefaultSkillLotteryTable { get; } + + public EntityMSkillBehaviourActionExtendBuffCooltimeTable EntityMSkillBehaviourActionExtendBuffCooltimeTable { get; } + + public EntityMSkillBehaviourActionHpRatioDamageTable EntityMSkillBehaviourActionHpRatioDamageTable { get; } + + public EntityMSkillBehaviourActionOverlimitDamageMultiplyTable EntityMSkillBehaviourActionOverlimitDamageMultiplyTable { get; } + + public EntityMSkillBehaviourActionRecoveryTable EntityMSkillBehaviourActionRecoveryTable { get; } + + public EntityMSkillBehaviourActionRecoveryPointCorrectionTable EntityMSkillBehaviourActionRecoveryPointCorrectionTable { get; } + + public EntityMSkillBehaviourActionRemoveAbnormalTable EntityMSkillBehaviourActionRemoveAbnormalTable { get; } + + public EntityMSkillBehaviourActionRemoveBuffTable EntityMSkillBehaviourActionRemoveBuffTable { get; } + + public EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable { get; } + + public EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable { get; } + + public EntityMSkillBehaviourActivationConditionActivationUpperCountTable EntityMSkillBehaviourActivationConditionActivationUpperCountTable { get; } + + public EntityMSkillBehaviourActivationConditionAttributeTable EntityMSkillBehaviourActivationConditionAttributeTable { get; } + + public EntityMSkillBehaviourActivationConditionGroupTable EntityMSkillBehaviourActivationConditionGroupTable { get; } + + public EntityMSkillBehaviourActivationConditionHpRatioTable EntityMSkillBehaviourActivationConditionHpRatioTable { get; } + + public EntityMSkillBehaviourActivationConditionInSkillFlowTable EntityMSkillBehaviourActivationConditionInSkillFlowTable { get; } + + public EntityMSkillBehaviourActivationConditionWaveNumberTable EntityMSkillBehaviourActivationConditionWaveNumberTable { get; } + + public EntityMSkillBehaviourActivationMethodTable EntityMSkillBehaviourActivationMethodTable { get; } + + public EntityMSkillBehaviourGroupTable EntityMSkillBehaviourGroupTable { get; } + + public EntityMSkillBuffTable EntityMSkillBuffTable { get; } + + public EntityMSkillCasttimeTable EntityMSkillCasttimeTable { get; } + + public EntityMSkillCasttimeBehaviourTable EntityMSkillCasttimeBehaviourTable { get; } + + public EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable { get; } + + public EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable { get; } + + public EntityMSkillCasttimeBehaviourGroupTable EntityMSkillCasttimeBehaviourGroupTable { get; } + + public EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable { get; } + + public EntityMSkillCooltimeBehaviourTable EntityMSkillCooltimeBehaviourTable { get; } + + public EntityMSkillCooltimeBehaviourGroupTable EntityMSkillCooltimeBehaviourGroupTable { get; } + + public EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable { get; } + + public EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable { get; } + + public EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable { get; } + + public EntityMSkillCooltimeBehaviourOnFrameUpdateTable EntityMSkillCooltimeBehaviourOnFrameUpdateTable { get; } + + public EntityMSkillCooltimeBehaviourOnSkillDamageTable EntityMSkillCooltimeBehaviourOnSkillDamageTable { get; } + + public EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable { get; } + + public EntityMSkillDamageMultiplyDetailAbnormalAttachedTable EntityMSkillDamageMultiplyDetailAbnormalAttachedTable { get; } + + public EntityMSkillDamageMultiplyDetailAlwaysTable EntityMSkillDamageMultiplyDetailAlwaysTable { get; } + + public EntityMSkillDamageMultiplyDetailBuffAttachedTable EntityMSkillDamageMultiplyDetailBuffAttachedTable { get; } + + public EntityMSkillDamageMultiplyDetailCriticalTable EntityMSkillDamageMultiplyDetailCriticalTable { get; } + + public EntityMSkillDamageMultiplyDetailHitIndexTable EntityMSkillDamageMultiplyDetailHitIndexTable { get; } + + public EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable { get; } + + public EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable { get; } + + public EntityMSkillDamageMultiplyHitIndexValueGroupTable EntityMSkillDamageMultiplyHitIndexValueGroupTable { get; } + + public EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable { get; } + + public EntityMSkillDetailTable EntityMSkillDetailTable { get; } + + public EntityMSkillLevelGroupTable EntityMSkillLevelGroupTable { get; } + + public EntityMSkillRemoveAbnormalTargetAbnormalGroupTable EntityMSkillRemoveAbnormalTargetAbnormalGroupTable { get; } + + public EntityMSkillRemoveBuffFilterStatusKindTable EntityMSkillRemoveBuffFilterStatusKindTable { get; } + + public EntityMSkillReserveUiTypeTable EntityMSkillReserveUiTypeTable { get; } + + public EntityMSmartphoneChatGroupTable EntityMSmartphoneChatGroupTable { get; } + + public EntityMSmartphoneChatGroupMessageTable EntityMSmartphoneChatGroupMessageTable { get; } + + public EntityMSpeakerTable EntityMSpeakerTable { get; } + + public EntityMStainedGlassTable EntityMStainedGlassTable { get; } + + public EntityMStainedGlassStatusUpGroupTable EntityMStainedGlassStatusUpGroupTable { get; } + + public EntityMStainedGlassStatusUpTargetGroupTable EntityMStainedGlassStatusUpTargetGroupTable { get; } + + public EntityMThoughtTable EntityMThoughtTable { get; } + + public EntityMTipTable EntityMTipTable { get; } + + public EntityMTipBackgroundAssetTable EntityMTipBackgroundAssetTable { get; } + + public EntityMTipDisplayConditionGroupTable EntityMTipDisplayConditionGroupTable { get; } + + public EntityMTipGroupTable EntityMTipGroupTable { get; } + + public EntityMTipGroupBackgroundAssetTable EntityMTipGroupBackgroundAssetTable { get; } + + public EntityMTipGroupBackgroundAssetRelationTable EntityMTipGroupBackgroundAssetRelationTable { get; } + + public EntityMTipGroupSelectionTable EntityMTipGroupSelectionTable { get; } + + public EntityMTipGroupSituationTable EntityMTipGroupSituationTable { get; } + + public EntityMTipGroupSituationSeasonTable EntityMTipGroupSituationSeasonTable { get; } + + public EntityMTitleFlowMovieTable EntityMTitleFlowMovieTable { get; } + + public EntityMTitleStillTable EntityMTitleStillTable { get; } + + public EntityMTitleStillGroupTable EntityMTitleStillGroupTable { get; } + + public EntityMTutorialConsumePossessionGroupTable EntityMTutorialConsumePossessionGroupTable { get; } + + public EntityMTutorialDialogTable EntityMTutorialDialogTable { get; } + + public EntityMTutorialUnlockConditionTable EntityMTutorialUnlockConditionTable { get; } + + public EntityMUserLevelTable EntityMUserLevelTable { get; } + + public EntityMUserQuestSceneGrantPossessionTable EntityMUserQuestSceneGrantPossessionTable { get; } + + public EntityMWeaponTable EntityMWeaponTable { get; } + + public EntityMWeaponAbilityEnhancementMaterialTable EntityMWeaponAbilityEnhancementMaterialTable { get; } + + public EntityMWeaponAbilityGroupTable EntityMWeaponAbilityGroupTable { get; } + + public EntityMWeaponAwakenTable EntityMWeaponAwakenTable { get; } + + public EntityMWeaponAwakenAbilityTable EntityMWeaponAwakenAbilityTable { get; } + + public EntityMWeaponAwakenEffectGroupTable EntityMWeaponAwakenEffectGroupTable { get; } + + public EntityMWeaponAwakenMaterialGroupTable EntityMWeaponAwakenMaterialGroupTable { get; } + + public EntityMWeaponAwakenStatusUpGroupTable EntityMWeaponAwakenStatusUpGroupTable { get; } + + public EntityMWeaponBaseStatusTable EntityMWeaponBaseStatusTable { get; } + + public EntityMWeaponConsumeExchangeConsumableItemGroupTable EntityMWeaponConsumeExchangeConsumableItemGroupTable { get; } + + public EntityMWeaponEnhancedTable EntityMWeaponEnhancedTable { get; } + + public EntityMWeaponEnhancedAbilityTable EntityMWeaponEnhancedAbilityTable { get; } + + public EntityMWeaponEnhancedSkillTable EntityMWeaponEnhancedSkillTable { get; } + + public EntityMWeaponEvolutionGroupTable EntityMWeaponEvolutionGroupTable { get; } + + public EntityMWeaponEvolutionMaterialGroupTable EntityMWeaponEvolutionMaterialGroupTable { get; } + + public EntityMWeaponFieldEffectDecreasePointTable EntityMWeaponFieldEffectDecreasePointTable { get; } + + public EntityMWeaponRarityTable EntityMWeaponRarityTable { get; } + + public EntityMWeaponRarityLimitBreakMaterialGroupTable EntityMWeaponRarityLimitBreakMaterialGroupTable { get; } + + public EntityMWeaponSkillEnhancementMaterialTable EntityMWeaponSkillEnhancementMaterialTable { get; } + + public EntityMWeaponSkillGroupTable EntityMWeaponSkillGroupTable { get; } + + public EntityMWeaponSpecificEnhanceTable EntityMWeaponSpecificEnhanceTable { get; } + + public EntityMWeaponSpecificLimitBreakMaterialGroupTable EntityMWeaponSpecificLimitBreakMaterialGroupTable { get; } + + public EntityMWeaponStatusCalculationTable EntityMWeaponStatusCalculationTable { get; } + + public EntityMWeaponStoryReleaseConditionGroupTable EntityMWeaponStoryReleaseConditionGroupTable { get; } + + public EntityMWeaponStoryReleaseConditionOperationTable EntityMWeaponStoryReleaseConditionOperationTable { get; } + + public EntityMWeaponStoryReleaseConditionOperationGroupTable EntityMWeaponStoryReleaseConditionOperationGroupTable { get; } + + public EntityMWebviewMissionTable EntityMWebviewMissionTable { get; } + + public EntityMWebviewMissionTitleTextTable EntityMWebviewMissionTitleTextTable { get; } + + public EntityMWebviewPanelMissionTable EntityMWebviewPanelMissionTable { get; } + + public EntityMWebviewPanelMissionCompleteFlavorTextTable EntityMWebviewPanelMissionCompleteFlavorTextTable { get; } + + public EntityMWebviewPanelMissionPageTable EntityMWebviewPanelMissionPageTable { get; } +} diff --git a/src/Data/DarkUserMemoryDatabase.cs b/src/Data/DarkUserMemoryDatabase.cs new file mode 100644 index 0000000..a498c63 --- /dev/null +++ b/src/Data/DarkUserMemoryDatabase.cs @@ -0,0 +1,220 @@ +using MariesWonderland.Models.Tables; + +namespace NierReincarnation.Core.Dark; + +public class DarkUserMemoryDatabase +{ + public EntityIUserTable EntityIUserTable { get; } + + public EntityIUserAppleTable EntityIUserAppleTable { get; } + + public EntityIUserAutoSaleSettingDetailTable EntityIUserAutoSaleSettingDetailTable { get; } + + public EntityIUserBeginnerCampaignTable EntityIUserBeginnerCampaignTable { get; } + + public EntityIUserBigHuntMaxScoreTable EntityIUserBigHuntMaxScoreTable { get; } + + public EntityIUserBigHuntProgressStatusTable EntityIUserBigHuntProgressStatusTable { get; } + + public EntityIUserBigHuntScheduleMaxScoreTable EntityIUserBigHuntScheduleMaxScoreTable { get; } + + public EntityIUserBigHuntStatusTable EntityIUserBigHuntStatusTable { get; } + + public EntityIUserBigHuntWeeklyMaxScoreTable EntityIUserBigHuntWeeklyMaxScoreTable { get; } + + public EntityIUserBigHuntWeeklyStatusTable EntityIUserBigHuntWeeklyStatusTable { get; } + + public EntityIUserCageOrnamentRewardTable EntityIUserCageOrnamentRewardTable { get; } + + public EntityIUserCharacterTable EntityIUserCharacterTable { get; } + + public EntityIUserCharacterBoardTable EntityIUserCharacterBoardTable { get; } + + public EntityIUserCharacterBoardAbilityTable EntityIUserCharacterBoardAbilityTable { get; } + + public EntityIUserCharacterBoardCompleteRewardTable EntityIUserCharacterBoardCompleteRewardTable { get; } + + public EntityIUserCharacterBoardStatusUpTable EntityIUserCharacterBoardStatusUpTable { get; } + + public EntityIUserCharacterCostumeLevelBonusTable EntityIUserCharacterCostumeLevelBonusTable { get; } + + public EntityIUserCharacterRebirthTable EntityIUserCharacterRebirthTable { get; } + + public EntityIUserCharacterViewerFieldTable EntityIUserCharacterViewerFieldTable { get; } + + public EntityIUserComebackCampaignTable EntityIUserComebackCampaignTable { get; } + + public EntityIUserCompanionTable EntityIUserCompanionTable { get; } + + public EntityIUserConsumableItemTable EntityIUserConsumableItemTable { get; } + + public EntityIUserContentsStoryTable EntityIUserContentsStoryTable { get; } + + public EntityIUserCostumeTable EntityIUserCostumeTable { get; } + + public EntityIUserCostumeActiveSkillTable EntityIUserCostumeActiveSkillTable { get; } + + public EntityIUserCostumeAwakenStatusUpTable EntityIUserCostumeAwakenStatusUpTable { get; } + + public EntityIUserCostumeLevelBonusReleaseStatusTable EntityIUserCostumeLevelBonusReleaseStatusTable { get; } + + public EntityIUserCostumeLotteryEffectTable EntityIUserCostumeLotteryEffectTable { get; } + + public EntityIUserCostumeLotteryEffectAbilityTable EntityIUserCostumeLotteryEffectAbilityTable { get; } + + public EntityIUserCostumeLotteryEffectPendingTable EntityIUserCostumeLotteryEffectPendingTable { get; } + + public EntityIUserCostumeLotteryEffectStatusUpTable EntityIUserCostumeLotteryEffectStatusUpTable { get; } + + public EntityIUserDeckTable EntityIUserDeckTable { get; } + + public EntityIUserDeckCharacterTable EntityIUserDeckCharacterTable { get; } + + public EntityIUserDeckCharacterDressupCostumeTable EntityIUserDeckCharacterDressupCostumeTable { get; } + + public EntityIUserDeckLimitContentDeletedCharacterTable EntityIUserDeckLimitContentDeletedCharacterTable { get; } + + public EntityIUserDeckLimitContentRestrictedTable EntityIUserDeckLimitContentRestrictedTable { get; } + + public EntityIUserDeckPartsGroupTable EntityIUserDeckPartsGroupTable { get; } + + public EntityIUserDeckSubWeaponGroupTable EntityIUserDeckSubWeaponGroupTable { get; } + + public EntityIUserDeckTypeNoteTable EntityIUserDeckTypeNoteTable { get; } + + public EntityIUserDokanTable EntityIUserDokanTable { get; } + + public EntityIUserEventQuestDailyGroupCompleteRewardTable EntityIUserEventQuestDailyGroupCompleteRewardTable { get; } + + public EntityIUserEventQuestGuerrillaFreeOpenTable EntityIUserEventQuestGuerrillaFreeOpenTable { get; } + + public EntityIUserEventQuestLabyrinthSeasonTable EntityIUserEventQuestLabyrinthSeasonTable { get; } + + public EntityIUserEventQuestLabyrinthStageTable EntityIUserEventQuestLabyrinthStageTable { get; } + + public EntityIUserEventQuestProgressStatusTable EntityIUserEventQuestProgressStatusTable { get; } + + public EntityIUserEventQuestTowerAccumulationRewardTable EntityIUserEventQuestTowerAccumulationRewardTable { get; } + + public EntityIUserExploreTable EntityIUserExploreTable { get; } + + public EntityIUserExploreScoreTable EntityIUserExploreScoreTable { get; } + + public EntityIUserExtraQuestProgressStatusTable EntityIUserExtraQuestProgressStatusTable { get; } + + public EntityIUserFacebookTable EntityIUserFacebookTable { get; } + + public EntityIUserGemTable EntityIUserGemTable { get; } + + public EntityIUserGimmickTable EntityIUserGimmickTable { get; } + + public EntityIUserGimmickOrnamentProgressTable EntityIUserGimmickOrnamentProgressTable { get; } + + public EntityIUserGimmickSequenceTable EntityIUserGimmickSequenceTable { get; } + + public EntityIUserGimmickUnlockTable EntityIUserGimmickUnlockTable { get; } + + public EntityIUserImportantItemTable EntityIUserImportantItemTable { get; } + + public EntityIUserLimitedOpenTable EntityIUserLimitedOpenTable { get; } + + public EntityIUserLoginTable EntityIUserLoginTable { get; } + + public EntityIUserLoginBonusTable EntityIUserLoginBonusTable { get; } + + public EntityIUserMainQuestFlowStatusTable EntityIUserMainQuestFlowStatusTable { get; } + + public EntityIUserMainQuestMainFlowStatusTable EntityIUserMainQuestMainFlowStatusTable { get; } + + public EntityIUserMainQuestProgressStatusTable EntityIUserMainQuestProgressStatusTable { get; } + + public EntityIUserMainQuestReplayFlowStatusTable EntityIUserMainQuestReplayFlowStatusTable { get; } + + public EntityIUserMainQuestSeasonRouteTable EntityIUserMainQuestSeasonRouteTable { get; } + + public EntityIUserMaterialTable EntityIUserMaterialTable { get; } + + public EntityIUserMissionTable EntityIUserMissionTable { get; } + + public EntityIUserMissionCompletionProgressTable EntityIUserMissionCompletionProgressTable { get; } + + public EntityIUserMissionPassPointTable EntityIUserMissionPassPointTable { get; } + + public EntityIUserMovieTable EntityIUserMovieTable { get; } + + public EntityIUserNaviCutInTable EntityIUserNaviCutInTable { get; } + + public EntityIUserOmikujiTable EntityIUserOmikujiTable { get; } + + public EntityIUserPartsTable EntityIUserPartsTable { get; } + + public EntityIUserPartsGroupNoteTable EntityIUserPartsGroupNoteTable { get; } + + public EntityIUserPartsPresetTable EntityIUserPartsPresetTable { get; } + + public EntityIUserPartsPresetTagTable EntityIUserPartsPresetTagTable { get; } + + public EntityIUserPartsStatusSubTable EntityIUserPartsStatusSubTable { get; } + + public EntityIUserPortalCageStatusTable EntityIUserPortalCageStatusTable { get; } + + public EntityIUserPossessionAutoConvertTable EntityIUserPossessionAutoConvertTable { get; } + + public EntityIUserPremiumItemTable EntityIUserPremiumItemTable { get; } + + public EntityIUserProfileTable EntityIUserProfileTable { get; } + + public EntityIUserPvpDefenseDeckTable EntityIUserPvpDefenseDeckTable { get; } + + public EntityIUserPvpStatusTable EntityIUserPvpStatusTable { get; } + + public EntityIUserPvpWeeklyResultTable EntityIUserPvpWeeklyResultTable { get; } + + public EntityIUserQuestTable EntityIUserQuestTable { get; } + + public EntityIUserQuestAutoOrbitTable EntityIUserQuestAutoOrbitTable { get; } + + public EntityIUserQuestLimitContentStatusTable EntityIUserQuestLimitContentStatusTable { get; } + + public EntityIUserQuestMissionTable EntityIUserQuestMissionTable { get; } + + public EntityIUserQuestReplayFlowRewardGroupTable EntityIUserQuestReplayFlowRewardGroupTable { get; } + + public EntityIUserQuestSceneChoiceTable EntityIUserQuestSceneChoiceTable { get; } + + public EntityIUserQuestSceneChoiceHistoryTable EntityIUserQuestSceneChoiceHistoryTable { get; } + + public EntityIUserSettingTable EntityIUserSettingTable { get; } + + public EntityIUserShopItemTable EntityIUserShopItemTable { get; } + + public EntityIUserShopReplaceableTable EntityIUserShopReplaceableTable { get; } + + public EntityIUserShopReplaceableLineupTable EntityIUserShopReplaceableLineupTable { get; } + + public EntityIUserSideStoryQuestTable EntityIUserSideStoryQuestTable { get; } + + public EntityIUserSideStoryQuestSceneProgressStatusTable EntityIUserSideStoryQuestSceneProgressStatusTable { get; } + + public EntityIUserStatusTable EntityIUserStatusTable { get; } + + public EntityIUserThoughtTable EntityIUserThoughtTable { get; } + + public EntityIUserTripleDeckTable EntityIUserTripleDeckTable { get; } + + public EntityIUserTutorialProgressTable EntityIUserTutorialProgressTable { get; } + + public EntityIUserWeaponTable EntityIUserWeaponTable { get; } + + public EntityIUserWeaponAbilityTable EntityIUserWeaponAbilityTable { get; } + + public EntityIUserWeaponAwakenTable EntityIUserWeaponAwakenTable { get; } + + public EntityIUserWeaponNoteTable EntityIUserWeaponNoteTable { get; } + + public EntityIUserWeaponSkillTable EntityIUserWeaponSkillTable { get; } + + public EntityIUserWeaponStoryTable EntityIUserWeaponStoryTable { get; } + + public EntityIUserWebviewPanelMissionTable EntityIUserWebviewPanelMissionTable { get; } +} diff --git a/src/Extensions/GrpcExtensions.cs b/src/Extensions/GrpcExtensions.cs new file mode 100644 index 0000000..81269ab --- /dev/null +++ b/src/Extensions/GrpcExtensions.cs @@ -0,0 +1,51 @@ +using MariesWonderland.Services; + +namespace MariesWonderland.Extensions; + +public static class GrpcExtensions +{ + public static WebApplication MapGrpcServices(this WebApplication app) + { + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + app.MapGrpcService(); + return app; + } +} diff --git a/src/Extensions/HttpApiExtensions.cs b/src/Extensions/HttpApiExtensions.cs new file mode 100644 index 0000000..9d0ee88 --- /dev/null +++ b/src/Extensions/HttpApiExtensions.cs @@ -0,0 +1,154 @@ +using MariesWonderland.Configuration; +using Microsoft.Extensions.Options; + +namespace MariesWonderland.Extensions; + +public static class HttpApiExtensions +{ + public static WebApplication MapHttpApis(this WebApplication app) + { + var options = app.Services.GetRequiredService>().Value; + var assetDatabaseBasePath = options.Paths.AssetDatabase; + var masterDatabaseBasePath = options.Paths.MasterDatabase; + + app.MapGet("/", () => "Marie's Wonderland is open for business :marie:"); + + // ToS. Expects the version wrapped in delimiters like "###123###". + app.MapGet("/web/static/{languagePath}/terms/termsofuse", (string languagePath) => $"Terms of Service

Terms of Service

Language: {languagePath}

Version: ###123###

"); + + // Asset Database + app.MapGet("/v1/list/300116832/{revision}", async (string revision) => + await File.ReadAllBytesAsync(Path.Combine(assetDatabaseBasePath, revision, "list.bin"))); + app.MapGet("/v2/pub/a/301/v/300116832/list/{revision}", async (string revision) => + await File.ReadAllBytesAsync(Path.Combine(assetDatabaseBasePath, revision, "list.bin"))); + + // Master Database + app.MapMethods("/assets/release/{masterVersion}/database.bin.e", ["GET", "HEAD"], async (HttpContext ctx, string masterVersion) => + { + var filePath = Path.Combine(masterDatabaseBasePath, $"{masterVersion}.bin.e"); + + var fileInfo = new FileInfo(filePath); + long totalLength = fileInfo.Length; + + // Advertise range support + ctx.Response.Headers.AcceptRanges = "bytes"; + + // Simple ETag using last write ticks & length (optional but useful for clients) + ctx.Response.Headers.ETag = $"\"{fileInfo.LastWriteTimeUtc.Ticks:x}-{totalLength:x}\""; + + // Handle HEAD quickly (send headers only) + bool isHead = string.Equals(ctx.Request.Method, "HEAD", StringComparison.OrdinalIgnoreCase); + + // Parse Range header if present + if (ctx.Request.Headers.TryGetValue("Range", out var rangeHeader)) + { + // Expect single range of form: bytes=start-end + var raw = rangeHeader.ToString(); + if (!raw.StartsWith("bytes=", StringComparison.OrdinalIgnoreCase)) + { + // Malformed range; respond with 416 + ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; + ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; + return; + } + + var rangePart = raw["bytes=".Length..].Trim(); + var parts = rangePart.Split('-', 2); + if (parts.Length != 2) + { + ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; + ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; + return; + } + + bool startParsed = long.TryParse(parts[0], out long start); + bool endParsed = long.TryParse(parts[1], out long end); + + if (!startParsed && endParsed) + { + // suffix range: last 'end' bytes + long suffixLength = end; + if (suffixLength <= 0) + { + ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; + ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; + return; + } + start = Math.Max(0, totalLength - suffixLength); + end = totalLength - 1; + } + else if (startParsed && !endParsed) + { + // range from start to end of file + end = totalLength - 1; + } + else if (!startParsed && !endParsed) + { + ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; + ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; + return; + } + + // Validate + if (start < 0 || end < start || start >= totalLength) + { + ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; + ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; + return; + } + + long length = end - start + 1; + + ctx.Response.StatusCode = StatusCodes.Status206PartialContent; + ctx.Response.Headers.ContentRange = $"bytes {start}-{end}/{totalLength}"; + ctx.Response.ContentType = "application/octet-stream"; + ctx.Response.ContentLength = length; + + if (isHead) + { + return; + } + + // Stream the requested range + await using var fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); + fs.Seek(start, SeekOrigin.Begin); + + var buffer = new byte[64 * 1024]; + long remaining = length; + while (remaining > 0) + { + int toRead = (int)Math.Min(buffer.Length, remaining); + int read = await fs.ReadAsync(buffer, 0, toRead); + if (read == 0) break; + await ctx.Response.Body.WriteAsync(buffer.AsMemory(0, read)); + remaining -= read; + } + + return; + } + + // No Range header: return full file + ctx.Response.StatusCode = StatusCodes.Status200OK; + ctx.Response.ContentType = "application/octet-stream"; + ctx.Response.ContentLength = totalLength; + + if (isHead) + { + return; + } + + // Stream the whole file + await using var fullFs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); + await fullFs.CopyToAsync(ctx.Response.Body); + }); + + // Catch all + app.MapMethods("/{**catchAll}", ["GET", "POST", "PUT", "DELETE", "PATCH",], (HttpContext ctx, string catchAll) => + { + app.Logger.LogWarning("Catchall endpoint hit for {Method} {Path}", ctx.Request.Method, ctx.Request.Path); + return $"You requested: {catchAll}"; + }); + + return app; + } +} diff --git a/src/Extensions/ServiceExtensions.cs b/src/Extensions/ServiceExtensions.cs new file mode 100644 index 0000000..f6b5827 --- /dev/null +++ b/src/Extensions/ServiceExtensions.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Configuration; + +namespace MariesWonderland.Extensions; + +public static class ServiceExtensions +{ + public static IServiceCollection AddServerOptions(this IServiceCollection services, IConfiguration configuration) + { + services.Configure(configuration.GetSection(ServerOptions.SectionName)); + return services; + } +} diff --git a/src/Models/Entities/EntityIUser.cs b/src/Models/Entities/EntityIUser.cs new file mode 100644 index 0000000..b9c640e --- /dev/null +++ b/src/Models/Entities/EntityIUser.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUser +{ + public long UserId { get; set; } + + public long PlayerId { get; set; } + + public int OsType { get; set; } + + public PlatformType PlatformType { get; set; } + + public int UserRestrictionType { get; set; } + + public long RegisterDatetime { get; set; } + + public long GameStartDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserApple.cs b/src/Models/Entities/EntityIUserApple.cs new file mode 100644 index 0000000..06690df --- /dev/null +++ b/src/Models/Entities/EntityIUserApple.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserApple +{ + public long UserId { get; set; } + + public string AppleId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserAutoSaleSettingDetail.cs b/src/Models/Entities/EntityIUserAutoSaleSettingDetail.cs new file mode 100644 index 0000000..e4914cc --- /dev/null +++ b/src/Models/Entities/EntityIUserAutoSaleSettingDetail.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserAutoSaleSettingDetail +{ + public long UserId { get; set; } + + public int PossessionAutoSaleItemType { get; set; } + + public string PossessionAutoSaleItemValue { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBeginnerCampaign.cs b/src/Models/Entities/EntityIUserBeginnerCampaign.cs new file mode 100644 index 0000000..e530bce --- /dev/null +++ b/src/Models/Entities/EntityIUserBeginnerCampaign.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBeginnerCampaign +{ + public long UserId { get; set; } + + public int BeginnerCampaignId { get; set; } + + public long CampaignRegisterDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntMaxScore.cs b/src/Models/Entities/EntityIUserBigHuntMaxScore.cs new file mode 100644 index 0000000..63ee609 --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntMaxScore.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntMaxScore +{ + public long UserId { get; set; } + + public int BigHuntBossId { get; set; } + + public long MaxScore { get; set; } + + public long MaxScoreUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntProgressStatus.cs b/src/Models/Entities/EntityIUserBigHuntProgressStatus.cs new file mode 100644 index 0000000..f555cd7 --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntProgressStatus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntProgressStatus +{ + public long UserId { get; set; } + + public int CurrentBigHuntBossQuestId { get; set; } + + public int CurrentBigHuntQuestId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public bool IsDryRun { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntScheduleMaxScore.cs b/src/Models/Entities/EntityIUserBigHuntScheduleMaxScore.cs new file mode 100644 index 0000000..6a2031b --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntScheduleMaxScore.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntScheduleMaxScore +{ + public long UserId { get; set; } + + public int BigHuntScheduleId { get; set; } + + public int BigHuntBossId { get; set; } + + public long MaxScore { get; set; } + + public long MaxScoreUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntStatus.cs b/src/Models/Entities/EntityIUserBigHuntStatus.cs new file mode 100644 index 0000000..68f96f7 --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntStatus +{ + public long UserId { get; set; } + + public int BigHuntBossQuestId { get; set; } + + public int DailyChallengeCount { get; set; } + + public long LatestChallengeDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntWeeklyMaxScore.cs b/src/Models/Entities/EntityIUserBigHuntWeeklyMaxScore.cs new file mode 100644 index 0000000..d74295b --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntWeeklyMaxScore.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntWeeklyMaxScore +{ + public long UserId { get; set; } + + public long BigHuntWeeklyVersion { get; set; } + + public AttributeType AttributeType { get; set; } + + public long MaxScore { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserBigHuntWeeklyStatus.cs b/src/Models/Entities/EntityIUserBigHuntWeeklyStatus.cs new file mode 100644 index 0000000..5e82531 --- /dev/null +++ b/src/Models/Entities/EntityIUserBigHuntWeeklyStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserBigHuntWeeklyStatus +{ + public long UserId { get; set; } + + public long BigHuntWeeklyVersion { get; set; } + + public bool IsReceivedWeeklyReward { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCageOrnamentReward.cs b/src/Models/Entities/EntityIUserCageOrnamentReward.cs new file mode 100644 index 0000000..db112a0 --- /dev/null +++ b/src/Models/Entities/EntityIUserCageOrnamentReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCageOrnamentReward +{ + public long UserId { get; set; } + + public int CageOrnamentId { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacter.cs b/src/Models/Entities/EntityIUserCharacter.cs new file mode 100644 index 0000000..358e4aa --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacter.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacter +{ + public long UserId { get; set; } + + public int CharacterId { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterBoard.cs b/src/Models/Entities/EntityIUserCharacterBoard.cs new file mode 100644 index 0000000..1b5bf92 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterBoard.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterBoard +{ + public long UserId { get; set; } + + public int CharacterBoardId { get; set; } + + public int PanelReleaseBit1 { get; set; } + + public int PanelReleaseBit2 { get; set; } + + public int PanelReleaseBit3 { get; set; } + + public int PanelReleaseBit4 { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterBoardAbility.cs b/src/Models/Entities/EntityIUserCharacterBoardAbility.cs new file mode 100644 index 0000000..de04ac1 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterBoardAbility.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterBoardAbility +{ + public long UserId { get; set; } + + public int CharacterId { get; set; } + + public int AbilityId { get; set; } + + public int Level { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterBoardCompleteReward.cs b/src/Models/Entities/EntityIUserCharacterBoardCompleteReward.cs new file mode 100644 index 0000000..4ed79c8 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterBoardCompleteReward.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterBoardCompleteReward +{ + public long UserId { get; set; } + + public int CharacterBoardCompleteRewardId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterBoardStatusUp.cs b/src/Models/Entities/EntityIUserCharacterBoardStatusUp.cs new file mode 100644 index 0000000..35ef916 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterBoardStatusUp.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterBoardStatusUp +{ + public long UserId { get; set; } + + public int CharacterId { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterCostumeLevelBonus.cs b/src/Models/Entities/EntityIUserCharacterCostumeLevelBonus.cs new file mode 100644 index 0000000..77ff601 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterCostumeLevelBonus.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterCostumeLevelBonus +{ + public long UserId { get; set; } + + public int CharacterId { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterRebirth.cs b/src/Models/Entities/EntityIUserCharacterRebirth.cs new file mode 100644 index 0000000..8280c67 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterRebirth.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterRebirth +{ + public long UserId { get; set; } + + public int CharacterId { get; set; } + + public int RebirthCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCharacterViewerField.cs b/src/Models/Entities/EntityIUserCharacterViewerField.cs new file mode 100644 index 0000000..acd72c4 --- /dev/null +++ b/src/Models/Entities/EntityIUserCharacterViewerField.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCharacterViewerField +{ + public long UserId { get; set; } + + public int CharacterViewerFieldId { get; set; } + + public long ReleaseDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserComebackCampaign.cs b/src/Models/Entities/EntityIUserComebackCampaign.cs new file mode 100644 index 0000000..30d53e9 --- /dev/null +++ b/src/Models/Entities/EntityIUserComebackCampaign.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserComebackCampaign +{ + public long UserId { get; set; } + + public int ComebackCampaignId { get; set; } + + public long ComebackDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCompanion.cs b/src/Models/Entities/EntityIUserCompanion.cs new file mode 100644 index 0000000..6138f59 --- /dev/null +++ b/src/Models/Entities/EntityIUserCompanion.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCompanion +{ + public long UserId { get; set; } + + public string UserCompanionUuid { get; set; } + + public int CompanionId { get; set; } + + public int HeadupDisplayViewId { get; set; } + + public int Level { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserConsumableItem.cs b/src/Models/Entities/EntityIUserConsumableItem.cs new file mode 100644 index 0000000..9b4ad2e --- /dev/null +++ b/src/Models/Entities/EntityIUserConsumableItem.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserConsumableItem +{ + public long UserId { get; set; } + + public int ConsumableItemId { get; set; } + + public int Count { get; set; } + + public long FirstAcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserContentsStory.cs b/src/Models/Entities/EntityIUserContentsStory.cs new file mode 100644 index 0000000..fca0d37 --- /dev/null +++ b/src/Models/Entities/EntityIUserContentsStory.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserContentsStory +{ + public long UserId { get; set; } + + public int ContentsStoryId { get; set; } + + public long PlayDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostume.cs b/src/Models/Entities/EntityIUserCostume.cs new file mode 100644 index 0000000..c051c32 --- /dev/null +++ b/src/Models/Entities/EntityIUserCostume.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostume +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public int CostumeId { get; set; } + + public int LimitBreakCount { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public int HeadupDisplayViewId { get; set; } + + public long AcquisitionDatetime { get; set; } + + public int AwakenCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeActiveSkill.cs b/src/Models/Entities/EntityIUserCostumeActiveSkill.cs new file mode 100644 index 0000000..45e87f2 --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeActiveSkill.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeActiveSkill +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public int Level { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeAwakenStatusUp.cs b/src/Models/Entities/EntityIUserCostumeAwakenStatusUp.cs new file mode 100644 index 0000000..38fc329 --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeAwakenStatusUp.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeAwakenStatusUp +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeLevelBonusReleaseStatus.cs b/src/Models/Entities/EntityIUserCostumeLevelBonusReleaseStatus.cs new file mode 100644 index 0000000..8ecbaec --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeLevelBonusReleaseStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeLevelBonusReleaseStatus +{ + public long UserId { get; set; } + + public int CostumeId { get; set; } + + public int LastReleasedBonusLevel { get; set; } + + public int ConfirmedBonusLevel { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeLotteryEffect.cs b/src/Models/Entities/EntityIUserCostumeLotteryEffect.cs new file mode 100644 index 0000000..05417f7 --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeLotteryEffect.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeLotteryEffect +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int OddsNumber { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeLotteryEffectAbility.cs b/src/Models/Entities/EntityIUserCostumeLotteryEffectAbility.cs new file mode 100644 index 0000000..9c0720b --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeLotteryEffectAbility.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeLotteryEffectAbility +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeLotteryEffectPending.cs b/src/Models/Entities/EntityIUserCostumeLotteryEffectPending.cs new file mode 100644 index 0000000..e8bbbdc --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeLotteryEffectPending.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeLotteryEffectPending +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int OddsNumber { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserCostumeLotteryEffectStatusUp.cs b/src/Models/Entities/EntityIUserCostumeLotteryEffectStatusUp.cs new file mode 100644 index 0000000..b2d59dd --- /dev/null +++ b/src/Models/Entities/EntityIUserCostumeLotteryEffectStatusUp.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserCostumeLotteryEffectStatusUp +{ + public long UserId { get; set; } + + public string UserCostumeUuid { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeck.cs b/src/Models/Entities/EntityIUserDeck.cs new file mode 100644 index 0000000..259fb44 --- /dev/null +++ b/src/Models/Entities/EntityIUserDeck.cs @@ -0,0 +1,38 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeck +{ + public long UserId { get; set; } + + public DeckType DeckType { get; set; } + + public int UserDeckNumber { get; set; } + + public string UserDeckCharacterUuid01 { get; set; } + + public string UserDeckCharacterUuid02 { get; set; } + + public string UserDeckCharacterUuid03 { get; set; } + + public string Name { get; set; } + + public int Power { get; set; } + + public long LatestVersion { get; set; } + + public EntityIUserDeck(long UserId, DeckType DeckType, int UserDeckNumber, string UserDeckCharacterUuid01, + string UserDeckCharacterUuid02, string UserDeckCharacterUuid03, string Name, int Power, long LatestVersion) + { + this.UserId = UserId; + this.DeckType = DeckType; + this.UserDeckNumber = UserDeckNumber; + this.UserDeckCharacterUuid01 = UserDeckCharacterUuid01; + this.UserDeckCharacterUuid02 = UserDeckCharacterUuid02; + this.UserDeckCharacterUuid03 = UserDeckCharacterUuid03; + this.Name = Name; + this.Power = Power; + this.LatestVersion = LatestVersion; + } +} diff --git a/src/Models/Entities/EntityIUserDeckCharacter.cs b/src/Models/Entities/EntityIUserDeckCharacter.cs new file mode 100644 index 0000000..7487c4c --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckCharacter.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckCharacter +{ + public long UserId { get; set; } + + public string UserDeckCharacterUuid { get; set; } + + public string UserCostumeUuid { get; set; } + + public string MainUserWeaponUuid { get; set; } + + public string UserCompanionUuid { get; set; } + + public int Power { get; set; } + + public string UserThoughtUuid { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckCharacterDressupCostume.cs b/src/Models/Entities/EntityIUserDeckCharacterDressupCostume.cs new file mode 100644 index 0000000..84c9651 --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckCharacterDressupCostume.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckCharacterDressupCostume +{ + public long UserId { get; set; } + + public string UserDeckCharacterUuid { get; set; } + + public int DressupCostumeId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckLimitContentDeletedCharacter.cs b/src/Models/Entities/EntityIUserDeckLimitContentDeletedCharacter.cs new file mode 100644 index 0000000..1cd64fa --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckLimitContentDeletedCharacter.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckLimitContentDeletedCharacter +{ + public long UserId { get; set; } + + public int UserDeckNumber { get; set; } + + public int UserDeckCharacterNumber { get; set; } + + public int CostumeId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckLimitContentRestricted.cs b/src/Models/Entities/EntityIUserDeckLimitContentRestricted.cs new file mode 100644 index 0000000..5fa7a07 --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckLimitContentRestricted.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckLimitContentRestricted +{ + public long UserId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int QuestId { get; set; } + + public string DeckRestrictedUuid { get; set; } + + public PossessionType PossessionType { get; set; } + + public string TargetUuid { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckPartsGroup.cs b/src/Models/Entities/EntityIUserDeckPartsGroup.cs new file mode 100644 index 0000000..41c054d --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckPartsGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckPartsGroup +{ + public long UserId { get; set; } + + public string UserDeckCharacterUuid { get; set; } + + public string UserPartsUuid { get; set; } + + public int SortOrder { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckSubWeaponGroup.cs b/src/Models/Entities/EntityIUserDeckSubWeaponGroup.cs new file mode 100644 index 0000000..88667f1 --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckSubWeaponGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckSubWeaponGroup +{ + public long UserId { get; set; } + + public string UserDeckCharacterUuid { get; set; } + + public string UserWeaponUuid { get; set; } + + public int SortOrder { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDeckTypeNote.cs b/src/Models/Entities/EntityIUserDeckTypeNote.cs new file mode 100644 index 0000000..72d12fa --- /dev/null +++ b/src/Models/Entities/EntityIUserDeckTypeNote.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDeckTypeNote +{ + public long UserId { get; set; } + + public DeckType DeckType { get; set; } + + public int MaxDeckPower { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserDokan.cs b/src/Models/Entities/EntityIUserDokan.cs new file mode 100644 index 0000000..a790a9d --- /dev/null +++ b/src/Models/Entities/EntityIUserDokan.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserDokan +{ + public long UserId { get; set; } + + public int DokanId { get; set; } + + public long DisplayDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestDailyGroupCompleteReward.cs b/src/Models/Entities/EntityIUserEventQuestDailyGroupCompleteReward.cs new file mode 100644 index 0000000..8eafc6d --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestDailyGroupCompleteReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestDailyGroupCompleteReward +{ + public long UserId { get; set; } + + public int LastRewardReceiveEventQuestDailyGroupId { get; set; } + + public long LastRewardReceiveDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestGuerrillaFreeOpen.cs b/src/Models/Entities/EntityIUserEventQuestGuerrillaFreeOpen.cs new file mode 100644 index 0000000..c222252 --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestGuerrillaFreeOpen.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestGuerrillaFreeOpen +{ + public long UserId { get; set; } + + public long StartDatetime { get; set; } + + public int OpenMinutes { get; set; } + + public int DailyOpenedCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestLabyrinthSeason.cs b/src/Models/Entities/EntityIUserEventQuestLabyrinthSeason.cs new file mode 100644 index 0000000..55dd9ce --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestLabyrinthSeason.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestLabyrinthSeason +{ + public long UserId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int LastJoinSeasonNumber { get; set; } + + public int LastSeasonRewardReceivedSeasonNumber { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestLabyrinthStage.cs b/src/Models/Entities/EntityIUserEventQuestLabyrinthStage.cs new file mode 100644 index 0000000..a4bd766 --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestLabyrinthStage.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestLabyrinthStage +{ + public long UserId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int StageOrder { get; set; } + + public bool IsReceivedStageClearReward { get; set; } + + public int AccumulationRewardReceivedQuestMissionCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestProgressStatus.cs b/src/Models/Entities/EntityIUserEventQuestProgressStatus.cs new file mode 100644 index 0000000..29faf97 --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestProgressStatus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestProgressStatus +{ + public long UserId { get; set; } + + public int CurrentEventQuestChapterId { get; set; } + + public int CurrentQuestId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public int HeadQuestSceneId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserEventQuestTowerAccumulationReward.cs b/src/Models/Entities/EntityIUserEventQuestTowerAccumulationReward.cs new file mode 100644 index 0000000..18b5fcd --- /dev/null +++ b/src/Models/Entities/EntityIUserEventQuestTowerAccumulationReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserEventQuestTowerAccumulationReward +{ + public long UserId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int LatestRewardReceiveQuestMissionClearCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserExplore.cs b/src/Models/Entities/EntityIUserExplore.cs new file mode 100644 index 0000000..aa016a1 --- /dev/null +++ b/src/Models/Entities/EntityIUserExplore.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserExplore +{ + public long UserId { get; set; } + + public bool IsUseExploreTicket { get; set; } + + public int PlayingExploreId { get; set; } + + public long LatestPlayDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserExploreScore.cs b/src/Models/Entities/EntityIUserExploreScore.cs new file mode 100644 index 0000000..ea2272a --- /dev/null +++ b/src/Models/Entities/EntityIUserExploreScore.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserExploreScore +{ + public long UserId { get; set; } + + public int ExploreId { get; set; } + + public int MaxScore { get; set; } + + public long MaxScoreUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserExtraQuestProgressStatus.cs b/src/Models/Entities/EntityIUserExtraQuestProgressStatus.cs new file mode 100644 index 0000000..010e560 --- /dev/null +++ b/src/Models/Entities/EntityIUserExtraQuestProgressStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserExtraQuestProgressStatus +{ + public long UserId { get; set; } + + public int CurrentQuestId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public int HeadQuestSceneId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserFacebook.cs b/src/Models/Entities/EntityIUserFacebook.cs new file mode 100644 index 0000000..301318a --- /dev/null +++ b/src/Models/Entities/EntityIUserFacebook.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserFacebook +{ + public long UserId { get; set; } + + public long FacebookId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserGem.cs b/src/Models/Entities/EntityIUserGem.cs new file mode 100644 index 0000000..0711576 --- /dev/null +++ b/src/Models/Entities/EntityIUserGem.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserGem +{ + public long UserId { get; set; } + + public int PaidGem { get; set; } + + public int FreeGem { get; set; } +} diff --git a/src/Models/Entities/EntityIUserGimmick.cs b/src/Models/Entities/EntityIUserGimmick.cs new file mode 100644 index 0000000..f439064 --- /dev/null +++ b/src/Models/Entities/EntityIUserGimmick.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserGimmick +{ + public long UserId { get; set; } + + public int GimmickSequenceScheduleId { get; set; } + + public int GimmickSequenceId { get; set; } + + public int GimmickId { get; set; } + + public bool IsGimmickCleared { get; set; } + + public long StartDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserGimmickOrnamentProgress.cs b/src/Models/Entities/EntityIUserGimmickOrnamentProgress.cs new file mode 100644 index 0000000..41e61fb --- /dev/null +++ b/src/Models/Entities/EntityIUserGimmickOrnamentProgress.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserGimmickOrnamentProgress +{ + public long UserId { get; set; } + + public int GimmickSequenceScheduleId { get; set; } + + public int GimmickSequenceId { get; set; } + + public int GimmickId { get; set; } + + public int GimmickOrnamentIndex { get; set; } + + public int ProgressValueBit { get; set; } + + public long BaseDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserGimmickSequence.cs b/src/Models/Entities/EntityIUserGimmickSequence.cs new file mode 100644 index 0000000..3d781c5 --- /dev/null +++ b/src/Models/Entities/EntityIUserGimmickSequence.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserGimmickSequence +{ + public long UserId { get; set; } + + public int GimmickSequenceScheduleId { get; set; } + + public int GimmickSequenceId { get; set; } + + public bool IsGimmickSequenceCleared { get; set; } + + public long ClearDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserGimmickUnlock.cs b/src/Models/Entities/EntityIUserGimmickUnlock.cs new file mode 100644 index 0000000..14acfc0 --- /dev/null +++ b/src/Models/Entities/EntityIUserGimmickUnlock.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserGimmickUnlock +{ + public long UserId { get; set; } + + public int GimmickSequenceScheduleId { get; set; } + + public int GimmickSequenceId { get; set; } + + public int GimmickId { get; set; } + + public bool IsUnlocked { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserImportantItem.cs b/src/Models/Entities/EntityIUserImportantItem.cs new file mode 100644 index 0000000..c34623e --- /dev/null +++ b/src/Models/Entities/EntityIUserImportantItem.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserImportantItem +{ + public long UserId { get; set; } + + public int ImportantItemId { get; set; } + + public int Count { get; set; } + + public long FirstAcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserLimitedOpen.cs b/src/Models/Entities/EntityIUserLimitedOpen.cs new file mode 100644 index 0000000..0cddc48 --- /dev/null +++ b/src/Models/Entities/EntityIUserLimitedOpen.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserLimitedOpen +{ + public long UserId { get; set; } + + public LimitedOpenTargetType LimitedOpenTargetType { get; set; } + + public int TargetId { get; set; } + + public long OpenDatetime { get; set; } + + public long CloseDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserLogin.cs b/src/Models/Entities/EntityIUserLogin.cs new file mode 100644 index 0000000..c6f7de9 --- /dev/null +++ b/src/Models/Entities/EntityIUserLogin.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserLogin +{ + public long UserId { get; set; } + + public int TotalLoginCount { get; set; } + + public int ContinualLoginCount { get; set; } + + public int MaxContinualLoginCount { get; set; } + + public long LastLoginDatetime { get; set; } + + public long LastComebackLoginDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserLoginBonus.cs b/src/Models/Entities/EntityIUserLoginBonus.cs new file mode 100644 index 0000000..79e67da --- /dev/null +++ b/src/Models/Entities/EntityIUserLoginBonus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserLoginBonus +{ + public long UserId { get; set; } + + public int LoginBonusId { get; set; } + + public int CurrentPageNumber { get; set; } + + public int CurrentStampNumber { get; set; } + + public long LatestRewardReceiveDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMainQuestFlowStatus.cs b/src/Models/Entities/EntityIUserMainQuestFlowStatus.cs new file mode 100644 index 0000000..19a07c2 --- /dev/null +++ b/src/Models/Entities/EntityIUserMainQuestFlowStatus.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMainQuestFlowStatus +{ + public long UserId { get; set; } + + public QuestFlowType CurrentQuestFlowType { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMainQuestMainFlowStatus.cs b/src/Models/Entities/EntityIUserMainQuestMainFlowStatus.cs new file mode 100644 index 0000000..eed75e0 --- /dev/null +++ b/src/Models/Entities/EntityIUserMainQuestMainFlowStatus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMainQuestMainFlowStatus +{ + public long UserId { get; set; } + + public int CurrentMainQuestRouteId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public int HeadQuestSceneId { get; set; } + + public bool IsReachedLastQuestScene { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMainQuestProgressStatus.cs b/src/Models/Entities/EntityIUserMainQuestProgressStatus.cs new file mode 100644 index 0000000..23a45b3 --- /dev/null +++ b/src/Models/Entities/EntityIUserMainQuestProgressStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMainQuestProgressStatus +{ + public long UserId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public int HeadQuestSceneId { get; set; } + + public QuestFlowType CurrentQuestFlowType { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMainQuestReplayFlowStatus.cs b/src/Models/Entities/EntityIUserMainQuestReplayFlowStatus.cs new file mode 100644 index 0000000..c09694e --- /dev/null +++ b/src/Models/Entities/EntityIUserMainQuestReplayFlowStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMainQuestReplayFlowStatus +{ + public long UserId { get; set; } + + public int CurrentHeadQuestSceneId { get; set; } + + public int CurrentQuestSceneId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMainQuestSeasonRoute.cs b/src/Models/Entities/EntityIUserMainQuestSeasonRoute.cs new file mode 100644 index 0000000..33f3e11 --- /dev/null +++ b/src/Models/Entities/EntityIUserMainQuestSeasonRoute.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMainQuestSeasonRoute +{ + public long UserId { get; set; } + + public int MainQuestSeasonId { get; set; } + + public int MainQuestRouteId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMaterial.cs b/src/Models/Entities/EntityIUserMaterial.cs new file mode 100644 index 0000000..0683154 --- /dev/null +++ b/src/Models/Entities/EntityIUserMaterial.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMaterial +{ + public long UserId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public long FirstAcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMission.cs b/src/Models/Entities/EntityIUserMission.cs new file mode 100644 index 0000000..c41093a --- /dev/null +++ b/src/Models/Entities/EntityIUserMission.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMission +{ + public long UserId { get; set; } + + public int MissionId { get; set; } + + public long StartDatetime { get; set; } + + public int ProgressValue { get; set; } + + public MissionProgressStatusType MissionProgressStatusType { get; set; } + + public long ClearDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMissionCompletionProgress.cs b/src/Models/Entities/EntityIUserMissionCompletionProgress.cs new file mode 100644 index 0000000..5e92e53 --- /dev/null +++ b/src/Models/Entities/EntityIUserMissionCompletionProgress.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMissionCompletionProgress +{ + public long UserId { get; set; } + + public int MissionId { get; set; } + + public long ProgressValue { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMissionPassPoint.cs b/src/Models/Entities/EntityIUserMissionPassPoint.cs new file mode 100644 index 0000000..af2b03b --- /dev/null +++ b/src/Models/Entities/EntityIUserMissionPassPoint.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMissionPassPoint +{ + public long UserId { get; set; } + + public int MissionPassId { get; set; } + + public int Point { get; set; } + + public int PremiumRewardReceivedLevel { get; set; } + + public int NoPremiumRewardReceivedLevel { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserMovie.cs b/src/Models/Entities/EntityIUserMovie.cs new file mode 100644 index 0000000..baa759a --- /dev/null +++ b/src/Models/Entities/EntityIUserMovie.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserMovie +{ + public long UserId { get; set; } + + public int MovieId { get; set; } + + public long LatestViewedDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserNaviCutIn.cs b/src/Models/Entities/EntityIUserNaviCutIn.cs new file mode 100644 index 0000000..64f734e --- /dev/null +++ b/src/Models/Entities/EntityIUserNaviCutIn.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserNaviCutIn +{ + public long UserId { get; set; } + + public int NaviCutInId { get; set; } + + public long PlayDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserOmikuji.cs b/src/Models/Entities/EntityIUserOmikuji.cs new file mode 100644 index 0000000..8c7c7e6 --- /dev/null +++ b/src/Models/Entities/EntityIUserOmikuji.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserOmikuji +{ + public long UserId { get; set; } + + public int OmikujiId { get; set; } + + public long LatestDrawDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserParts.cs b/src/Models/Entities/EntityIUserParts.cs new file mode 100644 index 0000000..b0c2523 --- /dev/null +++ b/src/Models/Entities/EntityIUserParts.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserParts +{ + public long UserId { get; set; } + + public string UserPartsUuid { get; set; } + + public int PartsId { get; set; } + + public int Level { get; set; } + + public int PartsStatusMainId { get; set; } + + public bool IsProtected { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPartsGroupNote.cs b/src/Models/Entities/EntityIUserPartsGroupNote.cs new file mode 100644 index 0000000..a6ce0c9 --- /dev/null +++ b/src/Models/Entities/EntityIUserPartsGroupNote.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPartsGroupNote +{ + public long UserId { get; set; } + + public int PartsGroupId { get; set; } + + public long FirstAcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPartsPreset.cs b/src/Models/Entities/EntityIUserPartsPreset.cs new file mode 100644 index 0000000..1f3a07e --- /dev/null +++ b/src/Models/Entities/EntityIUserPartsPreset.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPartsPreset +{ + public long UserId { get; set; } + + public int UserPartsPresetNumber { get; set; } + + public string UserPartsUuid01 { get; set; } + + public string UserPartsUuid02 { get; set; } + + public string UserPartsUuid03 { get; set; } + + public string Name { get; set; } + + public int UserPartsPresetTagNumber { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPartsPresetTag.cs b/src/Models/Entities/EntityIUserPartsPresetTag.cs new file mode 100644 index 0000000..01f0812 --- /dev/null +++ b/src/Models/Entities/EntityIUserPartsPresetTag.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPartsPresetTag +{ + public long UserId { get; set; } + + public int UserPartsPresetTagNumber { get; set; } + + public string Name { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPartsStatusSub.cs b/src/Models/Entities/EntityIUserPartsStatusSub.cs new file mode 100644 index 0000000..1fd221f --- /dev/null +++ b/src/Models/Entities/EntityIUserPartsStatusSub.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPartsStatusSub +{ + public long UserId { get; set; } + + public string UserPartsUuid { get; set; } + + public int StatusIndex { get; set; } + + public int PartsStatusSubLotteryId { get; set; } + + public int Level { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int StatusChangeValue { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPortalCageStatus.cs b/src/Models/Entities/EntityIUserPortalCageStatus.cs new file mode 100644 index 0000000..bd9e922 --- /dev/null +++ b/src/Models/Entities/EntityIUserPortalCageStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPortalCageStatus +{ + public long UserId { get; set; } + + public bool IsCurrentProgress { get; set; } + + public long DropItemStartDatetime { get; set; } + + public int CurrentDropItemCount { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPossessionAutoConvert.cs b/src/Models/Entities/EntityIUserPossessionAutoConvert.cs new file mode 100644 index 0000000..77bc09c --- /dev/null +++ b/src/Models/Entities/EntityIUserPossessionAutoConvert.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPossessionAutoConvert +{ + public long UserId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int FromCount { get; set; } + + public PossessionType ToPossessionType { get; set; } + + public int ToPossessionId { get; set; } + + public int ToCount { get; set; } + + public long ConvertDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPremiumItem.cs b/src/Models/Entities/EntityIUserPremiumItem.cs new file mode 100644 index 0000000..773f522 --- /dev/null +++ b/src/Models/Entities/EntityIUserPremiumItem.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPremiumItem +{ + public long UserId { get; set; } + + public int PremiumItemId { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserProfile.cs b/src/Models/Entities/EntityIUserProfile.cs new file mode 100644 index 0000000..4d9b652 --- /dev/null +++ b/src/Models/Entities/EntityIUserProfile.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserProfile +{ + public long UserId { get; set; } + + public string Name { get; set; } + + public long NameUpdateDatetime { get; set; } + + public string Message { get; set; } + + public long MessageUpdateDatetime { get; set; } + + public int FavoriteCostumeId { get; set; } + + public long FavoriteCostumeIdUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPvpDefenseDeck.cs b/src/Models/Entities/EntityIUserPvpDefenseDeck.cs new file mode 100644 index 0000000..65e10ba --- /dev/null +++ b/src/Models/Entities/EntityIUserPvpDefenseDeck.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPvpDefenseDeck +{ + public long UserId { get; set; } + + public int UserDeckNumber { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPvpStatus.cs b/src/Models/Entities/EntityIUserPvpStatus.cs new file mode 100644 index 0000000..7cfacc4 --- /dev/null +++ b/src/Models/Entities/EntityIUserPvpStatus.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPvpStatus +{ + public long UserId { get; set; } + + public int StaminaMilliValue { get; set; } + + public long StaminaUpdateDatetime { get; set; } + + public int LatestRewardReceivePvpSeasonId { get; set; } + + public long LatestRewardReceivePvpWeeklyVersion { get; set; } + + public int WinStreakCount { get; set; } + + public long WinStreakCountUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserPvpWeeklyResult.cs b/src/Models/Entities/EntityIUserPvpWeeklyResult.cs new file mode 100644 index 0000000..3ba45c7 --- /dev/null +++ b/src/Models/Entities/EntityIUserPvpWeeklyResult.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserPvpWeeklyResult +{ + public long UserId { get; set; } + + public long PvpWeeklyVersion { get; set; } + + public int PvpSeasonId { get; set; } + + public int GroupId { get; set; } + + public int FinalPoint { get; set; } + + public int FinalRank { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuest.cs b/src/Models/Entities/EntityIUserQuest.cs new file mode 100644 index 0000000..c94f5d1 --- /dev/null +++ b/src/Models/Entities/EntityIUserQuest.cs @@ -0,0 +1,26 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuest +{ + public long UserId { get; set; } + + public int QuestId { get; set; } + + public int QuestStateType { get; set; } + + public bool IsBattleOnly { get; set; } + + public long LatestStartDatetime { get; set; } + + public int ClearCount { get; set; } + + public int DailyClearCount { get; set; } + + public long LastClearDatetime { get; set; } + + public int ShortestClearFrames { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestAutoOrbit.cs b/src/Models/Entities/EntityIUserQuestAutoOrbit.cs new file mode 100644 index 0000000..655bd2d --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestAutoOrbit.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestAutoOrbit +{ + public long UserId { get; set; } + + public QuestType QuestType { get; set; } + + public int ChapterId { get; set; } + + public int QuestId { get; set; } + + public int MaxAutoOrbitCount { get; set; } + + public int ClearedAutoOrbitCount { get; set; } + + public long LastClearDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestLimitContentStatus.cs b/src/Models/Entities/EntityIUserQuestLimitContentStatus.cs new file mode 100644 index 0000000..4ba9a22 --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestLimitContentStatus.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestLimitContentStatus +{ + public long UserId { get; set; } + + public int QuestId { get; set; } + + public int LimitContentQuestStatusType { get; set; } + + public int EventQuestChapterId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestMission.cs b/src/Models/Entities/EntityIUserQuestMission.cs new file mode 100644 index 0000000..49af798 --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestMission.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestMission +{ + public long UserId { get; set; } + + public int QuestId { get; set; } + + public int QuestMissionId { get; set; } + + public int ProgressValue { get; set; } + + public bool IsClear { get; set; } + + public long LatestClearDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestReplayFlowRewardGroup.cs b/src/Models/Entities/EntityIUserQuestReplayFlowRewardGroup.cs new file mode 100644 index 0000000..31498b1 --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestReplayFlowRewardGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestReplayFlowRewardGroup +{ + public long UserId { get; set; } + + public int QuestReplayFlowRewardGroupId { get; set; } + + public long ReceiveDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestSceneChoice.cs b/src/Models/Entities/EntityIUserQuestSceneChoice.cs new file mode 100644 index 0000000..fbfacda --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestSceneChoice.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestSceneChoice +{ + public long UserId { get; set; } + + public int QuestSceneChoiceGroupingId { get; set; } + + public int QuestSceneChoiceEffectId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserQuestSceneChoiceHistory.cs b/src/Models/Entities/EntityIUserQuestSceneChoiceHistory.cs new file mode 100644 index 0000000..8e9307f --- /dev/null +++ b/src/Models/Entities/EntityIUserQuestSceneChoiceHistory.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserQuestSceneChoiceHistory +{ + public long UserId { get; set; } + + public int QuestSceneChoiceEffectId { get; set; } + + public long ChoiceDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserSetting.cs b/src/Models/Entities/EntityIUserSetting.cs new file mode 100644 index 0000000..dfbe89b --- /dev/null +++ b/src/Models/Entities/EntityIUserSetting.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserSetting +{ + public long UserId { get; set; } + + public bool IsNotifyPurchaseAlert { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserShopItem.cs b/src/Models/Entities/EntityIUserShopItem.cs new file mode 100644 index 0000000..880e8e3 --- /dev/null +++ b/src/Models/Entities/EntityIUserShopItem.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserShopItem +{ + public long UserId { get; set; } + + public int ShopItemId { get; set; } + + public int BoughtCount { get; set; } + + public long LatestBoughtCountChangedDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserShopReplaceable.cs b/src/Models/Entities/EntityIUserShopReplaceable.cs new file mode 100644 index 0000000..4447a7b --- /dev/null +++ b/src/Models/Entities/EntityIUserShopReplaceable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserShopReplaceable +{ + public long UserId { get; set; } + + public int LineupUpdateCount { get; set; } + + public long LatestLineupUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserShopReplaceableLineup.cs b/src/Models/Entities/EntityIUserShopReplaceableLineup.cs new file mode 100644 index 0000000..e1b0cec --- /dev/null +++ b/src/Models/Entities/EntityIUserShopReplaceableLineup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserShopReplaceableLineup +{ + public long UserId { get; set; } + + public int SlotNumber { get; set; } + + public int ShopItemId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserSideStoryQuest.cs b/src/Models/Entities/EntityIUserSideStoryQuest.cs new file mode 100644 index 0000000..bdc9cc3 --- /dev/null +++ b/src/Models/Entities/EntityIUserSideStoryQuest.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserSideStoryQuest +{ + public long UserId { get; set; } + + public int SideStoryQuestId { get; set; } + + public int HeadSideStoryQuestSceneId { get; set; } + + public int SideStoryQuestStateType { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserSideStoryQuestSceneProgressStatus.cs b/src/Models/Entities/EntityIUserSideStoryQuestSceneProgressStatus.cs new file mode 100644 index 0000000..5339709 --- /dev/null +++ b/src/Models/Entities/EntityIUserSideStoryQuestSceneProgressStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserSideStoryQuestSceneProgressStatus +{ + public long UserId { get; set; } + + public int CurrentSideStoryQuestId { get; set; } + + public int CurrentSideStoryQuestSceneId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserStatus.cs b/src/Models/Entities/EntityIUserStatus.cs new file mode 100644 index 0000000..a100cef --- /dev/null +++ b/src/Models/Entities/EntityIUserStatus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserStatus +{ + public long UserId { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public int StaminaMilliValue { get; set; } + + public long StaminaUpdateDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserThought.cs b/src/Models/Entities/EntityIUserThought.cs new file mode 100644 index 0000000..77b5b1a --- /dev/null +++ b/src/Models/Entities/EntityIUserThought.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserThought +{ + public long UserId { get; set; } + + public string UserThoughtUuid { get; set; } + + public int ThoughtId { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserTripleDeck.cs b/src/Models/Entities/EntityIUserTripleDeck.cs new file mode 100644 index 0000000..15df109 --- /dev/null +++ b/src/Models/Entities/EntityIUserTripleDeck.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserTripleDeck +{ + public long UserId { get; set; } + + public DeckType DeckType { get; set; } + + public int UserDeckNumber { get; set; } + + public string Name { get; set; } + + public int DeckNumber01 { get; set; } + + public int DeckNumber02 { get; set; } + + public int DeckNumber03 { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserTutorialProgress.cs b/src/Models/Entities/EntityIUserTutorialProgress.cs new file mode 100644 index 0000000..e5e5ab3 --- /dev/null +++ b/src/Models/Entities/EntityIUserTutorialProgress.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserTutorialProgress +{ + public long UserId { get; set; } + + public TutorialType TutorialType { get; set; } + + public int ProgressPhase { get; set; } + + public int ChoiceId { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeapon.cs b/src/Models/Entities/EntityIUserWeapon.cs new file mode 100644 index 0000000..a554660 --- /dev/null +++ b/src/Models/Entities/EntityIUserWeapon.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeapon +{ + public long UserId { get; set; } + + public string UserWeaponUuid { get; set; } + + public int WeaponId { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public int LimitBreakCount { get; set; } + + public bool IsProtected { get; set; } + + public long AcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeaponAbility.cs b/src/Models/Entities/EntityIUserWeaponAbility.cs new file mode 100644 index 0000000..38e2335 --- /dev/null +++ b/src/Models/Entities/EntityIUserWeaponAbility.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeaponAbility +{ + public long UserId { get; set; } + + public string UserWeaponUuid { get; set; } + + public int SlotNumber { get; set; } + + public int Level { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeaponAwaken.cs b/src/Models/Entities/EntityIUserWeaponAwaken.cs new file mode 100644 index 0000000..a55636b --- /dev/null +++ b/src/Models/Entities/EntityIUserWeaponAwaken.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeaponAwaken +{ + public long UserId { get; set; } + + public string UserWeaponUuid { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeaponNote.cs b/src/Models/Entities/EntityIUserWeaponNote.cs new file mode 100644 index 0000000..c93ca01 --- /dev/null +++ b/src/Models/Entities/EntityIUserWeaponNote.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeaponNote +{ + public long UserId { get; set; } + + public int WeaponId { get; set; } + + public int MaxLevel { get; set; } + + public int MaxLimitBreakCount { get; set; } + + public long FirstAcquisitionDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeaponSkill.cs b/src/Models/Entities/EntityIUserWeaponSkill.cs new file mode 100644 index 0000000..000e938 --- /dev/null +++ b/src/Models/Entities/EntityIUserWeaponSkill.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeaponSkill +{ + public long UserId { get; set; } + + public string UserWeaponUuid { get; set; } + + public int SlotNumber { get; set; } + + public int Level { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWeaponStory.cs b/src/Models/Entities/EntityIUserWeaponStory.cs new file mode 100644 index 0000000..afa3583 --- /dev/null +++ b/src/Models/Entities/EntityIUserWeaponStory.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWeaponStory +{ + public long UserId { get; set; } + + public int WeaponId { get; set; } + + public int ReleasedMaxStoryIndex { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityIUserWebviewPanelMission.cs b/src/Models/Entities/EntityIUserWebviewPanelMission.cs new file mode 100644 index 0000000..c5aa1b7 --- /dev/null +++ b/src/Models/Entities/EntityIUserWebviewPanelMission.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityIUserWebviewPanelMission +{ + public long UserId { get; set; } + + public int WebviewPanelMissionPageId { get; set; } + + public long RewardReceiveDatetime { get; set; } + + public long LatestVersion { get; set; } +} diff --git a/src/Models/Entities/EntityMAbility.cs b/src/Models/Entities/EntityMAbility.cs new file mode 100644 index 0000000..83874d0 --- /dev/null +++ b/src/Models/Entities/EntityMAbility.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbility +{ + public int AbilityId { get; set; } + + public int AbilityLevelGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviour.cs b/src/Models/Entities/EntityMAbilityBehaviour.cs new file mode 100644 index 0000000..f63260d --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviour.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviour +{ + public int AbilityBehaviourId { get; set; } + + public AbilityBehaviourType AbilityBehaviourType { get; set; } + + public int AbilityBehaviourActionId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviourActionBless.cs b/src/Models/Entities/EntityMAbilityBehaviourActionBless.cs new file mode 100644 index 0000000..c7006ce --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviourActionBless.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviourActionBless +{ + public int AbilityBehaviourActionId { get; set; } + + public int AbilityId { get; set; } + + public int DecreasePoint { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviourActionPassiveSkill.cs b/src/Models/Entities/EntityMAbilityBehaviourActionPassiveSkill.cs new file mode 100644 index 0000000..62f1647 --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviourActionPassiveSkill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviourActionPassiveSkill +{ + public int AbilityBehaviourActionId { get; set; } + + public int SkillDetailId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviourActionStatus.cs b/src/Models/Entities/EntityMAbilityBehaviourActionStatus.cs new file mode 100644 index 0000000..78bc089 --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviourActionStatus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviourActionStatus +{ + public int AbilityBehaviourActionId { get; set; } + + public AbilityBehaviourStatusChangeType AbilityBehaviourStatusChangeType { get; set; } + + public AttributeConditionType AttributeConditionType { get; set; } + + public AbilityBehaviourStatusOrganizationConditionType AbilityOrganizationConditionType { get; set; } + + public int AbilityStatusId { get; set; } + + public AbilityBehaviourStatusApplyScopeType ApplyScopeType { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviourActionStatusDown.cs b/src/Models/Entities/EntityMAbilityBehaviourActionStatusDown.cs new file mode 100644 index 0000000..908cc20 --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviourActionStatusDown.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviourActionStatusDown +{ + public int AbilityBehaviourActionId { get; set; } + + public AbilityBehaviourStatusChangeType AbilityBehaviourStatusChangeType { get; set; } + + public AttributeConditionType AttributeConditionType { get; set; } + + public AbilityBehaviourStatusOrganizationConditionType AbilityOrganizationConditionType { get; set; } + + public int AbilityStatusId { get; set; } + + public AbilityBehaviourStatusApplyScopeType ApplyScopeType { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityBehaviourGroup.cs b/src/Models/Entities/EntityMAbilityBehaviourGroup.cs new file mode 100644 index 0000000..62151b9 --- /dev/null +++ b/src/Models/Entities/EntityMAbilityBehaviourGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityBehaviourGroup +{ + public int AbilityBehaviourGroupId { get; set; } + + public int AbilityBehaviourIndex { get; set; } + + public int AbilityBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityDetail.cs b/src/Models/Entities/EntityMAbilityDetail.cs new file mode 100644 index 0000000..578ac1e --- /dev/null +++ b/src/Models/Entities/EntityMAbilityDetail.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityDetail +{ + public int AbilityDetailId { get; set; } + + public int NameAbilityTextId { get; set; } + + public int DescriptionAbilityTextId { get; set; } + + public int AbilityBehaviourGroupId { get; set; } + + public int AssetCategoryId { get; set; } + + public int AssetVariationId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityLevelGroup.cs b/src/Models/Entities/EntityMAbilityLevelGroup.cs new file mode 100644 index 0000000..65c6da2 --- /dev/null +++ b/src/Models/Entities/EntityMAbilityLevelGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityLevelGroup +{ + public int AbilityLevelGroupId { get; set; } + + public int LevelLowerLimit { get; set; } + + public int AbilityDetailId { get; set; } +} diff --git a/src/Models/Entities/EntityMAbilityStatus.cs b/src/Models/Entities/EntityMAbilityStatus.cs new file mode 100644 index 0000000..fdeb9fa --- /dev/null +++ b/src/Models/Entities/EntityMAbilityStatus.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAbilityStatus +{ + public int AbilityStatusId { get; set; } + + public int Agility { get; set; } + + public int Attack { get; set; } + + public int CriticalAttackRatioPermil { get; set; } + + public int CriticalRatioPermil { get; set; } + + public int EvasionRatioPermil { get; set; } + + public int Hp { get; set; } + + public int Vitality { get; set; } +} diff --git a/src/Models/Entities/EntityMActor.cs b/src/Models/Entities/EntityMActor.cs new file mode 100644 index 0000000..eec6d03 --- /dev/null +++ b/src/Models/Entities/EntityMActor.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMActor +{ + public int ActorId { get; set; } + + public int NameActorTextId { get; set; } + + public string ActorAssetId { get; set; } + + public string ActorSpeakerIconAssetPath { get; set; } + + public string AnimatorAssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMActorAnimation.cs b/src/Models/Entities/EntityMActorAnimation.cs new file mode 100644 index 0000000..343102f --- /dev/null +++ b/src/Models/Entities/EntityMActorAnimation.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMActorAnimation +{ + public int ActorAnimationId { get; set; } + + public int ActorId { get; set; } + + public int ActorAnimationCategoryId { get; set; } + + public int ActorAnimationType { get; set; } + + public string AssetPath { get; set; } + + public bool IsDefault { get; set; } +} diff --git a/src/Models/Entities/EntityMActorAnimationCategory.cs b/src/Models/Entities/EntityMActorAnimationCategory.cs new file mode 100644 index 0000000..da22e4b --- /dev/null +++ b/src/Models/Entities/EntityMActorAnimationCategory.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMActorAnimationCategory +{ + public int ActorAnimationCategoryId { get; set; } + + public string Name { get; set; } +} diff --git a/src/Models/Entities/EntityMActorAnimationController.cs b/src/Models/Entities/EntityMActorAnimationController.cs new file mode 100644 index 0000000..7688458 --- /dev/null +++ b/src/Models/Entities/EntityMActorAnimationController.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMActorAnimationController +{ + public int ActorAnimationControllerId { get; set; } + + public int ActorId { get; set; } + + public int ActorAnimationControllerType { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMActorObject.cs b/src/Models/Entities/EntityMActorObject.cs new file mode 100644 index 0000000..342a848 --- /dev/null +++ b/src/Models/Entities/EntityMActorObject.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMActorObject +{ + public int ActorObjectId { get; set; } + + public int ActorId { get; set; } +} diff --git a/src/Models/Entities/EntityMAppealDialog.cs b/src/Models/Entities/EntityMAppealDialog.cs new file mode 100644 index 0000000..bfe2c0b --- /dev/null +++ b/src/Models/Entities/EntityMAppealDialog.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAppealDialog +{ + public int AppealDialogId { get; set; } + + public int SortOrder { get; set; } + + public AppealTargetType AppealTargetType { get; set; } + + public int AppealTargetId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int TitleTextId { get; set; } + + public int AssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetBackground.cs b/src/Models/Entities/EntityMAssetBackground.cs new file mode 100644 index 0000000..90eb727 --- /dev/null +++ b/src/Models/Entities/EntityMAssetBackground.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetBackground +{ + public int AssetBackgroundId { get; set; } + + public string BackgroundAssetPath { get; set; } + + public string GlobalEventMapAssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetCalculator.cs b/src/Models/Entities/EntityMAssetCalculator.cs new file mode 100644 index 0000000..72bb5a4 --- /dev/null +++ b/src/Models/Entities/EntityMAssetCalculator.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetCalculator +{ + public int AssetCalculatorId { get; set; } + + public int UseCalculatorType { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetDataSetting.cs b/src/Models/Entities/EntityMAssetDataSetting.cs new file mode 100644 index 0000000..0f55a4f --- /dev/null +++ b/src/Models/Entities/EntityMAssetDataSetting.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetDataSetting +{ + public int AssetDataSettingId { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetEffect.cs b/src/Models/Entities/EntityMAssetEffect.cs new file mode 100644 index 0000000..024f63e --- /dev/null +++ b/src/Models/Entities/EntityMAssetEffect.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetEffect +{ + public int AssetEffectId { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetGradeIcon.cs b/src/Models/Entities/EntityMAssetGradeIcon.cs new file mode 100644 index 0000000..c425e7a --- /dev/null +++ b/src/Models/Entities/EntityMAssetGradeIcon.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetGradeIcon +{ + public int AssetGradeIconId { get; set; } + + public int AssetId { get; set; } + + public int Level { get; set; } + + public int SeAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetTimeline.cs b/src/Models/Entities/EntityMAssetTimeline.cs new file mode 100644 index 0000000..704ccd8 --- /dev/null +++ b/src/Models/Entities/EntityMAssetTimeline.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetTimeline +{ + public int AssetTimelineId { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMAssetTurnbattlePrefab.cs b/src/Models/Entities/EntityMAssetTurnbattlePrefab.cs new file mode 100644 index 0000000..787546c --- /dev/null +++ b/src/Models/Entities/EntityMAssetTurnbattlePrefab.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMAssetTurnbattlePrefab +{ + public int AssetTurnbattlePrefabId { get; set; } + + public string AssetPath { get; set; } +} diff --git a/src/Models/Entities/EntityMBattle.cs b/src/Models/Entities/EntityMBattle.cs new file mode 100644 index 0000000..87f6bb8 --- /dev/null +++ b/src/Models/Entities/EntityMBattle.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattle +{ + public int BattleId { get; set; } + + public long BattleNpcId { get; set; } + + public DeckType DeckType { get; set; } + + public int BattleNpcDeckNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleActorAi.cs b/src/Models/Entities/EntityMBattleActorAi.cs new file mode 100644 index 0000000..761c2e9 --- /dev/null +++ b/src/Models/Entities/EntityMBattleActorAi.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleActorAi +{ + public int BattleActorAiId { get; set; } + + public string AssetPath { get; set; } + + public string Description { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleActorSkillAiGroup.cs b/src/Models/Entities/EntityMBattleActorSkillAiGroup.cs new file mode 100644 index 0000000..32d2a74 --- /dev/null +++ b/src/Models/Entities/EntityMBattleActorSkillAiGroup.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleActorSkillAiGroup +{ + public int BattleActorSkillAiGroupId { get; set; } + + public int Priority { get; set; } + + public BattleSchemeType BattleSchemeType { get; set; } + + public bool IsPlayerSide { get; set; } + + public SkillAiUnlockConditionValueType SkillAiUnlockConditionValueType { get; set; } + + public int SkillAiUnlockConditionValue { get; set; } + + public int BattleActorSkillAiId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleAdditionalAbility.cs b/src/Models/Entities/EntityMBattleAdditionalAbility.cs new file mode 100644 index 0000000..342a727 --- /dev/null +++ b/src/Models/Entities/EntityMBattleAdditionalAbility.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleAdditionalAbility +{ + public int BattleGroupId { get; set; } + + public int TargetActorAppearanceWaveNumber { get; set; } + + public int AbilityIndex { get; set; } + + public int AdditionalAbilityApplyScopeType { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleAttributeDamageCoefficientDefine.cs b/src/Models/Entities/EntityMBattleAttributeDamageCoefficientDefine.cs new file mode 100644 index 0000000..3d72d20 --- /dev/null +++ b/src/Models/Entities/EntityMBattleAttributeDamageCoefficientDefine.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleAttributeDamageCoefficientDefine +{ + public BattleSchemeType BattleSchemeType { get; set; } + + public int PlayerAttributeDamageCoefficientGroupId { get; set; } + + public int NpcAttributeDamageCoefficientGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleAttributeDamageCoefficientGroup.cs b/src/Models/Entities/EntityMBattleAttributeDamageCoefficientGroup.cs new file mode 100644 index 0000000..36e89f9 --- /dev/null +++ b/src/Models/Entities/EntityMBattleAttributeDamageCoefficientGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleAttributeDamageCoefficientGroup +{ + public int AttributeDamageCoefficientGroupId { get; set; } + + public AttributeType SkillExecutorAttributeType { get; set; } + + public AttributeType SkillTargetAttributeType { get; set; } + + public AttributeCompatibilityType AttributeCompatibilityType { get; set; } + + public int DamageCoefficientPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBgmSet.cs b/src/Models/Entities/EntityMBattleBgmSet.cs new file mode 100644 index 0000000..9c0bdbb --- /dev/null +++ b/src/Models/Entities/EntityMBattleBgmSet.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBgmSet +{ + public int BgmSetId { get; set; } + + public int TrackNumber { get; set; } + + public int BgmAssetId { get; set; } + + public int Stem { get; set; } + + public int StartWaveNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBgmSetGroup.cs b/src/Models/Entities/EntityMBattleBgmSetGroup.cs new file mode 100644 index 0000000..488a15c --- /dev/null +++ b/src/Models/Entities/EntityMBattleBgmSetGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBgmSetGroup +{ + public int BgmSetGroupId { get; set; } + + public int BgmSetGroupIndex { get; set; } + + public int BgmSetId { get; set; } + + public int RandomWeight { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBigHunt.cs b/src/Models/Entities/EntityMBattleBigHunt.cs new file mode 100644 index 0000000..a671811 --- /dev/null +++ b/src/Models/Entities/EntityMBattleBigHunt.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBigHunt +{ + public int BattleGroupId { get; set; } + + public int BattleBigHuntPhaseGroupId { get; set; } + + public int KnockDownGaugeValueConfigGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBigHuntDamageThresholdGroup.cs b/src/Models/Entities/EntityMBattleBigHuntDamageThresholdGroup.cs new file mode 100644 index 0000000..e67ad81 --- /dev/null +++ b/src/Models/Entities/EntityMBattleBigHuntDamageThresholdGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBigHuntDamageThresholdGroup +{ + public int KnockDownDamageThresholdGroupId { get; set; } + + public int KnockDownDamageThresholdGroupOrder { get; set; } + + public int KnockDownCumulativeDamageThreshold { get; set; } + + public bool IsKnockDown { get; set; } + + public int KnockDownDurationFrameCount { get; set; } + + public int DamageRatio { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBigHuntKnockDownGaugeValueConfigGroup.cs b/src/Models/Entities/EntityMBattleBigHuntKnockDownGaugeValueConfigGroup.cs new file mode 100644 index 0000000..1e8c51e --- /dev/null +++ b/src/Models/Entities/EntityMBattleBigHuntKnockDownGaugeValueConfigGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBigHuntKnockDownGaugeValueConfigGroup +{ + public int KnockDownGaugeValueConfigGroupId { get; set; } + + public int ActiveSkillHitCount { get; set; } + + public int DamageValueLowerLimit { get; set; } + + public int GaugeValueLowerLimit { get; set; } + + public int CorrectionRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleBigHuntPhaseGroup.cs b/src/Models/Entities/EntityMBattleBigHuntPhaseGroup.cs new file mode 100644 index 0000000..83fd8ed --- /dev/null +++ b/src/Models/Entities/EntityMBattleBigHuntPhaseGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleBigHuntPhaseGroup +{ + public int BattleBigHuntPhaseGroupId { get; set; } + + public int BattleBigHuntPhaseGroupOrder { get; set; } + + public int KnockDownDamageThresholdGroupId { get; set; } + + public int NormalPhaseFrameCount { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleCompanionSkillAiGroup.cs b/src/Models/Entities/EntityMBattleCompanionSkillAiGroup.cs new file mode 100644 index 0000000..c28ef11 --- /dev/null +++ b/src/Models/Entities/EntityMBattleCompanionSkillAiGroup.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleCompanionSkillAiGroup +{ + public int BattleCompanionSkillAiGroupId { get; set; } + + public int Priority { get; set; } + + public BattleSchemeType BattleSchemeType { get; set; } + + public bool IsPlayerSide { get; set; } + + public SkillAiUnlockConditionValueType SkillAiUnlockConditionValueType { get; set; } + + public int SkillAiUnlockConditionValue { get; set; } + + public int BattleCompanionSkillAiId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleCostumeSkillFireAct.cs b/src/Models/Entities/EntityMBattleCostumeSkillFireAct.cs new file mode 100644 index 0000000..d9e46db --- /dev/null +++ b/src/Models/Entities/EntityMBattleCostumeSkillFireAct.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleCostumeSkillFireAct +{ + public int CostumeId { get; set; } + + public int BattleSkillFireActId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleCostumeSkillSe.cs b/src/Models/Entities/EntityMBattleCostumeSkillSe.cs new file mode 100644 index 0000000..68f756c --- /dev/null +++ b/src/Models/Entities/EntityMBattleCostumeSkillSe.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleCostumeSkillSe +{ + public int CostumeId { get; set; } + + public int CostumeSkillReadySeAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleDropReward.cs b/src/Models/Entities/EntityMBattleDropReward.cs new file mode 100644 index 0000000..2c51b40 --- /dev/null +++ b/src/Models/Entities/EntityMBattleDropReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleDropReward +{ + public int BattleDropRewardId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEnemySizeTypeConfig.cs b/src/Models/Entities/EntityMBattleEnemySizeTypeConfig.cs new file mode 100644 index 0000000..a37020c --- /dev/null +++ b/src/Models/Entities/EntityMBattleEnemySizeTypeConfig.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEnemySizeTypeConfig +{ + public CostumeAssetCategoryType CostumeAssetCategoryType { get; set; } + + public int ActorSkeletonId { get; set; } + + public EnemySizeType EnemySizeType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEvent.cs b/src/Models/Entities/EntityMBattleEvent.cs new file mode 100644 index 0000000..c357c22 --- /dev/null +++ b/src/Models/Entities/EntityMBattleEvent.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEvent +{ + public int BattleEventId { get; set; } + + public int BattleEventTriggerBehaviourGroupId { get; set; } + + public int BattleEventReceiverBehaviourGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventGroup.cs b/src/Models/Entities/EntityMBattleEventGroup.cs new file mode 100644 index 0000000..8aeaada --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventGroup +{ + public int BattleEventGroupId { get; set; } + + public int BattleEventId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventReceiverBehaviourGroup.cs b/src/Models/Entities/EntityMBattleEventReceiverBehaviourGroup.cs new file mode 100644 index 0000000..8f814ca --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventReceiverBehaviourGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventReceiverBehaviourGroup +{ + public int BattleEventReceiverBehaviourGroupId { get; set; } + + public int ExecuteOrder { get; set; } + + public int BattleEventReceiverBehaviourType { get; set; } + + public int BattleEventReceiverBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventReceiverBehaviourHudActSequence.cs b/src/Models/Entities/EntityMBattleEventReceiverBehaviourHudActSequence.cs new file mode 100644 index 0000000..4c7419b --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventReceiverBehaviourHudActSequence.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventReceiverBehaviourHudActSequence +{ + public int BattleEventReceiverBehaviourId { get; set; } + + public int HudActSequenceId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventReceiverBehaviourRadioMessage.cs b/src/Models/Entities/EntityMBattleEventReceiverBehaviourRadioMessage.cs new file mode 100644 index 0000000..785483d --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventReceiverBehaviourRadioMessage.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventReceiverBehaviourRadioMessage +{ + public int BattleEventReceiverBehaviourId { get; set; } + + public int SpeakerId { get; set; } + + public string ScenarioKey { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventTriggerBehaviourBattleStart.cs b/src/Models/Entities/EntityMBattleEventTriggerBehaviourBattleStart.cs new file mode 100644 index 0000000..672a14f --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventTriggerBehaviourBattleStart.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventTriggerBehaviourBattleStart +{ + public int BattleEventTriggerBehaviourId { get; set; } + + public bool TriggerOnBattleRestore { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventTriggerBehaviourGroup.cs b/src/Models/Entities/EntityMBattleEventTriggerBehaviourGroup.cs new file mode 100644 index 0000000..0123e77 --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventTriggerBehaviourGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventTriggerBehaviourGroup +{ + public int BattleEventTriggerBehaviourGroupId { get; set; } + + public int BattleEventTriggerBehaviourType { get; set; } + + public int BattleEventTriggerBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleEventTriggerBehaviourWaveStart.cs b/src/Models/Entities/EntityMBattleEventTriggerBehaviourWaveStart.cs new file mode 100644 index 0000000..89ff6a5 --- /dev/null +++ b/src/Models/Entities/EntityMBattleEventTriggerBehaviourWaveStart.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleEventTriggerBehaviourWaveStart +{ + public int BattleEventTriggerBehaviourId { get; set; } + + public int WaveNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleGeneralViewConfiguration.cs b/src/Models/Entities/EntityMBattleGeneralViewConfiguration.cs new file mode 100644 index 0000000..953a70a --- /dev/null +++ b/src/Models/Entities/EntityMBattleGeneralViewConfiguration.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleGeneralViewConfiguration +{ + public int QuestSceneId { get; set; } + + public int WaveNumber { get; set; } + + public bool IsDisableBattleStartVoice { get; set; } + + public bool IsEnableWhiteFadeout { get; set; } + + public int EnvSeId { get; set; } + + public int WaveWinSeId { get; set; } + + public bool IsDisablePlayWinTimeline { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleGroup.cs b/src/Models/Entities/EntityMBattleGroup.cs new file mode 100644 index 0000000..7d91b0a --- /dev/null +++ b/src/Models/Entities/EntityMBattleGroup.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleGroup +{ + public int BattleGroupId { get; set; } + + public int WaveNumber { get; set; } + + public int BattleId { get; set; } + + public int WaveStartActAssetId { get; set; } + + public int WaveEndActAssetId { get; set; } + + public int BattleCameraControllerAssetId { get; set; } + + public int BattlePointIndex { get; set; } + + public BattleStartCameraType BattleStartCameraType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpc.cs b/src/Models/Entities/EntityMBattleNpc.cs new file mode 100644 index 0000000..e6228d2 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpc.cs @@ -0,0 +1,8 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpc +{ + public long BattleNpcId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacter.cs b/src/Models/Entities/EntityMBattleNpcCharacter.cs new file mode 100644 index 0000000..8649ea9 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacter.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacter +{ + public long BattleNpcId { get; set; } + + public int CharacterId { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterBoard.cs b/src/Models/Entities/EntityMBattleNpcCharacterBoard.cs new file mode 100644 index 0000000..77b08f5 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterBoard.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterBoard +{ + public long BattleNpcId { get; set; } + + public int CharacterBoardId { get; set; } + + public int PanelReleaseBit1 { get; set; } + + public int PanelReleaseBit2 { get; set; } + + public int PanelReleaseBit3 { get; set; } + + public int PanelReleaseBit4 { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterBoardAbility.cs b/src/Models/Entities/EntityMBattleNpcCharacterBoardAbility.cs new file mode 100644 index 0000000..a18cd2a --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterBoardAbility.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterBoardAbility +{ + public long BattleNpcId { get; set; } + + public int CharacterId { get; set; } + + public int AbilityId { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterBoardCompleteReward.cs b/src/Models/Entities/EntityMBattleNpcCharacterBoardCompleteReward.cs new file mode 100644 index 0000000..ba8d935 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterBoardCompleteReward.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterBoardCompleteReward +{ + public long BattleNpcId { get; set; } + + public int CharacterBoardCompleteRewardId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterBoardStatusUp.cs b/src/Models/Entities/EntityMBattleNpcCharacterBoardStatusUp.cs new file mode 100644 index 0000000..f1bafbc --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterBoardStatusUp.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterBoardStatusUp +{ + public long BattleNpcId { get; set; } + + public int CharacterId { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterCostumeLevelBonus.cs b/src/Models/Entities/EntityMBattleNpcCharacterCostumeLevelBonus.cs new file mode 100644 index 0000000..85aa140 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterCostumeLevelBonus.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterCostumeLevelBonus +{ + public long BattleNpcId { get; set; } + + public int CharacterId { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterRebirth.cs b/src/Models/Entities/EntityMBattleNpcCharacterRebirth.cs new file mode 100644 index 0000000..d6009dd --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterRebirth.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterRebirth +{ + public long BattleNpcId { get; set; } + + public int CharacterId { get; set; } + + public int RebirthCount { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCharacterViewerField.cs b/src/Models/Entities/EntityMBattleNpcCharacterViewerField.cs new file mode 100644 index 0000000..468bf90 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCharacterViewerField.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCharacterViewerField +{ + public long BattleNpcId { get; set; } + + public int CharacterViewerFieldId { get; set; } + + public long ReleaseDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCompanion.cs b/src/Models/Entities/EntityMBattleNpcCompanion.cs new file mode 100644 index 0000000..ad1740e --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCompanion.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCompanion +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCompanionUuid { get; set; } + + public int CompanionId { get; set; } + + public int HeadupDisplayViewId { get; set; } + + public int Level { get; set; } + + public long AcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostume.cs b/src/Models/Entities/EntityMBattleNpcCostume.cs new file mode 100644 index 0000000..1a62bf3 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostume.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostume +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public int CostumeId { get; set; } + + public int LimitBreakCount { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public int HeadupDisplayViewId { get; set; } + + public long AcquisitionDatetime { get; set; } + + public int AwakenCount { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeActiveSkill.cs b/src/Models/Entities/EntityMBattleNpcCostumeActiveSkill.cs new file mode 100644 index 0000000..56568a7 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeActiveSkill.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeActiveSkill +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public int Level { get; set; } + + public long AcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeAwakenStatusUp.cs b/src/Models/Entities/EntityMBattleNpcCostumeAwakenStatusUp.cs new file mode 100644 index 0000000..7db8937 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeAwakenStatusUp.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeAwakenStatusUp +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReevaluate.cs b/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReevaluate.cs new file mode 100644 index 0000000..7491acf --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReevaluate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLevelBonusReevaluate +{ + public long BattleNpcId { get; set; } + + public long LastReevaluateDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReleaseStatus.cs b/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReleaseStatus.cs new file mode 100644 index 0000000..4d005ce --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLevelBonusReleaseStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLevelBonusReleaseStatus +{ + public long BattleNpcId { get; set; } + + public int CostumeId { get; set; } + + public int LastReleasedBonusLevel { get; set; } + + public int ConfirmedBonusLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffect.cs b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffect.cs new file mode 100644 index 0000000..baa24ca --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffect.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLotteryEffect +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int OddsNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectAbility.cs b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectAbility.cs new file mode 100644 index 0000000..9d8bcc8 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectAbility.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLotteryEffectAbility +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectPending.cs b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectPending.cs new file mode 100644 index 0000000..8df6f63 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectPending.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLotteryEffectPending +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public int SlotNumber { get; set; } + + public int OddsNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectStatusUp.cs b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectStatusUp.cs new file mode 100644 index 0000000..7f24409 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcCostumeLotteryEffectStatusUp.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcCostumeLotteryEffectStatusUp +{ + public long BattleNpcId { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatio { get; set; } + + public int CriticalAttack { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeck.cs b/src/Models/Entities/EntityMBattleNpcDeck.cs new file mode 100644 index 0000000..caeec6b --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeck.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeck +{ + public long BattleNpcId { get; set; } + + public DeckType DeckType { get; set; } + + public int BattleNpcDeckNumber { get; set; } + + public string BattleNpcDeckCharacterUuid01 { get; set; } + + public string BattleNpcDeckCharacterUuid02 { get; set; } + + public string BattleNpcDeckCharacterUuid03 { get; set; } + + public string Name { get; set; } + + public int Power { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckBackup.cs b/src/Models/Entities/EntityMBattleNpcDeckBackup.cs new file mode 100644 index 0000000..9988de9 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckBackup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckBackup +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckBackupUuid { get; set; } + + public string DeckJson { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckCharacter.cs b/src/Models/Entities/EntityMBattleNpcDeckCharacter.cs new file mode 100644 index 0000000..7f41f59 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckCharacter.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckCharacter +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public string BattleNpcCostumeUuid { get; set; } + + public string MainBattleNpcWeaponUuid { get; set; } + + public string BattleNpcCompanionUuid { get; set; } + + public int Power { get; set; } + + public string BattleNpcThoughtUuid { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckCharacterDressupCostume.cs b/src/Models/Entities/EntityMBattleNpcDeckCharacterDressupCostume.cs new file mode 100644 index 0000000..11d6b7b --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckCharacterDressupCostume.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckCharacterDressupCostume +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public int DressupCostumeId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckCharacterDropCategory.cs b/src/Models/Entities/EntityMBattleNpcDeckCharacterDropCategory.cs new file mode 100644 index 0000000..8584269 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckCharacterDropCategory.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckCharacterDropCategory +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public int BattleDropCategoryId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckCharacterType.cs b/src/Models/Entities/EntityMBattleNpcDeckCharacterType.cs new file mode 100644 index 0000000..04d15d5 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckCharacterType.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckCharacterType +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public BattleEnemyType BattleEnemyType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackup.cs b/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackup.cs new file mode 100644 index 0000000..361a23d --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckLimitContentBackup +{ + public long BattleNpcId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int EventQuestSequenceSortOrder { get; set; } + + public string BattleNpcDeckBackupUuid { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackupRestored.cs b/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackupRestored.cs new file mode 100644 index 0000000..d20737a --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckLimitContentBackupRestored.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckLimitContentBackupRestored +{ + public long BattleNpcId { get; set; } + + public int EventQuestChapterId { get; set; } + + public DifficultyType DifficultyType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckLimitContentDeletedCharacter.cs b/src/Models/Entities/EntityMBattleNpcDeckLimitContentDeletedCharacter.cs new file mode 100644 index 0000000..8a4f9fa --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckLimitContentDeletedCharacter.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckLimitContentDeletedCharacter +{ + public long BattleNpcId { get; set; } + + public int BattleNpcDeckNumber { get; set; } + + public int BattleNpcDeckCharacterNumber { get; set; } + + public int CostumeId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckLimitContentRestricted.cs b/src/Models/Entities/EntityMBattleNpcDeckLimitContentRestricted.cs new file mode 100644 index 0000000..d85222d --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckLimitContentRestricted.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckLimitContentRestricted +{ + public long BattleNpcId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int QuestId { get; set; } + + public string DeckRestrictedUuid { get; set; } + + public PossessionType PossessionType { get; set; } + + public string TargetUuid { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckPartsGroup.cs b/src/Models/Entities/EntityMBattleNpcDeckPartsGroup.cs new file mode 100644 index 0000000..044da37 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckPartsGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckPartsGroup +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public string BattleNpcPartsUuid { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckSubWeaponGroup.cs b/src/Models/Entities/EntityMBattleNpcDeckSubWeaponGroup.cs new file mode 100644 index 0000000..1ef981b --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckSubWeaponGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckSubWeaponGroup +{ + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public string BattleNpcWeaponUuid { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcDeckTypeNote.cs b/src/Models/Entities/EntityMBattleNpcDeckTypeNote.cs new file mode 100644 index 0000000..fc8b127 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcDeckTypeNote.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcDeckTypeNote +{ + public long BattleNpcId { get; set; } + + public DeckType DeckType { get; set; } + + public int MaxDeckPower { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcParts.cs b/src/Models/Entities/EntityMBattleNpcParts.cs new file mode 100644 index 0000000..d39f166 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcParts.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcParts +{ + public long BattleNpcId { get; set; } + + public string BattleNpcPartsUuid { get; set; } + + public int PartsId { get; set; } + + public int Level { get; set; } + + public int PartsStatusMainId { get; set; } + + public bool IsProtected { get; set; } + + public long AcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcPartsGroupNote.cs b/src/Models/Entities/EntityMBattleNpcPartsGroupNote.cs new file mode 100644 index 0000000..7d9ebe6 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcPartsGroupNote.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcPartsGroupNote +{ + public long BattleNpcId { get; set; } + + public int PartsGroupId { get; set; } + + public long FirstAcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcPartsPreset.cs b/src/Models/Entities/EntityMBattleNpcPartsPreset.cs new file mode 100644 index 0000000..57c9912 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcPartsPreset.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcPartsPreset +{ + public long BattleNpcId { get; set; } + + public int BattleNpcPartsPresetNumber { get; set; } + + public string BattleNpcPartsUuid01 { get; set; } + + public string BattleNpcPartsUuid02 { get; set; } + + public string BattleNpcPartsUuid03 { get; set; } + + public string Name { get; set; } + + public int BattleNpcPartsPresetTagNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcPartsPresetTag.cs b/src/Models/Entities/EntityMBattleNpcPartsPresetTag.cs new file mode 100644 index 0000000..d2e140a --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcPartsPresetTag.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcPartsPresetTag +{ + public long BattleNpcId { get; set; } + + public int BattleNpcPartsPresetTagNumber { get; set; } + + public string Name { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcPartsStatusSub.cs b/src/Models/Entities/EntityMBattleNpcPartsStatusSub.cs new file mode 100644 index 0000000..c1299b4 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcPartsStatusSub.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcPartsStatusSub +{ + public long BattleNpcId { get; set; } + + public string BattleNpcPartsUuid { get; set; } + + public int StatusIndex { get; set; } + + public int PartsStatusSubLotteryId { get; set; } + + public int Level { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int StatusChangeValue { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcSpecialEndAct.cs b/src/Models/Entities/EntityMBattleNpcSpecialEndAct.cs new file mode 100644 index 0000000..cd6d1b3 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcSpecialEndAct.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcSpecialEndAct +{ + public int QuestSceneId { get; set; } + + public int WaveNumber { get; set; } + + public long BattleNpcId { get; set; } + + public string BattleNpcDeckCharacterUuid { get; set; } + + public SpecialEndBattleActType SpecialEndBattleActType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeapon.cs b/src/Models/Entities/EntityMBattleNpcWeapon.cs new file mode 100644 index 0000000..f45d9c4 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeapon.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeapon +{ + public long BattleNpcId { get; set; } + + public string BattleNpcWeaponUuid { get; set; } + + public int WeaponId { get; set; } + + public int Level { get; set; } + + public int Exp { get; set; } + + public int LimitBreakCount { get; set; } + + public bool IsProtected { get; set; } + + public long AcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponAbility.cs b/src/Models/Entities/EntityMBattleNpcWeaponAbility.cs new file mode 100644 index 0000000..c2f0576 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponAbility.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponAbility +{ + public long BattleNpcId { get; set; } + + public string BattleNpcWeaponUuid { get; set; } + + public int SlotNumber { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponAbilityReevaluate.cs b/src/Models/Entities/EntityMBattleNpcWeaponAbilityReevaluate.cs new file mode 100644 index 0000000..19907ad --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponAbilityReevaluate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponAbilityReevaluate +{ + public long BattleNpcId { get; set; } + + public long LastReevaluateDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponAwaken.cs b/src/Models/Entities/EntityMBattleNpcWeaponAwaken.cs new file mode 100644 index 0000000..9723367 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponAwaken.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponAwaken +{ + public long BattleNpcId { get; set; } + + public string BattleNpcWeaponUuid { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponNote.cs b/src/Models/Entities/EntityMBattleNpcWeaponNote.cs new file mode 100644 index 0000000..43b61ce --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponNote.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponNote +{ + public long BattleNpcId { get; set; } + + public int WeaponId { get; set; } + + public int MaxLevel { get; set; } + + public int MaxLimitBreakCount { get; set; } + + public long FirstAcquisitionDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponNoteReevaluate.cs b/src/Models/Entities/EntityMBattleNpcWeaponNoteReevaluate.cs new file mode 100644 index 0000000..2da9ad9 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponNoteReevaluate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponNoteReevaluate +{ + public long BattleNpcId { get; set; } + + public long LastReevaluateDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponSkill.cs b/src/Models/Entities/EntityMBattleNpcWeaponSkill.cs new file mode 100644 index 0000000..838c12f --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponSkill.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponSkill +{ + public long BattleNpcId { get; set; } + + public string BattleNpcWeaponUuid { get; set; } + + public int SlotNumber { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponStory.cs b/src/Models/Entities/EntityMBattleNpcWeaponStory.cs new file mode 100644 index 0000000..53abf58 --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponStory.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponStory +{ + public long BattleNpcId { get; set; } + + public int WeaponId { get; set; } + + public int ReleasedMaxStoryIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleNpcWeaponStoryReevaluate.cs b/src/Models/Entities/EntityMBattleNpcWeaponStoryReevaluate.cs new file mode 100644 index 0000000..480c66a --- /dev/null +++ b/src/Models/Entities/EntityMBattleNpcWeaponStoryReevaluate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleNpcWeaponStoryReevaluate +{ + public long BattleNpcId { get; set; } + + public long LastReevaluateDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleProgressUiType.cs b/src/Models/Entities/EntityMBattleProgressUiType.cs new file mode 100644 index 0000000..09082c3 --- /dev/null +++ b/src/Models/Entities/EntityMBattleProgressUiType.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleProgressUiType +{ + public int QuestSceneId { get; set; } + + public int BattleProgressUiTypeId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleQuestSceneBgm.cs b/src/Models/Entities/EntityMBattleQuestSceneBgm.cs new file mode 100644 index 0000000..9d6c4dd --- /dev/null +++ b/src/Models/Entities/EntityMBattleQuestSceneBgm.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleQuestSceneBgm +{ + public int QuestSceneId { get; set; } + + public int StartWaveNumber { get; set; } + + public int BgmId { get; set; } + + public int Stem { get; set; } + + public int TrackNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleQuestSceneBgmSetGroup.cs b/src/Models/Entities/EntityMBattleQuestSceneBgmSetGroup.cs new file mode 100644 index 0000000..537846a --- /dev/null +++ b/src/Models/Entities/EntityMBattleQuestSceneBgmSetGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleQuestSceneBgmSetGroup +{ + public int QuestSceneId { get; set; } + + public int BgmSetGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleRentalDeck.cs b/src/Models/Entities/EntityMBattleRentalDeck.cs new file mode 100644 index 0000000..3b88685 --- /dev/null +++ b/src/Models/Entities/EntityMBattleRentalDeck.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleRentalDeck +{ + public int BattleGroupId { get; set; } + + public long BattleNpcId { get; set; } + + public DeckType DeckType { get; set; } + + public int BattleNpcDeckNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillBehaviourHitDamageConfiguration.cs b/src/Models/Entities/EntityMBattleSkillBehaviourHitDamageConfiguration.cs new file mode 100644 index 0000000..995c391 --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillBehaviourHitDamageConfiguration.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillBehaviourHitDamageConfiguration +{ + public SkillCategoryType SkillCategoryType { get; set; } + + public int HitCount { get; set; } + + public int HitIndexLowerLimit { get; set; } + + public int DamageCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillFireAct.cs b/src/Models/Entities/EntityMBattleSkillFireAct.cs new file mode 100644 index 0000000..17ec549 --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillFireAct.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillFireAct +{ + public int BattleSkillFireActId { get; set; } + + public int BattleSkillFireActConditionGroupId { get; set; } + + public BattleSkillFireActConditionGroupType BattleSkillFireActConditionGroupType { get; set; } + + public int BattleSkillFireActAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillFireActConditionAttributeType.cs b/src/Models/Entities/EntityMBattleSkillFireActConditionAttributeType.cs new file mode 100644 index 0000000..3138855 --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillFireActConditionAttributeType.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillFireActConditionAttributeType +{ + public int BattleSkillFireActConditionId { get; set; } + + public AttributeType AttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillFireActConditionGroup.cs b/src/Models/Entities/EntityMBattleSkillFireActConditionGroup.cs new file mode 100644 index 0000000..4025bd5 --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillFireActConditionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillFireActConditionGroup +{ + public int BattleSkillFireActConditionGroupId { get; set; } + + public int BattleSkillFireActConditionGroupOrder { get; set; } + + public BattleSkillFireActConditionType BattleSkillFireActConditionType { get; set; } + + public int BattleSkillFireActConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillFireActConditionSkillCategoryType.cs b/src/Models/Entities/EntityMBattleSkillFireActConditionSkillCategoryType.cs new file mode 100644 index 0000000..feb3b9d --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillFireActConditionSkillCategoryType.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillFireActConditionSkillCategoryType +{ + public int BattleSkillFireActConditionId { get; set; } + + public SkillCategoryType SkillCategoryType { get; set; } +} diff --git a/src/Models/Entities/EntityMBattleSkillFireActConditionWeaponType.cs b/src/Models/Entities/EntityMBattleSkillFireActConditionWeaponType.cs new file mode 100644 index 0000000..d40b4fa --- /dev/null +++ b/src/Models/Entities/EntityMBattleSkillFireActConditionWeaponType.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBattleSkillFireActConditionWeaponType +{ + public int BattleSkillFireActConditionId { get; set; } + + public WeaponType WeaponType { get; set; } +} diff --git a/src/Models/Entities/EntityMBeginnerCampaign.cs b/src/Models/Entities/EntityMBeginnerCampaign.cs new file mode 100644 index 0000000..6367171 --- /dev/null +++ b/src/Models/Entities/EntityMBeginnerCampaign.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBeginnerCampaign +{ + public int BeginnerCampaignId { get; set; } + + public long BeginnerJudgeStartDatetime { get; set; } + + public long BeginnerJudgeEndDatetime { get; set; } + + public int GrantCampaignTermDayCount { get; set; } + + public int CampaignUnlockQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBoss.cs b/src/Models/Entities/EntityMBigHuntBoss.cs new file mode 100644 index 0000000..22b91e4 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBoss.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBoss +{ + public int BigHuntBossId { get; set; } + + public int BigHuntBossGradeGroupId { get; set; } + + public int NameBigHuntBossTextId { get; set; } + + public int BigHuntBossAssetId { get; set; } + + public AttributeType AttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBossGradeGroup.cs b/src/Models/Entities/EntityMBigHuntBossGradeGroup.cs new file mode 100644 index 0000000..ad1ee9c --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBossGradeGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBossGradeGroup +{ + public int BigHuntBossGradeGroupId { get; set; } + + public long NecessaryScore { get; set; } + + public int AssetGradeIconId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBossGradeGroupAttribute.cs b/src/Models/Entities/EntityMBigHuntBossGradeGroupAttribute.cs new file mode 100644 index 0000000..ea317e0 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBossGradeGroupAttribute.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBossGradeGroupAttribute +{ + public AttributeType AttributeType { get; set; } + + public int BigHuntBossGradeGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBossQuest.cs b/src/Models/Entities/EntityMBigHuntBossQuest.cs new file mode 100644 index 0000000..0a4bd9e --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBossQuest.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBossQuest +{ + public int BigHuntBossQuestId { get; set; } + + public int BigHuntBossId { get; set; } + + public int BigHuntQuestGroupId { get; set; } + + public int BigHuntBossQuestScoreCoefficientId { get; set; } + + public int BigHuntScoreRewardGroupScheduleId { get; set; } + + public int BigHuntLinkId { get; set; } + + public int DailyChallengeCount { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBossQuestGroup.cs b/src/Models/Entities/EntityMBigHuntBossQuestGroup.cs new file mode 100644 index 0000000..3dd05aa --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBossQuestGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBossQuestGroup +{ + public int BigHuntBossQuestGroupId { get; set; } + + public int SortOrder { get; set; } + + public int BigHuntBossQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntBossQuestGroupChallengeCategory.cs b/src/Models/Entities/EntityMBigHuntBossQuestGroupChallengeCategory.cs new file mode 100644 index 0000000..7ee798c --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntBossQuestGroupChallengeCategory.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntBossQuestGroupChallengeCategory +{ + public int BigHuntBossQuestGroupChallengeCategoryId { get; set; } + + public int SortOrder { get; set; } + + public int BigHuntBossQuestGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntLink.cs b/src/Models/Entities/EntityMBigHuntLink.cs new file mode 100644 index 0000000..da7c4e4 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntLink.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntLink +{ + public int BigHuntLinkId { get; set; } + + public DomainType DestinationDomainType { get; set; } + + public int DestinationDomainId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntQuest.cs b/src/Models/Entities/EntityMBigHuntQuest.cs new file mode 100644 index 0000000..35a1ad2 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntQuest.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntQuest +{ + public int BigHuntQuestId { get; set; } + + public int QuestId { get; set; } + + public int BigHuntQuestScoreCoefficientId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntQuestGroup.cs b/src/Models/Entities/EntityMBigHuntQuestGroup.cs new file mode 100644 index 0000000..20fca4c --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntQuestGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntQuestGroup +{ + public int BigHuntQuestGroupId { get; set; } + + public int SortOrder { get; set; } + + public int BigHuntQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntQuestScoreCoefficient.cs b/src/Models/Entities/EntityMBigHuntQuestScoreCoefficient.cs new file mode 100644 index 0000000..1f94b34 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntQuestScoreCoefficient.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntQuestScoreCoefficient +{ + public int BigHuntQuestScoreCoefficientId { get; set; } + + public int ScoreDifficultBonusPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntRewardGroup.cs b/src/Models/Entities/EntityMBigHuntRewardGroup.cs new file mode 100644 index 0000000..7a076b4 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntRewardGroup +{ + public int BigHuntRewardGroupId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntSchedule.cs b/src/Models/Entities/EntityMBigHuntSchedule.cs new file mode 100644 index 0000000..4a91aeb --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntSchedule.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntSchedule +{ + public int BigHuntScheduleId { get; set; } + + public long NoticeStartDatetime { get; set; } + + public long ChallengeStartDatetime { get; set; } + + public long ChallengeEndDatetime { get; set; } + + public int SeasonAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntScoreRewardGroup.cs b/src/Models/Entities/EntityMBigHuntScoreRewardGroup.cs new file mode 100644 index 0000000..0aec676 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntScoreRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntScoreRewardGroup +{ + public int BigHuntScoreRewardGroupId { get; set; } + + public long NecessaryScore { get; set; } + + public int BigHuntRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntScoreRewardGroupSchedule.cs b/src/Models/Entities/EntityMBigHuntScoreRewardGroupSchedule.cs new file mode 100644 index 0000000..2febdb2 --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntScoreRewardGroupSchedule.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntScoreRewardGroupSchedule +{ + public int BigHuntScoreRewardGroupScheduleId { get; set; } + + public int GroupIndex { get; set; } + + public int BigHuntScoreRewardGroupId { get; set; } + + public long StartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMBigHuntWeeklyAttributeScoreRewardGroupSchedule.cs b/src/Models/Entities/EntityMBigHuntWeeklyAttributeScoreRewardGroupSchedule.cs new file mode 100644 index 0000000..ef9d25c --- /dev/null +++ b/src/Models/Entities/EntityMBigHuntWeeklyAttributeScoreRewardGroupSchedule.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMBigHuntWeeklyAttributeScoreRewardGroupSchedule +{ + public int BigHuntWeeklyAttributeScoreRewardGroupScheduleId { get; set; } + + public AttributeType AttributeType { get; set; } + + public int GroupIndex { get; set; } + + public int BigHuntScoreRewardGroupId { get; set; } + + public long StartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMCageMemory.cs b/src/Models/Entities/EntityMCageMemory.cs new file mode 100644 index 0000000..61178ec --- /dev/null +++ b/src/Models/Entities/EntityMCageMemory.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCageMemory +{ + public int CageMemoryId { get; set; } + + public int MainQuestSeasonId { get; set; } + + public int SortOrder { get; set; } + + public int CageMemoryAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMCageOrnament.cs b/src/Models/Entities/EntityMCageOrnament.cs new file mode 100644 index 0000000..f1ef033 --- /dev/null +++ b/src/Models/Entities/EntityMCageOrnament.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCageOrnament +{ + public int CageOrnamentId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int CageOrnamentRewardId { get; set; } +} diff --git a/src/Models/Entities/EntityMCageOrnamentMainQuestChapterStill.cs b/src/Models/Entities/EntityMCageOrnamentMainQuestChapterStill.cs new file mode 100644 index 0000000..6119d84 --- /dev/null +++ b/src/Models/Entities/EntityMCageOrnamentMainQuestChapterStill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCageOrnamentMainQuestChapterStill +{ + public int MainQuestChapterId { get; set; } + + public int CageOrnamentStillReleaseConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCageOrnamentReward.cs b/src/Models/Entities/EntityMCageOrnamentReward.cs new file mode 100644 index 0000000..27702f5 --- /dev/null +++ b/src/Models/Entities/EntityMCageOrnamentReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCageOrnamentReward +{ + public int CageOrnamentRewardId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMCageOrnamentStillReleaseCondition.cs b/src/Models/Entities/EntityMCageOrnamentStillReleaseCondition.cs new file mode 100644 index 0000000..713a3f4 --- /dev/null +++ b/src/Models/Entities/EntityMCageOrnamentStillReleaseCondition.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCageOrnamentStillReleaseCondition +{ + public int CageOrnamentStillReleaseConditionId { get; set; } + + public int CageOrnamentId { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogCompanion.cs b/src/Models/Entities/EntityMCatalogCompanion.cs new file mode 100644 index 0000000..c29fc92 --- /dev/null +++ b/src/Models/Entities/EntityMCatalogCompanion.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogCompanion +{ + public int CompanionId { get; set; } + + public int SortOrder { get; set; } + + public int CatalogTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogCostume.cs b/src/Models/Entities/EntityMCatalogCostume.cs new file mode 100644 index 0000000..1c46c2d --- /dev/null +++ b/src/Models/Entities/EntityMCatalogCostume.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogCostume +{ + public int CostumeId { get; set; } + + public int SortOrder { get; set; } + + public int CatalogTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogPartsGroup.cs b/src/Models/Entities/EntityMCatalogPartsGroup.cs new file mode 100644 index 0000000..7702be4 --- /dev/null +++ b/src/Models/Entities/EntityMCatalogPartsGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogPartsGroup +{ + public int PartsGroupId { get; set; } + + public int SortOrder { get; set; } + + public int CatalogTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogTerm.cs b/src/Models/Entities/EntityMCatalogTerm.cs new file mode 100644 index 0000000..f4a29a0 --- /dev/null +++ b/src/Models/Entities/EntityMCatalogTerm.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogTerm +{ + public int CatalogTermId { get; set; } + + public long StartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogThought.cs b/src/Models/Entities/EntityMCatalogThought.cs new file mode 100644 index 0000000..104600d --- /dev/null +++ b/src/Models/Entities/EntityMCatalogThought.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogThought +{ + public int ThoughtId { get; set; } + + public int SortOrder { get; set; } + + public int CatalogTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMCatalogWeapon.cs b/src/Models/Entities/EntityMCatalogWeapon.cs new file mode 100644 index 0000000..7273b7b --- /dev/null +++ b/src/Models/Entities/EntityMCatalogWeapon.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCatalogWeapon +{ + public int WeaponId { get; set; } + + public int SortOrder { get; set; } + + public int CatalogTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacter.cs b/src/Models/Entities/EntityMCharacter.cs new file mode 100644 index 0000000..aa5f911 --- /dev/null +++ b/src/Models/Entities/EntityMCharacter.cs @@ -0,0 +1,32 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacter +{ + public int CharacterId { get; set; } + + public int CharacterLevelBonusAbilityGroupId { get; set; } + + public int NameCharacterTextId { get; set; } + + public int CharacterAssetId { get; set; } + + public int SortOrder { get; set; } + + public int DefaultCostumeId { get; set; } + + public int DefaultWeaponId { get; set; } + + public int EndCostumeId { get; set; } + + public int EndWeaponId { get; set; } + + public int MaxLevelNumericalFunctionId { get; set; } + + public int RequiredExpForLevelUpNumericalParameterMapId { get; set; } + + public int ListSettingCostumeGroupType { get; set; } + + public long ListSettingDisplayStartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoard.cs b/src/Models/Entities/EntityMCharacterBoard.cs new file mode 100644 index 0000000..14cd1b8 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoard.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoard +{ + public int CharacterBoardId { get; set; } + + public int CharacterBoardGroupId { get; set; } + + public int CharacterBoardUnlockConditionGroupId { get; set; } + + public int ReleaseRank { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardAbility.cs b/src/Models/Entities/EntityMCharacterBoardAbility.cs new file mode 100644 index 0000000..716539f --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardAbility +{ + public int CharacterBoardAbilityId { get; set; } + + public int CharacterBoardEffectTargetGroupId { get; set; } + + public int AbilityId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardAbilityMaxLevel.cs b/src/Models/Entities/EntityMCharacterBoardAbilityMaxLevel.cs new file mode 100644 index 0000000..629c1b1 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardAbilityMaxLevel.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardAbilityMaxLevel +{ + public int CharacterId { get; set; } + + public int AbilityId { get; set; } + + public int MaxLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardAssignment.cs b/src/Models/Entities/EntityMCharacterBoardAssignment.cs new file mode 100644 index 0000000..7cffbdf --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardAssignment.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardAssignment +{ + public int CharacterId { get; set; } + + public int CharacterBoardCategoryId { get; set; } + + public int SortOrder { get; set; } + + public CharacterBoardAssignmentType CharacterBoardAssignmentType { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardCategory.cs b/src/Models/Entities/EntityMCharacterBoardCategory.cs new file mode 100644 index 0000000..1eb8a96 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardCategory.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardCategory +{ + public int CharacterBoardCategoryId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardCompleteReward.cs b/src/Models/Entities/EntityMCharacterBoardCompleteReward.cs new file mode 100644 index 0000000..be269db --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardCompleteReward.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardCompleteReward +{ + public int CharacterBoardCompleteRewardId { get; set; } + + public int CharacterBoardCompleteRewardGroupId { get; set; } + + public int CharacterBoardCompleteRewardConditionGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardCompleteRewardGroup.cs b/src/Models/Entities/EntityMCharacterBoardCompleteRewardGroup.cs new file mode 100644 index 0000000..4327290 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardCompleteRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardCompleteRewardGroup +{ + public int CharacterBoardCompleteRewardGroupId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardCondition.cs b/src/Models/Entities/EntityMCharacterBoardCondition.cs new file mode 100644 index 0000000..e59ca12 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardCondition.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardCondition +{ + public int CharacterBoardConditionGroupId { get; set; } + + public int GroupIndex { get; set; } + + public CharacterBoardConditionType CharacterBoardConditionType { get; set; } + + public int CharacterBoardConditionDetailId { get; set; } + + public int CharacterBoardConditionIgnoreId { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardConditionDetail.cs b/src/Models/Entities/EntityMCharacterBoardConditionDetail.cs new file mode 100644 index 0000000..0d0c126 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardConditionDetail.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardConditionDetail +{ + public int CharacterBoardConditionDetailId { get; set; } + + public int DetailIndex { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardConditionGroup.cs b/src/Models/Entities/EntityMCharacterBoardConditionGroup.cs new file mode 100644 index 0000000..8db8a89 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardConditionGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardConditionGroup +{ + public int CharacterBoardConditionGroupId { get; set; } + + public ConditionOperationType ConditionOperationType { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardConditionIgnore.cs b/src/Models/Entities/EntityMCharacterBoardConditionIgnore.cs new file mode 100644 index 0000000..b24af62 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardConditionIgnore.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardConditionIgnore +{ + public int CharacterBoardConditionIgnoreId { get; set; } + + public int IgnoreIndex { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardEffectTargetGroup.cs b/src/Models/Entities/EntityMCharacterBoardEffectTargetGroup.cs new file mode 100644 index 0000000..87dc68a --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardEffectTargetGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardEffectTargetGroup +{ + public int CharacterBoardEffectTargetGroupId { get; set; } + + public int GroupIndex { get; set; } + + public CharacterBoardEffectType CharacterBoardEffectTargetType { get; set; } + + public int TargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardGroup.cs b/src/Models/Entities/EntityMCharacterBoardGroup.cs new file mode 100644 index 0000000..3f2e252 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardGroup +{ + public int CharacterBoardGroupId { get; set; } + + public int CharacterBoardCategoryId { get; set; } + + public int SortOrder { get; set; } + + public CharacterBoardGroupType CharacterBoardGroupType { get; set; } + + public int TextAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardPanel.cs b/src/Models/Entities/EntityMCharacterBoardPanel.cs new file mode 100644 index 0000000..3834f71 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardPanel.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardPanel +{ + public int CharacterBoardPanelId { get; set; } + + public int CharacterBoardId { get; set; } + + public int CharacterBoardPanelUnlockConditionGroupId { get; set; } + + public int CharacterBoardPanelReleasePossessionGroupId { get; set; } + + public int CharacterBoardPanelReleaseRewardGroupId { get; set; } + + public int CharacterBoardPanelReleaseEffectGroupId { get; set; } + + public int SortOrder { get; set; } + + public int ParentCharacterBoardPanelId { get; set; } + + public int PlaceIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardPanelReleaseEffectGroup.cs b/src/Models/Entities/EntityMCharacterBoardPanelReleaseEffectGroup.cs new file mode 100644 index 0000000..cf32ca6 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardPanelReleaseEffectGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardPanelReleaseEffectGroup +{ + public int CharacterBoardPanelReleaseEffectGroupId { get; set; } + + public int SortOrder { get; set; } + + public CharacterBoardEffectType CharacterBoardEffectType { get; set; } + + public int CharacterBoardEffectId { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardPanelReleasePossessionGroup.cs b/src/Models/Entities/EntityMCharacterBoardPanelReleasePossessionGroup.cs new file mode 100644 index 0000000..42b8b70 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardPanelReleasePossessionGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardPanelReleasePossessionGroup +{ + public int CharacterBoardPanelReleasePossessionGroupId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardPanelReleaseRewardGroup.cs b/src/Models/Entities/EntityMCharacterBoardPanelReleaseRewardGroup.cs new file mode 100644 index 0000000..5e25c46 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardPanelReleaseRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardPanelReleaseRewardGroup +{ + public int CharacterBoardPanelReleaseRewardGroupId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterBoardStatusUp.cs b/src/Models/Entities/EntityMCharacterBoardStatusUp.cs new file mode 100644 index 0000000..7809141 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterBoardStatusUp.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterBoardStatusUp +{ + public int CharacterBoardStatusUpId { get; set; } + + public CharacterBoardStatusUpType CharacterBoardStatusUpType { get; set; } + + public int CharacterBoardEffectTargetGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterDisplaySwitch.cs b/src/Models/Entities/EntityMCharacterDisplaySwitch.cs new file mode 100644 index 0000000..2789124 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterDisplaySwitch.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterDisplaySwitch +{ + public int CharacterId { get; set; } + + public int NameCharacterTextId { get; set; } + + public int DefaultCostumeId { get; set; } + + public int DefaultWeaponId { get; set; } + + public int DisplayConditionClearQuestId { get; set; } + + public int CharacterAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterLevelBonusAbilityGroup.cs b/src/Models/Entities/EntityMCharacterLevelBonusAbilityGroup.cs new file mode 100644 index 0000000..5252919 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterLevelBonusAbilityGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterLevelBonusAbilityGroup +{ + public int CharacterLevelBonusAbilityGroupId { get; set; } + + public int ActivationCharacterLevel { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterRebirth.cs b/src/Models/Entities/EntityMCharacterRebirth.cs new file mode 100644 index 0000000..a2178e8 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterRebirth.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterRebirth +{ + public int CharacterId { get; set; } + + public int CharacterRebirthStepGroupId { get; set; } + + public int SortOrder { get; set; } + + public CharacterAssignmentType CharacterAssignmentType { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterRebirthMaterialGroup.cs b/src/Models/Entities/EntityMCharacterRebirthMaterialGroup.cs new file mode 100644 index 0000000..55a64c3 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterRebirthMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterRebirthMaterialGroup +{ + public int CharacterRebirthMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterRebirthStepGroup.cs b/src/Models/Entities/EntityMCharacterRebirthStepGroup.cs new file mode 100644 index 0000000..0c59b6f --- /dev/null +++ b/src/Models/Entities/EntityMCharacterRebirthStepGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterRebirthStepGroup +{ + public int CharacterRebirthStepGroupId { get; set; } + + public int BeforeRebirthCount { get; set; } + + public int CostumeLevelLimitUp { get; set; } + + public int CharacterRebirthMaterialGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterViewerActorIcon.cs b/src/Models/Entities/EntityMCharacterViewerActorIcon.cs new file mode 100644 index 0000000..8d5cb6e --- /dev/null +++ b/src/Models/Entities/EntityMCharacterViewerActorIcon.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterViewerActorIcon +{ + public CostumeAssetCategoryType CostumeAssetCategoryType { get; set; } + + public int SkeletonId { get; set; } + + public int AssetVariationId { get; set; } + + public int OverrideCostumeAssetCategoryType { get; set; } + + public int OverrideIconSkeletonId { get; set; } + + public int OverrideIconAssetVariationId { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterViewerField.cs b/src/Models/Entities/EntityMCharacterViewerField.cs new file mode 100644 index 0000000..6d58721 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterViewerField.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterViewerField +{ + public int CharacterViewerFieldId { get; set; } + + public int ReleaseEvaluateConditionId { get; set; } + + public long PublishDatetime { get; set; } + + public int CharacterViewerFieldAssetId { get; set; } + + public int AssetBackgroundId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterViewerFieldSettings.cs b/src/Models/Entities/EntityMCharacterViewerFieldSettings.cs new file mode 100644 index 0000000..45a6c4d --- /dev/null +++ b/src/Models/Entities/EntityMCharacterViewerFieldSettings.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterViewerFieldSettings +{ + public int AssetBackgroundId { get; set; } + + public int BgmAssetId { get; set; } + + public int Stem { get; set; } + + public int BattleFieldLocaleSettingIndex { get; set; } + + public int PostProcessConfigurationIndex { get; set; } + + public int BattlePointIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMCharacterVoiceUnlockCondition.cs b/src/Models/Entities/EntityMCharacterVoiceUnlockCondition.cs new file mode 100644 index 0000000..760afb0 --- /dev/null +++ b/src/Models/Entities/EntityMCharacterVoiceUnlockCondition.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCharacterVoiceUnlockCondition +{ + public int CharacterId { get; set; } + + public int SortOrder { get; set; } + + public CharacterVoiceUnlockConditionType CharacterVoiceUnlockConditionType { get; set; } + + public int ConditionValue { get; set; } + + public int VoiceAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMCollectionBonusEffect.cs b/src/Models/Entities/EntityMCollectionBonusEffect.cs new file mode 100644 index 0000000..58283b7 --- /dev/null +++ b/src/Models/Entities/EntityMCollectionBonusEffect.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCollectionBonusEffect +{ + public int CollectionBonusEffectId { get; set; } + + public CollectionBonusEffectType CollectionBonusEffectType { get; set; } + + public int Amount00 { get; set; } + + public int Amount01 { get; set; } + + public int Amount02 { get; set; } + + public int Amount03 { get; set; } + + public int Amount04 { get; set; } +} diff --git a/src/Models/Entities/EntityMCollectionBonusQuestAssignment.cs b/src/Models/Entities/EntityMCollectionBonusQuestAssignment.cs new file mode 100644 index 0000000..affc699 --- /dev/null +++ b/src/Models/Entities/EntityMCollectionBonusQuestAssignment.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCollectionBonusQuestAssignment +{ + public int CollectionBonusQuestAssignmentId { get; set; } + + public QuestAssignmentType QuestAssignmentType { get; set; } + + public int MainQuestChapterId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int QuestId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCollectionBonusQuestAssignmentGroup.cs b/src/Models/Entities/EntityMCollectionBonusQuestAssignmentGroup.cs new file mode 100644 index 0000000..7de3c4f --- /dev/null +++ b/src/Models/Entities/EntityMCollectionBonusQuestAssignmentGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCollectionBonusQuestAssignmentGroup +{ + public int CollectionBonusQuestAssignmentGroupId { get; set; } + + public int CollectionBonusQuestAssignmentId { get; set; } +} diff --git a/src/Models/Entities/EntityMComboCalculationSetting.cs b/src/Models/Entities/EntityMComboCalculationSetting.cs new file mode 100644 index 0000000..493ec0a --- /dev/null +++ b/src/Models/Entities/EntityMComboCalculationSetting.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMComboCalculationSetting +{ + public int ComboCountLowerLimit { get; set; } + + public int DamageCoefficientPermil { get; set; } + + public int UiEffectIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMComebackCampaign.cs b/src/Models/Entities/EntityMComebackCampaign.cs new file mode 100644 index 0000000..7dfebef --- /dev/null +++ b/src/Models/Entities/EntityMComebackCampaign.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMComebackCampaign +{ + public int ComebackCampaignId { get; set; } + + public long ComebackJudgeStartDatetime { get; set; } + + public long ComebackJudgeEndDatetime { get; set; } + + public int ComebackJudgeDayCount { get; set; } + + public int GrantCampaignTermDayCount { get; set; } + + public int CampaignUnlockQuestId { get; set; } + + public int ComebackCampaignGradeGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanion.cs b/src/Models/Entities/EntityMCompanion.cs new file mode 100644 index 0000000..2941d19 --- /dev/null +++ b/src/Models/Entities/EntityMCompanion.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanion +{ + public int CompanionId { get; set; } + + public AttributeType AttributeType { get; set; } + + public int CompanionCategoryType { get; set; } + + public int CompanionBaseStatusId { get; set; } + + public int CompanionStatusCalculationId { get; set; } + + public int SkillId { get; set; } + + public int CompanionAbilityGroupId { get; set; } + + public int ActorId { get; set; } + + public int ActorSkeletonId { get; set; } + + public int AssetVariationId { get; set; } + + public int CharacterMoverBattleActorAiId { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionAbilityGroup.cs b/src/Models/Entities/EntityMCompanionAbilityGroup.cs new file mode 100644 index 0000000..e5763e3 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionAbilityGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionAbilityGroup +{ + public int CompanionAbilityGroupId { get; set; } + + public int SlotNumber { get; set; } + + public int AbilityId { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionAbilityLevel.cs b/src/Models/Entities/EntityMCompanionAbilityLevel.cs new file mode 100644 index 0000000..9563548 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionAbilityLevel.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionAbilityLevel +{ + public int CompanionLevelLowerLimit { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionBaseStatus.cs b/src/Models/Entities/EntityMCompanionBaseStatus.cs new file mode 100644 index 0000000..9a21d65 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionBaseStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionBaseStatus +{ + public int CompanionBaseStatusId { get; set; } + + public int Attack { get; set; } + + public int Hp { get; set; } + + public int Vitality { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionCategory.cs b/src/Models/Entities/EntityMCompanionCategory.cs new file mode 100644 index 0000000..3d8bad3 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionCategory.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionCategory +{ + public int CompanionCategoryType { get; set; } + + public int EnhancementCostNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionDuplicationExchangePossessionGroup.cs b/src/Models/Entities/EntityMCompanionDuplicationExchangePossessionGroup.cs new file mode 100644 index 0000000..aa7d49e --- /dev/null +++ b/src/Models/Entities/EntityMCompanionDuplicationExchangePossessionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionDuplicationExchangePossessionGroup +{ + public int CompanionId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionEnhanced.cs b/src/Models/Entities/EntityMCompanionEnhanced.cs new file mode 100644 index 0000000..25af064 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionEnhanced.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionEnhanced +{ + public int CompanionEnhancedId { get; set; } + + public int CompanionId { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionEnhancementMaterial.cs b/src/Models/Entities/EntityMCompanionEnhancementMaterial.cs new file mode 100644 index 0000000..b6db0d9 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionEnhancementMaterial.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionEnhancementMaterial +{ + public int CompanionCategoryType { get; set; } + + public int Level { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionSkillLevel.cs b/src/Models/Entities/EntityMCompanionSkillLevel.cs new file mode 100644 index 0000000..4528c48 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionSkillLevel.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionSkillLevel +{ + public int CompanionLevelLowerLimit { get; set; } + + public int SkillLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCompanionStatusCalculation.cs b/src/Models/Entities/EntityMCompanionStatusCalculation.cs new file mode 100644 index 0000000..fc52339 --- /dev/null +++ b/src/Models/Entities/EntityMCompanionStatusCalculation.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompanionStatusCalculation +{ + public int CompanionStatusCalculationId { get; set; } + + public int AttackNumericalFunctionId { get; set; } + + public int HpNumericalFunctionId { get; set; } + + public int VitalityNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCompleteMissionGroup.cs b/src/Models/Entities/EntityMCompleteMissionGroup.cs new file mode 100644 index 0000000..354420c --- /dev/null +++ b/src/Models/Entities/EntityMCompleteMissionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCompleteMissionGroup +{ + public int MissionId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMConfig.cs b/src/Models/Entities/EntityMConfig.cs new file mode 100644 index 0000000..396a9d2 --- /dev/null +++ b/src/Models/Entities/EntityMConfig.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMConfig +{ + public string ConfigKey { get; set; } + + public string Value { get; set; } +} diff --git a/src/Models/Entities/EntityMConsumableItem.cs b/src/Models/Entities/EntityMConsumableItem.cs new file mode 100644 index 0000000..c2ab325 --- /dev/null +++ b/src/Models/Entities/EntityMConsumableItem.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMConsumableItem +{ + public int ConsumableItemId { get; set; } + + public ConsumableItemType ConsumableItemType { get; set; } + + public int SortOrder { get; set; } + + public int SellPrice { get; set; } + + public int ConsumableItemTermId { get; set; } + + public string AssetName { get; set; } + + public int AssetCategoryId { get; set; } + + public int AssetVariationId { get; set; } +} diff --git a/src/Models/Entities/EntityMConsumableItemEffect.cs b/src/Models/Entities/EntityMConsumableItemEffect.cs new file mode 100644 index 0000000..cbb0a46 --- /dev/null +++ b/src/Models/Entities/EntityMConsumableItemEffect.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMConsumableItemEffect +{ + public int ConsumableItemId { get; set; } + + public EffectTargetType EffectTargetType { get; set; } + + public EffectValueType EffectValueType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMConsumableItemTerm.cs b/src/Models/Entities/EntityMConsumableItemTerm.cs new file mode 100644 index 0000000..982ab52 --- /dev/null +++ b/src/Models/Entities/EntityMConsumableItemTerm.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMConsumableItemTerm +{ + public int ConsumableItemTermId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMContentsStory.cs b/src/Models/Entities/EntityMContentsStory.cs new file mode 100644 index 0000000..d4e7855 --- /dev/null +++ b/src/Models/Entities/EntityMContentsStory.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMContentsStory +{ + public int ContentsStoryId { get; set; } + + public QuestSceneType QuestSceneType { get; set; } + + public int AssetBackgroundId { get; set; } + + public int EventMapNumberUpper { get; set; } + + public int EventMapNumberLower { get; set; } + + public bool IsForcedPlay { get; set; } + + public UnlockConditionType ContentsStoryUnlockConditionType { get; set; } + + public int ConditionValue { get; set; } + + public int UnlockEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostume.cs b/src/Models/Entities/EntityMCostume.cs new file mode 100644 index 0000000..f50cfea --- /dev/null +++ b/src/Models/Entities/EntityMCostume.cs @@ -0,0 +1,46 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostume +{ + public int CostumeId { get; set; } + + public int CharacterId { get; set; } + + public int ActorId { get; set; } + + public CostumeAssetCategoryType CostumeAssetCategoryType { get; set; } + + public int ActorSkeletonId { get; set; } + + public int AssetVariationId { get; set; } + + public WeaponType SkillfulWeaponType { get; set; } + + public RarityType RarityType { get; set; } + + public int CostumeBaseStatusId { get; set; } + + public int CostumeStatusCalculationId { get; set; } + + public int CostumeLimitBreakMaterialGroupId { get; set; } + + public int CostumeAbilityGroupId { get; set; } + + public int CostumeActiveSkillGroupId { get; set; } + + public int CounterSkillDetailId { get; set; } + + public int CharacterMoverBattleActorAiId { get; set; } + + public int CostumeDefaultSkillGroupId { get; set; } + + public int CostumeLevelBonusId { get; set; } + + public int DefaultActorSkillAiId { get; set; } + + public int CostumeEmblemAssetId { get; set; } + + public int BattleActorSkillAiGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAbilityGroup.cs b/src/Models/Entities/EntityMCostumeAbilityGroup.cs new file mode 100644 index 0000000..da086f1 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAbilityGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAbilityGroup +{ + public int CostumeAbilityGroupId { get; set; } + + public int SlotNumber { get; set; } + + public int AbilityId { get; set; } + + public int CostumeAbilityLevelGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAbilityLevelGroup.cs b/src/Models/Entities/EntityMCostumeAbilityLevelGroup.cs new file mode 100644 index 0000000..fb21217 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAbilityLevelGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAbilityLevelGroup +{ + public int CostumeAbilityLevelGroupId { get; set; } + + public int CostumeLimitBreakCountLowerLimit { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeActiveSkillEnhancementMaterial.cs b/src/Models/Entities/EntityMCostumeActiveSkillEnhancementMaterial.cs new file mode 100644 index 0000000..26a383c --- /dev/null +++ b/src/Models/Entities/EntityMCostumeActiveSkillEnhancementMaterial.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeActiveSkillEnhancementMaterial +{ + public int CostumeActiveSkillEnhancementMaterialId { get; set; } + + public int SkillLevel { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeActiveSkillGroup.cs b/src/Models/Entities/EntityMCostumeActiveSkillGroup.cs new file mode 100644 index 0000000..a86796a --- /dev/null +++ b/src/Models/Entities/EntityMCostumeActiveSkillGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeActiveSkillGroup +{ + public int CostumeActiveSkillGroupId { get; set; } + + public int CostumeLimitBreakCountLowerLimit { get; set; } + + public int CostumeActiveSkillId { get; set; } + + public int CostumeActiveSkillEnhancementMaterialId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAnimationStep.cs b/src/Models/Entities/EntityMCostumeAnimationStep.cs new file mode 100644 index 0000000..1f0fd50 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAnimationStep.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAnimationStep +{ + public int CostumeId { get; set; } + + public int Step { get; set; } + + public int ActorAnimationId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAutoOrganizationCondition.cs b/src/Models/Entities/EntityMCostumeAutoOrganizationCondition.cs new file mode 100644 index 0000000..8851508 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAutoOrganizationCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAutoOrganizationCondition +{ + public int CostumeId { get; set; } + + public CostumeAutoOrganizationConditionType CostumeAutoOrganizationConditionType { get; set; } + + public int TargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwaken.cs b/src/Models/Entities/EntityMCostumeAwaken.cs new file mode 100644 index 0000000..2c7fe0b --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwaken.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwaken +{ + public int CostumeId { get; set; } + + public int CostumeAwakenEffectGroupId { get; set; } + + public int CostumeAwakenStepMaterialGroupId { get; set; } + + public int CostumeAwakenPriceGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenAbility.cs b/src/Models/Entities/EntityMCostumeAwakenAbility.cs new file mode 100644 index 0000000..21b8a8e --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenAbility +{ + public int CostumeAwakenAbilityId { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenEffectGroup.cs b/src/Models/Entities/EntityMCostumeAwakenEffectGroup.cs new file mode 100644 index 0000000..708c9fa --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenEffectGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenEffectGroup +{ + public int CostumeAwakenEffectGroupId { get; set; } + + public int AwakenStep { get; set; } + + public CostumeAwakenEffectType CostumeAwakenEffectType { get; set; } + + public int CostumeAwakenEffectId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenItemAcquire.cs b/src/Models/Entities/EntityMCostumeAwakenItemAcquire.cs new file mode 100644 index 0000000..3de88b6 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenItemAcquire.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenItemAcquire +{ + public int CostumeAwakenItemAcquireId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenMaterialGroup.cs b/src/Models/Entities/EntityMCostumeAwakenMaterialGroup.cs new file mode 100644 index 0000000..d4cab6b --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenMaterialGroup +{ + public int CostumeAwakenMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenPriceGroup.cs b/src/Models/Entities/EntityMCostumeAwakenPriceGroup.cs new file mode 100644 index 0000000..dc08336 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenPriceGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenPriceGroup +{ + public int CostumeAwakenPriceGroupId { get; set; } + + public int AwakenStepLowerLimit { get; set; } + + public int Gold { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenStatusUpGroup.cs b/src/Models/Entities/EntityMCostumeAwakenStatusUpGroup.cs new file mode 100644 index 0000000..1941520 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenStatusUpGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenStatusUpGroup +{ + public int CostumeAwakenStatusUpGroupId { get; set; } + + public int SortOrder { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeAwakenStepMaterialGroup.cs b/src/Models/Entities/EntityMCostumeAwakenStepMaterialGroup.cs new file mode 100644 index 0000000..22097b8 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeAwakenStepMaterialGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeAwakenStepMaterialGroup +{ + public int CostumeAwakenStepMaterialGroupId { get; set; } + + public int AwakenStepLowerLimit { get; set; } + + public int CostumeAwakenMaterialGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeBaseStatus.cs b/src/Models/Entities/EntityMCostumeBaseStatus.cs new file mode 100644 index 0000000..42b3abe --- /dev/null +++ b/src/Models/Entities/EntityMCostumeBaseStatus.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeBaseStatus +{ + public int CostumeBaseStatusId { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } + + public int Agility { get; set; } + + public int CriticalRatioPermil { get; set; } + + public int CriticalAttackRatioPermil { get; set; } + + public int EvasionRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeCollectionBonus.cs b/src/Models/Entities/EntityMCostumeCollectionBonus.cs new file mode 100644 index 0000000..83d41c7 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeCollectionBonus.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeCollectionBonus +{ + public int CollectionBonusId { get; set; } + + public int CollectionBonusTextId { get; set; } + + public int CollectionBonusGroupId { get; set; } + + public int CollectionBonusQuestAssignmentGroupId { get; set; } + + public int CollectionBonusEffectId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int GroupingId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeCollectionBonusGroup.cs b/src/Models/Entities/EntityMCostumeCollectionBonusGroup.cs new file mode 100644 index 0000000..4c1529d --- /dev/null +++ b/src/Models/Entities/EntityMCostumeCollectionBonusGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeCollectionBonusGroup +{ + public int CollectionBonusGroupId { get; set; } + + public int CostumeId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDefaultSkillGroup.cs b/src/Models/Entities/EntityMCostumeDefaultSkillGroup.cs new file mode 100644 index 0000000..2471374 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDefaultSkillGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDefaultSkillGroup +{ + public int CostumeDefaultSkillGroupId { get; set; } + + public CostumeDefaultSkillLotteryType CostumeDefaultSkillLotteryType { get; set; } + + public int CostumeDefaultSkillLotteryGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDefaultSkillLotteryGroup.cs b/src/Models/Entities/EntityMCostumeDefaultSkillLotteryGroup.cs new file mode 100644 index 0000000..8d03b96 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDefaultSkillLotteryGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDefaultSkillLotteryGroup +{ + public int CostumeDefaultSkillLotteryGroupId { get; set; } + + public int SkillDetailId { get; set; } + + public int ProbabilityWeight { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDelete.cs b/src/Models/Entities/EntityMCostumeDelete.cs new file mode 100644 index 0000000..12589e1 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDelete.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDelete +{ + public int CostumeId { get; set; } + + public int DeleteConditionClearQuestId { get; set; } + + public int CostumeAlternativeGroupId { get; set; } + + public TutorialType DeleteCostumeTutorialType { get; set; } + + public int MaterialReturnGiftGrantRouteType { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDisplayCoordinateAdjustment.cs b/src/Models/Entities/EntityMCostumeDisplayCoordinateAdjustment.cs new file mode 100644 index 0000000..3e763b9 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDisplayCoordinateAdjustment.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDisplayCoordinateAdjustment +{ + public int CostumeId { get; set; } + + public DisplayCoordinateAdjustmentFunctionType DisplayCoordinateAdjustmentFunctionType { get; set; } + + public int HorizontalCoordinateCountPermil { get; set; } + + public int VerticalCoordinateCountPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDisplaySwitch.cs b/src/Models/Entities/EntityMCostumeDisplaySwitch.cs new file mode 100644 index 0000000..0b1680c --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDisplaySwitch.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDisplaySwitch +{ + public int CostumeId { get; set; } + + public int DisplayConditionClearQuestId { get; set; } + + public int DisplayDeletedExpressionAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeDuplicationExchangePossessionGroup.cs b/src/Models/Entities/EntityMCostumeDuplicationExchangePossessionGroup.cs new file mode 100644 index 0000000..4ec4565 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeDuplicationExchangePossessionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeDuplicationExchangePossessionGroup +{ + public int CostumeId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeEmblem.cs b/src/Models/Entities/EntityMCostumeEmblem.cs new file mode 100644 index 0000000..81d8575 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeEmblem.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeEmblem +{ + public int CostumeEmblemAssetId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeEnhanced.cs b/src/Models/Entities/EntityMCostumeEnhanced.cs new file mode 100644 index 0000000..27c5279 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeEnhanced.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeEnhanced +{ + public int CostumeEnhancedId { get; set; } + + public int CostumeId { get; set; } + + public int LimitBreakCount { get; set; } + + public int Level { get; set; } + + public int ActiveSkillLevel { get; set; } + + public int AwakenCount { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLevelBonus.cs b/src/Models/Entities/EntityMCostumeLevelBonus.cs new file mode 100644 index 0000000..9c2e851 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLevelBonus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLevelBonus +{ + public int CostumeLevelBonusId { get; set; } + + public int Level { get; set; } + + public CostumeLevelBonusType CostumeLevelBonusType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLimitBreakMaterialGroup.cs b/src/Models/Entities/EntityMCostumeLimitBreakMaterialGroup.cs new file mode 100644 index 0000000..b770ab6 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLimitBreakMaterialGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLimitBreakMaterialGroup +{ + public int CostumeLimitBreakMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } + + public int CostumeOverflowExchangePossessionGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLimitBreakMaterialRarityGroup.cs b/src/Models/Entities/EntityMCostumeLimitBreakMaterialRarityGroup.cs new file mode 100644 index 0000000..3aec717 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLimitBreakMaterialRarityGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLimitBreakMaterialRarityGroup +{ + public int CostumeLimitBreakMaterialRarityGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffect.cs b/src/Models/Entities/EntityMCostumeLotteryEffect.cs new file mode 100644 index 0000000..61a313b --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffect.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffect +{ + public int CostumeId { get; set; } + + public int SlotNumber { get; set; } + + public int CostumeLotteryEffectOddsGroupId { get; set; } + + public int CostumeLotteryEffectUnlockMaterialGroupId { get; set; } + + public int CostumeLotteryEffectDrawMaterialGroupId { get; set; } + + public int CostumeLotteryEffectReleaseScheduleId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffectMaterialGroup.cs b/src/Models/Entities/EntityMCostumeLotteryEffectMaterialGroup.cs new file mode 100644 index 0000000..640d64c --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffectMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffectMaterialGroup +{ + public int CostumeLotteryEffectMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffectOddsGroup.cs b/src/Models/Entities/EntityMCostumeLotteryEffectOddsGroup.cs new file mode 100644 index 0000000..760d219 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffectOddsGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffectOddsGroup +{ + public int CostumeLotteryEffectOddsGroupId { get; set; } + + public int OddsNumber { get; set; } + + public int Weight { get; set; } + + public CostumeLotteryEffectType CostumeLotteryEffectType { get; set; } + + public int CostumeLotteryEffectTargetId { get; set; } + + public RarityType RarityType { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffectReleaseSchedule.cs b/src/Models/Entities/EntityMCostumeLotteryEffectReleaseSchedule.cs new file mode 100644 index 0000000..350ec76 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffectReleaseSchedule.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffectReleaseSchedule +{ + public int CostumeLotteryEffectReleaseScheduleId { get; set; } + + public long ReleaseDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffectTargetAbility.cs b/src/Models/Entities/EntityMCostumeLotteryEffectTargetAbility.cs new file mode 100644 index 0000000..8247bf9 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffectTargetAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffectTargetAbility +{ + public int CostumeLotteryEffectTargetAbilityId { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeLotteryEffectTargetStatusUp.cs b/src/Models/Entities/EntityMCostumeLotteryEffectTargetStatusUp.cs new file mode 100644 index 0000000..ac90efc --- /dev/null +++ b/src/Models/Entities/EntityMCostumeLotteryEffectTargetStatusUp.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeLotteryEffectTargetStatusUp +{ + public int CostumeLotteryEffectTargetStatusUpId { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeOverflowExchangePossessionGroup.cs b/src/Models/Entities/EntityMCostumeOverflowExchangePossessionGroup.cs new file mode 100644 index 0000000..746e924 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeOverflowExchangePossessionGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeOverflowExchangePossessionGroup +{ + public int MaterialId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeProperAttributeHpBonus.cs b/src/Models/Entities/EntityMCostumeProperAttributeHpBonus.cs new file mode 100644 index 0000000..519c1e5 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeProperAttributeHpBonus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeProperAttributeHpBonus +{ + public int CostumeId { get; set; } + + public AttributeType CostumeProperAttributeType { get; set; } + + public int MainWeaponHpAdditionalValue { get; set; } + + public int SubWeaponHpAdditionalValue { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeRarity.cs b/src/Models/Entities/EntityMCostumeRarity.cs new file mode 100644 index 0000000..2d7a37c --- /dev/null +++ b/src/Models/Entities/EntityMCostumeRarity.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeRarity +{ + public RarityType RarityType { get; set; } + + public int CostumeLimitBreakMaterialRarityGroupId { get; set; } + + public int EnhancementCostByMaterialNumericalFunctionId { get; set; } + + public int LimitBreakCostNumericalFunctionId { get; set; } + + public int MaxLevelNumericalFunctionId { get; set; } + + public int RequiredExpForLevelUpNumericalParameterMapId { get; set; } + + public int ActiveSkillMaxLevelNumericalFunctionId { get; set; } + + public int ActiveSkillEnhancementCostNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeSpecialActActiveSkill.cs b/src/Models/Entities/EntityMCostumeSpecialActActiveSkill.cs new file mode 100644 index 0000000..0dc4bef --- /dev/null +++ b/src/Models/Entities/EntityMCostumeSpecialActActiveSkill.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeSpecialActActiveSkill +{ + public int CostumeId { get; set; } + + public int SkillActIndex { get; set; } + + public CostumeSpecialActActiveSkillConditionType CostumeSpecialActActiveSkillConditionType { get; set; } + + public int CostumeSpecialActActiveSkillConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeSpecialActActiveSkillConditionAttribute.cs b/src/Models/Entities/EntityMCostumeSpecialActActiveSkillConditionAttribute.cs new file mode 100644 index 0000000..4f0a32c --- /dev/null +++ b/src/Models/Entities/EntityMCostumeSpecialActActiveSkillConditionAttribute.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeSpecialActActiveSkillConditionAttribute +{ + public int CostumeSpecialActActiveSkillConditionId { get; set; } + + public AttributeType CostumeSpecialActActiveSkillConditionAttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMCostumeStatusCalculation.cs b/src/Models/Entities/EntityMCostumeStatusCalculation.cs new file mode 100644 index 0000000..5277139 --- /dev/null +++ b/src/Models/Entities/EntityMCostumeStatusCalculation.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMCostumeStatusCalculation +{ + public int CostumeStatusCalculationId { get; set; } + + public int HpNumericalFunctionId { get; set; } + + public int AttackNumericalFunctionId { get; set; } + + public int VitalityNumericalFunctionId { get; set; } + + public int AgilityNumericalFunctionId { get; set; } + + public int CriticalRatioPermilNumericalFunctionId { get; set; } + + public int CriticalAttackRatioPermilNumericalFunctionId { get; set; } + + public int EvasionRatioPermilNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMDeckEntrustCoefficientAttribute.cs b/src/Models/Entities/EntityMDeckEntrustCoefficientAttribute.cs new file mode 100644 index 0000000..9277574 --- /dev/null +++ b/src/Models/Entities/EntityMDeckEntrustCoefficientAttribute.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDeckEntrustCoefficientAttribute +{ + public AttributeType EntrustAttributeType { get; set; } + + public AttributeType AttributeType { get; set; } + + public int CoefficientPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMDeckEntrustCoefficientPartsSeriesBonusCount.cs b/src/Models/Entities/EntityMDeckEntrustCoefficientPartsSeriesBonusCount.cs new file mode 100644 index 0000000..29bc62f --- /dev/null +++ b/src/Models/Entities/EntityMDeckEntrustCoefficientPartsSeriesBonusCount.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDeckEntrustCoefficientPartsSeriesBonusCount +{ + public int PartsSeriesBonusCount { get; set; } + + public int CoefficientPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMDeckEntrustCoefficientStatus.cs b/src/Models/Entities/EntityMDeckEntrustCoefficientStatus.cs new file mode 100644 index 0000000..91d22cf --- /dev/null +++ b/src/Models/Entities/EntityMDeckEntrustCoefficientStatus.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDeckEntrustCoefficientStatus +{ + public int EntrustDeckStatusType { get; set; } + + public int DeckStatusType { get; set; } + + public int CoefficientPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMDokan.cs b/src/Models/Entities/EntityMDokan.cs new file mode 100644 index 0000000..0bc6044 --- /dev/null +++ b/src/Models/Entities/EntityMDokan.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDokan +{ + public int DokanId { get; set; } + + public int SortOrder { get; set; } + + public DokanType DokanType { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int DokanContentGroupId { get; set; } + + public TargetUserStatusType TargetUserStatusType { get; set; } + + public MainFunctionType UnlockMainFunctionType { get; set; } +} diff --git a/src/Models/Entities/EntityMDokanContentGroup.cs b/src/Models/Entities/EntityMDokanContentGroup.cs new file mode 100644 index 0000000..35f2949 --- /dev/null +++ b/src/Models/Entities/EntityMDokanContentGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDokanContentGroup +{ + public int DokanContentGroupId { get; set; } + + public int ContentIndex { get; set; } + + public int ImageId { get; set; } + + public int MovieId { get; set; } + + public int DokanTextId { get; set; } +} diff --git a/src/Models/Entities/EntityMDokanText.cs b/src/Models/Entities/EntityMDokanText.cs new file mode 100644 index 0000000..36c6778 --- /dev/null +++ b/src/Models/Entities/EntityMDokanText.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMDokanText +{ + public int DokanTextId { get; set; } + + public LanguageType LanguageType { get; set; } + + public string Text { get; set; } +} diff --git a/src/Models/Entities/EntityMEnhanceCampaign.cs b/src/Models/Entities/EntityMEnhanceCampaign.cs new file mode 100644 index 0000000..8781578 --- /dev/null +++ b/src/Models/Entities/EntityMEnhanceCampaign.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEnhanceCampaign +{ + public int EnhanceCampaignId { get; set; } + + public int EnhanceCampaignTargetGroupId { get; set; } + + public EnhanceCampaignEffectType EnhanceCampaignEffectType { get; set; } + + public int EnhanceCampaignEffectValue { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public TargetUserStatusType TargetUserStatusType { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMEnhanceCampaignTargetGroup.cs b/src/Models/Entities/EntityMEnhanceCampaignTargetGroup.cs new file mode 100644 index 0000000..6a6cc3a --- /dev/null +++ b/src/Models/Entities/EntityMEnhanceCampaignTargetGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEnhanceCampaignTargetGroup +{ + public int EnhanceCampaignTargetGroupId { get; set; } + + public int EnhanceCampaignTargetIndex { get; set; } + + public EnhanceCampaignTargetType EnhanceCampaignTargetType { get; set; } + + public int EnhanceCampaignTargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMEvaluateCondition.cs b/src/Models/Entities/EntityMEvaluateCondition.cs new file mode 100644 index 0000000..e21db68 --- /dev/null +++ b/src/Models/Entities/EntityMEvaluateCondition.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEvaluateCondition +{ + public int EvaluateConditionId { get; set; } + + public EvaluateConditionFunctionType EvaluateConditionFunctionType { get; set; } + + public EvaluateConditionEvaluateType EvaluateConditionEvaluateType { get; set; } + + public int EvaluateConditionValueGroupId { get; set; } + + public int NameEvaluateConditionTextId { get; set; } +} diff --git a/src/Models/Entities/EntityMEvaluateConditionValueGroup.cs b/src/Models/Entities/EntityMEvaluateConditionValueGroup.cs new file mode 100644 index 0000000..6eb0943 --- /dev/null +++ b/src/Models/Entities/EntityMEvaluateConditionValueGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEvaluateConditionValueGroup +{ + public int EvaluateConditionValueGroupId { get; set; } + + public int GroupIndex { get; set; } + + public long Value { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestChapter.cs b/src/Models/Entities/EntityMEventQuestChapter.cs new file mode 100644 index 0000000..ec562e9 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestChapter.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestChapter +{ + public int EventQuestChapterId { get; set; } + + public EventQuestType EventQuestType { get; set; } + + public int SortOrder { get; set; } + + public int NameEventQuestTextId { get; set; } + + public int BannerAssetId { get; set; } + + public int EventQuestLinkId { get; set; } + + public int EventQuestDisplayItemGroupId { get; set; } + + public int EventQuestSequenceGroupId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int DisplaySortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestChapterCharacter.cs b/src/Models/Entities/EntityMEventQuestChapterCharacter.cs new file mode 100644 index 0000000..55e8397 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestChapterCharacter.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestChapterCharacter +{ + public int EventQuestChapterId { get; set; } + + public int CharacterId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestChapterDifficultyLimitContentUnlock.cs b/src/Models/Entities/EntityMEventQuestChapterDifficultyLimitContentUnlock.cs new file mode 100644 index 0000000..74c3c51 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestChapterDifficultyLimitContentUnlock.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestChapterDifficultyLimitContentUnlock +{ + public int EventQuestChapterId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int UnlockEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestChapterLimitContentRelation.cs b/src/Models/Entities/EntityMEventQuestChapterLimitContentRelation.cs new file mode 100644 index 0000000..7796e9a --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestChapterLimitContentRelation.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestChapterLimitContentRelation +{ + public int EventQuestChapterId { get; set; } + + public int EventQuestLimitContentId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestDailyGroup.cs b/src/Models/Entities/EntityMEventQuestDailyGroup.cs new file mode 100644 index 0000000..d71248d --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestDailyGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestDailyGroup +{ + public int EventQuestDailyGroupId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int EventQuestDailyGroupTargetChapterId { get; set; } + + public int EventQuestDailyGroupCompleteRewardId { get; set; } + + public int EventQuestDailyGroupMessageId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestDailyGroupCompleteReward.cs b/src/Models/Entities/EntityMEventQuestDailyGroupCompleteReward.cs new file mode 100644 index 0000000..f5a8b64 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestDailyGroupCompleteReward.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestDailyGroupCompleteReward +{ + public int EventQuestDailyGroupCompleteRewardId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestDailyGroupMessage.cs b/src/Models/Entities/EntityMEventQuestDailyGroupMessage.cs new file mode 100644 index 0000000..9e62cde --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestDailyGroupMessage.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestDailyGroupMessage +{ + public int EventQuestDailyGroupMessageId { get; set; } + + public int OddsNumber { get; set; } + + public int Weight { get; set; } + + public int BeforeClearMessageTextId { get; set; } + + public int AfterClearMessageTextId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestDailyGroupTargetChapter.cs b/src/Models/Entities/EntityMEventQuestDailyGroupTargetChapter.cs new file mode 100644 index 0000000..70190f5 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestDailyGroupTargetChapter.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestDailyGroupTargetChapter +{ + public int EventQuestDailyGroupTargetChapterId { get; set; } + + public int SortOrder { get; set; } + + public int EventQuestChapterId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestDisplayItemGroup.cs b/src/Models/Entities/EntityMEventQuestDisplayItemGroup.cs new file mode 100644 index 0000000..5439f70 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestDisplayItemGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestDisplayItemGroup +{ + public int EventQuestDisplayItemGroupId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpen.cs b/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpen.cs new file mode 100644 index 0000000..69382af --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpen.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestGuerrillaFreeOpen +{ + public int EventQuestGuerrillaFreeOpenId { get; set; } + + public int OpenMinutes { get; set; } + + public int DailyOpenMaxCount { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondence.cs b/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondence.cs new file mode 100644 index 0000000..a94109a --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondence.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondence +{ + public int QuestId { get; set; } + + public int QuestScheduleId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthMob.cs b/src/Models/Entities/EntityMEventQuestLabyrinthMob.cs new file mode 100644 index 0000000..7f83aec --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthMob.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthMob +{ + public int EventQuestLabyrinthMobId { get; set; } + + public int MobAssetId { get; set; } + + public int BeforeStageClearTextAssetId { get; set; } + + public int AfterStageClearTextAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthQuestDisplay.cs b/src/Models/Entities/EntityMEventQuestLabyrinthQuestDisplay.cs new file mode 100644 index 0000000..f2e9ff3 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthQuestDisplay.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthQuestDisplay +{ + public int QuestId { get; set; } + + public int BgAssetId { get; set; } + + public int MobId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionAbility.cs b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionAbility.cs new file mode 100644 index 0000000..f989c9f --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthQuestEffectDescriptionAbility +{ + public int EventQuestLabyrinthQuestEffectDescriptionId { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionFree.cs b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionFree.cs new file mode 100644 index 0000000..61e2d60 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDescriptionFree.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthQuestEffectDescriptionFree +{ + public int EventQuestLabyrinthQuestEffectDescriptionId { get; set; } + + public int AssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDisplay.cs b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDisplay.cs new file mode 100644 index 0000000..b6b64fa --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthQuestEffectDisplay.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthQuestEffectDisplay +{ + public int QuestId { get; set; } + + public int SortOrder { get; set; } + + public LabyrinthQuestEffectDescriptionType LabyrinthQuestEffectDescriptionType { get; set; } + + public int EventQuestLabyrinthQuestEffectDescriptionId { get; set; } + + public AttributeType EffectTargetWeaponAttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthRewardGroup.cs b/src/Models/Entities/EntityMEventQuestLabyrinthRewardGroup.cs new file mode 100644 index 0000000..be9e0be --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthRewardGroup +{ + public int EventQuestLabyrinthRewardGroupId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthSeason.cs b/src/Models/Entities/EntityMEventQuestLabyrinthSeason.cs new file mode 100644 index 0000000..b3dd8a3 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthSeason.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthSeason +{ + public int EventQuestChapterId { get; set; } + + public int SeasonNumber { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int SeasonRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthSeasonRewardGroup.cs b/src/Models/Entities/EntityMEventQuestLabyrinthSeasonRewardGroup.cs new file mode 100644 index 0000000..7a5d750 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthSeasonRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthSeasonRewardGroup +{ + public int EventQuestLabyrinthSeasonRewardGroupId { get; set; } + + public int HeadQuestId { get; set; } + + public int EventQuestLabyrinthRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthStage.cs b/src/Models/Entities/EntityMEventQuestLabyrinthStage.cs new file mode 100644 index 0000000..7e13446 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthStage.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthStage +{ + public int EventQuestChapterId { get; set; } + + public int StageOrder { get; set; } + + public int StartSequenceSortOrder { get; set; } + + public int EndSequenceSortOrder { get; set; } + + public int StageClearRewardGroupId { get; set; } + + public int StageAccumulationRewardGroupId { get; set; } + + public int Mob1Id { get; set; } + + public int Mob2Id { get; set; } + + public int TreasureAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLabyrinthStageAccumulationRewardGroup.cs b/src/Models/Entities/EntityMEventQuestLabyrinthStageAccumulationRewardGroup.cs new file mode 100644 index 0000000..8834cdc --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLabyrinthStageAccumulationRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLabyrinthStageAccumulationRewardGroup +{ + public int EventQuestLabyrinthStageAccumulationRewardGroupId { get; set; } + + public int QuestMissionClearCount { get; set; } + + public int EventQuestLabyrinthRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLimitContent.cs b/src/Models/Entities/EntityMEventQuestLimitContent.cs new file mode 100644 index 0000000..48f90c7 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLimitContent.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLimitContent +{ + public int EventQuestLimitContentId { get; set; } + + public int CostumeId { get; set; } + + public int UnlockEvaluateConditionId { get; set; } + + public int SortOrder { get; set; } + + public int DeckGroupNumber { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int EventQuestLimitContentDeckRestrictionId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLimitContentDeckRestriction.cs b/src/Models/Entities/EntityMEventQuestLimitContentDeckRestriction.cs new file mode 100644 index 0000000..b4d0e18 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLimitContentDeckRestriction.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLimitContentDeckRestriction +{ + public int EventQuestLimitContentDeckRestrictionId { get; set; } + + public int GroupIndex { get; set; } + + public int EventQuestLimitContentDeckRestrictionTargetId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLimitContentDeckRestrictionTarget.cs b/src/Models/Entities/EntityMEventQuestLimitContentDeckRestrictionTarget.cs new file mode 100644 index 0000000..02b7b72 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLimitContentDeckRestrictionTarget.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLimitContentDeckRestrictionTarget +{ + public int EventQuestLimitContentDeckRestrictionTargetId { get; set; } + + public LimitContentDeckRestrictionType LimitContentDeckRestrictionType { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestLink.cs b/src/Models/Entities/EntityMEventQuestLink.cs new file mode 100644 index 0000000..dd7ee91 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestLink.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestLink +{ + public int EventQuestLinkId { get; set; } + + public DomainType DestinationDomainType { get; set; } + + public int DestinationDomainId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestSequence.cs b/src/Models/Entities/EntityMEventQuestSequence.cs new file mode 100644 index 0000000..30056cf --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestSequence.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestSequence +{ + public int EventQuestSequenceId { get; set; } + + public int SortOrder { get; set; } + + public int QuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestSequenceGroup.cs b/src/Models/Entities/EntityMEventQuestSequenceGroup.cs new file mode 100644 index 0000000..ddfa23f --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestSequenceGroup.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestSequenceGroup +{ + // Properties + public int EventQuestSequenceGroupId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int EventQuestSequenceId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestTowerAccumulationReward.cs b/src/Models/Entities/EntityMEventQuestTowerAccumulationReward.cs new file mode 100644 index 0000000..353a41e --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestTowerAccumulationReward.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestTowerAccumulationReward +{ + public int EventQuestChapterId { get; set; } + + public int EventQuestTowerAccumulationRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestTowerAccumulationRewardGroup.cs b/src/Models/Entities/EntityMEventQuestTowerAccumulationRewardGroup.cs new file mode 100644 index 0000000..58eba49 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestTowerAccumulationRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestTowerAccumulationRewardGroup +{ + public int EventQuestTowerAccumulationRewardGroupId { get; set; } + + public int QuestMissionClearCount { get; set; } + + public int EventQuestTowerRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestTowerAsset.cs b/src/Models/Entities/EntityMEventQuestTowerAsset.cs new file mode 100644 index 0000000..7f99ab2 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestTowerAsset.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestTowerAsset +{ + public int EventQuestChapterId { get; set; } + + public int AssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestTowerRewardGroup.cs b/src/Models/Entities/EntityMEventQuestTowerRewardGroup.cs new file mode 100644 index 0000000..9d1c5cf --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestTowerRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestTowerRewardGroup +{ + public int EventQuestTowerRewardGroupId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMEventQuestUnlockCondition.cs b/src/Models/Entities/EntityMEventQuestUnlockCondition.cs new file mode 100644 index 0000000..944b1e9 --- /dev/null +++ b/src/Models/Entities/EntityMEventQuestUnlockCondition.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMEventQuestUnlockCondition +{ + public EventQuestType EventQuestType { get; set; } + + public int CharacterId { get; set; } + + public int QuestId { get; set; } + + public UnlockConditionType UnlockConditionType { get; set; } + + public int ConditionValue { get; set; } + + public int UnlockEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMExplore.cs b/src/Models/Entities/EntityMExplore.cs new file mode 100644 index 0000000..29bdfd6 --- /dev/null +++ b/src/Models/Entities/EntityMExplore.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExplore +{ + public int ExploreId { get; set; } + + public int ExploreUnlockConditionId { get; set; } + + public long StartDatetime { get; set; } + + public int ConsumeItemCount { get; set; } + + public int RewardLotteryCount { get; set; } +} diff --git a/src/Models/Entities/EntityMExploreGradeAsset.cs b/src/Models/Entities/EntityMExploreGradeAsset.cs new file mode 100644 index 0000000..0d65572 --- /dev/null +++ b/src/Models/Entities/EntityMExploreGradeAsset.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExploreGradeAsset +{ + public int ExploreGradeId { get; set; } + + public int AssetGradeIconId { get; set; } +} diff --git a/src/Models/Entities/EntityMExploreGradeScore.cs b/src/Models/Entities/EntityMExploreGradeScore.cs new file mode 100644 index 0000000..4a2d956 --- /dev/null +++ b/src/Models/Entities/EntityMExploreGradeScore.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExploreGradeScore +{ + public int ExploreId { get; set; } + + public int NecessaryScore { get; set; } + + public int ExploreGradeId { get; set; } +} diff --git a/src/Models/Entities/EntityMExploreGroup.cs b/src/Models/Entities/EntityMExploreGroup.cs new file mode 100644 index 0000000..7c4176a --- /dev/null +++ b/src/Models/Entities/EntityMExploreGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExploreGroup +{ + public int ExploreGroupId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int ExploreId { get; set; } +} diff --git a/src/Models/Entities/EntityMExploreUnlockCondition.cs b/src/Models/Entities/EntityMExploreUnlockCondition.cs new file mode 100644 index 0000000..78298c4 --- /dev/null +++ b/src/Models/Entities/EntityMExploreUnlockCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExploreUnlockCondition +{ + public int ExploreUnlockConditionId { get; set; } + + public ExploreUnlockConditionType ExploreUnlockConditionType { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMExtraQuestGroup.cs b/src/Models/Entities/EntityMExtraQuestGroup.cs new file mode 100644 index 0000000..cf4be0f --- /dev/null +++ b/src/Models/Entities/EntityMExtraQuestGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExtraQuestGroup +{ + public int QuestId { get; set; } + + public int ExtraQuestIndex { get; set; } + + public int ExtraQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMExtraQuestGroupInMainQuestChapter.cs b/src/Models/Entities/EntityMExtraQuestGroupInMainQuestChapter.cs new file mode 100644 index 0000000..0011abe --- /dev/null +++ b/src/Models/Entities/EntityMExtraQuestGroupInMainQuestChapter.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMExtraQuestGroupInMainQuestChapter +{ + public int MainQuestChapterId { get; set; } + + public int ExtraQuestIndex { get; set; } + + public int ExtraQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMFieldEffectBlessRelation.cs b/src/Models/Entities/EntityMFieldEffectBlessRelation.cs new file mode 100644 index 0000000..eb2965a --- /dev/null +++ b/src/Models/Entities/EntityMFieldEffectBlessRelation.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMFieldEffectBlessRelation +{ + public int FieldEffectGroupId { get; set; } + + public int FieldEffectBlessRelationIndex { get; set; } + + public int WeaponId { get; set; } +} diff --git a/src/Models/Entities/EntityMFieldEffectDecreasePoint.cs b/src/Models/Entities/EntityMFieldEffectDecreasePoint.cs new file mode 100644 index 0000000..c4f91b3 --- /dev/null +++ b/src/Models/Entities/EntityMFieldEffectDecreasePoint.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMFieldEffectDecreasePoint +{ + public int WeaponId { get; set; } + + public int FieldEffectAbilityId { get; set; } + + public int DecreasePoint { get; set; } +} diff --git a/src/Models/Entities/EntityMFieldEffectGroup.cs b/src/Models/Entities/EntityMFieldEffectGroup.cs new file mode 100644 index 0000000..cb1897b --- /dev/null +++ b/src/Models/Entities/EntityMFieldEffectGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMFieldEffectGroup +{ + public int FieldEffectGroupId { get; set; } + + public int FieldEffectGroupIndex { get; set; } + + public int AbilityId { get; set; } + + public int DefaultAbilityLevel { get; set; } + + public FieldEffectApplyScopeType FieldEffectApplyScopeType { get; set; } + + public int FieldEffectAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMGachaMedal.cs b/src/Models/Entities/EntityMGachaMedal.cs new file mode 100644 index 0000000..4f70dbe --- /dev/null +++ b/src/Models/Entities/EntityMGachaMedal.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGachaMedal +{ + public int GachaMedalId { get; set; } + + public int CeilingCount { get; set; } + + public int ConsumableItemId { get; set; } + + public int ShopTransitionGachaId { get; set; } + + public long AutoConvertDatetime { get; set; } + + public int ConversionRate { get; set; } +} diff --git a/src/Models/Entities/EntityMGiftText.cs b/src/Models/Entities/EntityMGiftText.cs new file mode 100644 index 0000000..18fec6e --- /dev/null +++ b/src/Models/Entities/EntityMGiftText.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGiftText +{ + public int GiftTextId { get; set; } + + public LanguageType LanguageType { get; set; } + + public string Text { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmick.cs b/src/Models/Entities/EntityMGimmick.cs new file mode 100644 index 0000000..3afda99 --- /dev/null +++ b/src/Models/Entities/EntityMGimmick.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmick +{ + public int GimmickId { get; set; } + + public GimmickType GimmickType { get; set; } + + public int GimmickOrnamentGroupId { get; set; } + + public int ClearEvaluateConditionId { get; set; } + + public int ReleaseEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickAdditionalAsset.cs b/src/Models/Entities/EntityMGimmickAdditionalAsset.cs new file mode 100644 index 0000000..6d070a8 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickAdditionalAsset.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickAdditionalAsset +{ + public int GimmickId { get; set; } + + public string GimmickTexturePath { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickExtraQuest.cs b/src/Models/Entities/EntityMGimmickExtraQuest.cs new file mode 100644 index 0000000..b19937a --- /dev/null +++ b/src/Models/Entities/EntityMGimmickExtraQuest.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickExtraQuest +{ + public int GimmickId { get; set; } + + public int GimmickOrnamentIndex { get; set; } + + public int ExtraQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickGroup.cs b/src/Models/Entities/EntityMGimmickGroup.cs new file mode 100644 index 0000000..3cbc5f0 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickGroup +{ + public int GimmickGroupId { get; set; } + + public int GroupIndex { get; set; } + + public int GimmickId { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickGroupEventLog.cs b/src/Models/Entities/EntityMGimmickGroupEventLog.cs new file mode 100644 index 0000000..267620f --- /dev/null +++ b/src/Models/Entities/EntityMGimmickGroupEventLog.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickGroupEventLog +{ + public int GimmickGroupId { get; set; } + + public int EventLogTextId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickInterval.cs b/src/Models/Entities/EntityMGimmickInterval.cs new file mode 100644 index 0000000..3403175 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickInterval.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickInterval +{ + public int GimmickId { get; set; } + + public int InitialValue { get; set; } + + public int MaxValue { get; set; } + + public int IntervalValue { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickOrnament.cs b/src/Models/Entities/EntityMGimmickOrnament.cs new file mode 100644 index 0000000..0dd79f0 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickOrnament.cs @@ -0,0 +1,36 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickOrnament +{ + public int GimmickOrnamentGroupId { get; set; } + + public int GimmickOrnamentIndex { get; set; } + + public int GimmickOrnamentViewId { get; set; } + + public int Count { get; set; } + + public int ChapterId { get; set; } + + public float PositionX { get; set; } + + public float PositionY { get; set; } + + public float PositionZ { get; set; } + + public float Rotation { get; set; } + + public float Scale { get; set; } + + public int SortOrder { get; set; } + + public int AssetBackgroundId { get; set; } + + public int IconDifficultyValue { get; set; } + + public float RotationX { get; set; } + + public float RotationZ { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickSequence.cs b/src/Models/Entities/EntityMGimmickSequence.cs new file mode 100644 index 0000000..8235788 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickSequence.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickSequence +{ + public int GimmickSequenceId { get; set; } + + public int GimmickSequenceClearConditionType { get; set; } + + public int NextGimmickSequenceGroupId { get; set; } + + public int GimmickGroupId { get; set; } + + public int GimmickSequenceRewardGroupId { get; set; } + + public FlowType FlowType { get; set; } + + public int ProgressRequireHour { get; set; } + + public long ProgressStartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickSequenceGroup.cs b/src/Models/Entities/EntityMGimmickSequenceGroup.cs new file mode 100644 index 0000000..7d1e77f --- /dev/null +++ b/src/Models/Entities/EntityMGimmickSequenceGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickSequenceGroup +{ + public int GimmickSequenceGroupId { get; set; } + + public int GroupIndex { get; set; } + + public int GimmickSequenceId { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickSequenceRewardGroup.cs b/src/Models/Entities/EntityMGimmickSequenceRewardGroup.cs new file mode 100644 index 0000000..7d59523 --- /dev/null +++ b/src/Models/Entities/EntityMGimmickSequenceRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickSequenceRewardGroup +{ + public int GimmickSequenceRewardGroupId { get; set; } + + public int GroupIndex { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMGimmickSequenceSchedule.cs b/src/Models/Entities/EntityMGimmickSequenceSchedule.cs new file mode 100644 index 0000000..602141d --- /dev/null +++ b/src/Models/Entities/EntityMGimmickSequenceSchedule.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMGimmickSequenceSchedule +{ + public int GimmickSequenceScheduleId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int FirstGimmickSequenceId { get; set; } + + public int ReleaseEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMHeadupDisplayView.cs b/src/Models/Entities/EntityMHeadupDisplayView.cs new file mode 100644 index 0000000..e0748aa --- /dev/null +++ b/src/Models/Entities/EntityMHeadupDisplayView.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMHeadupDisplayView +{ + public int HeadupDisplayViewId { get; set; } + + public ViewSkillButtonType ViewSkillButtonType { get; set; } + + public HpBarDisplayType HpBarDisplayType { get; set; } + + public ViewNameTextType ViewNameTextType { get; set; } + + public ViewBuffAbnormalType ViewBuffAbnormalType { get; set; } + + public ViewLevelTextType ViewLevelTextType { get; set; } +} diff --git a/src/Models/Entities/EntityMHelp.cs b/src/Models/Entities/EntityMHelp.cs new file mode 100644 index 0000000..0c87007 --- /dev/null +++ b/src/Models/Entities/EntityMHelp.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMHelp +{ + public HelpType HelpType { get; set; } + + public int HelpItemId { get; set; } + + public int HelpPageGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMHelpCategory.cs b/src/Models/Entities/EntityMHelpCategory.cs new file mode 100644 index 0000000..b181e5f --- /dev/null +++ b/src/Models/Entities/EntityMHelpCategory.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMHelpCategory +{ + public int HelpCategoryId { get; set; } + + public int SortOrder { get; set; } + + public int TitleTextAssetId { get; set; } + + public bool IsHiddenOnList { get; set; } +} diff --git a/src/Models/Entities/EntityMHelpItem.cs b/src/Models/Entities/EntityMHelpItem.cs new file mode 100644 index 0000000..45037ef --- /dev/null +++ b/src/Models/Entities/EntityMHelpItem.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMHelpItem +{ + public int HelpItemId { get; set; } + + public int HelpCategoryId { get; set; } + + public int SortOrder { get; set; } + + public int TotalPageCount { get; set; } + + public int TitleTextAssetId { get; set; } + + public string AssetName { get; set; } + + public bool IsHiddenOnList { get; set; } +} diff --git a/src/Models/Entities/EntityMHelpPageGroup.cs b/src/Models/Entities/EntityMHelpPageGroup.cs new file mode 100644 index 0000000..f340b11 --- /dev/null +++ b/src/Models/Entities/EntityMHelpPageGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMHelpPageGroup +{ + public int HelpPageGroupId { get; set; } + + public int SortOrder { get; set; } + + public int HelpPageId { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItem.cs b/src/Models/Entities/EntityMImportantItem.cs new file mode 100644 index 0000000..1916787 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItem.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItem +{ + public int ImportantItemId { get; set; } + + public int NameImportantItemTextId { get; set; } + + public int DescriptionImportantItemTextId { get; set; } + + public int SortOrder { get; set; } + + public int AssetCategoryId { get; set; } + + public int AssetVariationId { get; set; } + + public int ImportantItemEffectId { get; set; } + + public int ReportId { get; set; } + + public int CageMemoryId { get; set; } + + public int ImportantItemType { get; set; } + + public int ExternalReferenceId { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffect.cs b/src/Models/Entities/EntityMImportantItemEffect.cs new file mode 100644 index 0000000..231ae60 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffect.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffect +{ + public int ImportantItemEffectId { get; set; } + + public int ImportantItemEffectGroupingId { get; set; } + + public int Priority { get; set; } + + public int ImportantItemEffectType { get; set; } + + public int ImportantItemEffectTargetId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffectDropCount.cs b/src/Models/Entities/EntityMImportantItemEffectDropCount.cs new file mode 100644 index 0000000..fcb28be --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffectDropCount.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffectDropCount +{ + public int ImportantItemEffectDropCountId { get; set; } + + public int CountPermil { get; set; } + + public int ImportantItemEffectTargetQuestGroupId { get; set; } + + public int ImportantItemEffectTargetItemGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffectDropRate.cs b/src/Models/Entities/EntityMImportantItemEffectDropRate.cs new file mode 100644 index 0000000..83cfd38 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffectDropRate.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffectDropRate +{ + public int ImportantItemEffectDropRateId { get; set; } + + public int RatePermil { get; set; } + + public int ImportantItemEffectTargetQuestGroupId { get; set; } + + public int ImportantItemEffectTargetItemGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffectTargetItemGroup.cs b/src/Models/Entities/EntityMImportantItemEffectTargetItemGroup.cs new file mode 100644 index 0000000..d60e224 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffectTargetItemGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffectTargetItemGroup +{ + public int ImportantItemEffectTargetItemGroupId { get; set; } + + public int TargetIndex { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffectTargetQuestGroup.cs b/src/Models/Entities/EntityMImportantItemEffectTargetQuestGroup.cs new file mode 100644 index 0000000..fd49131 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffectTargetQuestGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffectTargetQuestGroup +{ + public int ImportantItemEffectTargetQuestGroupId { get; set; } + + public int TargetIndex { get; set; } + + public ImportantItemEffectTargetQuestGroupType ImportantItemEffectTargetQuestGroupType { get; set; } + + public int TargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMImportantItemEffectUnlockFunction.cs b/src/Models/Entities/EntityMImportantItemEffectUnlockFunction.cs new file mode 100644 index 0000000..87ded18 --- /dev/null +++ b/src/Models/Entities/EntityMImportantItemEffectUnlockFunction.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMImportantItemEffectUnlockFunction +{ + public int ImportantItemEffectUnlockFunctionId { get; set; } + + public int ImportantItemEffectUnlockFunctionType { get; set; } + + public int UnlockFunctionEffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryEventQuestStoryGrouping.cs b/src/Models/Entities/EntityMLibraryEventQuestStoryGrouping.cs new file mode 100644 index 0000000..2026440 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryEventQuestStoryGrouping.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryEventQuestStoryGrouping +{ + public int LibraryStoryGroupingId { get; set; } + + public int EventQuestChapterId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryMainQuestGroup.cs b/src/Models/Entities/EntityMLibraryMainQuestGroup.cs new file mode 100644 index 0000000..b328659 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryMainQuestGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryMainQuestGroup +{ + public int LibraryMainQuestGroupId { get; set; } + + public int MainQuestChapterId { get; set; } + + public int SortOrder { get; set; } + + public int ChapterTextAssetId { get; set; } + + public int FirstStillAssetOrder { get; set; } + + public int SecondStillAssetOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryMainQuestStory.cs b/src/Models/Entities/EntityMLibraryMainQuestStory.cs new file mode 100644 index 0000000..0863562 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryMainQuestStory.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryMainQuestStory +{ + public int LibraryMainQuestGroupId { get; set; } + + public int SortOrder { get; set; } + + public int RecollectionSceneId { get; set; } + + public int LibraryMainQuestStoryUnlockEvaluateConditionId { get; set; } + + public int TextAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryMovie.cs b/src/Models/Entities/EntityMLibraryMovie.cs new file mode 100644 index 0000000..439a4b2 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryMovie.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryMovie +{ + public int LibraryMovieId { get; set; } + + public int TitleLibraryTextId { get; set; } + + public int LibraryMovieCategoryId { get; set; } + + public int SortOrder { get; set; } + + public int LibraryMovieUnlockConditionId { get; set; } + + public int LibraryMovieUnlockEvaluateConditionId { get; set; } + + public int MovieId { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryMovieCategory.cs b/src/Models/Entities/EntityMLibraryMovieCategory.cs new file mode 100644 index 0000000..99e80d1 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryMovieCategory.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryMovieCategory +{ + public int LibraryMovieCategoryId { get; set; } + + public int NameLibraryTextId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryMovieUnlockCondition.cs b/src/Models/Entities/EntityMLibraryMovieUnlockCondition.cs new file mode 100644 index 0000000..84f8fe8 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryMovieUnlockCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryMovieUnlockCondition +{ + public int LibraryMovieUnlockConditionId { get; set; } + + public UnlockConditionType UnlockConditionType { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryRecordGrouping.cs b/src/Models/Entities/EntityMLibraryRecordGrouping.cs new file mode 100644 index 0000000..0f0062d --- /dev/null +++ b/src/Models/Entities/EntityMLibraryRecordGrouping.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryRecordGrouping +{ + public LibraryRecordType LibraryRecordType { get; set; } + + public int SortOrder { get; set; } + + public int LibraryRecordAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMLibraryStoryGroup.cs b/src/Models/Entities/EntityMLibraryStoryGroup.cs new file mode 100644 index 0000000..840f207 --- /dev/null +++ b/src/Models/Entities/EntityMLibraryStoryGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLibraryStoryGroup +{ + public int QuestId { get; set; } + + public int SortOrder { get; set; } + + public int StartQuestSceneId { get; set; } + + public int EndQuestSceneId { get; set; } +} diff --git a/src/Models/Entities/EntityMLimitedOpenText.cs b/src/Models/Entities/EntityMLimitedOpenText.cs new file mode 100644 index 0000000..4a4c41d --- /dev/null +++ b/src/Models/Entities/EntityMLimitedOpenText.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLimitedOpenText +{ + public LimitedOpenTargetType LimitedOpenTargetType { get; set; } + + public int TargetId { get; set; } + + public int OpenAchievementTextAssetId { get; set; } + + public int LocalPushTextAssetId { get; set; } + + public int OpenAchievementTextGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMLimitedOpenTextGroup.cs b/src/Models/Entities/EntityMLimitedOpenTextGroup.cs new file mode 100644 index 0000000..6847531 --- /dev/null +++ b/src/Models/Entities/EntityMLimitedOpenTextGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLimitedOpenTextGroup +{ + public int LimitedOpenTextGroupId { get; set; } + + public int SortOrder { get; set; } + + public LimitedOpenTextDisplayConditionType LimitedOpenTextDisplayConditionType { get; set; } + + public int LimitedOpenTextDisplayConditionValue { get; set; } + + public int TextAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMListSettingAbilityGroup.cs b/src/Models/Entities/EntityMListSettingAbilityGroup.cs new file mode 100644 index 0000000..9bfffbe --- /dev/null +++ b/src/Models/Entities/EntityMListSettingAbilityGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMListSettingAbilityGroup +{ + public int ListSettingAbilityGroupId { get; set; } + + public int SortOrder { get; set; } + + public int ListSettingAbilityGroupTargetId { get; set; } + + public int AssetId { get; set; } + + public ListSettingAbilityGroupType ListSettingAbilityGroupType { get; set; } + + public long ListSettingDisplayStartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMListSettingAbilityGroupTarget.cs b/src/Models/Entities/EntityMListSettingAbilityGroupTarget.cs new file mode 100644 index 0000000..7ff8922 --- /dev/null +++ b/src/Models/Entities/EntityMListSettingAbilityGroupTarget.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMListSettingAbilityGroupTarget +{ + public int ListSettingAbilityGroupTargetId { get; set; } + + public int SortOrder { get; set; } + + public int AbilityId { get; set; } +} diff --git a/src/Models/Entities/EntityMLoginBonus.cs b/src/Models/Entities/EntityMLoginBonus.cs new file mode 100644 index 0000000..521976c --- /dev/null +++ b/src/Models/Entities/EntityMLoginBonus.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLoginBonus +{ + public int LoginBonusId { get; set; } + + public int SortOrder { get; set; } + + public int LoginBonusStartConditionId { get; set; } + + public int TotalPageCount { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public long StampReceiveEndDatetime { get; set; } + + public string LoginBonusAssetName { get; set; } +} diff --git a/src/Models/Entities/EntityMLoginBonusStamp.cs b/src/Models/Entities/EntityMLoginBonusStamp.cs new file mode 100644 index 0000000..2724ff9 --- /dev/null +++ b/src/Models/Entities/EntityMLoginBonusStamp.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMLoginBonusStamp +{ + public int LoginBonusId { get; set; } + + public int LowerPageNumber { get; set; } + + public int StampNumber { get; set; } + + public PossessionType RewardPossessionType { get; set; } + + public int RewardPossessionId { get; set; } + + public int RewardCount { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestChapter.cs b/src/Models/Entities/EntityMMainQuestChapter.cs new file mode 100644 index 0000000..e12805b --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestChapter.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestChapter +{ + public int MainQuestChapterId { get; set; } + + public int MainQuestRouteId { get; set; } + + public int SortOrder { get; set; } + + public int MainQuestSequenceGroupId { get; set; } + + public int PortalCageCharacterGroupId { get; set; } + + public long StartDatetime { get; set; } + + public bool IsInvisibleInLibrary { get; set; } + + public int JoinLibraryChapterId { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestPortalCageCharacter.cs b/src/Models/Entities/EntityMMainQuestPortalCageCharacter.cs new file mode 100644 index 0000000..cd6ae81 --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestPortalCageCharacter.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestPortalCageCharacter +{ + public int QuestSceneId { get; set; } + + public int PortalCageCharacterGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestRoute.cs b/src/Models/Entities/EntityMMainQuestRoute.cs new file mode 100644 index 0000000..116021e --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestRoute.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestRoute +{ + public int MainQuestRouteId { get; set; } + + public int MainQuestSeasonId { get; set; } + + public int SortOrder { get; set; } + + public int CharacterId { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestRouteAnotherReplayFlowUnlockCondition.cs b/src/Models/Entities/EntityMMainQuestRouteAnotherReplayFlowUnlockCondition.cs new file mode 100644 index 0000000..1d5bc0d --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestRouteAnotherReplayFlowUnlockCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestRouteAnotherReplayFlowUnlockCondition +{ + public int MainQuestRouteId { get; set; } + + public int UnlockEvaluateConditionId { get; set; } + + public int UnlockTargetMainQuestRouteId { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestSeason.cs b/src/Models/Entities/EntityMMainQuestSeason.cs new file mode 100644 index 0000000..79a83da --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestSeason.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestSeason +{ + public int MainQuestSeasonId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestSequence.cs b/src/Models/Entities/EntityMMainQuestSequence.cs new file mode 100644 index 0000000..c64a2f3 --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestSequence.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestSequence +{ + public int MainQuestSequenceId { get; set; } + + public int SortOrder { get; set; } + + public int QuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMMainQuestSequenceGroup.cs b/src/Models/Entities/EntityMMainQuestSequenceGroup.cs new file mode 100644 index 0000000..3929578 --- /dev/null +++ b/src/Models/Entities/EntityMMainQuestSequenceGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMainQuestSequenceGroup +{ + public int MainQuestSequenceGroupId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int MainQuestSequenceId { get; set; } +} diff --git a/src/Models/Entities/EntityMMaintenance.cs b/src/Models/Entities/EntityMMaintenance.cs new file mode 100644 index 0000000..1330ea9 --- /dev/null +++ b/src/Models/Entities/EntityMMaintenance.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMaintenance +{ + public int MaintenanceId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int MaintenanceGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMMaintenanceGroup.cs b/src/Models/Entities/EntityMMaintenanceGroup.cs new file mode 100644 index 0000000..761ea71 --- /dev/null +++ b/src/Models/Entities/EntityMMaintenanceGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMaintenanceGroup +{ + public int MaintenanceGroupId { get; set; } + + public string ApiPath { get; set; } + + public int Priority { get; set; } + + public ScreenTransitionType ScreenTransitionType { get; set; } + + public MaintenanceBlockFunctionType BlockFunctionType { get; set; } + + public string BlockFunctionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMMaterial.cs b/src/Models/Entities/EntityMMaterial.cs new file mode 100644 index 0000000..09b969e --- /dev/null +++ b/src/Models/Entities/EntityMMaterial.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMaterial +{ + public int MaterialId { get; set; } + + public MaterialType MaterialType { get; set; } + + public RarityType RarityType { get; set; } + + public WeaponType WeaponType { get; set; } + + public AttributeType AttributeType { get; set; } + + public int EffectValue { get; set; } + + public int SellPrice { get; set; } + + public string AssetName { get; set; } + + public int AssetCategoryId { get; set; } + + public int AssetVariationId { get; set; } + + public int MaterialSaleObtainPossessionId { get; set; } +} diff --git a/src/Models/Entities/EntityMMaterialSaleObtainPossession.cs b/src/Models/Entities/EntityMMaterialSaleObtainPossession.cs new file mode 100644 index 0000000..ae705d5 --- /dev/null +++ b/src/Models/Entities/EntityMMaterialSaleObtainPossession.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMaterialSaleObtainPossession +{ + public int MaterialSaleObtainPossessionId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMMission.cs b/src/Models/Entities/EntityMMission.cs new file mode 100644 index 0000000..7109b82 --- /dev/null +++ b/src/Models/Entities/EntityMMission.cs @@ -0,0 +1,40 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMission +{ + public int MissionId { get; set; } + + public int MissionGroupId { get; set; } + + public int SortOrderInMissionGroup { get; set; } + + public int MissionUnlockConditionId { get; set; } + + public bool IsNotShowBeforeClear { get; set; } + + public int NameMissionTextId { get; set; } + + public int MissionLinkId { get; set; } + + public MissionClearConditionType MissionClearConditionType { get; set; } + + public int MissionClearConditionGroupId { get; set; } + + public int ClearConditionValue { get; set; } + + public int MissionClearConditionOptionGroupId { get; set; } + + public int MissionRewardId { get; set; } + + public int MissionTermId { get; set; } + + public int MinExpirationDays { get; set; } + + public MainFunctionType RelatedMainFunctionType { get; set; } + + public int MissionClearConditionOptionDetailGroupId { get; set; } + + public int MissionUnlockConditionDetailGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionClearConditionValueView.cs b/src/Models/Entities/EntityMMissionClearConditionValueView.cs new file mode 100644 index 0000000..a87ddb5 --- /dev/null +++ b/src/Models/Entities/EntityMMissionClearConditionValueView.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionClearConditionValueView +{ + public MissionClearConditionType MissionClearConditionType { get; set; } + + public int ViewClearConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionGroup.cs b/src/Models/Entities/EntityMMissionGroup.cs new file mode 100644 index 0000000..b9f73d1 --- /dev/null +++ b/src/Models/Entities/EntityMMissionGroup.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionGroup +{ + public int MissionGroupId { get; set; } + + public MissionCategoryType MissionCategoryType { get; set; } + + public int LabelMissionTextId { get; set; } + + public int SortOrderInLabel { get; set; } + + public int AssetId { get; set; } + + public int MissionGroupUnlockConditionGroupId { get; set; } + + public int MissionSubCategoryId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionLink.cs b/src/Models/Entities/EntityMMissionLink.cs new file mode 100644 index 0000000..369b2b5 --- /dev/null +++ b/src/Models/Entities/EntityMMissionLink.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionLink +{ + public int MissionLinkId { get; set; } + + public DomainType DestinationDomainType { get; set; } + + public int DestinationDomainId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionPass.cs b/src/Models/Entities/EntityMMissionPass.cs new file mode 100644 index 0000000..d2e2aeb --- /dev/null +++ b/src/Models/Entities/EntityMMissionPass.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionPass +{ + public int MissionPassId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int PremiumItemId { get; set; } + + public int MissionPassLevelGroupId { get; set; } + + public int MissionPassRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionPassLevelGroup.cs b/src/Models/Entities/EntityMMissionPassLevelGroup.cs new file mode 100644 index 0000000..171e1b4 --- /dev/null +++ b/src/Models/Entities/EntityMMissionPassLevelGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionPassLevelGroup +{ + public int MissionPassLevelGroupId { get; set; } + + public int Level { get; set; } + + public int NecessaryPoint { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionPassMissionGroup.cs b/src/Models/Entities/EntityMMissionPassMissionGroup.cs new file mode 100644 index 0000000..b029e79 --- /dev/null +++ b/src/Models/Entities/EntityMMissionPassMissionGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionPassMissionGroup +{ + public int MissionPassId { get; set; } + + public int MissionGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionPassRewardGroup.cs b/src/Models/Entities/EntityMMissionPassRewardGroup.cs new file mode 100644 index 0000000..384d889 --- /dev/null +++ b/src/Models/Entities/EntityMMissionPassRewardGroup.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionPassRewardGroup +{ + public int MissionPassRewardGroupId { get; set; } + + public int Level { get; set; } + + public bool IsPremium { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionReward.cs b/src/Models/Entities/EntityMMissionReward.cs new file mode 100644 index 0000000..3a13a48 --- /dev/null +++ b/src/Models/Entities/EntityMMissionReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionReward +{ + public int MissionRewardId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionSubCategoryText.cs b/src/Models/Entities/EntityMMissionSubCategoryText.cs new file mode 100644 index 0000000..e316ad4 --- /dev/null +++ b/src/Models/Entities/EntityMMissionSubCategoryText.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionSubCategoryText +{ + public int MissionSubCategoryId { get; set; } + + public int TextId { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionTerm.cs b/src/Models/Entities/EntityMMissionTerm.cs new file mode 100644 index 0000000..937987d --- /dev/null +++ b/src/Models/Entities/EntityMMissionTerm.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionTerm +{ + public int MissionTermId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMMissionUnlockCondition.cs b/src/Models/Entities/EntityMMissionUnlockCondition.cs new file mode 100644 index 0000000..6326c65 --- /dev/null +++ b/src/Models/Entities/EntityMMissionUnlockCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMissionUnlockCondition +{ + public int MissionUnlockConditionId { get; set; } + + public MissionUnlockConditionType MissionUnlockConditionType { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMMomBanner.cs b/src/Models/Entities/EntityMMomBanner.cs new file mode 100644 index 0000000..c45c73a --- /dev/null +++ b/src/Models/Entities/EntityMMomBanner.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMomBanner +{ + public int MomBannerId { get; set; } + + public int SortOrderDesc { get; set; } + + public DomainType DestinationDomainType { get; set; } + + public int DestinationDomainId { get; set; } + + public string BannerAssetName { get; set; } + + public bool IsEmphasis { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public TargetUserStatusType TargetUserStatusType { get; set; } +} diff --git a/src/Models/Entities/EntityMMomPointBanner.cs b/src/Models/Entities/EntityMMomPointBanner.cs new file mode 100644 index 0000000..7a96ea4 --- /dev/null +++ b/src/Models/Entities/EntityMMomPointBanner.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMomPointBanner +{ + public int MomPointBannerId { get; set; } + + public int BannerAssetId { get; set; } + + public int DestinationInformationId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMMovie.cs b/src/Models/Entities/EntityMMovie.cs new file mode 100644 index 0000000..bb3defe --- /dev/null +++ b/src/Models/Entities/EntityMMovie.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMMovie +{ + public int MovieId { get; set; } + + public int AssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMNaviCutIn.cs b/src/Models/Entities/EntityMNaviCutIn.cs new file mode 100644 index 0000000..941e444 --- /dev/null +++ b/src/Models/Entities/EntityMNaviCutIn.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNaviCutIn +{ + public int NaviCutInId { get; set; } + + public CutInFunctionType RelatedCutInFunctionType { get; set; } + + public int SortOrder { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int NaviCutInContentGroupId { get; set; } + + public int RelatedCutInFunctionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMNaviCutInContentGroup.cs b/src/Models/Entities/EntityMNaviCutInContentGroup.cs new file mode 100644 index 0000000..c5dcbc9 --- /dev/null +++ b/src/Models/Entities/EntityMNaviCutInContentGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNaviCutInContentGroup +{ + public int NaviCutInContentGroupId { get; set; } + + public int ContentIndex { get; set; } + + public int NaviCutInTextId { get; set; } +} diff --git a/src/Models/Entities/EntityMNaviCutInText.cs b/src/Models/Entities/EntityMNaviCutInText.cs new file mode 100644 index 0000000..ceba471 --- /dev/null +++ b/src/Models/Entities/EntityMNaviCutInText.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNaviCutInText +{ + public int NaviCutInTextId { get; set; } + + public LanguageType LanguageType { get; set; } + + public string Text { get; set; } +} diff --git a/src/Models/Entities/EntityMNumericalFunction.cs b/src/Models/Entities/EntityMNumericalFunction.cs new file mode 100644 index 0000000..03ccf33 --- /dev/null +++ b/src/Models/Entities/EntityMNumericalFunction.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNumericalFunction +{ + public int NumericalFunctionId { get; set; } + + public NumericalFunctionType NumericalFunctionType { get; set; } + + public int NumericalFunctionParameterGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMNumericalFunctionParameterGroup.cs b/src/Models/Entities/EntityMNumericalFunctionParameterGroup.cs new file mode 100644 index 0000000..cd91762 --- /dev/null +++ b/src/Models/Entities/EntityMNumericalFunctionParameterGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNumericalFunctionParameterGroup +{ + public int NumericalFunctionParameterGroupId { get; set; } + + public int ParameterIndex { get; set; } + + public int ParameterValue { get; set; } +} diff --git a/src/Models/Entities/EntityMNumericalParameterMap.cs b/src/Models/Entities/EntityMNumericalParameterMap.cs new file mode 100644 index 0000000..0b00f65 --- /dev/null +++ b/src/Models/Entities/EntityMNumericalParameterMap.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMNumericalParameterMap +{ + public int NumericalParameterMapId { get; set; } + + public int ParameterKey { get; set; } + + public int ParameterValue { get; set; } +} diff --git a/src/Models/Entities/EntityMOmikuji.cs b/src/Models/Entities/EntityMOmikuji.cs new file mode 100644 index 0000000..8906cb7 --- /dev/null +++ b/src/Models/Entities/EntityMOmikuji.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMOmikuji +{ + public int OmikujiId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int OmikujiAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMOverrideHitEffectConditionCritical.cs b/src/Models/Entities/EntityMOverrideHitEffectConditionCritical.cs new file mode 100644 index 0000000..8fcb345 --- /dev/null +++ b/src/Models/Entities/EntityMOverrideHitEffectConditionCritical.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMOverrideHitEffectConditionCritical +{ + public int OverrideHitEffectConditionId { get; set; } + + public bool IsCritical { get; set; } +} diff --git a/src/Models/Entities/EntityMOverrideHitEffectConditionDamageAttribute.cs b/src/Models/Entities/EntityMOverrideHitEffectConditionDamageAttribute.cs new file mode 100644 index 0000000..67d1d1f --- /dev/null +++ b/src/Models/Entities/EntityMOverrideHitEffectConditionDamageAttribute.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMOverrideHitEffectConditionDamageAttribute +{ + public int OverrideHitEffectConditionId { get; set; } + + public bool IsExcepting { get; set; } + + public AttributeType AttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMOverrideHitEffectConditionGroup.cs b/src/Models/Entities/EntityMOverrideHitEffectConditionGroup.cs new file mode 100644 index 0000000..d1f1661 --- /dev/null +++ b/src/Models/Entities/EntityMOverrideHitEffectConditionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMOverrideHitEffectConditionGroup +{ + public int OverrideHitEffectConditionGroupId { get; set; } + + public int ConditionIndex { get; set; } + + public int ConditionType { get; set; } + + public int OverrideHitEffectConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMOverrideHitEffectConditionSkillExecutor.cs b/src/Models/Entities/EntityMOverrideHitEffectConditionSkillExecutor.cs new file mode 100644 index 0000000..e8a81f6 --- /dev/null +++ b/src/Models/Entities/EntityMOverrideHitEffectConditionSkillExecutor.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMOverrideHitEffectConditionSkillExecutor +{ + public int OverrideHitEffectConditionId { get; set; } + + public int SkillOwnerCategoryType { get; set; } +} diff --git a/src/Models/Entities/EntityMParts.cs b/src/Models/Entities/EntityMParts.cs new file mode 100644 index 0000000..11f617f --- /dev/null +++ b/src/Models/Entities/EntityMParts.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMParts +{ + public int PartsId { get; set; } + + public RarityType RarityType { get; set; } + + public int PartsGroupId { get; set; } + + public int PartsStatusMainLotteryGroupId { get; set; } + + public int PartsStatusSubLotteryGroupId { get; set; } + + public int PartsInitialLotteryId { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsEnhanced.cs b/src/Models/Entities/EntityMPartsEnhanced.cs new file mode 100644 index 0000000..4f2fb50 --- /dev/null +++ b/src/Models/Entities/EntityMPartsEnhanced.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsEnhanced +{ + public int PartsEnhancedId { get; set; } + + public int PartsId { get; set; } + + public int PartsStatusMainId { get; set; } + + public int Level { get; set; } + + public bool IsRandomSubStatusCount { get; set; } + + public int SubStatusCount { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsEnhancedSubStatus.cs b/src/Models/Entities/EntityMPartsEnhancedSubStatus.cs new file mode 100644 index 0000000..a9f4ed5 --- /dev/null +++ b/src/Models/Entities/EntityMPartsEnhancedSubStatus.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsEnhancedSubStatus +{ + public int PartsEnhancedId { get; set; } + + public int StatusIndex { get; set; } + + public int PartsStatusSubLotteryId { get; set; } + + public int Level { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int FixedStatusChangeValue { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsGroup.cs b/src/Models/Entities/EntityMPartsGroup.cs new file mode 100644 index 0000000..f5633fb --- /dev/null +++ b/src/Models/Entities/EntityMPartsGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsGroup +{ + public int PartsGroupId { get; set; } + + public int PartsSeriesId { get; set; } + + public int SortOrder { get; set; } + + public int PartsGroupAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsLevelUpPriceGroup.cs b/src/Models/Entities/EntityMPartsLevelUpPriceGroup.cs new file mode 100644 index 0000000..2082539 --- /dev/null +++ b/src/Models/Entities/EntityMPartsLevelUpPriceGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsLevelUpPriceGroup +{ + public int PartsLevelUpPriceGroupId { get; set; } + + public int LevelLowerLimit { get; set; } + + public int Gold { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsLevelUpRateGroup.cs b/src/Models/Entities/EntityMPartsLevelUpRateGroup.cs new file mode 100644 index 0000000..611dbba --- /dev/null +++ b/src/Models/Entities/EntityMPartsLevelUpRateGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsLevelUpRateGroup +{ + public int PartsLevelUpRateGroupId { get; set; } + + public int LevelLowerLimit { get; set; } + + public int SuccessRatePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsRarity.cs b/src/Models/Entities/EntityMPartsRarity.cs new file mode 100644 index 0000000..929204e --- /dev/null +++ b/src/Models/Entities/EntityMPartsRarity.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsRarity +{ + public RarityType RarityType { get; set; } + + public int PartsLevelUpRateGroupId { get; set; } + + public int PartsLevelUpPriceGroupId { get; set; } + + public int SellPriceNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsSeries.cs b/src/Models/Entities/EntityMPartsSeries.cs new file mode 100644 index 0000000..408d1c3 --- /dev/null +++ b/src/Models/Entities/EntityMPartsSeries.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsSeries +{ + public int PartsSeriesId { get; set; } + + public int PartsSeriesBonusAbilityGroupId { get; set; } + + public int PartsSeriesAssetId { get; set; } + + public long ListSettingDisplayStartDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsSeriesBonusAbilityGroup.cs b/src/Models/Entities/EntityMPartsSeriesBonusAbilityGroup.cs new file mode 100644 index 0000000..4d64ada --- /dev/null +++ b/src/Models/Entities/EntityMPartsSeriesBonusAbilityGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsSeriesBonusAbilityGroup +{ + public int PartsSeriesBonusAbilityGroupId { get; set; } + + public int SetCount { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMPartsStatusMain.cs b/src/Models/Entities/EntityMPartsStatusMain.cs new file mode 100644 index 0000000..2a31015 --- /dev/null +++ b/src/Models/Entities/EntityMPartsStatusMain.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPartsStatusMain +{ + public int PartsStatusMainId { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int StatusChangeInitialValue { get; set; } + + public int StatusNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMPlatformPayment.cs b/src/Models/Entities/EntityMPlatformPayment.cs new file mode 100644 index 0000000..9e292ed --- /dev/null +++ b/src/Models/Entities/EntityMPlatformPayment.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPlatformPayment +{ + public int PlatformPaymentId { get; set; } + + public PlatformType PlatformType { get; set; } + + public string ProductIdSuffix { get; set; } +} diff --git a/src/Models/Entities/EntityMPlatformPaymentPrice.cs b/src/Models/Entities/EntityMPlatformPaymentPrice.cs new file mode 100644 index 0000000..d05c362 --- /dev/null +++ b/src/Models/Entities/EntityMPlatformPaymentPrice.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPlatformPaymentPrice +{ + public int PlatformPaymentId { get; set; } + + public PlatformType PlatformType { get; set; } + + public int CurrencyType { get; set; } + + public decimal Price { get; set; } +} diff --git a/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroup.cs b/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroup.cs new file mode 100644 index 0000000..639b22a --- /dev/null +++ b/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPortalCageAccessPointFunctionGroup +{ + public int AccessPointFunctionGroupId { get; set; } + + public int AccessPointFunctionIndex { get; set; } + + public int AccessPointFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroupSchedule.cs b/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroupSchedule.cs new file mode 100644 index 0000000..445d800 --- /dev/null +++ b/src/Models/Entities/EntityMPortalCageAccessPointFunctionGroupSchedule.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPortalCageAccessPointFunctionGroupSchedule +{ + public int PortalCageAccessPointFunctionGroupScheduleId { get; set; } + + public int PriorityDesc { get; set; } + + public int AccessPointType { get; set; } + + public int AccessPointFunctionGroupId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMPortalCageCharacterGroup.cs b/src/Models/Entities/EntityMPortalCageCharacterGroup.cs new file mode 100644 index 0000000..90666d5 --- /dev/null +++ b/src/Models/Entities/EntityMPortalCageCharacterGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPortalCageCharacterGroup +{ + public int PortalCageCharacterGroupId { get; set; } + + public int PlayerCharacterActorObjectId { get; set; } + + public int NaviCharacterActorObjectId { get; set; } + + public int NaviMenuActorObjectId { get; set; } + + public TutorialType TutorialType { get; set; } +} diff --git a/src/Models/Entities/EntityMPortalCageGate.cs b/src/Models/Entities/EntityMPortalCageGate.cs new file mode 100644 index 0000000..3c76777 --- /dev/null +++ b/src/Models/Entities/EntityMPortalCageGate.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPortalCageGate +{ + public int PortalCageGateId { get; set; } + + public int GatePositionIndex { get; set; } + + public int PortalCageAccessPointFunctionGroupScheduleId { get; set; } +} diff --git a/src/Models/Entities/EntityMPortalCageScene.cs b/src/Models/Entities/EntityMPortalCageScene.cs new file mode 100644 index 0000000..2e613b9 --- /dev/null +++ b/src/Models/Entities/EntityMPortalCageScene.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPortalCageScene +{ + public int PortalCageSceneId { get; set; } + + public int PortalCageCharacterGroupId { get; set; } + + public int PortalCageDropId { get; set; } + + public int PortalCageGateId { get; set; } +} diff --git a/src/Models/Entities/EntityMPossessionAcquisitionRoute.cs b/src/Models/Entities/EntityMPossessionAcquisitionRoute.cs new file mode 100644 index 0000000..b04d0f9 --- /dev/null +++ b/src/Models/Entities/EntityMPossessionAcquisitionRoute.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPossessionAcquisitionRoute +{ + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int SortOrder { get; set; } + + public TransitionRouteType AcquisitionRouteType { get; set; } + + public int RouteId { get; set; } + + public string RelationValue { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMPowerCalculationConstantValue.cs b/src/Models/Entities/EntityMPowerCalculationConstantValue.cs new file mode 100644 index 0000000..0b9a857 --- /dev/null +++ b/src/Models/Entities/EntityMPowerCalculationConstantValue.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPowerCalculationConstantValue +{ + public PowerCalculationConstantValueType PowerCalculationConstantValueType { get; set; } + + public int ConstantValue { get; set; } +} diff --git a/src/Models/Entities/EntityMPowerReferenceStatusGroup.cs b/src/Models/Entities/EntityMPowerReferenceStatusGroup.cs new file mode 100644 index 0000000..63d2217 --- /dev/null +++ b/src/Models/Entities/EntityMPowerReferenceStatusGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPowerReferenceStatusGroup +{ + public int PowerReferenceStatusGroupId { get; set; } + + public StatusKindType ReferenceStatusType { get; set; } + + public AttributeConditionType AttributeConditionType { get; set; } + + public int CoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMPremiumItem.cs b/src/Models/Entities/EntityMPremiumItem.cs new file mode 100644 index 0000000..40d0bad --- /dev/null +++ b/src/Models/Entities/EntityMPremiumItem.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPremiumItem +{ + public int PremiumItemId { get; set; } + + public int PremiumItemType { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpBackground.cs b/src/Models/Entities/EntityMPvpBackground.cs new file mode 100644 index 0000000..c3e50b9 --- /dev/null +++ b/src/Models/Entities/EntityMPvpBackground.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpBackground +{ + public int AssetBackgroundId { get; set; } + + public int BattleFieldLocaleSettingIndex { get; set; } + + public int BattlePointIndex { get; set; } + + public int RandomWeight { get; set; } + + public int PostProcessConfigurationIndex { get; set; } + + public int BattleCameraControllerAssetId { get; set; } + + public BattleStartCameraType BattleStartCameraType { get; set; } + + public int WaveStartActAssetId { get; set; } + + public int WaveEndActAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpGrade.cs b/src/Models/Entities/EntityMPvpGrade.cs new file mode 100644 index 0000000..6509bac --- /dev/null +++ b/src/Models/Entities/EntityMPvpGrade.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpGrade +{ + public int PvpGradeId { get; set; } + + public int NecessaryPvpPoint { get; set; } + + public int IconAssetId { get; set; } + + public int PvpGradeWeeklyRewardGroupId { get; set; } + + public int PvpGradeOneMatchRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpGradeGroup.cs b/src/Models/Entities/EntityMPvpGradeGroup.cs new file mode 100644 index 0000000..76e2f2c --- /dev/null +++ b/src/Models/Entities/EntityMPvpGradeGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpGradeGroup +{ + public int PvpGradeGroupId { get; set; } + + public int PvpGradeId { get; set; } + + public int NecessaryPvpPoint { get; set; } + + public int IconAssetId { get; set; } + + public int PvpGradeWeeklyRewardGroupId { get; set; } + + public int PvpGradeOneMatchRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpGradeOneMatchReward.cs b/src/Models/Entities/EntityMPvpGradeOneMatchReward.cs new file mode 100644 index 0000000..b48acad --- /dev/null +++ b/src/Models/Entities/EntityMPvpGradeOneMatchReward.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpGradeOneMatchReward +{ + public int PvpGradeOneMatchRewardId { get; set; } + + public int PvpRewardId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpGradeOneMatchRewardGroup.cs b/src/Models/Entities/EntityMPvpGradeOneMatchRewardGroup.cs new file mode 100644 index 0000000..f3fe545 --- /dev/null +++ b/src/Models/Entities/EntityMPvpGradeOneMatchRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpGradeOneMatchRewardGroup +{ + public int PvpGradeOneMatchRewardGroupId { get; set; } + + public int PvpGradeOneMatchRewardId { get; set; } + + public int Weight { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpGradeWeeklyRewardGroup.cs b/src/Models/Entities/EntityMPvpGradeWeeklyRewardGroup.cs new file mode 100644 index 0000000..9e78ef7 --- /dev/null +++ b/src/Models/Entities/EntityMPvpGradeWeeklyRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpGradeWeeklyRewardGroup +{ + public int PvpGradeWeeklyRewardGroupId { get; set; } + + public int PvpRewardId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpReward.cs b/src/Models/Entities/EntityMPvpReward.cs new file mode 100644 index 0000000..b643d06 --- /dev/null +++ b/src/Models/Entities/EntityMPvpReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpReward +{ + public int PvpRewardId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeason.cs b/src/Models/Entities/EntityMPvpSeason.cs new file mode 100644 index 0000000..84bbad5 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeason.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeason +{ + public int PvpSeasonId { get; set; } + + public string NameAssetPath { get; set; } + + public long SeasonStartDatetime { get; set; } + + public long SeasonEndDatetime { get; set; } + + public int PvpSeasonGroupingId { get; set; } + + public bool IsInvalid { get; set; } + + public int PvpWeeklyRankRewardRankGroupId { get; set; } + + public int PvpSeasonRankRewardRankGroupId { get; set; } + + public int PvpGradeGroupId { get; set; } + + public int PvpInitialPointAdditionGroupId { get; set; } + + public int PvpSeasonDeckPowerThresholdGroupingId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonGrade.cs b/src/Models/Entities/EntityMPvpSeasonGrade.cs new file mode 100644 index 0000000..a7f7113 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonGrade.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonGrade +{ + public int PvpGradeId { get; set; } + + public int PvpSeasonId { get; set; } + + public int NecessaryPvpPoint { get; set; } + + public int IconAssetId { get; set; } + + public int PvpGradeWeeklyRewardGroupId { get; set; } + + public int PvpGradeOneMatchRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonGrouping.cs b/src/Models/Entities/EntityMPvpSeasonGrouping.cs new file mode 100644 index 0000000..c065550 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonGrouping.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonGrouping +{ + public int PvpSeasonGroupingId { get; set; } + + public int GroupId { get; set; } + + public int DivideWeight { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonRankReward.cs b/src/Models/Entities/EntityMPvpSeasonRankReward.cs new file mode 100644 index 0000000..8546589 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonRankReward.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonRankReward +{ + public int RankLowerLimit { get; set; } + + public int PvpSeasonRankRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonRankRewardGroup.cs b/src/Models/Entities/EntityMPvpSeasonRankRewardGroup.cs new file mode 100644 index 0000000..bba7956 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonRankRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonRankRewardGroup +{ + public int PvpSeasonRankRewardGroupId { get; set; } + + public int PvpRewardId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonRankRewardPerSeason.cs b/src/Models/Entities/EntityMPvpSeasonRankRewardPerSeason.cs new file mode 100644 index 0000000..b1d9395 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonRankRewardPerSeason.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonRankRewardPerSeason +{ + public int RankLowerLimit { get; set; } + + public int PvpSeasonId { get; set; } + + public int PvpSeasonRankRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpSeasonRankRewardRankGroup.cs b/src/Models/Entities/EntityMPvpSeasonRankRewardRankGroup.cs new file mode 100644 index 0000000..aa851a8 --- /dev/null +++ b/src/Models/Entities/EntityMPvpSeasonRankRewardRankGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpSeasonRankRewardRankGroup +{ + public int PvpSeasonRankRewardRankGroupId { get; set; } + + public int RankLowerLimit { get; set; } + + public int PvpSeasonRankRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpWeeklyRankRewardGroup.cs b/src/Models/Entities/EntityMPvpWeeklyRankRewardGroup.cs new file mode 100644 index 0000000..48c1038 --- /dev/null +++ b/src/Models/Entities/EntityMPvpWeeklyRankRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpWeeklyRankRewardGroup +{ + public int PvpWeeklyRankRewardGroupId { get; set; } + + public int PvpRewardId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpWeeklyRankRewardRankGroup.cs b/src/Models/Entities/EntityMPvpWeeklyRankRewardRankGroup.cs new file mode 100644 index 0000000..2130609 --- /dev/null +++ b/src/Models/Entities/EntityMPvpWeeklyRankRewardRankGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpWeeklyRankRewardRankGroup +{ + public int PvpWeeklyRankRewardRankGroupId { get; set; } + + public int RankLowerLimit { get; set; } + + public int PvpWeeklyRankRewardGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMPvpWinStreakCountEffect.cs b/src/Models/Entities/EntityMPvpWinStreakCountEffect.cs new file mode 100644 index 0000000..e675b57 --- /dev/null +++ b/src/Models/Entities/EntityMPvpWinStreakCountEffect.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMPvpWinStreakCountEffect +{ + public int WinStreakCount { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMQuest.cs b/src/Models/Entities/EntityMQuest.cs new file mode 100644 index 0000000..b5f6edf --- /dev/null +++ b/src/Models/Entities/EntityMQuest.cs @@ -0,0 +1,58 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuest +{ + public int QuestId { get; set; } + + public int NameQuestTextId { get; set; } + + public int PictureBookNameQuestTextId { get; set; } + + public int QuestReleaseConditionListId { get; set; } + + public int StoryQuestTextId { get; set; } + + public int QuestDisplayAttributeGroupId { get; set; } + + public int RecommendedDeckPower { get; set; } + + public int QuestFirstClearRewardGroupId { get; set; } + + public int QuestPickupRewardGroupId { get; set; } + + public int QuestDeckRestrictionGroupId { get; set; } + + public int QuestMissionGroupId { get; set; } + + public int Stamina { get; set; } + + public int UserExp { get; set; } + + public int CharacterExp { get; set; } + + public int CostumeExp { get; set; } + + public int Gold { get; set; } + + public int DailyClearableCount { get; set; } + + public bool IsRunInTheBackground { get; set; } + + public bool IsCountedAsQuest { get; set; } + + public int QuestBonusId { get; set; } + + public bool IsNotShowAfterClear { get; set; } + + public bool IsBigWinTarget { get; set; } + + public bool IsUsableSkipTicket { get; set; } + + public int QuestReplayFlowRewardGroupId { get; set; } + + public int InvisibleQuestMissionGroupId { get; set; } + + public int FieldEffectGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonus.cs b/src/Models/Entities/EntityMQuestBonus.cs new file mode 100644 index 0000000..27bae41 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonus.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonus +{ + public int QuestBonusId { get; set; } + + public int QuestBonusCharacterGroupId { get; set; } + + public int QuestBonusCostumeGroupId { get; set; } + + public int QuestBonusWeaponGroupId { get; set; } + + public int QuestBonusCostumeSettingGroupId { get; set; } + + public int QuestBonusAllyCharacterId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusAbility.cs b/src/Models/Entities/EntityMQuestBonusAbility.cs new file mode 100644 index 0000000..f214cf6 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusAbility +{ + public int QuestBonusEffectId { get; set; } + + public int AbilityId { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusAllyCharacter.cs b/src/Models/Entities/EntityMQuestBonusAllyCharacter.cs new file mode 100644 index 0000000..d91ef55 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusAllyCharacter.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusAllyCharacter +{ + public int QuestBonusAllyCharacterId { get; set; } + + public int QuestBonusEffectGroupId { get; set; } + + public int QuestBonusTermGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusCharacterGroup.cs b/src/Models/Entities/EntityMQuestBonusCharacterGroup.cs new file mode 100644 index 0000000..c20c6a5 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusCharacterGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusCharacterGroup +{ + public int QuestBonusCharacterGroupId { get; set; } + + public int CharacterId { get; set; } + + public int QuestBonusEffectGroupId { get; set; } + + public int QuestBonusTermGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusCostumeGroup.cs b/src/Models/Entities/EntityMQuestBonusCostumeGroup.cs new file mode 100644 index 0000000..b1512d9 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusCostumeGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusCostumeGroup +{ + public int QuestBonusCostumeGroupId { get; set; } + + public int CostumeId { get; set; } + + public int QuestBonusEffectGroupId { get; set; } + + public int QuestBonusTermGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusCostumeSettingGroup.cs b/src/Models/Entities/EntityMQuestBonusCostumeSettingGroup.cs new file mode 100644 index 0000000..25fc709 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusCostumeSettingGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusCostumeSettingGroup +{ + public int QuestBonusCostumeSettingGroupId { get; set; } + + public int CostumeId { get; set; } + + public int LimitBreakCountLowerLimit { get; set; } + + public int QuestBonusEffectGroupId { get; set; } + + public int QuestBonusTermGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusDropReward.cs b/src/Models/Entities/EntityMQuestBonusDropReward.cs new file mode 100644 index 0000000..f2a830d --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusDropReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusDropReward +{ + public int QuestBonusEffectId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int AdditionalCount { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusEffectGroup.cs b/src/Models/Entities/EntityMQuestBonusEffectGroup.cs new file mode 100644 index 0000000..2531b47 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusEffectGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusEffectGroup +{ + public int QuestBonusEffectGroupId { get; set; } + + public int SortOrder { get; set; } + + public QuestBonusType QuestBonusType { get; set; } + + public int QuestBonusEffectId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusExp.cs b/src/Models/Entities/EntityMQuestBonusExp.cs new file mode 100644 index 0000000..a7eead1 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusExp.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusExp +{ + public int QuestBonusEffectId { get; set; } + + public int ExpType { get; set; } + + public int BonusValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusTermGroup.cs b/src/Models/Entities/EntityMQuestBonusTermGroup.cs new file mode 100644 index 0000000..2f37d92 --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusTermGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusTermGroup +{ + public int QuestBonusTermGroupId { get; set; } + + public int SortOrder { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestBonusWeaponGroup.cs b/src/Models/Entities/EntityMQuestBonusWeaponGroup.cs new file mode 100644 index 0000000..a1c9d6d --- /dev/null +++ b/src/Models/Entities/EntityMQuestBonusWeaponGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestBonusWeaponGroup +{ + public int QuestBonusWeaponGroupId { get; set; } + + public int WeaponId { get; set; } + + public int LimitBreakCountLowerLimit { get; set; } + + public int QuestBonusEffectGroupId { get; set; } + + public int QuestBonusTermGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestCampaign.cs b/src/Models/Entities/EntityMQuestCampaign.cs new file mode 100644 index 0000000..61e1a20 --- /dev/null +++ b/src/Models/Entities/EntityMQuestCampaign.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestCampaign +{ + public int QuestCampaignId { get; set; } + + public int QuestCampaignTargetGroupId { get; set; } + + public int QuestCampaignEffectGroupId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public TargetUserStatusType TargetUserStatusType { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestCampaignEffectGroup.cs b/src/Models/Entities/EntityMQuestCampaignEffectGroup.cs new file mode 100644 index 0000000..fa58ac2 --- /dev/null +++ b/src/Models/Entities/EntityMQuestCampaignEffectGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestCampaignEffectGroup +{ + public int QuestCampaignEffectGroupId { get; set; } + + public QuestCampaignEffectType QuestCampaignEffectType { get; set; } + + public int QuestCampaignEffectValue { get; set; } + + public int QuestCampaignTargetItemGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestCampaignTargetGroup.cs b/src/Models/Entities/EntityMQuestCampaignTargetGroup.cs new file mode 100644 index 0000000..78ca69c --- /dev/null +++ b/src/Models/Entities/EntityMQuestCampaignTargetGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestCampaignTargetGroup +{ + public int QuestCampaignTargetGroupId { get; set; } + + public int QuestCampaignTargetIndex { get; set; } + + public QuestCampaignTargetType QuestCampaignTargetType { get; set; } + + public int QuestCampaignTargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestCampaignTargetItemGroup.cs b/src/Models/Entities/EntityMQuestCampaignTargetItemGroup.cs new file mode 100644 index 0000000..036c105 --- /dev/null +++ b/src/Models/Entities/EntityMQuestCampaignTargetItemGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestCampaignTargetItemGroup +{ + public int QuestCampaignTargetItemGroupId { get; set; } + + public int TargetIndex { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestDeckMultiRestrictionGroup.cs b/src/Models/Entities/EntityMQuestDeckMultiRestrictionGroup.cs new file mode 100644 index 0000000..a923522 --- /dev/null +++ b/src/Models/Entities/EntityMQuestDeckMultiRestrictionGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestDeckMultiRestrictionGroup +{ + public int QuestDeckMultiRestrictionGroupId { get; set; } + + public int GroupIndex { get; set; } + + public int RestrictionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestDeckRestrictionGroup.cs b/src/Models/Entities/EntityMQuestDeckRestrictionGroup.cs new file mode 100644 index 0000000..f2a7e30 --- /dev/null +++ b/src/Models/Entities/EntityMQuestDeckRestrictionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestDeckRestrictionGroup +{ + public int QuestDeckRestrictionGroupId { get; set; } + + public int SlotNumber { get; set; } + + public QuestDeckRestrictionType QuestDeckRestrictionType { get; set; } + + public int RestrictionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestDeckRestrictionGroupUnlock.cs b/src/Models/Entities/EntityMQuestDeckRestrictionGroupUnlock.cs new file mode 100644 index 0000000..56dcce1 --- /dev/null +++ b/src/Models/Entities/EntityMQuestDeckRestrictionGroupUnlock.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestDeckRestrictionGroupUnlock +{ + public int QuestDeckRestrictionGroupId { get; set; } + + public int UnlockEvaluateConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestDisplayAttributeGroup.cs b/src/Models/Entities/EntityMQuestDisplayAttributeGroup.cs new file mode 100644 index 0000000..713e282 --- /dev/null +++ b/src/Models/Entities/EntityMQuestDisplayAttributeGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestDisplayAttributeGroup +{ + public int QuestDisplayAttributeGroupId { get; set; } + + public int SortOrder { get; set; } + + public QuestDisplayAttributeType QuestDisplayAttributeType { get; set; } + + public QuestDisplayAttributeIconSizeType QuestDisplayAttributeIconSizeType { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestDisplayEnemyThumbnailReplace.cs b/src/Models/Entities/EntityMQuestDisplayEnemyThumbnailReplace.cs new file mode 100644 index 0000000..1b02ba8 --- /dev/null +++ b/src/Models/Entities/EntityMQuestDisplayEnemyThumbnailReplace.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestDisplayEnemyThumbnailReplace +{ + public int QuestId { get; set; } + + public int Priority { get; set; } + + public EnemyThumbnailReplaceConditionType ReplaceConditionType { get; set; } + + public EnemyThumbnailReplaceMethodType ReplaceMethodType { get; set; } + + public int ReplaceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestFirstClearRewardGroup.cs b/src/Models/Entities/EntityMQuestFirstClearRewardGroup.cs new file mode 100644 index 0000000..ffd90c6 --- /dev/null +++ b/src/Models/Entities/EntityMQuestFirstClearRewardGroup.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestFirstClearRewardGroup +{ + public int QuestFirstClearRewardGroupId { get; set; } + + public QuestFirstClearRewardType QuestFirstClearRewardType { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } + + public bool IsPickup { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestFirstClearRewardSwitch.cs b/src/Models/Entities/EntityMQuestFirstClearRewardSwitch.cs new file mode 100644 index 0000000..6e785d2 --- /dev/null +++ b/src/Models/Entities/EntityMQuestFirstClearRewardSwitch.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestFirstClearRewardSwitch +{ + public int QuestId { get; set; } + + public int QuestFirstClearRewardGroupId { get; set; } + + public int SwitchConditionClearQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestMission.cs b/src/Models/Entities/EntityMQuestMission.cs new file mode 100644 index 0000000..86d4039 --- /dev/null +++ b/src/Models/Entities/EntityMQuestMission.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestMission +{ + public int QuestMissionId { get; set; } + + public QuestMissionConditionType QuestMissionConditionType { get; set; } + + public int ConditionValue { get; set; } + + public int QuestMissionRewardId { get; set; } + + public int QuestMissionConditionValueGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestMissionConditionValueGroup.cs b/src/Models/Entities/EntityMQuestMissionConditionValueGroup.cs new file mode 100644 index 0000000..4bcfb10 --- /dev/null +++ b/src/Models/Entities/EntityMQuestMissionConditionValueGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestMissionConditionValueGroup +{ + public int QuestMissionConditionValueGroupId { get; set; } + + public int SortOrder { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestMissionGroup.cs b/src/Models/Entities/EntityMQuestMissionGroup.cs new file mode 100644 index 0000000..f959df8 --- /dev/null +++ b/src/Models/Entities/EntityMQuestMissionGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestMissionGroup +{ + public int QuestMissionGroupId { get; set; } + + public int SortOrder { get; set; } + + public int QuestMissionId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestMissionReward.cs b/src/Models/Entities/EntityMQuestMissionReward.cs new file mode 100644 index 0000000..222d835 --- /dev/null +++ b/src/Models/Entities/EntityMQuestMissionReward.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestMissionReward +{ + public int QuestMissionRewardId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestPickupRewardGroup.cs b/src/Models/Entities/EntityMQuestPickupRewardGroup.cs new file mode 100644 index 0000000..fd6e1d8 --- /dev/null +++ b/src/Models/Entities/EntityMQuestPickupRewardGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestPickupRewardGroup +{ + public int QuestPickupRewardGroupId { get; set; } + + public int SortOrder { get; set; } + + public int BattleDropRewardId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestRelationMainFlow.cs b/src/Models/Entities/EntityMQuestRelationMainFlow.cs new file mode 100644 index 0000000..f051904 --- /dev/null +++ b/src/Models/Entities/EntityMQuestRelationMainFlow.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestRelationMainFlow +{ + public int MainFlowQuestId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int ReplayFlowQuestId { get; set; } + + public int SubFlowQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionBigHuntScore.cs b/src/Models/Entities/EntityMQuestReleaseConditionBigHuntScore.cs new file mode 100644 index 0000000..37eb9cc --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionBigHuntScore.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionBigHuntScore +{ + public int QuestReleaseConditionId { get; set; } + + public int BigHuntBossId { get; set; } + + public long NecessaryScore { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionCharacterLevel.cs b/src/Models/Entities/EntityMQuestReleaseConditionCharacterLevel.cs new file mode 100644 index 0000000..013ca15 --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionCharacterLevel.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionCharacterLevel +{ + public int QuestReleaseConditionId { get; set; } + + public int CharacterId { get; set; } + + public int CharacterLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionDeckPower.cs b/src/Models/Entities/EntityMQuestReleaseConditionDeckPower.cs new file mode 100644 index 0000000..5a8de3d --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionDeckPower.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionDeckPower +{ + public int QuestReleaseConditionId { get; set; } + + public int MaxDeckPower { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionGroup.cs b/src/Models/Entities/EntityMQuestReleaseConditionGroup.cs new file mode 100644 index 0000000..a9a42ad --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionGroup +{ + public int QuestReleaseConditionGroupId { get; set; } + + public int SortOrder { get; set; } + + public QuestReleaseConditionType QuestReleaseConditionType { get; set; } + + public int QuestReleaseConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionList.cs b/src/Models/Entities/EntityMQuestReleaseConditionList.cs new file mode 100644 index 0000000..0d87350 --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionList.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionList +{ + public int QuestReleaseConditionListId { get; set; } + + public int QuestReleaseConditionGroupId { get; set; } + + public ConditionOperationType ConditionOperationType { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionQuestChallenge.cs b/src/Models/Entities/EntityMQuestReleaseConditionQuestChallenge.cs new file mode 100644 index 0000000..3b2687c --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionQuestChallenge.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionQuestChallenge +{ + public int QuestReleaseConditionId { get; set; } + + public int QuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionQuestClear.cs b/src/Models/Entities/EntityMQuestReleaseConditionQuestClear.cs new file mode 100644 index 0000000..9f5ce50 --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionQuestClear.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionQuestClear +{ + public int QuestReleaseConditionId { get; set; } + + public int QuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionUserLevel.cs b/src/Models/Entities/EntityMQuestReleaseConditionUserLevel.cs new file mode 100644 index 0000000..a1e667b --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionUserLevel.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionUserLevel +{ + public int QuestReleaseConditionId { get; set; } + + public int UserLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReleaseConditionWeaponAcquisition.cs b/src/Models/Entities/EntityMQuestReleaseConditionWeaponAcquisition.cs new file mode 100644 index 0000000..52b6e35 --- /dev/null +++ b/src/Models/Entities/EntityMQuestReleaseConditionWeaponAcquisition.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReleaseConditionWeaponAcquisition +{ + public int QuestReleaseConditionId { get; set; } + + public int WeaponId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestReplayFlowRewardGroup.cs b/src/Models/Entities/EntityMQuestReplayFlowRewardGroup.cs new file mode 100644 index 0000000..1924760 --- /dev/null +++ b/src/Models/Entities/EntityMQuestReplayFlowRewardGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestReplayFlowRewardGroup +{ + public int QuestReplayFlowRewardGroupId { get; set; } + + public int SortOrder { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestScene.cs b/src/Models/Entities/EntityMQuestScene.cs new file mode 100644 index 0000000..56172dd --- /dev/null +++ b/src/Models/Entities/EntityMQuestScene.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestScene +{ + public int QuestSceneId { get; set; } + + public int QuestId { get; set; } + + public int SortOrder { get; set; } + + public QuestSceneType QuestSceneType { get; set; } + + public int AssetBackgroundId { get; set; } + + public int EventMapNumberUpper { get; set; } + + public int EventMapNumberLower { get; set; } + + public bool IsMainFlowQuestTarget { get; set; } + + public bool IsBattleOnlyTarget { get; set; } + + public QuestResultType QuestResultType { get; set; } + + public bool IsStorySkipTarget { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneBattle.cs b/src/Models/Entities/EntityMQuestSceneBattle.cs new file mode 100644 index 0000000..c99d41d --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneBattle.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneBattle +{ + public int QuestSceneId { get; set; } + + public int BattleGroupId { get; set; } + + public int BattleDropBoxGroupId { get; set; } + + public int BattleFieldLocaleSettingIndex { get; set; } + + public int BattleEventGroupId { get; set; } + + public int PostProcessConfigurationIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneChoice.cs b/src/Models/Entities/EntityMQuestSceneChoice.cs new file mode 100644 index 0000000..11d2636 --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneChoice.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneChoice +{ + public int MainFlowQuestSceneId { get; set; } + + public QuestFlowType QuestFlowType { get; set; } + + public int ChoiceNumber { get; set; } + + public int QuestSceneChoiceEffectId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneChoiceCostumeEffectGroup.cs b/src/Models/Entities/EntityMQuestSceneChoiceCostumeEffectGroup.cs new file mode 100644 index 0000000..cf84e4c --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneChoiceCostumeEffectGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneChoiceCostumeEffectGroup +{ + public int QuestSceneChoiceCostumeEffectGroupId { get; set; } + + public int SortOrder { get; set; } + + public int CostumeId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneChoiceEffect.cs b/src/Models/Entities/EntityMQuestSceneChoiceEffect.cs new file mode 100644 index 0000000..9aa5271 --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneChoiceEffect.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneChoiceEffect +{ + public int QuestSceneChoiceEffectId { get; set; } + + public int QuestSceneChoiceGroupingId { get; set; } + + public int QuestSceneChoiceCostumeEffectGroupId { get; set; } + + public int QuestSceneChoiceWeaponEffectGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneChoiceWeaponEffectGroup.cs b/src/Models/Entities/EntityMQuestSceneChoiceWeaponEffectGroup.cs new file mode 100644 index 0000000..fec490c --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneChoiceWeaponEffectGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneChoiceWeaponEffectGroup +{ + public int QuestSceneChoiceWeaponEffectGroupId { get; set; } + + public int SortOrder { get; set; } + + public int WeaponId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneNotConfirmTitleDialog.cs b/src/Models/Entities/EntityMQuestSceneNotConfirmTitleDialog.cs new file mode 100644 index 0000000..e8ca993 --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneNotConfirmTitleDialog.cs @@ -0,0 +1,8 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneNotConfirmTitleDialog +{ + public int QuestSceneId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSceneOutgameBlendshapeMotion.cs b/src/Models/Entities/EntityMQuestSceneOutgameBlendshapeMotion.cs new file mode 100644 index 0000000..5b4b00b --- /dev/null +++ b/src/Models/Entities/EntityMQuestSceneOutgameBlendshapeMotion.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSceneOutgameBlendshapeMotion +{ + public int QuestSceneId { get; set; } + + public int ActorAnimationId { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestScenePictureBookReplace.cs b/src/Models/Entities/EntityMQuestScenePictureBookReplace.cs new file mode 100644 index 0000000..52aaa9c --- /dev/null +++ b/src/Models/Entities/EntityMQuestScenePictureBookReplace.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestScenePictureBookReplace +{ + public int QuestSceneId { get; set; } + + public int PictureBookNameQuestTextId { get; set; } + + public bool IsExcludeSubflow { get; set; } + + public bool IsExcludeRecollection { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestSchedule.cs b/src/Models/Entities/EntityMQuestSchedule.cs new file mode 100644 index 0000000..ea62be2 --- /dev/null +++ b/src/Models/Entities/EntityMQuestSchedule.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestSchedule +{ + public int QuestScheduleId { get; set; } + + public string QuestScheduleCronExpression { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMQuestScheduleCorrespondence.cs b/src/Models/Entities/EntityMQuestScheduleCorrespondence.cs new file mode 100644 index 0000000..5824960 --- /dev/null +++ b/src/Models/Entities/EntityMQuestScheduleCorrespondence.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMQuestScheduleCorrespondence +{ + public int QuestId { get; set; } + + public int QuestScheduleId { get; set; } +} diff --git a/src/Models/Entities/EntityMReport.cs b/src/Models/Entities/EntityMReport.cs new file mode 100644 index 0000000..4fa5ac5 --- /dev/null +++ b/src/Models/Entities/EntityMReport.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMReport +{ + public int ReportId { get; set; } + + public int MainQuestSeasonId { get; set; } + + public int CharacterId { get; set; } + + public int ReportNumber { get; set; } + + public int ReportAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMShop.cs b/src/Models/Entities/EntityMShop.cs new file mode 100644 index 0000000..48309bc --- /dev/null +++ b/src/Models/Entities/EntityMShop.cs @@ -0,0 +1,30 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShop +{ + public int ShopId { get; set; } + + public ShopGroupType ShopGroupType { get; set; } + + public int SortOrderInShopGroup { get; set; } + + public ShopType ShopType { get; set; } + + public int NameShopTextId { get; set; } + + public ShopUpdatableLabelType ShopUpdatableLabelType { get; set; } + + public ShopExchangeType ShopExchangeType { get; set; } + + public int ShopItemCellGroupId { get; set; } + + public MainFunctionType RelatedMainFunctionType { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } + + public int LimitedOpenId { get; set; } +} diff --git a/src/Models/Entities/EntityMShopDisplayPrice.cs b/src/Models/Entities/EntityMShopDisplayPrice.cs new file mode 100644 index 0000000..e462448 --- /dev/null +++ b/src/Models/Entities/EntityMShopDisplayPrice.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopDisplayPrice +{ + public PriceType PriceType { get; set; } + + public int PriceId { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItem.cs b/src/Models/Entities/EntityMShopItem.cs new file mode 100644 index 0000000..7f76227 --- /dev/null +++ b/src/Models/Entities/EntityMShopItem.cs @@ -0,0 +1,32 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItem +{ + public int ShopItemId { get; set; } + + public int NameShopTextId { get; set; } + + public int DescriptionShopTextId { get; set; } + + public int ShopItemContentType { get; set; } + + public PriceType PriceType { get; set; } + + public int PriceId { get; set; } + + public int Price { get; set; } + + public int RegularPrice { get; set; } + + public ShopPromotionType ShopPromotionType { get; set; } + + public int ShopItemLimitedStockId { get; set; } + + public int AssetCategoryId { get; set; } + + public int AssetVariationId { get; set; } + + public ShopItemDecorationType ShopItemDecorationType { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemAdditionalContent.cs b/src/Models/Entities/EntityMShopItemAdditionalContent.cs new file mode 100644 index 0000000..fc5e142 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemAdditionalContent.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemAdditionalContent +{ + public int ShopItemAdditionalContentId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemCell.cs b/src/Models/Entities/EntityMShopItemCell.cs new file mode 100644 index 0000000..9a836ba --- /dev/null +++ b/src/Models/Entities/EntityMShopItemCell.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemCell +{ + public int ShopItemCellId { get; set; } + + public int StepNumber { get; set; } + + public int ShopItemId { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemCellGroup.cs b/src/Models/Entities/EntityMShopItemCellGroup.cs new file mode 100644 index 0000000..e7f3ae5 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemCellGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemCellGroup +{ + public int ShopItemCellGroupId { get; set; } + + public int ShopItemCellId { get; set; } + + public int SortOrder { get; set; } + + public int ShopItemCellTermId { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemCellLimitedOpen.cs b/src/Models/Entities/EntityMShopItemCellLimitedOpen.cs new file mode 100644 index 0000000..c268b53 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemCellLimitedOpen.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemCellLimitedOpen +{ + public int ShopItemCellId { get; set; } + + public int LimitedOpenId { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemCellTerm.cs b/src/Models/Entities/EntityMShopItemCellTerm.cs new file mode 100644 index 0000000..30d5f85 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemCellTerm.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemCellTerm +{ + public int ShopItemCellTermId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemContentEffect.cs b/src/Models/Entities/EntityMShopItemContentEffect.cs new file mode 100644 index 0000000..6da2cca --- /dev/null +++ b/src/Models/Entities/EntityMShopItemContentEffect.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemContentEffect +{ + public int ShopItemId { get; set; } + + public EffectTargetType EffectTargetType { get; set; } + + public EffectValueType EffectValueType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemContentMission.cs b/src/Models/Entities/EntityMShopItemContentMission.cs new file mode 100644 index 0000000..27e73da --- /dev/null +++ b/src/Models/Entities/EntityMShopItemContentMission.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemContentMission +{ + public int ShopItemId { get; set; } + + public int MissionGroupId { get; set; } + + public bool IsReevaluateOnGrant { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemContentPossession.cs b/src/Models/Entities/EntityMShopItemContentPossession.cs new file mode 100644 index 0000000..85fefcb --- /dev/null +++ b/src/Models/Entities/EntityMShopItemContentPossession.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemContentPossession +{ + public int ShopItemId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int SortOrder { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemLimitedStock.cs b/src/Models/Entities/EntityMShopItemLimitedStock.cs new file mode 100644 index 0000000..e448762 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemLimitedStock.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemLimitedStock +{ + public int ShopItemLimitedStockId { get; set; } + + public int MaxCount { get; set; } + + public AutoResetType ShopItemAutoResetType { get; set; } + + public int ShopItemAutoResetPeriod { get; set; } +} diff --git a/src/Models/Entities/EntityMShopItemUserLevelCondition.cs b/src/Models/Entities/EntityMShopItemUserLevelCondition.cs new file mode 100644 index 0000000..a307830 --- /dev/null +++ b/src/Models/Entities/EntityMShopItemUserLevelCondition.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopItemUserLevelCondition +{ + public int ShopItemId { get; set; } + + public int UserLevelUpperLimit { get; set; } + + public int UserLevelLowerLimit { get; set; } + + public int ShopItemAdditionalContentId { get; set; } +} diff --git a/src/Models/Entities/EntityMShopReplaceableGem.cs b/src/Models/Entities/EntityMShopReplaceableGem.cs new file mode 100644 index 0000000..35447aa --- /dev/null +++ b/src/Models/Entities/EntityMShopReplaceableGem.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMShopReplaceableGem +{ + public int LineupUpdateCountLowerLimit { get; set; } + + public int NecessaryGem { get; set; } +} diff --git a/src/Models/Entities/EntityMSideStoryQuest.cs b/src/Models/Entities/EntityMSideStoryQuest.cs new file mode 100644 index 0000000..10cd81d --- /dev/null +++ b/src/Models/Entities/EntityMSideStoryQuest.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSideStoryQuest +{ + public int SideStoryQuestId { get; set; } + + public int SideStoryQuestType { get; set; } + + public int TargetId { get; set; } +} diff --git a/src/Models/Entities/EntityMSideStoryQuestLimitContent.cs b/src/Models/Entities/EntityMSideStoryQuestLimitContent.cs new file mode 100644 index 0000000..3428dcf --- /dev/null +++ b/src/Models/Entities/EntityMSideStoryQuestLimitContent.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSideStoryQuestLimitContent +{ + public int SideStoryQuestLimitContentId { get; set; } + + public int CharacterId { get; set; } + + public int EventQuestChapterId { get; set; } + + public DifficultyType DifficultyType { get; set; } + + public int NextSideStoryQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMSideStoryQuestScene.cs b/src/Models/Entities/EntityMSideStoryQuestScene.cs new file mode 100644 index 0000000..459f3af --- /dev/null +++ b/src/Models/Entities/EntityMSideStoryQuestScene.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSideStoryQuestScene +{ + public int SideStoryQuestId { get; set; } + + public int SideStoryQuestSceneId { get; set; } + + public int SortOrder { get; set; } + + public int AssetBackgroundId { get; set; } + + public int EventMapNumberUpper { get; set; } + + public int EventMapNumberLower { get; set; } +} diff --git a/src/Models/Entities/EntityMSkill.cs b/src/Models/Entities/EntityMSkill.cs new file mode 100644 index 0000000..7eb6910 --- /dev/null +++ b/src/Models/Entities/EntityMSkill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkill +{ + public int SkillId { get; set; } + + public int SkillLevelGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormal.cs b/src/Models/Entities/EntityMSkillAbnormal.cs new file mode 100644 index 0000000..1626397 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormal.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormal +{ + public int SkillAbnormalId { get; set; } + + public int SkillAbnormalTypeId { get; set; } + + public AbnormalPolarityType AbnormalPolarityType { get; set; } + + public int SkillAbnormalLifetimeId { get; set; } + + public int SkillAbnormalBehaviourGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviour.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviour.cs new file mode 100644 index 0000000..ba346bc --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviour.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviour +{ + public int SkillAbnormalBehaviourId { get; set; } + + public AbnormalBehaviourActionType AbnormalBehaviourActionType { get; set; } + + public AbnormalBehaviourActivationMethodType AbnormalBehaviourActivationMethodType { get; set; } + + public AbnormalBehaviourDeactivationMethodType AbnormalBehaviourDeactivationMethodType { get; set; } + + public int SkillAbnormalBehaviourActionId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAbnormalResistance.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAbnormalResistance.cs new file mode 100644 index 0000000..82561fa --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAbnormalResistance.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionAbnormalResistance +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public AbnormalResistancePolarityType AbnormalResistancePolarityType { get; set; } + + public int AbnormalResistanceSkillAbnormalTypeId { get; set; } + + public int BlockProbabilityPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection.cs new file mode 100644 index 0000000..e120d26 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public AttributeType AttributeType { get; set; } + + public CorrectionTargetDamageType CorrectionTargetDamageType { get; set; } + + public int CorrectionValuePermil { get; set; } + + public DamageCorrectionOverlapType DamageCorrectionOverlapType { get; set; } + + public bool IsExcepting { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionBuffResistance.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionBuffResistance.cs new file mode 100644 index 0000000..14d516a --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionBuffResistance.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionBuffResistance +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public BuffResistanceType BuffResistanceType { get; set; } + + public BuffResistanceStatusKindType BuffResistanceStatusKindType { get; set; } + + public int BlockProbabilityPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamage.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamage.cs new file mode 100644 index 0000000..de77b75 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamage.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionDamage +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public AbnormalBehaviourDamageType AbnormalBehaviourDamageType { get; set; } + + public int Power { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiply.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiply.cs new file mode 100644 index 0000000..8f33b90 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiply.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionDamageMultiply +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public DamageMultiplyDetailType DamageMultiplyDetailType { get; set; } + + public DamageMultiplyTargetType DamageMultiplyTargetType { get; set; } + + public int DamageMultiplyAbnormalDetailId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways.cs new file mode 100644 index 0000000..27e4834 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDefaultSkillLottery.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDefaultSkillLottery.cs new file mode 100644 index 0000000..fc506f5 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionDefaultSkillLottery.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionDefaultSkillLottery +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public int TargetCountLower { get; set; } + + public int TargetCountUpper { get; set; } + + public int ValuePermil { get; set; } + + public int CalculationType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionHitRatioDown.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionHitRatioDown.cs new file mode 100644 index 0000000..8f1d740 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionHitRatioDown.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionHitRatioDown +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public int Value { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionModifyHateValue.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionModifyHateValue.cs new file mode 100644 index 0000000..6e80a7f --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionModifyHateValue.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionModifyHateValue +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public HateValueCalculationType HateValueCalculationType { get; set; } + + public int ModifyValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideEvasionValue.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideEvasionValue.cs new file mode 100644 index 0000000..933abcd --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideEvasionValue.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionOverrideEvasionValue +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public int CorrectionValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideHitEffect.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideHitEffect.cs new file mode 100644 index 0000000..fa3db3a --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionOverrideHitEffect.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionOverrideHitEffect +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public int OverrideEffectId { get; set; } + + public int OverrideSeId { get; set; } + + public int Priority { get; set; } + + public bool DisablePlayHitVoice { get; set; } + + public bool PlayOnMiss { get; set; } + + public bool ForceRotateOnHit { get; set; } + + public int OverrideHitEffectConditionGroupId { get; set; } + + public int OverrideHitEffectConditionOperationType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionRecovery.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionRecovery.cs new file mode 100644 index 0000000..ccba3c3 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionRecovery.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionRecovery +{ + public int SkillAbnormalBehaviourActionId { get; set; } + + public AbnormalBehaviourRecoveryType AbnormalBehaviourRecoveryType { get; set; } + + public int Value { get; set; } + + public int Upper { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourActionTurnRestriction.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionTurnRestriction.cs new file mode 100644 index 0000000..866d855 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourActionTurnRestriction.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourActionTurnRestriction +{ + public int SkillBehaviourActionId { get; set; } + + public int TurnRestrictionProbabilityPermil { get; set; } + + public AbnormalBehaviourTurnRestrictionSkillType AbnormalBehaviourTurnRestrictionSkillType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalBehaviourGroup.cs b/src/Models/Entities/EntityMSkillAbnormalBehaviourGroup.cs new file mode 100644 index 0000000..8eb1822 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalBehaviourGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalBehaviourGroup +{ + public int SkillAbnormalBehaviourGroupId { get; set; } + + public int AbnormalBehaviourIndex { get; set; } + + public int SkillAbnormalBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailAbnormal.cs b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailAbnormal.cs new file mode 100644 index 0000000..98bbbe3 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailAbnormal.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalDamageMultiplyDetailAbnormal +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public int SkillDamageMultiplyAbnormalAttachedValueGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailBuffAttached.cs b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailBuffAttached.cs new file mode 100644 index 0000000..1071b16 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailBuffAttached.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalDamageMultiplyDetailBuffAttached +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public int BuffAttachedTargetType { get; set; } + + public int TargetBuffType { get; set; } + + public int TargetStatusKindType { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailCritical.cs b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailCritical.cs new file mode 100644 index 0000000..90738a0 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailCritical.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalDamageMultiplyDetailCritical +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public bool IsCritical { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailHitIndex.cs b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailHitIndex.cs new file mode 100644 index 0000000..20c3ea0 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailHitIndex.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalDamageMultiplyDetailHitIndex +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public int SkillDamageMultiplyHitIndexValueGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon.cs b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon.cs new file mode 100644 index 0000000..f18b8f9 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon +{ + public int DamageMultiplyAbnormalDetailId { get; set; } + + public int ConditionTargetType { get; set; } + + public WeaponType WeaponType { get; set; } + + public bool IsSkillfulMainWeapon { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetime.cs b/src/Models/Entities/EntityMSkillAbnormalLifetime.cs new file mode 100644 index 0000000..b06964f --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetime.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetime +{ + public int SkillAbnormalLifetimeId { get; set; } + + public int SkillAbnormalLifetimeBehaviourGroupId { get; set; } + + public AbnormalLifetimeBehaviourConditionType AbnormalLifetimeBehaviourConditionType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourActivateCount.cs b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourActivateCount.cs new file mode 100644 index 0000000..9ed04a6 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourActivateCount.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetimeBehaviourActivateCount +{ + public int SkillAbnormalLifetimeBehaviourId { get; set; } + + public int ActivateCount { get; set; } + + public int AbnormalBehaviourIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourFrameCount.cs b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourFrameCount.cs new file mode 100644 index 0000000..fe5194f --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourFrameCount.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetimeBehaviourFrameCount +{ + public int SkillAbnormalLifetimeBehaviourId { get; set; } + + public int FrameCount { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourGroup.cs b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourGroup.cs new file mode 100644 index 0000000..5081c10 --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetimeBehaviourGroup +{ + public int SkillAbnormalLifetimeBehaviourGroupId { get; set; } + + public int AbnormalLifetimeBehaviourIndex { get; set; } + + public AbnormalLifetimeMethodType AbnormalLifetimeMethodType { get; set; } + + public int SkillAbnormalLifetimeBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount.cs b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount.cs new file mode 100644 index 0000000..23aaa8d --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount +{ + public int SkillAbnormalLifetimeBehaviourId { get; set; } + + public int ReceiveDamageCount { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourTurnCount.cs b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourTurnCount.cs new file mode 100644 index 0000000..85c50ca --- /dev/null +++ b/src/Models/Entities/EntityMSkillAbnormalLifetimeBehaviourTurnCount.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillAbnormalLifetimeBehaviourTurnCount +{ + public int SkillAbnormalLifetimeBehaviourId { get; set; } + + public int TurnCount { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviour.cs b/src/Models/Entities/EntityMSkillBehaviour.cs new file mode 100644 index 0000000..da82b0e --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviour.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviour +{ + public int SkillBehaviourId { get; set; } + + public SkillBehaviourType SkillBehaviourType { get; set; } + + public int SkillBehaviourActionId { get; set; } + + public int SkillBehaviourActivationMethodId { get; set; } + + public int SkillBehaviourAssetCalculatorId { get; set; } + + public int HitRatioPermil { get; set; } + + public SkillBehaviourLifetimeCalculationMethodType SkillBehaviourLifetimeCalculationMethodType { get; set; } + + public int LifetimeCount { get; set; } + + public int SkillTargetScopeAssetCalculatorId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAbnormal.cs b/src/Models/Entities/EntityMSkillBehaviourActionAbnormal.cs new file mode 100644 index 0000000..e0eb473 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAbnormal.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAbnormal +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillBehaviourAbnormalId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionActiveSkillDamageCorrection.cs b/src/Models/Entities/EntityMSkillBehaviourActionActiveSkillDamageCorrection.cs new file mode 100644 index 0000000..9ff5292 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionActiveSkillDamageCorrection.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionActiveSkillDamageCorrection +{ + public int SkillBehaviourActionId { get; set; } + + public int CorrectionValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltime.cs b/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltime.cs new file mode 100644 index 0000000..9b812a4 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltime.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAdvanceActiveSkillCooltime +{ + public int SkillBehaviourActionId { get; set; } + + public SkillCooltimeAdvanceType SkillCooltimeAdvanceType { get; set; } + + public ActiveSkillType ActiveSkillType { get; set; } + + public int AdvanceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate.cs b/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate.cs new file mode 100644 index 0000000..df71b2c --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate +{ + public int SkillBehaviourActionId { get; set; } + + public SkillCooltimeAdvanceType SkillCooltimeAdvanceType { get; set; } + + public ActiveSkillType ActiveSkillType { get; set; } + + public int AdvanceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttack.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttack.cs new file mode 100644 index 0000000..35513bd --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttack.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttack +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackClampHp.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackClampHp.cs new file mode 100644 index 0000000..3ba368f --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackClampHp.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackClampHp +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } + + public int ClampThresholdHpRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackCombo.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackCombo.cs new file mode 100644 index 0000000..5fbe58d --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackCombo.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackCombo +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPowerCalculationId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackFixedDamage.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackFixedDamage.cs new file mode 100644 index 0000000..c112135 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackFixedDamage.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackFixedDamage +{ + public int SkillBehaviourActionId { get; set; } + + public int DamageValue { get; set; } + + public bool ForceDamage { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackHpRatio.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackHpRatio.cs new file mode 100644 index 0000000..63dda80 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackHpRatio.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackHpRatio +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPowerCalculationId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackIgnoreVitality.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackIgnoreVitality.cs new file mode 100644 index 0000000..5b52b60 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackIgnoreVitality.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackIgnoreVitality +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackMainWeaponAttribute.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackMainWeaponAttribute.cs new file mode 100644 index 0000000..ee5dd39 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackMainWeaponAttribute.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackMainWeaponAttribute +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } + + public AttributeType AttributeType { get; set; } + + public int MagnificationRate { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackSkillfulMainWeaponType.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackSkillfulMainWeaponType.cs new file mode 100644 index 0000000..06c87c2 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackSkillfulMainWeaponType.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackSkillfulMainWeaponType +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } + + public int MagnificationRate { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttackVitality.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttackVitality.cs new file mode 100644 index 0000000..ba63694 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttackVitality.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttackVitality +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } + + public int AttackWeight { get; set; } + + public int VitalityWeight { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionAttributeDamageCorrection.cs b/src/Models/Entities/EntityMSkillBehaviourActionAttributeDamageCorrection.cs new file mode 100644 index 0000000..c6077cf --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionAttributeDamageCorrection.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionAttributeDamageCorrection +{ + public int SkillBehaviourActionId { get; set; } + + public AttributeType AttributeType { get; set; } + + public CorrectionTargetDamageType CorrectionTargetDamageType { get; set; } + + public int CorrectionValuePermil { get; set; } + + public DamageCorrectionOverlapType DamageCorrectionOverlapType { get; set; } + + public bool IsExcepting { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionBuff.cs b/src/Models/Entities/EntityMSkillBehaviourActionBuff.cs new file mode 100644 index 0000000..dbe6f04 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionBuff.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionBuff +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillBuffId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionChangestep.cs b/src/Models/Entities/EntityMSkillBehaviourActionChangestep.cs new file mode 100644 index 0000000..a4cae6d --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionChangestep.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionChangestep +{ + public int SkillBehaviourActionId { get; set; } + + public int Step { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionDamageCorrectionHpRatio.cs b/src/Models/Entities/EntityMSkillBehaviourActionDamageCorrectionHpRatio.cs new file mode 100644 index 0000000..8638993 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionDamageCorrectionHpRatio.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionDamageCorrectionHpRatio +{ + public int SkillBehaviourActionId { get; set; } + + public int CorrectionMaxValuePermil { get; set; } + + public DamageCorrectionHpRatioType DamageCorrectionHpRatioType { get; set; } + + public int ActivationThresholdHpRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionDamageMultiply.cs b/src/Models/Entities/EntityMSkillBehaviourActionDamageMultiply.cs new file mode 100644 index 0000000..6515cef --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionDamageMultiply.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionDamageMultiply +{ + public int SkillBehaviourActionId { get; set; } + + public DamageMultiplyDetailType DamageMultiplyDetailType { get; set; } + + public int SkillDamageMultiplyDetailId { get; set; } + + public DamageMultiplyTargetType DamageMultiplyTargetType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionDefaultSkillLottery.cs b/src/Models/Entities/EntityMSkillBehaviourActionDefaultSkillLottery.cs new file mode 100644 index 0000000..fe21370 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionDefaultSkillLottery.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionDefaultSkillLottery +{ + public int SkillBehaviourActionId { get; set; } + + public int TargetCountLower { get; set; } + + public int TargetCountUpper { get; set; } + + public int ValuePermil { get; set; } + + public int CalculationType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionExtendBuffCooltime.cs b/src/Models/Entities/EntityMSkillBehaviourActionExtendBuffCooltime.cs new file mode 100644 index 0000000..40ea6f1 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionExtendBuffCooltime.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionExtendBuffCooltime +{ + public int SkillBehaviourActionId { get; set; } + + public ExtendBuffCooltimeBuffType ExtendBuffCooltimeBuffType { get; set; } + + public ExtendBuffCooltimeStatusType ExtendBuffCooltimeStatusType { get; set; } + + public ExtendBuffCooltimeTargetSkillType ExtendBuffCooltimeTargetSkillType { get; set; } + + public ExtendBuffCooltimeExtendType ExtendBuffCooltimeExtendType { get; set; } + + public int ExtendValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionHpRatioDamage.cs b/src/Models/Entities/EntityMSkillBehaviourActionHpRatioDamage.cs new file mode 100644 index 0000000..04dcf12 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionHpRatioDamage.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionHpRatioDamage +{ + public int SkillBehaviourActionId { get; set; } + + public int CalculateDenominatorType { get; set; } + + public int DamageRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionOverlimitDamageMultiply.cs b/src/Models/Entities/EntityMSkillBehaviourActionOverlimitDamageMultiply.cs new file mode 100644 index 0000000..4afe300 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionOverlimitDamageMultiply.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionOverlimitDamageMultiply +{ + public int SkillBehaviourActionId { get; set; } + + public DamageMultiplyDetailType DamageMultiplyDetailType { get; set; } + + public int SkillDamageMultiplyDetailId { get; set; } + + public DamageMultiplyTargetType DamageMultiplyTargetType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionRecovery.cs b/src/Models/Entities/EntityMSkillBehaviourActionRecovery.cs new file mode 100644 index 0000000..36a78d3 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionRecovery.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionRecovery +{ + public int SkillBehaviourActionId { get; set; } + + public int SkillPower { get; set; } + + public int FixedRecoveryPoint { get; set; } + + public int HpRatioRecoveryPointPermil { get; set; } + + public int RecoveryPointMinValue { get; set; } + + public int RecoveryPointMaxValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionRecoveryPointCorrection.cs b/src/Models/Entities/EntityMSkillBehaviourActionRecoveryPointCorrection.cs new file mode 100644 index 0000000..0675b7d --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionRecoveryPointCorrection.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionRecoveryPointCorrection +{ + public int SkillBehaviourActionId { get; set; } + + public RecoveryPointCorrectionTargetSkillType RecoveryPointCorrectionTargetSkillType { get; set; } + + public int RecoveryPointCorrectionCoefficientValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionRemoveAbnormal.cs b/src/Models/Entities/EntityMSkillBehaviourActionRemoveAbnormal.cs new file mode 100644 index 0000000..668a17f --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionRemoveAbnormal.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionRemoveAbnormal +{ + public int SkillBehaviourActionId { get; set; } + + public int TargetPolarityType { get; set; } + + public int SkillRemoveAbnormalTargetAbnormalGroupId { get; set; } + + public RemoveAbnormalTargetType RemoveAbnormalTargetType { get; set; } + + public int RemoveCountUpper { get; set; } + + public int RemoveKindCountUpper { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionRemoveBuff.cs b/src/Models/Entities/EntityMSkillBehaviourActionRemoveBuff.cs new file mode 100644 index 0000000..6a6ee7e --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionRemoveBuff.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionRemoveBuff +{ + public int SkillBehaviourActionId { get; set; } + + public int RemoveCount { get; set; } + + public BuffType BuffType { get; set; } + + public SkillRemoveBuffFilteringType SkillRemoveBuffFilteringType { get; set; } + + public int SkillRemoveBuffFilteringId { get; set; } + + public SkillRemoveBuffChoosingType SkillRemoveBuffChoosingType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionShortenActiveSkillCooltime.cs b/src/Models/Entities/EntityMSkillBehaviourActionShortenActiveSkillCooltime.cs new file mode 100644 index 0000000..099a76b --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionShortenActiveSkillCooltime.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionShortenActiveSkillCooltime +{ + public int SkillBehaviourActionId { get; set; } + + public ActiveSkillType ActiveSkillType { get; set; } + + public int ShortenValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActionSkillRecoveryPowerCorrection.cs b/src/Models/Entities/EntityMSkillBehaviourActionSkillRecoveryPowerCorrection.cs new file mode 100644 index 0000000..8d8a4f9 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActionSkillRecoveryPowerCorrection.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActionSkillRecoveryPowerCorrection +{ + public int SkillBehaviourActionId { get; set; } + + public int CorrectionValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionActivationUpperCount.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionActivationUpperCount.cs new file mode 100644 index 0000000..386127c --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionActivationUpperCount.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionActivationUpperCount +{ + public int SkillBehaviourActivationConditionId { get; set; } + + public int ActivationUpperCount { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionAttribute.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionAttribute.cs new file mode 100644 index 0000000..fc69e38 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionAttribute.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionAttribute +{ + public int SkillBehaviourActivationConditionId { get; set; } + + public int SkillBehaviourActivationConditionAttributeType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionGroup.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionGroup.cs new file mode 100644 index 0000000..d7861ea --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionGroup +{ + public int SkillBehaviourActivationConditionGroupId { get; set; } + + public int ConditionCheckOrder { get; set; } + + public SkillBehaviourActivationConditionType SkillBehaviourActivationConditionType { get; set; } + + public int SkillBehaviourActivationConditionId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionHpRatio.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionHpRatio.cs new file mode 100644 index 0000000..0f52e8e --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionHpRatio.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionHpRatio +{ + public int SkillBehaviourActivationConditionId { get; set; } + + public SkillBehaviourActivationConditionHpRatioThresholdType SkillBehaviourActivationConditionHpRatioThresholdType { get; set; } + + public int ThresholdRatioPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionInSkillFlow.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionInSkillFlow.cs new file mode 100644 index 0000000..23988d2 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionInSkillFlow.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionInSkillFlow +{ + public int SkillBehaviourActivationConditionId { get; set; } + + public int RunningSkillBehaviourType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationConditionWaveNumber.cs b/src/Models/Entities/EntityMSkillBehaviourActivationConditionWaveNumber.cs new file mode 100644 index 0000000..ffe07a1 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationConditionWaveNumber.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationConditionWaveNumber +{ + public int SkillBehaviourActivationConditionId { get; set; } + + public int WaveNumber { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourActivationMethod.cs b/src/Models/Entities/EntityMSkillBehaviourActivationMethod.cs new file mode 100644 index 0000000..4807957 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourActivationMethod.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourActivationMethod +{ + public int SkillBehaviourActivationMethodId { get; set; } + + public ActivationMethodType ActivationMethodType { get; set; } + + public int SkillBehaviourActivationConditionGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBehaviourGroup.cs b/src/Models/Entities/EntityMSkillBehaviourGroup.cs new file mode 100644 index 0000000..e674f91 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBehaviourGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBehaviourGroup +{ + public int SkillBehaviourGroupId { get; set; } + + public int SkillBehaviourId { get; set; } + + public int SkillBehaviourIndex { get; set; } + + public int TargetSelectorIndex { get; set; } + + public int SkillHitStartIndex { get; set; } + + public int SkillHitEndIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillBuff.cs b/src/Models/Entities/EntityMSkillBuff.cs new file mode 100644 index 0000000..cdb1fc4 --- /dev/null +++ b/src/Models/Entities/EntityMSkillBuff.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillBuff +{ + public int SkillBuffId { get; set; } + + public string BuffKey { get; set; } + + public BuffType BuffType { get; set; } + + public int Power { get; set; } + + public int CooltimeFrameCount { get; set; } + + public int IconId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCasttime.cs b/src/Models/Entities/EntityMSkillCasttime.cs new file mode 100644 index 0000000..a30ef94 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCasttime.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCasttime +{ + public int SkillCasttimeId { get; set; } + + public int SkillCasttimeValue { get; set; } + + public int SkillCasttimeBehaviourGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCasttimeBehaviour.cs b/src/Models/Entities/EntityMSkillCasttimeBehaviour.cs new file mode 100644 index 0000000..034d446 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCasttimeBehaviour.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCasttimeBehaviour +{ + public int SkillCasttimeBehaviourId { get; set; } + + public SkillCasttimeBehaviourType SkillCasttimeBehaviourType { get; set; } + + public int SkillCasttimeBehaviourActionId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnFrameUpdate.cs b/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnFrameUpdate.cs new file mode 100644 index 0000000..9c403f0 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnFrameUpdate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCasttimeBehaviourActionOnFrameUpdate +{ + public int SkillCasttimeBehaviourActionId { get; set; } + + public int SkillCasttimeAdvanceValuePerFrame { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition.cs b/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition.cs new file mode 100644 index 0000000..4c3d9a7 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition +{ + public int SkillCasttimeBehaviourActionId { get; set; } + + public int SkillCasttimeUpdateValue { get; set; } + + public SkillCasttimeAdvanceType SkillCasttimeAdvanceType { get; set; } + + public int DamageCompareType { get; set; } + + public int DamageConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCasttimeBehaviourGroup.cs b/src/Models/Entities/EntityMSkillCasttimeBehaviourGroup.cs new file mode 100644 index 0000000..3be5b9d --- /dev/null +++ b/src/Models/Entities/EntityMSkillCasttimeBehaviourGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCasttimeBehaviourGroup +{ + public int SkillCasttimeBehaviourGroupId { get; set; } + + public int SkillCasttimeBehaviourIndex { get; set; } + + public int SkillCasttimeBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroup.cs b/src/Models/Entities/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroup.cs new file mode 100644 index 0000000..ff9bbfc --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroup +{ + public int SkillCooltimeAdvanceValueOnDefaultSkillGroupId { get; set; } + + public int SkillHitCountLowerLimit { get; set; } + + public int SkillCooltimeAdvanceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviour.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviour.cs new file mode 100644 index 0000000..6c9d7fe --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviour.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviour +{ + public int SkillCooltimeBehaviourId { get; set; } + + public SkillCooltimeBehaviourType SkillCooltimeBehaviourType { get; set; } + + public int SkillCooltimeBehaviourActionId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourGroup.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourGroup.cs new file mode 100644 index 0000000..105b458 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourGroup +{ + public int SkillCooltimeBehaviourGroupId { get; set; } + + public int SkillCooltimeBehaviourId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteActiveSkill.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteActiveSkill.cs new file mode 100644 index 0000000..b5f4f29 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteActiveSkill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourOnExecuteActiveSkill +{ + public int SkillCooltimeBehaviourActionId { get; set; } + + public int SkillCooltimeAdvanceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill.cs new file mode 100644 index 0000000..c7c17f6 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill +{ + public int SkillCooltimeBehaviourActionId { get; set; } + + public int SkillCooltimeAdvanceValue { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill.cs new file mode 100644 index 0000000..221acd6 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill +{ + public int SkillCooltimeBehaviourActionId { get; set; } + + public int SkillCooltimeAdvanceValueOnDefaultSkillGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourOnFrameUpdate.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnFrameUpdate.cs new file mode 100644 index 0000000..be976b6 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnFrameUpdate.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourOnFrameUpdate +{ + public int SkillCooltimeBehaviourActionId { get; set; } + + public int SkillCooltimeAdvanceValuePerFrame { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillCooltimeBehaviourOnSkillDamage.cs b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnSkillDamage.cs new file mode 100644 index 0000000..4020d98 --- /dev/null +++ b/src/Models/Entities/EntityMSkillCooltimeBehaviourOnSkillDamage.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillCooltimeBehaviourOnSkillDamage +{ + public int SkillCooltimeBehaviourActionId { get; set; } + + public int SkillCooltimeAdvanceValueCalculationId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyAbnormalAttachedValueGroup.cs b/src/Models/Entities/EntityMSkillDamageMultiplyAbnormalAttachedValueGroup.cs new file mode 100644 index 0000000..e353430 --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyAbnormalAttachedValueGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyAbnormalAttachedValueGroup +{ + public int SkillDamageMultiplyAbnormalAttachedValueGroupId { get; set; } + + public int SkillDamageMultiplyAbnormalAttachedValueGroupIndex { get; set; } + + public DamageMultiplyAbnormalAttachedPolarityConditionType PolarityConditionType { get; set; } + + public int SkillAbnormalTypeIdCondition { get; set; } + + public DamageMultiplyAbnormalAttachedTargetType TargetType { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailAbnormalAttached.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailAbnormalAttached.cs new file mode 100644 index 0000000..3466ff5 --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailAbnormalAttached.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailAbnormalAttached +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public int SkillDamageMultiplyAbnormalAttachedValueGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailAlways.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailAlways.cs new file mode 100644 index 0000000..8d4b968 --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailAlways.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailAlways +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailBuffAttached.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailBuffAttached.cs new file mode 100644 index 0000000..ab56a89 --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailBuffAttached.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailBuffAttached +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public DamageMultiplyBuffAttachedConditionTargetType BuffAttachedTargetType { get; set; } + + public DamageMultiplyBuffAttachedTargetBuffType TargetBuffType { get; set; } + + public DamageMultiplyBuffAttachedTargetStatusKindType TargetStatusKindType { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailCritical.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailCritical.cs new file mode 100644 index 0000000..08a2e0a --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailCritical.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailCritical +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public bool IsCritical { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailHitIndex.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailHitIndex.cs new file mode 100644 index 0000000..e0bbdce --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailHitIndex.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailHitIndex +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public int SkillDamageMultiplyHitIndexValueGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailSkillfulWeaponType.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailSkillfulWeaponType.cs new file mode 100644 index 0000000..7b0a63e --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailSkillfulWeaponType.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailSkillfulWeaponType +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public DamageMultiplySkillfulWeaponConditionTargetType ConditionTargetType { get; set; } + + public WeaponType WeaponType { get; set; } + + public bool IsSkillfulMainWeapon { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyDetailSpecifiedCostumeType.cs b/src/Models/Entities/EntityMSkillDamageMultiplyDetailSpecifiedCostumeType.cs new file mode 100644 index 0000000..3547e2f --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyDetailSpecifiedCostumeType.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyDetailSpecifiedCostumeType +{ + public int SkillDamageMultiplyDetailId { get; set; } + + public DamageMultiplySpecifiedCostumeConditionTargetType SpecifiedCostumeConditionTargetType { get; set; } + + public int TargetSpecifiedCostumeGroupId { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyHitIndexValueGroup.cs b/src/Models/Entities/EntityMSkillDamageMultiplyHitIndexValueGroup.cs new file mode 100644 index 0000000..51e9ec7 --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyHitIndexValueGroup.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyHitIndexValueGroup +{ + public int SkillDamageMultiplyHitIndexValueGroupId { get; set; } + + public int SkillDamageMultiplyHitIndexValueGroupIndex { get; set; } + + public int TotalHitCountConditionLower { get; set; } + + public int TotalHitCountConditionUpper { get; set; } + + public int HitIndex { get; set; } + + public int DamageMultiplyCoefficientValuePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroup.cs b/src/Models/Entities/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroup.cs new file mode 100644 index 0000000..eb9732d --- /dev/null +++ b/src/Models/Entities/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroup +{ + public int TargetSpecifiedCostumeGroupId { get; set; } + + public int TargetSpecifiedCostumeGroupIndex { get; set; } + + public int CostumeId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillDetail.cs b/src/Models/Entities/EntityMSkillDetail.cs new file mode 100644 index 0000000..237043e --- /dev/null +++ b/src/Models/Entities/EntityMSkillDetail.cs @@ -0,0 +1,46 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillDetail +{ + public int SkillDetailId { get; set; } + + public int SkillBehaviourGroupId { get; set; } + + public int NameSkillTextId { get; set; } + + public int SkillCooltimeValue { get; set; } + + public int SkillCooltimeBehaviourGroupId { get; set; } + + public int CasttimeFrameCount { get; set; } + + public int HitRatioPermil { get; set; } + + public int SkillRangeMilli { get; set; } + + public int SkillHitAssetCalculatorId { get; set; } + + public bool IsCounterApplicable { get; set; } + + public bool IsComboCalculationTarget { get; set; } + + public int SkillAssetCategoryId { get; set; } + + public int SkillAssetVariationId { get; set; } + + public int DescriptionSkillTextId { get; set; } + + public SkillActType SkillActType { get; set; } + + public int SkillHitCount { get; set; } + + public int SkillPowerBaseValue { get; set; } + + public PowerCalculationReferenceStatusType PowerCalculationReferenceStatusType { get; set; } + + public int PowerReferenceStatusGroupId { get; set; } + + public int SkillCasttimeId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillLevelGroup.cs b/src/Models/Entities/EntityMSkillLevelGroup.cs new file mode 100644 index 0000000..996694a --- /dev/null +++ b/src/Models/Entities/EntityMSkillLevelGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillLevelGroup +{ + public int SkillLevelGroupId { get; set; } + + public int LevelLowerLimit { get; set; } + + public int SkillDetailId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillRemoveAbnormalTargetAbnormalGroup.cs b/src/Models/Entities/EntityMSkillRemoveAbnormalTargetAbnormalGroup.cs new file mode 100644 index 0000000..f0f9d6f --- /dev/null +++ b/src/Models/Entities/EntityMSkillRemoveAbnormalTargetAbnormalGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillRemoveAbnormalTargetAbnormalGroup +{ + public int SkillRemoveAbnormalTargetAbnormalGroupId { get; set; } + + public int SkillRemoveAbnormalTargetAbnormalGroupIndex { get; set; } + + public int AbnormalTypeId { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillRemoveBuffFilterStatusKind.cs b/src/Models/Entities/EntityMSkillRemoveBuffFilterStatusKind.cs new file mode 100644 index 0000000..6c38192 --- /dev/null +++ b/src/Models/Entities/EntityMSkillRemoveBuffFilterStatusKind.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillRemoveBuffFilterStatusKind +{ + public int SkillRemoveBuffFilteringId { get; set; } + + public int FilterIndex { get; set; } + + public StatusKindType StatusKindType { get; set; } +} diff --git a/src/Models/Entities/EntityMSkillReserveUiType.cs b/src/Models/Entities/EntityMSkillReserveUiType.cs new file mode 100644 index 0000000..8bc9de6 --- /dev/null +++ b/src/Models/Entities/EntityMSkillReserveUiType.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSkillReserveUiType +{ + public int SkillDetailId { get; set; } + + public int SkillReserveUiTypeId { get; set; } +} diff --git a/src/Models/Entities/EntityMSmartphoneChatGroup.cs b/src/Models/Entities/EntityMSmartphoneChatGroup.cs new file mode 100644 index 0000000..e2ee588 --- /dev/null +++ b/src/Models/Entities/EntityMSmartphoneChatGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSmartphoneChatGroup +{ + public int SmartphoneChatGroupId { get; set; } + + public int SmartphoneGroupUnlockSceneId { get; set; } + + public int SmartphoneGroupUnlockValue { get; set; } + + public int SortOrder { get; set; } + + public int SmartphoneGroupEndSceneId { get; set; } +} diff --git a/src/Models/Entities/EntityMSmartphoneChatGroupMessage.cs b/src/Models/Entities/EntityMSmartphoneChatGroupMessage.cs new file mode 100644 index 0000000..755bc29 --- /dev/null +++ b/src/Models/Entities/EntityMSmartphoneChatGroupMessage.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSmartphoneChatGroupMessage +{ + public int SmartphoneChatGroupId { get; set; } + + public int SortOrder { get; set; } + + public int SmartphoneMessageUnlockSceneId { get; set; } + + public int SmartphoneMessageUnlockValue { get; set; } + + public int SenderCharacterId { get; set; } +} diff --git a/src/Models/Entities/EntityMSpeaker.cs b/src/Models/Entities/EntityMSpeaker.cs new file mode 100644 index 0000000..961f3df --- /dev/null +++ b/src/Models/Entities/EntityMSpeaker.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMSpeaker +{ + public int ActorObjectId { get; set; } + + public int NameSpeakerTextId { get; set; } + + public SpeakerIconType SpeakerIconType { get; set; } + + public int SpeakerIconIndex { get; set; } +} diff --git a/src/Models/Entities/EntityMStainedGlass.cs b/src/Models/Entities/EntityMStainedGlass.cs new file mode 100644 index 0000000..8276f22 --- /dev/null +++ b/src/Models/Entities/EntityMStainedGlass.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMStainedGlass +{ + public int StainedGlassId { get; set; } + + public StainedGlassCategoryType StainedGlassCategoryType { get; set; } + + public int ImageAssetId { get; set; } + + public int TitleTextId { get; set; } + + public int EffectDescriptionTextId { get; set; } + + public int FlavorTextId { get; set; } + + public int SortOrder { get; set; } + + public long EmptyDisplayStartDatetime { get; set; } + + public long LockDisplayStartDatetime { get; set; } + + public int StainedGlassStatusUpTargetGroupId { get; set; } + + public int StainedGlassStatusUpGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMStainedGlassStatusUpGroup.cs b/src/Models/Entities/EntityMStainedGlassStatusUpGroup.cs new file mode 100644 index 0000000..1b219b8 --- /dev/null +++ b/src/Models/Entities/EntityMStainedGlassStatusUpGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMStainedGlassStatusUpGroup +{ + public int StainedGlassStatusUpGroupId { get; set; } + + public int GroupIndex { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMStainedGlassStatusUpTargetGroup.cs b/src/Models/Entities/EntityMStainedGlassStatusUpTargetGroup.cs new file mode 100644 index 0000000..e1aff59 --- /dev/null +++ b/src/Models/Entities/EntityMStainedGlassStatusUpTargetGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMStainedGlassStatusUpTargetGroup +{ + public int StainedGlassStatusUpTargetGroupId { get; set; } + + public int GroupIndex { get; set; } + + public StainedGlassStatusUpTargetType StatusUpTargetType { get; set; } + + public int TargetValue { get; set; } +} diff --git a/src/Models/Entities/EntityMThought.cs b/src/Models/Entities/EntityMThought.cs new file mode 100644 index 0000000..4eea623 --- /dev/null +++ b/src/Models/Entities/EntityMThought.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMThought +{ + public int ThoughtId { get; set; } + + public RarityType RarityType { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } + + public int ThoughtAssetId { get; set; } +} diff --git a/src/Models/Entities/EntityMTip.cs b/src/Models/Entities/EntityMTip.cs new file mode 100644 index 0000000..a80b4bf --- /dev/null +++ b/src/Models/Entities/EntityMTip.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTip +{ + public int TipId { get; set; } + + public int TitleTipTextId { get; set; } + + public int ContentTipTextId { get; set; } + + public int TipDisplayConditionGroupId { get; set; } + + public string BackgroundAssetName { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMTipBackgroundAsset.cs b/src/Models/Entities/EntityMTipBackgroundAsset.cs new file mode 100644 index 0000000..6946809 --- /dev/null +++ b/src/Models/Entities/EntityMTipBackgroundAsset.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipBackgroundAsset +{ + public int TipBackgroundAssetId { get; set; } + + public string BackgroundAssetName { get; set; } +} diff --git a/src/Models/Entities/EntityMTipDisplayConditionGroup.cs b/src/Models/Entities/EntityMTipDisplayConditionGroup.cs new file mode 100644 index 0000000..06627f2 --- /dev/null +++ b/src/Models/Entities/EntityMTipDisplayConditionGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipDisplayConditionGroup +{ + public int TipDisplayConditionGroupId { get; set; } + + public int SortOrder { get; set; } + + public TipDisplayConditionType TipDisplayConditionType { get; set; } + + public int ConditionValue { get; set; } + + public ConditionOperationType ConditionOperationType { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroup.cs b/src/Models/Entities/EntityMTipGroup.cs new file mode 100644 index 0000000..53113f3 --- /dev/null +++ b/src/Models/Entities/EntityMTipGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroup +{ + public int TipGroupId { get; set; } + + public int NameTextId { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroupBackgroundAsset.cs b/src/Models/Entities/EntityMTipGroupBackgroundAsset.cs new file mode 100644 index 0000000..257b10d --- /dev/null +++ b/src/Models/Entities/EntityMTipGroupBackgroundAsset.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroupBackgroundAsset +{ + public int TipGroupId { get; set; } + + public string BackgroundAssetName { get; set; } + + public int DisplayConditionClearQuestId { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroupBackgroundAssetRelation.cs b/src/Models/Entities/EntityMTipGroupBackgroundAssetRelation.cs new file mode 100644 index 0000000..b129d30 --- /dev/null +++ b/src/Models/Entities/EntityMTipGroupBackgroundAssetRelation.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroupBackgroundAssetRelation +{ + public int TipGroupId { get; set; } + + public int TipBackgroundAssetId { get; set; } + + public int TipDisplayConditionGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroupSelection.cs b/src/Models/Entities/EntityMTipGroupSelection.cs new file mode 100644 index 0000000..321e2fa --- /dev/null +++ b/src/Models/Entities/EntityMTipGroupSelection.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroupSelection +{ + public int TipGroupId { get; set; } + + public int TipId { get; set; } + + public int EncounterRatePermil { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroupSituation.cs b/src/Models/Entities/EntityMTipGroupSituation.cs new file mode 100644 index 0000000..77ff0f9 --- /dev/null +++ b/src/Models/Entities/EntityMTipGroupSituation.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroupSituation +{ + public TipSituationType TipSituationType { get; set; } + + public int TipGroupId { get; set; } + + public int Weight { get; set; } + + public int TargetId { get; set; } +} diff --git a/src/Models/Entities/EntityMTipGroupSituationSeason.cs b/src/Models/Entities/EntityMTipGroupSituationSeason.cs new file mode 100644 index 0000000..a75c447 --- /dev/null +++ b/src/Models/Entities/EntityMTipGroupSituationSeason.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTipGroupSituationSeason +{ + public TipSituationType TipSituationType { get; set; } + + public int TipSituationSeasonId { get; set; } + + public int TipGroupId { get; set; } + + public int Weight { get; set; } + + public int TargetId { get; set; } +} diff --git a/src/Models/Entities/EntityMTitleFlowMovie.cs b/src/Models/Entities/EntityMTitleFlowMovie.cs new file mode 100644 index 0000000..1f7d6d0 --- /dev/null +++ b/src/Models/Entities/EntityMTitleFlowMovie.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTitleFlowMovie +{ + public int TitleFlowMovieId { get; set; } + + public int MovieId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMTitleStill.cs b/src/Models/Entities/EntityMTitleStill.cs new file mode 100644 index 0000000..c3ca469 --- /dev/null +++ b/src/Models/Entities/EntityMTitleStill.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTitleStill +{ + public int TitleStillId { get; set; } + + public int TitleStillGroupId { get; set; } + + public int ReleaseEvaluateConditionId { get; set; } + + public TitleStillLogoType TitleStillLogoType { get; set; } + + public string AssetName { get; set; } +} diff --git a/src/Models/Entities/EntityMTitleStillGroup.cs b/src/Models/Entities/EntityMTitleStillGroup.cs new file mode 100644 index 0000000..10f2420 --- /dev/null +++ b/src/Models/Entities/EntityMTitleStillGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTitleStillGroup +{ + public int TitleStillGroupId { get; set; } + + public int DisplayStillCount { get; set; } + + public int Weight { get; set; } + + public int Priority { get; set; } +} diff --git a/src/Models/Entities/EntityMTutorialConsumePossessionGroup.cs b/src/Models/Entities/EntityMTutorialConsumePossessionGroup.cs new file mode 100644 index 0000000..6f42c9d --- /dev/null +++ b/src/Models/Entities/EntityMTutorialConsumePossessionGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTutorialConsumePossessionGroup +{ + public TutorialType TutorialType { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMTutorialDialog.cs b/src/Models/Entities/EntityMTutorialDialog.cs new file mode 100644 index 0000000..c17f0dd --- /dev/null +++ b/src/Models/Entities/EntityMTutorialDialog.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTutorialDialog +{ + public TutorialType TutorialType { get; set; } + + public HelpType HelpType { get; set; } +} diff --git a/src/Models/Entities/EntityMTutorialUnlockCondition.cs b/src/Models/Entities/EntityMTutorialUnlockCondition.cs new file mode 100644 index 0000000..5c62309 --- /dev/null +++ b/src/Models/Entities/EntityMTutorialUnlockCondition.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMTutorialUnlockCondition +{ + public TutorialType TutorialType { get; set; } + + public TutorialUnlockConditionType TutorialUnlockConditionType { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMUserLevel.cs b/src/Models/Entities/EntityMUserLevel.cs new file mode 100644 index 0000000..43329f6 --- /dev/null +++ b/src/Models/Entities/EntityMUserLevel.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMUserLevel +{ + public int UserLevel { get; set; } + + public int MaxStamina { get; set; } +} diff --git a/src/Models/Entities/EntityMUserQuestSceneGrantPossession.cs b/src/Models/Entities/EntityMUserQuestSceneGrantPossession.cs new file mode 100644 index 0000000..2b51f0a --- /dev/null +++ b/src/Models/Entities/EntityMUserQuestSceneGrantPossession.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMUserQuestSceneGrantPossession +{ + public int QuestSceneId { get; set; } + + public PossessionType PossessionType { get; set; } + + public int PossessionId { get; set; } + + public int Count { get; set; } + + public bool IsGift { get; set; } + + public bool IsDebug { get; set; } +} diff --git a/src/Models/Entities/EntityMWeapon.cs b/src/Models/Entities/EntityMWeapon.cs new file mode 100644 index 0000000..cf22a8b --- /dev/null +++ b/src/Models/Entities/EntityMWeapon.cs @@ -0,0 +1,42 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeapon +{ + public int WeaponId { get; set; } + + public int WeaponCategoryType { get; set; } + + public WeaponType WeaponType { get; set; } + + public int AssetVariationId { get; set; } + + public RarityType RarityType { get; set; } + + public AttributeType AttributeType { get; set; } + + public bool IsRestrictDiscard { get; set; } + + public int WeaponBaseStatusId { get; set; } + + public int WeaponStatusCalculationId { get; set; } + + public int WeaponSkillGroupId { get; set; } + + public int WeaponAbilityGroupId { get; set; } + + public int WeaponEvolutionMaterialGroupId { get; set; } + + public int WeaponEvolutionGrantPossessionGroupId { get; set; } + + public int WeaponStoryReleaseConditionGroupId { get; set; } + + public int WeaponSpecificEnhanceId { get; set; } + + public int WeaponSpecificLimitBreakMaterialGroupId { get; set; } + + public int CharacterWalkaroundRangeType { get; set; } + + public bool IsRecyclable { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAbilityEnhancementMaterial.cs b/src/Models/Entities/EntityMWeaponAbilityEnhancementMaterial.cs new file mode 100644 index 0000000..af8f6c5 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAbilityEnhancementMaterial.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAbilityEnhancementMaterial +{ + public int WeaponAbilityEnhancementMaterialId { get; set; } + + public int AbilityLevel { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAbilityGroup.cs b/src/Models/Entities/EntityMWeaponAbilityGroup.cs new file mode 100644 index 0000000..d502681 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAbilityGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAbilityGroup +{ + public int WeaponAbilityGroupId { get; set; } + + public int SlotNumber { get; set; } + + public int AbilityId { get; set; } + + public int WeaponAbilityEnhancementMaterialId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAwaken.cs b/src/Models/Entities/EntityMWeaponAwaken.cs new file mode 100644 index 0000000..2806f09 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAwaken.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAwaken +{ + public int WeaponId { get; set; } + + public int WeaponAwakenEffectGroupId { get; set; } + + public int WeaponAwakenMaterialGroupId { get; set; } + + public int ConsumeGold { get; set; } + + public int LevelLimitUp { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAwakenAbility.cs b/src/Models/Entities/EntityMWeaponAwakenAbility.cs new file mode 100644 index 0000000..61b229f --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAwakenAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAwakenAbility +{ + public int WeaponAwakenAbilityId { get; set; } + + public int AbilityId { get; set; } + + public int AbilityLevel { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAwakenEffectGroup.cs b/src/Models/Entities/EntityMWeaponAwakenEffectGroup.cs new file mode 100644 index 0000000..e094a96 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAwakenEffectGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAwakenEffectGroup +{ + public int WeaponAwakenEffectGroupId { get; set; } + + public int WeaponAwakenEffectType { get; set; } + + public int WeaponAwakenEffectId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAwakenMaterialGroup.cs b/src/Models/Entities/EntityMWeaponAwakenMaterialGroup.cs new file mode 100644 index 0000000..618faf4 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAwakenMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAwakenMaterialGroup +{ + public int WeaponAwakenMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponAwakenStatusUpGroup.cs b/src/Models/Entities/EntityMWeaponAwakenStatusUpGroup.cs new file mode 100644 index 0000000..105abec --- /dev/null +++ b/src/Models/Entities/EntityMWeaponAwakenStatusUpGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponAwakenStatusUpGroup +{ + public int WeaponAwakenStatusUpGroupId { get; set; } + + public StatusKindType StatusKindType { get; set; } + + public StatusCalculationType StatusCalculationType { get; set; } + + public int EffectValue { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponBaseStatus.cs b/src/Models/Entities/EntityMWeaponBaseStatus.cs new file mode 100644 index 0000000..585ad54 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponBaseStatus.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponBaseStatus +{ + public int WeaponBaseStatusId { get; set; } + + public int Hp { get; set; } + + public int Attack { get; set; } + + public int Vitality { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponConsumeExchangeConsumableItemGroup.cs b/src/Models/Entities/EntityMWeaponConsumeExchangeConsumableItemGroup.cs new file mode 100644 index 0000000..0d40c4d --- /dev/null +++ b/src/Models/Entities/EntityMWeaponConsumeExchangeConsumableItemGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponConsumeExchangeConsumableItemGroup +{ + public int WeaponId { get; set; } + + public int ConsumableItemId { get; set; } + + public int Count { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponEnhanced.cs b/src/Models/Entities/EntityMWeaponEnhanced.cs new file mode 100644 index 0000000..321f5e2 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponEnhanced.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponEnhanced +{ + public int WeaponEnhancedId { get; set; } + + public int WeaponId { get; set; } + + public int Level { get; set; } + + public int LimitBreakCount { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponEnhancedAbility.cs b/src/Models/Entities/EntityMWeaponEnhancedAbility.cs new file mode 100644 index 0000000..fb006b6 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponEnhancedAbility.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponEnhancedAbility +{ + public int WeaponEnhancedId { get; set; } + + public int AbilityId { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponEnhancedSkill.cs b/src/Models/Entities/EntityMWeaponEnhancedSkill.cs new file mode 100644 index 0000000..77fcc92 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponEnhancedSkill.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponEnhancedSkill +{ + public int WeaponEnhancedId { get; set; } + + public int SkillId { get; set; } + + public int Level { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponEvolutionGroup.cs b/src/Models/Entities/EntityMWeaponEvolutionGroup.cs new file mode 100644 index 0000000..c998142 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponEvolutionGroup.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponEvolutionGroup +{ + public int WeaponEvolutionGroupId { get; set; } + + public int EvolutionOrder { get; set; } + + public int WeaponId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponEvolutionMaterialGroup.cs b/src/Models/Entities/EntityMWeaponEvolutionMaterialGroup.cs new file mode 100644 index 0000000..c131211 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponEvolutionMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponEvolutionMaterialGroup +{ + public int WeaponEvolutionMaterialGroupId { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponFieldEffectDecreasePoint.cs b/src/Models/Entities/EntityMWeaponFieldEffectDecreasePoint.cs new file mode 100644 index 0000000..8aa1a3c --- /dev/null +++ b/src/Models/Entities/EntityMWeaponFieldEffectDecreasePoint.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponFieldEffectDecreasePoint +{ + public int WeaponId { get; set; } + + public int RelationIndex { get; set; } + + public int FieldEffectGroupId { get; set; } + + public int FieldEffectAbilityId { get; set; } + + public int DecreasePoint { get; set; } + + public int WeaponAbilityId { get; set; } + + public bool IsWeaponAwaken { get; set; } + + public int AutoOrganizationCoefficientPermil { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponRarity.cs b/src/Models/Entities/EntityMWeaponRarity.cs new file mode 100644 index 0000000..a1558e3 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponRarity.cs @@ -0,0 +1,34 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponRarity +{ + public RarityType RarityType { get; set; } + + public int BaseEnhancementObtainedExp { get; set; } + + public int SellPriceNumericalFunctionId { get; set; } + + public int MaxLevelNumericalFunctionId { get; set; } + + public int MaxSkillLevelNumericalFunctionId { get; set; } + + public int MaxAbilityLevelNumericalFunctionId { get; set; } + + public int RequiredExpForLevelUpNumericalParameterMapId { get; set; } + + public int EnhancementCostByWeaponNumericalFunctionId { get; set; } + + public int EnhancementCostByMaterialNumericalFunctionId { get; set; } + + public int SkillEnhancementCostNumericalFunctionId { get; set; } + + public int AbilityEnhancementCostNumericalFunctionId { get; set; } + + public int LimitBreakCostByWeaponNumericalFunctionId { get; set; } + + public int LimitBreakCostByMaterialNumericalFunctionId { get; set; } + + public int EvolutionCostNumericalFunctionId { get; set; }// 0x44 +} diff --git a/src/Models/Entities/EntityMWeaponRarityLimitBreakMaterialGroup.cs b/src/Models/Entities/EntityMWeaponRarityLimitBreakMaterialGroup.cs new file mode 100644 index 0000000..a65f7a3 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponRarityLimitBreakMaterialGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponRarityLimitBreakMaterialGroup +{ + public RarityType RarityType { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponSkillEnhancementMaterial.cs b/src/Models/Entities/EntityMWeaponSkillEnhancementMaterial.cs new file mode 100644 index 0000000..21aa93c --- /dev/null +++ b/src/Models/Entities/EntityMWeaponSkillEnhancementMaterial.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponSkillEnhancementMaterial +{ + public int WeaponSkillEnhancementMaterialId { get; set; } + + public int SkillLevel { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponSkillGroup.cs b/src/Models/Entities/EntityMWeaponSkillGroup.cs new file mode 100644 index 0000000..f902382 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponSkillGroup.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponSkillGroup +{ + public int WeaponSkillGroupId { get; set; } + + public int SlotNumber { get; set; } + + public int SkillId { get; set; } + + public int WeaponSkillEnhancementMaterialId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponSpecificEnhance.cs b/src/Models/Entities/EntityMWeaponSpecificEnhance.cs new file mode 100644 index 0000000..f9fd311 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponSpecificEnhance.cs @@ -0,0 +1,34 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponSpecificEnhance +{ + public int WeaponSpecificEnhanceId { get; set; } + + public int BaseEnhancementObtainedExp { get; set; } + + public int SellPriceNumericalFunctionId { get; set; } + + public int MaxLevelNumericalFunctionId { get; set; } + + public int MaxSkillLevelNumericalFunctionId { get; set; } + + public int MaxAbilityLevelNumericalFunctionId { get; set; } + + public int RequiredExpForLevelUpNumericalParameterMapId { get; set; } + + public int EnhancementCostByWeaponNumericalFunctionId { get; set; } + + public int EnhancementCostByMaterialNumericalFunctionId { get; set; } + + public int SkillEnhancementCostNumericalFunctionId { get; set; } + + public int AbilityEnhancementCostNumericalFunctionId { get; set; } + + public int LimitBreakCostByWeaponNumericalFunctionId { get; set; } + + public int LimitBreakCostByMaterialNumericalFunctionId { get; set; } + + public int EvolutionCostNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponSpecificLimitBreakMaterialGroup.cs b/src/Models/Entities/EntityMWeaponSpecificLimitBreakMaterialGroup.cs new file mode 100644 index 0000000..a0ed2e4 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponSpecificLimitBreakMaterialGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponSpecificLimitBreakMaterialGroup +{ + public int WeaponSpecificLimitBreakMaterialGroupId { get; set; } + + public int LimitBreakCountLowerLimit { get; set; } + + public int MaterialId { get; set; } + + public int Count { get; set; } + + public int SortOrder { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponStatusCalculation.cs b/src/Models/Entities/EntityMWeaponStatusCalculation.cs new file mode 100644 index 0000000..f735b70 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponStatusCalculation.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponStatusCalculation +{ + public int WeaponStatusCalculationId { get; set; } + + public int HpNumericalFunctionId { get; set; } + + public int AttackNumericalFunctionId { get; set; } + + public int VitalityNumericalFunctionId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponStoryReleaseConditionGroup.cs b/src/Models/Entities/EntityMWeaponStoryReleaseConditionGroup.cs new file mode 100644 index 0000000..eff7f26 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponStoryReleaseConditionGroup.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponStoryReleaseConditionGroup +{ + public int WeaponStoryReleaseConditionGroupId { get; set; } + + public int StoryIndex { get; set; } + + public WeaponStoryReleaseConditionType WeaponStoryReleaseConditionType { get; set; } + + public int ConditionValue { get; set; } + + public int WeaponStoryReleaseConditionOperationGroupId { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperation.cs b/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperation.cs new file mode 100644 index 0000000..18d14dd --- /dev/null +++ b/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperation.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponStoryReleaseConditionOperation +{ + public int WeaponStoryReleaseConditionOperationGroupId { get; set; } + + public int SortOrder { get; set; } + + public WeaponStoryReleaseConditionType WeaponStoryReleaseConditionType { get; set; } + + public int ConditionValue { get; set; } +} diff --git a/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperationGroup.cs b/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperationGroup.cs new file mode 100644 index 0000000..c9df703 --- /dev/null +++ b/src/Models/Entities/EntityMWeaponStoryReleaseConditionOperationGroup.cs @@ -0,0 +1,10 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWeaponStoryReleaseConditionOperationGroup +{ + public int WeaponStoryReleaseConditionOperationGroupId { get; set; } + + public ConditionOperationType ConditionOperationType { get; set; } +} diff --git a/src/Models/Entities/EntityMWebviewMission.cs b/src/Models/Entities/EntityMWebviewMission.cs new file mode 100644 index 0000000..c165bee --- /dev/null +++ b/src/Models/Entities/EntityMWebviewMission.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWebviewMission +{ + public int WebviewMissionId { get; set; } + + public int TitleTextId { get; set; } + + public int WebviewMissionType { get; set; } + + public int WebviewMissionTargetId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMWebviewMissionTitleText.cs b/src/Models/Entities/EntityMWebviewMissionTitleText.cs new file mode 100644 index 0000000..6a0d374 --- /dev/null +++ b/src/Models/Entities/EntityMWebviewMissionTitleText.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWebviewMissionTitleText +{ + public int WebviewMissionTitleTextId { get; set; } + + public LanguageType LanguageType { get; set; } + + public string Text { get; set; } +} diff --git a/src/Models/Entities/EntityMWebviewPanelMission.cs b/src/Models/Entities/EntityMWebviewPanelMission.cs new file mode 100644 index 0000000..755ada8 --- /dev/null +++ b/src/Models/Entities/EntityMWebviewPanelMission.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWebviewPanelMission +{ + public int WebviewPanelMissionId { get; set; } + + public int Page { get; set; } + + public int WebviewPanelMissionPageId { get; set; } + + public long StartDatetime { get; set; } + + public long EndDatetime { get; set; } +} diff --git a/src/Models/Entities/EntityMWebviewPanelMissionCompleteFlavorText.cs b/src/Models/Entities/EntityMWebviewPanelMissionCompleteFlavorText.cs new file mode 100644 index 0000000..8d9f811 --- /dev/null +++ b/src/Models/Entities/EntityMWebviewPanelMissionCompleteFlavorText.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWebviewPanelMissionCompleteFlavorText +{ + public int WebviewPanelMissionCompleteFlavorTextId { get; set; } + + public LanguageType LanguageType { get; set; } + + public string CompleteFlavorText { get; set; } +} diff --git a/src/Models/Entities/EntityMWebviewPanelMissionPage.cs b/src/Models/Entities/EntityMWebviewPanelMissionPage.cs new file mode 100644 index 0000000..a716f93 --- /dev/null +++ b/src/Models/Entities/EntityMWebviewPanelMissionPage.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Entities; + +public class EntityMWebviewPanelMissionPage +{ + public int WebviewPanelMissionPageId { get; set; } + + public int WebviewPanelMissionPanelGroupId { get; set; } + + public int WebviewPanelMissionBgPartsGroupId { get; set; } + + public int WebviewPanelMissionCompleteFlavorTextId { get; set; } + + public string ImageFileName { get; set; } + + public int ImageAssetId { get; set; } + + public int WebviewPanelMissionPageRewardGroupId { get; set; } +} diff --git a/src/Models/Tables/EntityIUserAppleTable.cs b/src/Models/Tables/EntityIUserAppleTable.cs new file mode 100644 index 0000000..17649ed --- /dev/null +++ b/src/Models/Tables/EntityIUserAppleTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserAppleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserAppleTable(EntityIUserApple[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserApple FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserAutoSaleSettingDetailTable.cs b/src/Models/Tables/EntityIUserAutoSaleSettingDetailTable.cs new file mode 100644 index 0000000..298c528 --- /dev/null +++ b/src/Models/Tables/EntityIUserAutoSaleSettingDetailTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserAutoSaleSettingDetailTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserAutoSaleSettingDetailTable(EntityIUserAutoSaleSettingDetail[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.PossessionAutoSaleItemType); + } + + public bool TryFindByUserIdAndPossessionAutoSaleItemType(ValueTuple key, out EntityIUserAutoSaleSettingDetail result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserBeginnerCampaignTable.cs b/src/Models/Tables/EntityIUserBeginnerCampaignTable.cs new file mode 100644 index 0000000..1804ace --- /dev/null +++ b/src/Models/Tables/EntityIUserBeginnerCampaignTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBeginnerCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBeginnerCampaignTable(EntityIUserBeginnerCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserBeginnerCampaign FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserBigHuntMaxScoreTable.cs b/src/Models/Tables/EntityIUserBigHuntMaxScoreTable.cs new file mode 100644 index 0000000..4e0875c --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntMaxScoreTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntMaxScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntMaxScoreTable(EntityIUserBigHuntMaxScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.BigHuntBossId); + } + + public EntityIUserBigHuntMaxScore FindByUserIdAndBigHuntBossId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserBigHuntProgressStatusTable.cs b/src/Models/Tables/EntityIUserBigHuntProgressStatusTable.cs new file mode 100644 index 0000000..955d566 --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntProgressStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntProgressStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntProgressStatusTable(EntityIUserBigHuntProgressStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserBigHuntProgressStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserBigHuntScheduleMaxScoreTable.cs b/src/Models/Tables/EntityIUserBigHuntScheduleMaxScoreTable.cs new file mode 100644 index 0000000..7ef40d3 --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntScheduleMaxScoreTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntScheduleMaxScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntScheduleMaxScoreTable(EntityIUserBigHuntScheduleMaxScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.BigHuntScheduleId, element.BigHuntBossId); + } + + public EntityIUserBigHuntScheduleMaxScore FindByUserIdAndBigHuntScheduleIdAndBigHuntBossId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key); + + public bool TryFindByUserIdAndBigHuntScheduleIdAndBigHuntBossId(ValueTuple key, out EntityIUserBigHuntScheduleMaxScore result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserBigHuntStatusTable.cs b/src/Models/Tables/EntityIUserBigHuntStatusTable.cs new file mode 100644 index 0000000..c7e96bf --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntStatusTable(EntityIUserBigHuntStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.BigHuntBossQuestId); + } + + public EntityIUserBigHuntStatus FindByUserIdAndBigHuntBossQuestId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserBigHuntWeeklyMaxScoreTable.cs b/src/Models/Tables/EntityIUserBigHuntWeeklyMaxScoreTable.cs new file mode 100644 index 0000000..480a7e7 --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntWeeklyMaxScoreTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntWeeklyMaxScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntWeeklyMaxScoreTable(EntityIUserBigHuntWeeklyMaxScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.BigHuntWeeklyVersion, element.AttributeType); + } + + public bool TryFindByUserIdAndBigHuntWeeklyVersionAndAttributeType(ValueTuple key, out EntityIUserBigHuntWeeklyMaxScore result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, long, AttributeType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserBigHuntWeeklyStatusTable.cs b/src/Models/Tables/EntityIUserBigHuntWeeklyStatusTable.cs new file mode 100644 index 0000000..a79820e --- /dev/null +++ b/src/Models/Tables/EntityIUserBigHuntWeeklyStatusTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserBigHuntWeeklyStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserBigHuntWeeklyStatusTable(EntityIUserBigHuntWeeklyStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.BigHuntWeeklyVersion); + } +} diff --git a/src/Models/Tables/EntityIUserCageOrnamentRewardTable.cs b/src/Models/Tables/EntityIUserCageOrnamentRewardTable.cs new file mode 100644 index 0000000..7ad0b42 --- /dev/null +++ b/src/Models/Tables/EntityIUserCageOrnamentRewardTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCageOrnamentRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCageOrnamentRewardTable(EntityIUserCageOrnamentReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CageOrnamentId); + } + + public EntityIUserCageOrnamentReward FindByUserIdAndCageOrnamentId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndCageOrnamentId(ValueTuple key, out EntityIUserCageOrnamentReward result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCharacterBoardAbilityTable.cs b/src/Models/Tables/EntityIUserCharacterBoardAbilityTable.cs new file mode 100644 index 0000000..6eded0e --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterBoardAbilityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterBoardAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterBoardAbilityTable(EntityIUserCharacterBoardAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterId, element.AbilityId); + } + + public bool TryFindByUserIdAndCharacterIdAndAbilityId(ValueTuple key, out EntityIUserCharacterBoardAbility result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCharacterBoardCompleteRewardTable.cs b/src/Models/Tables/EntityIUserCharacterBoardCompleteRewardTable.cs new file mode 100644 index 0000000..8dc4f08 --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterBoardCompleteRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterBoardCompleteRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterBoardCompleteRewardTable(EntityIUserCharacterBoardCompleteReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterBoardCompleteRewardId); + } +} diff --git a/src/Models/Tables/EntityIUserCharacterBoardStatusUpTable.cs b/src/Models/Tables/EntityIUserCharacterBoardStatusUpTable.cs new file mode 100644 index 0000000..b04d242 --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterBoardStatusUpTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterBoardStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterBoardStatusUpTable(EntityIUserCharacterBoardStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterId, element.StatusCalculationType); + } + + public EntityIUserCharacterBoardStatusUp FindByUserIdAndCharacterIdAndStatusCalculationType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, StatusCalculationType)>.Default, key); + + public RangeView FindRangeByUserIdAndCharacterIdAndStatusCalculationType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(long, int, StatusCalculationType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityIUserCharacterBoardTable.cs b/src/Models/Tables/EntityIUserCharacterBoardTable.cs new file mode 100644 index 0000000..747e93e --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterBoardTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterBoardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterBoardTable(EntityIUserCharacterBoard[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterBoardId); + } + + public EntityIUserCharacterBoard FindByUserIdAndCharacterBoardId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndCharacterBoardId(ValueTuple key, out EntityIUserCharacterBoard result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCharacterCostumeLevelBonusTable.cs b/src/Models/Tables/EntityIUserCharacterCostumeLevelBonusTable.cs new file mode 100644 index 0000000..cee8b06 --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterCostumeLevelBonusTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterCostumeLevelBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityIUserCharacterCostumeLevelBonusTable(EntityIUserCharacterCostumeLevelBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterId, element.StatusCalculationType); + secondaryIndexSelector = element => element.CharacterId; + } + + public bool TryFindByUserIdAndCharacterIdAndStatusCalculationType(ValueTuple key, out EntityIUserCharacterCostumeLevelBonus result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, StatusCalculationType)>.Default, key, out result); + + public RangeView FindByCharacterId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserCharacterRebirthTable.cs b/src/Models/Tables/EntityIUserCharacterRebirthTable.cs new file mode 100644 index 0000000..367e22c --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterRebirthTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterRebirthTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterRebirthTable(EntityIUserCharacterRebirth[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterId); + } + + public EntityIUserCharacterRebirth FindByUserIdAndCharacterId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserCharacterTable.cs b/src/Models/Tables/EntityIUserCharacterTable.cs new file mode 100644 index 0000000..8f8a9e5 --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterTable(EntityIUserCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterId); + } + + public EntityIUserCharacter FindByUserIdAndCharacterId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndCharacterId(ValueTuple key, out EntityIUserCharacter result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCharacterViewerFieldTable.cs b/src/Models/Tables/EntityIUserCharacterViewerFieldTable.cs new file mode 100644 index 0000000..3150335 --- /dev/null +++ b/src/Models/Tables/EntityIUserCharacterViewerFieldTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCharacterViewerFieldTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCharacterViewerFieldTable(EntityIUserCharacterViewerField[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CharacterViewerFieldId); + } +} diff --git a/src/Models/Tables/EntityIUserComebackCampaignTable.cs b/src/Models/Tables/EntityIUserComebackCampaignTable.cs new file mode 100644 index 0000000..7974ad2 --- /dev/null +++ b/src/Models/Tables/EntityIUserComebackCampaignTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserComebackCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserComebackCampaignTable(EntityIUserComebackCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserComebackCampaign FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserCompanionTable.cs b/src/Models/Tables/EntityIUserCompanionTable.cs new file mode 100644 index 0000000..0f650b9 --- /dev/null +++ b/src/Models/Tables/EntityIUserCompanionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCompanionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCompanionTable(EntityIUserCompanion[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCompanionUuid); + } + + public EntityIUserCompanion FindByUserIdAndUserCompanionUuid(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserConsumableItemTable.cs b/src/Models/Tables/EntityIUserConsumableItemTable.cs new file mode 100644 index 0000000..defb9fa --- /dev/null +++ b/src/Models/Tables/EntityIUserConsumableItemTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserConsumableItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserConsumableItemTable(EntityIUserConsumableItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.ConsumableItemId); + } + + public bool TryFindByUserIdAndConsumableItemId(ValueTuple key, out EntityIUserConsumableItem result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserContentsStoryTable.cs b/src/Models/Tables/EntityIUserContentsStoryTable.cs new file mode 100644 index 0000000..72bead3 --- /dev/null +++ b/src/Models/Tables/EntityIUserContentsStoryTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserContentsStoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserContentsStoryTable(EntityIUserContentsStory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.ContentsStoryId); + } + + public EntityIUserContentsStory FindByUserIdAndContentsStoryId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndContentsStoryId(ValueTuple key, out EntityIUserContentsStory result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCostumeActiveSkillTable.cs b/src/Models/Tables/EntityIUserCostumeActiveSkillTable.cs new file mode 100644 index 0000000..8cd5b7a --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeActiveSkillTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeActiveSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeActiveSkillTable(EntityIUserCostumeActiveSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid); + } + + public EntityIUserCostumeActiveSkill FindByUserIdAndUserCostumeUuid(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserCostumeAwakenStatusUpTable.cs b/src/Models/Tables/EntityIUserCostumeAwakenStatusUpTable.cs new file mode 100644 index 0000000..9cb6a26 --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeAwakenStatusUpTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeAwakenStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeAwakenStatusUpTable(EntityIUserCostumeAwakenStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid, element.StatusCalculationType); + } + + public bool TryFindByUserIdAndUserCostumeUuidAndStatusCalculationType(ValueTuple key, out EntityIUserCostumeAwakenStatusUp result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, StatusCalculationType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCostumeLevelBonusReleaseStatusTable.cs b/src/Models/Tables/EntityIUserCostumeLevelBonusReleaseStatusTable.cs new file mode 100644 index 0000000..091bc63 --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeLevelBonusReleaseStatusTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeLevelBonusReleaseStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeLevelBonusReleaseStatusTable(EntityIUserCostumeLevelBonusReleaseStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.CostumeId); + } + + public bool TryFindByUserIdAndCostumeId(ValueTuple key, out EntityIUserCostumeLevelBonusReleaseStatus result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCostumeLotteryEffectAbilityTable.cs b/src/Models/Tables/EntityIUserCostumeLotteryEffectAbilityTable.cs new file mode 100644 index 0000000..59a1add --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeLotteryEffectAbilityTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeLotteryEffectAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityIUserCostumeLotteryEffectAbilityTable(EntityIUserCostumeLotteryEffectAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid, element.SlotNumber); + secondaryIndexSelector = element => (element.UserId, element.UserCostumeUuid); + } + + public RangeView FindByUserIdAndUserCostumeUuid(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserCostumeLotteryEffectPendingTable.cs b/src/Models/Tables/EntityIUserCostumeLotteryEffectPendingTable.cs new file mode 100644 index 0000000..c187582 --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeLotteryEffectPendingTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeLotteryEffectPendingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeLotteryEffectPendingTable(EntityIUserCostumeLotteryEffectPending[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid); + } + + public bool TryFindByUserIdAndUserCostumeUuid(ValueTuple key, out EntityIUserCostumeLotteryEffectPending result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCostumeLotteryEffectStatusUpTable.cs b/src/Models/Tables/EntityIUserCostumeLotteryEffectStatusUpTable.cs new file mode 100644 index 0000000..68a660e --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeLotteryEffectStatusUpTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeLotteryEffectStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeLotteryEffectStatusUpTable(EntityIUserCostumeLotteryEffectStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid, element.StatusCalculationType); + } + + public bool TryFindByUserIdAndUserCostumeUuidAndStatusCalculationType(ValueTuple key, out EntityIUserCostumeLotteryEffectStatusUp result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, StatusCalculationType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserCostumeLotteryEffectTable.cs b/src/Models/Tables/EntityIUserCostumeLotteryEffectTable.cs new file mode 100644 index 0000000..f50c260 --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeLotteryEffectTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeLotteryEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeLotteryEffectTable(EntityIUserCostumeLotteryEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid, element.SlotNumber); + } + + public bool TryFindByUserIdAndUserCostumeUuidAndSlotNumber(ValueTuple key, out EntityIUserCostumeLotteryEffect result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, int)>.Default, key, out result); + + public RangeView FindRangeByUserIdAndUserCostumeUuidAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(long, string, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityIUserCostumeTable.cs b/src/Models/Tables/EntityIUserCostumeTable.cs new file mode 100644 index 0000000..76055db --- /dev/null +++ b/src/Models/Tables/EntityIUserCostumeTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserCostumeTable(EntityIUserCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserCostumeUuid); + } + + public EntityIUserCostume FindByUserIdAndUserCostumeUuid(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); + + public bool TryFindByUserIdAndUserCostumeUuid(ValueTuple key, out EntityIUserCostume result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserDeckCharacterDressupCostumeTable.cs b/src/Models/Tables/EntityIUserDeckCharacterDressupCostumeTable.cs new file mode 100644 index 0000000..056beb9 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckCharacterDressupCostumeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckCharacterDressupCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckCharacterDressupCostumeTable(EntityIUserDeckCharacterDressupCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserDeckCharacterUuid); + } + + public bool TryFindByUserIdAndUserDeckCharacterUuid(ValueTuple key, out EntityIUserDeckCharacterDressupCostume result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserDeckCharacterTable.cs b/src/Models/Tables/EntityIUserDeckCharacterTable.cs new file mode 100644 index 0000000..48e0464 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckCharacterTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckCharacterTable(EntityIUserDeckCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserDeckCharacterUuid); + } + + public EntityIUserDeckCharacter FindByUserIdAndUserDeckCharacterUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); + + public bool TryFindByUserIdAndUserDeckCharacterUuid(ValueTuple key, out EntityIUserDeckCharacter result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserDeckLimitContentDeletedCharacterTable.cs b/src/Models/Tables/EntityIUserDeckLimitContentDeletedCharacterTable.cs new file mode 100644 index 0000000..7139f92 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckLimitContentDeletedCharacterTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckLimitContentDeletedCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityIUserDeckLimitContentDeletedCharacterTable(EntityIUserDeckLimitContentDeletedCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserDeckNumber, element.UserDeckCharacterNumber); + secondaryIndexSelector = element => (element.UserId, element.UserDeckNumber); + } + + public RangeView FindByUserIdAndUserDeckNumber(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserDeckLimitContentRestrictedTable.cs b/src/Models/Tables/EntityIUserDeckLimitContentRestrictedTable.cs new file mode 100644 index 0000000..999ffc0 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckLimitContentRestrictedTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckLimitContentRestrictedTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityIUserDeckLimitContentRestrictedTable(EntityIUserDeckLimitContentRestricted[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.EventQuestChapterId, element.QuestId, element.DeckRestrictedUuid); + secondaryIndexSelector = element => (element.EventQuestChapterId, element.PossessionType); + } + + public RangeView FindByEventQuestChapterIdAndPossessionType(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, PossessionType)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserDeckPartsGroupTable.cs b/src/Models/Tables/EntityIUserDeckPartsGroupTable.cs new file mode 100644 index 0000000..2aa56cf --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckPartsGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckPartsGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckPartsGroupTable(EntityIUserDeckPartsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserDeckCharacterUuid, element.UserPartsUuid); + } + + public EntityIUserDeckPartsGroup FindByUserIdAndUserDeckCharacterUuidAndUserPartsUuid((long, string, string) key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserDeckSubWeaponGroupTable.cs b/src/Models/Tables/EntityIUserDeckSubWeaponGroupTable.cs new file mode 100644 index 0000000..2906de6 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckSubWeaponGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckSubWeaponGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckSubWeaponGroupTable(EntityIUserDeckSubWeaponGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserDeckCharacterUuid, element.UserWeaponUuid); + } + + public EntityIUserDeckSubWeaponGroup FindByUserIdAndUserDeckCharacterUuidAndUserWeaponUuid((long, string, string) key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserDeckTable.cs b/src/Models/Tables/EntityIUserDeckTable.cs new file mode 100644 index 0000000..d171172 --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckTable(EntityIUserDeck[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.DeckType, element.UserDeckNumber); + } + + public EntityIUserDeck FindByUserIdAndDeckTypeAndUserDeckNumber(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType, int)>.Default, key); + + public bool TryFindByUserIdAndDeckTypeAndUserDeckNumber(ValueTuple key, out EntityIUserDeck result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserDeckTypeNoteTable.cs b/src/Models/Tables/EntityIUserDeckTypeNoteTable.cs new file mode 100644 index 0000000..a2f9e3f --- /dev/null +++ b/src/Models/Tables/EntityIUserDeckTypeNoteTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDeckTypeNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDeckTypeNoteTable(EntityIUserDeckTypeNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.DeckType); + } + + public EntityIUserDeckTypeNote FindByUserIdAndDeckType((long, DeckType) key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserDokanTable.cs b/src/Models/Tables/EntityIUserDokanTable.cs new file mode 100644 index 0000000..0c65393 --- /dev/null +++ b/src/Models/Tables/EntityIUserDokanTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserDokanTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserDokanTable(EntityIUserDokan[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.DokanId); + } + + public bool TryFindByUserIdAndDokanId(ValueTuple key, out EntityIUserDokan result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserEventQuestDailyGroupCompleteRewardTable.cs b/src/Models/Tables/EntityIUserEventQuestDailyGroupCompleteRewardTable.cs new file mode 100644 index 0000000..4962b4b --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestDailyGroupCompleteRewardTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestDailyGroupCompleteRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestDailyGroupCompleteRewardTable(EntityIUserEventQuestDailyGroupCompleteReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public bool TryFindByUserId(long key, out EntityIUserEventQuestDailyGroupCompleteReward result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserEventQuestGuerrillaFreeOpenTable.cs b/src/Models/Tables/EntityIUserEventQuestGuerrillaFreeOpenTable.cs new file mode 100644 index 0000000..a685c32 --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestGuerrillaFreeOpenTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestGuerrillaFreeOpenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestGuerrillaFreeOpenTable(EntityIUserEventQuestGuerrillaFreeOpen[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public bool TryFindByUserId(long key, out EntityIUserEventQuestGuerrillaFreeOpen result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserEventQuestLabyrinthSeasonTable.cs b/src/Models/Tables/EntityIUserEventQuestLabyrinthSeasonTable.cs new file mode 100644 index 0000000..4f096fc --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestLabyrinthSeasonTable.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestLabyrinthSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestLabyrinthSeasonTable(EntityIUserEventQuestLabyrinthSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.EventQuestChapterId); + } + + public EntityIUserEventQuestLabyrinthSeason FindByUserIdAndEventQuestChapterId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndEventQuestChapterId(ValueTuple key, out EntityIUserEventQuestLabyrinthSeason result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); + + public RangeView FindRangeByUserIdAndEventQuestChapterId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityIUserEventQuestLabyrinthStageTable.cs b/src/Models/Tables/EntityIUserEventQuestLabyrinthStageTable.cs new file mode 100644 index 0000000..be7908f --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestLabyrinthStageTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestLabyrinthStageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestLabyrinthStageTable(EntityIUserEventQuestLabyrinthStage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.EventQuestChapterId, element.StageOrder); + } + + public EntityIUserEventQuestLabyrinthStage FindByUserIdAndEventQuestChapterIdAndStageOrder(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key); + + public bool TryFindByUserIdAndEventQuestChapterIdAndStageOrder(ValueTuple key, out EntityIUserEventQuestLabyrinthStage result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserEventQuestProgressStatusTable.cs b/src/Models/Tables/EntityIUserEventQuestProgressStatusTable.cs new file mode 100644 index 0000000..c80e327 --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestProgressStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestProgressStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestProgressStatusTable(EntityIUserEventQuestProgressStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserEventQuestProgressStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserEventQuestTowerAccumulationRewardTable.cs b/src/Models/Tables/EntityIUserEventQuestTowerAccumulationRewardTable.cs new file mode 100644 index 0000000..28b8f0b --- /dev/null +++ b/src/Models/Tables/EntityIUserEventQuestTowerAccumulationRewardTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserEventQuestTowerAccumulationRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserEventQuestTowerAccumulationRewardTable(EntityIUserEventQuestTowerAccumulationReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.EventQuestChapterId); + } + + public EntityIUserEventQuestTowerAccumulationReward FindByUserIdAndEventQuestChapterId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserExploreScoreTable.cs b/src/Models/Tables/EntityIUserExploreScoreTable.cs new file mode 100644 index 0000000..92cd647 --- /dev/null +++ b/src/Models/Tables/EntityIUserExploreScoreTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserExploreScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserExploreScoreTable(EntityIUserExploreScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.ExploreId); + } + + public EntityIUserExploreScore FindByUserIdAndExploreId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserExploreTable.cs b/src/Models/Tables/EntityIUserExploreTable.cs new file mode 100644 index 0000000..cc408bd --- /dev/null +++ b/src/Models/Tables/EntityIUserExploreTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserExploreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserExploreTable(EntityIUserExplore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserExplore FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByUserId(long key, out EntityIUserExplore result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserExtraQuestProgressStatusTable.cs b/src/Models/Tables/EntityIUserExtraQuestProgressStatusTable.cs new file mode 100644 index 0000000..56461a0 --- /dev/null +++ b/src/Models/Tables/EntityIUserExtraQuestProgressStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserExtraQuestProgressStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserExtraQuestProgressStatusTable(EntityIUserExtraQuestProgressStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserExtraQuestProgressStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserFacebookTable.cs b/src/Models/Tables/EntityIUserFacebookTable.cs new file mode 100644 index 0000000..a242365 --- /dev/null +++ b/src/Models/Tables/EntityIUserFacebookTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserFacebookTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserFacebookTable(EntityIUserFacebook[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserFacebook FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserGemTable.cs b/src/Models/Tables/EntityIUserGemTable.cs new file mode 100644 index 0000000..d6d1691 --- /dev/null +++ b/src/Models/Tables/EntityIUserGemTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserGemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserGemTable(EntityIUserGem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserGem FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserGimmickOrnamentProgressTable.cs b/src/Models/Tables/EntityIUserGimmickOrnamentProgressTable.cs new file mode 100644 index 0000000..36c66f6 --- /dev/null +++ b/src/Models/Tables/EntityIUserGimmickOrnamentProgressTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserGimmickOrnamentProgressTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserGimmickOrnamentProgressTable(EntityIUserGimmickOrnamentProgress[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.GimmickSequenceScheduleId, element.GimmickSequenceId, element.GimmickId, element.GimmickOrnamentIndex); + } + + public EntityIUserGimmickOrnamentProgress FindByUserId((long, int, int, int, int) key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int, int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserGimmickSequenceTable.cs b/src/Models/Tables/EntityIUserGimmickSequenceTable.cs new file mode 100644 index 0000000..51ae5e9 --- /dev/null +++ b/src/Models/Tables/EntityIUserGimmickSequenceTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserGimmickSequenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserGimmickSequenceTable(EntityIUserGimmickSequence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.GimmickSequenceScheduleId); + } + + public EntityIUserGimmickSequence FindByUserId((long, int) key) + { + return FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + } +} diff --git a/src/Models/Tables/EntityIUserGimmickTable.cs b/src/Models/Tables/EntityIUserGimmickTable.cs new file mode 100644 index 0000000..8f189ac --- /dev/null +++ b/src/Models/Tables/EntityIUserGimmickTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserGimmickTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserGimmickTable(EntityIUserGimmick[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.GimmickSequenceScheduleId, element.GimmickSequenceId, element.GimmickId); + } + + public EntityIUserGimmick FindByUserId((long, int, int, int) key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserGimmickUnlockTable.cs b/src/Models/Tables/EntityIUserGimmickUnlockTable.cs new file mode 100644 index 0000000..a084611 --- /dev/null +++ b/src/Models/Tables/EntityIUserGimmickUnlockTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserGimmickUnlockTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserGimmickUnlockTable(EntityIUserGimmickUnlock[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.GimmickSequenceScheduleId, element.GimmickSequenceId, element.GimmickId); + } + + public bool TryFindByUserIdAndGimmickSequenceScheduleIdAndGimmickSequenceIdAndGimmickId(ValueTuple key, out EntityIUserGimmickUnlock result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserImportantItemTable.cs b/src/Models/Tables/EntityIUserImportantItemTable.cs new file mode 100644 index 0000000..646bac2 --- /dev/null +++ b/src/Models/Tables/EntityIUserImportantItemTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserImportantItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserImportantItemTable(EntityIUserImportantItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.ImportantItemId); + } + + public EntityIUserImportantItem FindByUserIdAndImportantItemId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndImportantItemId(ValueTuple key, out EntityIUserImportantItem result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); + + public RangeView FindRangeByUserIdAndImportantItemId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityIUserLimitedOpenTable.cs b/src/Models/Tables/EntityIUserLimitedOpenTable.cs new file mode 100644 index 0000000..0f75c81 --- /dev/null +++ b/src/Models/Tables/EntityIUserLimitedOpenTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserLimitedOpenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserLimitedOpenTable(EntityIUserLimitedOpen[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.LimitedOpenTargetType, element.TargetId); + } + + public EntityIUserLimitedOpen FindByUserIdAndLimitedOpenTargetTypeAndTargetId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, LimitedOpenTargetType, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserLoginBonusTable.cs b/src/Models/Tables/EntityIUserLoginBonusTable.cs new file mode 100644 index 0000000..12276ed --- /dev/null +++ b/src/Models/Tables/EntityIUserLoginBonusTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserLoginBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserLoginBonusTable(EntityIUserLoginBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.LoginBonusId); + } + + public EntityIUserLoginBonus FindByUserIdAndLoginBonusId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndLoginBonusId(ValueTuple key, out EntityIUserLoginBonus result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserLoginTable.cs b/src/Models/Tables/EntityIUserLoginTable.cs new file mode 100644 index 0000000..df1e5f6 --- /dev/null +++ b/src/Models/Tables/EntityIUserLoginTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserLoginTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserLoginTable(EntityIUserLogin[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } +} diff --git a/src/Models/Tables/EntityIUserMainQuestFlowStatusTable.cs b/src/Models/Tables/EntityIUserMainQuestFlowStatusTable.cs new file mode 100644 index 0000000..2cd2c5b --- /dev/null +++ b/src/Models/Tables/EntityIUserMainQuestFlowStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMainQuestFlowStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMainQuestFlowStatusTable(EntityIUserMainQuestFlowStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserMainQuestFlowStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMainQuestMainFlowStatusTable.cs b/src/Models/Tables/EntityIUserMainQuestMainFlowStatusTable.cs new file mode 100644 index 0000000..bd7d187 --- /dev/null +++ b/src/Models/Tables/EntityIUserMainQuestMainFlowStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMainQuestMainFlowStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMainQuestMainFlowStatusTable(EntityIUserMainQuestMainFlowStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserMainQuestMainFlowStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMainQuestProgressStatusTable.cs b/src/Models/Tables/EntityIUserMainQuestProgressStatusTable.cs new file mode 100644 index 0000000..5989db0 --- /dev/null +++ b/src/Models/Tables/EntityIUserMainQuestProgressStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMainQuestProgressStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMainQuestProgressStatusTable(EntityIUserMainQuestProgressStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserMainQuestProgressStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMainQuestReplayFlowStatusTable.cs b/src/Models/Tables/EntityIUserMainQuestReplayFlowStatusTable.cs new file mode 100644 index 0000000..9a1adc1 --- /dev/null +++ b/src/Models/Tables/EntityIUserMainQuestReplayFlowStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMainQuestReplayFlowStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMainQuestReplayFlowStatusTable(EntityIUserMainQuestReplayFlowStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserMainQuestReplayFlowStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMainQuestSeasonRouteTable.cs b/src/Models/Tables/EntityIUserMainQuestSeasonRouteTable.cs new file mode 100644 index 0000000..46ba361 --- /dev/null +++ b/src/Models/Tables/EntityIUserMainQuestSeasonRouteTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMainQuestSeasonRouteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMainQuestSeasonRouteTable(EntityIUserMainQuestSeasonRoute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MainQuestSeasonId); + } + + public EntityIUserMainQuestSeasonRoute FindByUserIdAndMainQuestSeasonId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMaterialTable.cs b/src/Models/Tables/EntityIUserMaterialTable.cs new file mode 100644 index 0000000..40fd500 --- /dev/null +++ b/src/Models/Tables/EntityIUserMaterialTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMaterialTable(EntityIUserMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MaterialId); + } + + public EntityIUserMaterial FindByUserIdAndMaterialId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserMissionCompletionProgressTable.cs b/src/Models/Tables/EntityIUserMissionCompletionProgressTable.cs new file mode 100644 index 0000000..f0c869c --- /dev/null +++ b/src/Models/Tables/EntityIUserMissionCompletionProgressTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMissionCompletionProgressTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMissionCompletionProgressTable(EntityIUserMissionCompletionProgress[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MissionId); + } +} diff --git a/src/Models/Tables/EntityIUserMissionPassPointTable.cs b/src/Models/Tables/EntityIUserMissionPassPointTable.cs new file mode 100644 index 0000000..f232497 --- /dev/null +++ b/src/Models/Tables/EntityIUserMissionPassPointTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMissionPassPointTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMissionPassPointTable(EntityIUserMissionPassPoint[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MissionPassId); + } + + public EntityIUserMissionPassPoint FindByUserIdAndMissionPassId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndMissionPassId(ValueTuple key, out EntityIUserMissionPassPoint result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserMissionTable.cs b/src/Models/Tables/EntityIUserMissionTable.cs new file mode 100644 index 0000000..78aac1b --- /dev/null +++ b/src/Models/Tables/EntityIUserMissionTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMissionTable(EntityIUserMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MissionId); + } + + public EntityIUserMission FindByUserIdAndMissionId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndMissionId(ValueTuple key, out EntityIUserMission result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserMovieTable.cs b/src/Models/Tables/EntityIUserMovieTable.cs new file mode 100644 index 0000000..7604cf5 --- /dev/null +++ b/src/Models/Tables/EntityIUserMovieTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserMovieTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserMovieTable(EntityIUserMovie[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.MovieId); + } + + public bool TryFindByUserIdAndMovieId(ValueTuple key, out EntityIUserMovie result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserNaviCutInTable.cs b/src/Models/Tables/EntityIUserNaviCutInTable.cs new file mode 100644 index 0000000..d4116a0 --- /dev/null +++ b/src/Models/Tables/EntityIUserNaviCutInTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserNaviCutInTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserNaviCutInTable(EntityIUserNaviCutIn[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.NaviCutInId); + } + + public bool TryFindByUserIdAndNaviCutInId(ValueTuple key, out EntityIUserNaviCutIn result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserOmikujiTable.cs b/src/Models/Tables/EntityIUserOmikujiTable.cs new file mode 100644 index 0000000..a321468 --- /dev/null +++ b/src/Models/Tables/EntityIUserOmikujiTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserOmikujiTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserOmikujiTable(EntityIUserOmikuji[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.OmikujiId); + } + + public EntityIUserOmikuji FindByUserIdAndOmikujiId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPartsGroupNoteTable.cs b/src/Models/Tables/EntityIUserPartsGroupNoteTable.cs new file mode 100644 index 0000000..f75e81d --- /dev/null +++ b/src/Models/Tables/EntityIUserPartsGroupNoteTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPartsGroupNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPartsGroupNoteTable(EntityIUserPartsGroupNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.PartsGroupId); + } + + public bool TryFindByUserIdAndPartsGroupId(ValueTuple key, out EntityIUserPartsGroupNote result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserPartsPresetTable.cs b/src/Models/Tables/EntityIUserPartsPresetTable.cs new file mode 100644 index 0000000..724a7fc --- /dev/null +++ b/src/Models/Tables/EntityIUserPartsPresetTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPartsPresetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPartsPresetTable(EntityIUserPartsPreset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserPartsPresetNumber); + } + + public EntityIUserPartsPreset FindByUserIdAndUserPartsPresetNumber(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndUserPartsPresetNumber(ValueTuple key, out EntityIUserPartsPreset result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserPartsPresetTagTable.cs b/src/Models/Tables/EntityIUserPartsPresetTagTable.cs new file mode 100644 index 0000000..c7461ce --- /dev/null +++ b/src/Models/Tables/EntityIUserPartsPresetTagTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPartsPresetTagTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPartsPresetTagTable(EntityIUserPartsPresetTag[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserPartsPresetTagNumber); + } + + public EntityIUserPartsPresetTag FindByUserIdAndUserPartsPresetTagNumber(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndUserPartsPresetTagNumber(ValueTuple key, out EntityIUserPartsPresetTag result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserPartsStatusSubTable.cs b/src/Models/Tables/EntityIUserPartsStatusSubTable.cs new file mode 100644 index 0000000..755ed70 --- /dev/null +++ b/src/Models/Tables/EntityIUserPartsStatusSubTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPartsStatusSubTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPartsStatusSubTable(EntityIUserPartsStatusSub[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserPartsUuid, element.StatusIndex); + } + + public EntityIUserPartsStatusSub FindByUserIdAndUserPartsUuidAndStatusIndex((long, string, int) key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPartsTable.cs b/src/Models/Tables/EntityIUserPartsTable.cs new file mode 100644 index 0000000..16ac46f --- /dev/null +++ b/src/Models/Tables/EntityIUserPartsTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPartsTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPartsTable(EntityIUserParts[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserPartsUuid); + } + + public EntityIUserParts FindByUserIdAndUserPartsUuid(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); + + public bool TryFindByUserIdAndUserPartsUuid(ValueTuple key, out EntityIUserParts result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserPortalCageStatusTable.cs b/src/Models/Tables/EntityIUserPortalCageStatusTable.cs new file mode 100644 index 0000000..453b55f --- /dev/null +++ b/src/Models/Tables/EntityIUserPortalCageStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPortalCageStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPortalCageStatusTable(EntityIUserPortalCageStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserPortalCageStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPossessionAutoConvertTable.cs b/src/Models/Tables/EntityIUserPossessionAutoConvertTable.cs new file mode 100644 index 0000000..6b4785c --- /dev/null +++ b/src/Models/Tables/EntityIUserPossessionAutoConvertTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPossessionAutoConvertTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPossessionAutoConvertTable(EntityIUserPossessionAutoConvert[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityIUserPremiumItemTable.cs b/src/Models/Tables/EntityIUserPremiumItemTable.cs new file mode 100644 index 0000000..dbd4ff2 --- /dev/null +++ b/src/Models/Tables/EntityIUserPremiumItemTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPremiumItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPremiumItemTable(EntityIUserPremiumItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.PremiumItemId); + } + + public EntityIUserPremiumItem FindByUserIdAndPremiumItemId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndPremiumItemId(ValueTuple key, out EntityIUserPremiumItem result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserProfileTable.cs b/src/Models/Tables/EntityIUserProfileTable.cs new file mode 100644 index 0000000..16ab7ea --- /dev/null +++ b/src/Models/Tables/EntityIUserProfileTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserProfileTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserProfileTable(EntityIUserProfile[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserProfile FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPvpDefenseDeckTable.cs b/src/Models/Tables/EntityIUserPvpDefenseDeckTable.cs new file mode 100644 index 0000000..192fd2d --- /dev/null +++ b/src/Models/Tables/EntityIUserPvpDefenseDeckTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPvpDefenseDeckTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPvpDefenseDeckTable(EntityIUserPvpDefenseDeck[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserPvpDefenseDeck FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPvpStatusTable.cs b/src/Models/Tables/EntityIUserPvpStatusTable.cs new file mode 100644 index 0000000..40df753 --- /dev/null +++ b/src/Models/Tables/EntityIUserPvpStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPvpStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPvpStatusTable(EntityIUserPvpStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserPvpStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserPvpWeeklyResultTable.cs b/src/Models/Tables/EntityIUserPvpWeeklyResultTable.cs new file mode 100644 index 0000000..70dbfbb --- /dev/null +++ b/src/Models/Tables/EntityIUserPvpWeeklyResultTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserPvpWeeklyResultTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserPvpWeeklyResultTable(EntityIUserPvpWeeklyResult[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.PvpWeeklyVersion); + } +} diff --git a/src/Models/Tables/EntityIUserQuestAutoOrbitTable.cs b/src/Models/Tables/EntityIUserQuestAutoOrbitTable.cs new file mode 100644 index 0000000..9097860 --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestAutoOrbitTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestAutoOrbitTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestAutoOrbitTable(EntityIUserQuestAutoOrbit[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserQuestAutoOrbit FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserQuestLimitContentStatusTable.cs b/src/Models/Tables/EntityIUserQuestLimitContentStatusTable.cs new file mode 100644 index 0000000..ce7be72 --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestLimitContentStatusTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestLimitContentStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityIUserQuestLimitContentStatusTable(EntityIUserQuestLimitContentStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestId); + secondaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityIUserQuestLimitContentStatus FindByUserIdAndQuestId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserQuestMissionTable.cs b/src/Models/Tables/EntityIUserQuestMissionTable.cs new file mode 100644 index 0000000..640e67f --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestMissionTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestMissionTable(EntityIUserQuestMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestId, element.QuestMissionId); + } + + public EntityIUserQuestMission FindByUserIdAndQuestIdAndQuestMissionId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key); + + public bool TryFindByUserIdAndQuestIdAndQuestMissionId(ValueTuple key, out EntityIUserQuestMission result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserQuestReplayFlowRewardGroupTable.cs b/src/Models/Tables/EntityIUserQuestReplayFlowRewardGroupTable.cs new file mode 100644 index 0000000..d9569ff --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestReplayFlowRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestReplayFlowRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestReplayFlowRewardGroupTable(EntityIUserQuestReplayFlowRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestReplayFlowRewardGroupId); + } + + public bool TryFindByUserIdAndQuestReplayFlowRewardGroupId(ValueTuple key, out EntityIUserQuestReplayFlowRewardGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserQuestSceneChoiceHistoryTable.cs b/src/Models/Tables/EntityIUserQuestSceneChoiceHistoryTable.cs new file mode 100644 index 0000000..cbfd9da --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestSceneChoiceHistoryTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestSceneChoiceHistoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestSceneChoiceHistoryTable(EntityIUserQuestSceneChoiceHistory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestSceneChoiceEffectId); + } + + public bool TryFindByUserIdAndQuestSceneChoiceEffectId(ValueTuple key, out EntityIUserQuestSceneChoiceHistory result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserQuestSceneChoiceTable.cs b/src/Models/Tables/EntityIUserQuestSceneChoiceTable.cs new file mode 100644 index 0000000..d603268 --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestSceneChoiceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestSceneChoiceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestSceneChoiceTable(EntityIUserQuestSceneChoice[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestSceneChoiceGroupingId); + } + + public bool TryFindByUserIdAndQuestSceneChoiceGroupingId(ValueTuple key, out EntityIUserQuestSceneChoice result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserQuestTable.cs b/src/Models/Tables/EntityIUserQuestTable.cs new file mode 100644 index 0000000..1e3b07a --- /dev/null +++ b/src/Models/Tables/EntityIUserQuestTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserQuestTable(EntityIUserQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.QuestId); + } + + public EntityIUserQuest FindByUserIdAndQuestId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); + + public bool TryFindByUserIdAndQuestId(ValueTuple key, out EntityIUserQuest result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserSettingTable.cs b/src/Models/Tables/EntityIUserSettingTable.cs new file mode 100644 index 0000000..f762020 --- /dev/null +++ b/src/Models/Tables/EntityIUserSettingTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserSettingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserSettingTable(EntityIUserSetting[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public bool TryFindByUserId(long key, out EntityIUserSetting result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserShopItemTable.cs b/src/Models/Tables/EntityIUserShopItemTable.cs new file mode 100644 index 0000000..52c0c01 --- /dev/null +++ b/src/Models/Tables/EntityIUserShopItemTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserShopItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserShopItemTable(EntityIUserShopItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.ShopItemId); + } + + public EntityIUserShopItem FindByUserIdAndShopItemId((long, int) key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserShopReplaceableLineupTable.cs b/src/Models/Tables/EntityIUserShopReplaceableLineupTable.cs new file mode 100644 index 0000000..36487d4 --- /dev/null +++ b/src/Models/Tables/EntityIUserShopReplaceableLineupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserShopReplaceableLineupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserShopReplaceableLineupTable(EntityIUserShopReplaceableLineup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.SlotNumber); + } + + public RangeView FindRangeByUserIdAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityIUserShopReplaceableTable.cs b/src/Models/Tables/EntityIUserShopReplaceableTable.cs new file mode 100644 index 0000000..f7bde66 --- /dev/null +++ b/src/Models/Tables/EntityIUserShopReplaceableTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserShopReplaceableTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserShopReplaceableTable(EntityIUserShopReplaceable[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserShopReplaceable FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserSideStoryQuestSceneProgressStatusTable.cs b/src/Models/Tables/EntityIUserSideStoryQuestSceneProgressStatusTable.cs new file mode 100644 index 0000000..1c073fa --- /dev/null +++ b/src/Models/Tables/EntityIUserSideStoryQuestSceneProgressStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserSideStoryQuestSceneProgressStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserSideStoryQuestSceneProgressStatusTable(EntityIUserSideStoryQuestSceneProgressStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserSideStoryQuestSceneProgressStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserSideStoryQuestTable.cs b/src/Models/Tables/EntityIUserSideStoryQuestTable.cs new file mode 100644 index 0000000..edb5b09 --- /dev/null +++ b/src/Models/Tables/EntityIUserSideStoryQuestTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserSideStoryQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserSideStoryQuestTable(EntityIUserSideStoryQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.SideStoryQuestId); + } +} diff --git a/src/Models/Tables/EntityIUserStatusTable.cs b/src/Models/Tables/EntityIUserStatusTable.cs new file mode 100644 index 0000000..38f68b1 --- /dev/null +++ b/src/Models/Tables/EntityIUserStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserStatusTable(EntityIUserStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUserStatus FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserTable.cs b/src/Models/Tables/EntityIUserTable.cs new file mode 100644 index 0000000..947d163 --- /dev/null +++ b/src/Models/Tables/EntityIUserTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserTable(EntityIUser[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserId; + } + + public EntityIUser FindByUserId(long key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityIUserThoughtTable.cs b/src/Models/Tables/EntityIUserThoughtTable.cs new file mode 100644 index 0000000..314dd34 --- /dev/null +++ b/src/Models/Tables/EntityIUserThoughtTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserThoughtTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserThoughtTable(EntityIUserThought[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserThoughtUuid); + } + + public bool TryFindByUserIdAndUserThoughtUuid(ValueTuple key, out EntityIUserThought result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserTripleDeckTable.cs b/src/Models/Tables/EntityIUserTripleDeckTable.cs new file mode 100644 index 0000000..ec3d555 --- /dev/null +++ b/src/Models/Tables/EntityIUserTripleDeckTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserTripleDeckTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserTripleDeckTable(EntityIUserTripleDeck[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.DeckType, element.UserDeckNumber); + } + + public EntityIUserTripleDeck FindByUserIdAndDeckTypeAndUserDeckNumber(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType, int)>.Default, key); + + public bool TryFindByUserIdAndDeckTypeAndUserDeckNumber(ValueTuple key, out EntityIUserTripleDeck result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserTutorialProgressTable.cs b/src/Models/Tables/EntityIUserTutorialProgressTable.cs new file mode 100644 index 0000000..920310a --- /dev/null +++ b/src/Models/Tables/EntityIUserTutorialProgressTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserTutorialProgressTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserTutorialProgressTable(EntityIUserTutorialProgress[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.TutorialType); + } + + public bool TryFindByUserIdAndTutorialType(ValueTuple key, out EntityIUserTutorialProgress result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, TutorialType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWeaponAbilityTable.cs b/src/Models/Tables/EntityIUserWeaponAbilityTable.cs new file mode 100644 index 0000000..7d390f2 --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponAbilityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponAbilityTable(EntityIUserWeaponAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserWeaponUuid, element.SlotNumber); + } + + public bool TryFindByUserIdAndUserWeaponUuidAndSlotNumber(ValueTuple key, out EntityIUserWeaponAbility result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWeaponAwakenTable.cs b/src/Models/Tables/EntityIUserWeaponAwakenTable.cs new file mode 100644 index 0000000..9ab0cd3 --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponAwakenTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponAwakenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponAwakenTable(EntityIUserWeaponAwaken[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserWeaponUuid); + } + + public bool TryFindByUserIdAndUserWeaponUuid(ValueTuple key, out EntityIUserWeaponAwaken result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWeaponNoteTable.cs b/src/Models/Tables/EntityIUserWeaponNoteTable.cs new file mode 100644 index 0000000..f61abef --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponNoteTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponNoteTable(EntityIUserWeaponNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.WeaponId); + } + + public bool TryFindByUserIdAndWeaponId(ValueTuple key, out EntityIUserWeaponNote result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWeaponSkillTable.cs b/src/Models/Tables/EntityIUserWeaponSkillTable.cs new file mode 100644 index 0000000..ecda795 --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponSkillTable(EntityIUserWeaponSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserWeaponUuid, element.SlotNumber); + } + + public bool TryFindByUserIdAndUserWeaponUuidAndSlotNumber(ValueTuple key, out EntityIUserWeaponSkill result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWeaponStoryTable.cs b/src/Models/Tables/EntityIUserWeaponStoryTable.cs new file mode 100644 index 0000000..d9578fa --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponStoryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponStoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponStoryTable(EntityIUserWeaponStory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.WeaponId); + } + + public EntityIUserWeaponStory FindByUserIdAndWeaponId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityIUserWeaponTable.cs b/src/Models/Tables/EntityIUserWeaponTable.cs new file mode 100644 index 0000000..28c7b04 --- /dev/null +++ b/src/Models/Tables/EntityIUserWeaponTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWeaponTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWeaponTable(EntityIUserWeapon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.UserWeaponUuid); + } + + public EntityIUserWeapon FindByUserIdAndUserWeaponUuid(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); + + public bool TryFindByUserIdAndUserWeaponUuid(ValueTuple key, out EntityIUserWeapon result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityIUserWebviewPanelMissionTable.cs b/src/Models/Tables/EntityIUserWebviewPanelMissionTable.cs new file mode 100644 index 0000000..8f5efea --- /dev/null +++ b/src/Models/Tables/EntityIUserWebviewPanelMissionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityIUserWebviewPanelMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityIUserWebviewPanelMissionTable(EntityIUserWebviewPanelMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.UserId, element.WebviewPanelMissionPageId); + } + + public EntityIUserWebviewPanelMission FindByUserIdAndWebviewPanelMissionPageId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourActionBlessTable.cs b/src/Models/Tables/EntityMAbilityBehaviourActionBlessTable.cs new file mode 100644 index 0000000..b4f18e9 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourActionBlessTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourActionBlessTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourActionBlessTable(EntityMAbilityBehaviourActionBless[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityBehaviourActionId; + } + + public EntityMAbilityBehaviourActionBless FindByAbilityBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourActionPassiveSkillTable.cs b/src/Models/Tables/EntityMAbilityBehaviourActionPassiveSkillTable.cs new file mode 100644 index 0000000..df88c68 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourActionPassiveSkillTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourActionPassiveSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourActionPassiveSkillTable(EntityMAbilityBehaviourActionPassiveSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityBehaviourActionId; + } + + public EntityMAbilityBehaviourActionPassiveSkill FindByAbilityBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourActionStatusDownTable.cs b/src/Models/Tables/EntityMAbilityBehaviourActionStatusDownTable.cs new file mode 100644 index 0000000..5a49055 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourActionStatusDownTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourActionStatusDownTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourActionStatusDownTable(EntityMAbilityBehaviourActionStatusDown[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityBehaviourActionId; + } + + public EntityMAbilityBehaviourActionStatusDown FindByAbilityBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourActionStatusTable.cs b/src/Models/Tables/EntityMAbilityBehaviourActionStatusTable.cs new file mode 100644 index 0000000..7a05d6f --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourActionStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourActionStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourActionStatusTable(EntityMAbilityBehaviourActionStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityBehaviourActionId; + } + + public EntityMAbilityBehaviourActionStatus FindByAbilityBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourGroupTable.cs b/src/Models/Tables/EntityMAbilityBehaviourGroupTable.cs new file mode 100644 index 0000000..946576e --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourGroupTable(EntityMAbilityBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.AbilityBehaviourGroupId, element.AbilityBehaviourIndex); + } + + public RangeView FindRangeByAbilityBehaviourGroupIdAndAbilityBehaviourIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMAbilityBehaviourTable.cs b/src/Models/Tables/EntityMAbilityBehaviourTable.cs new file mode 100644 index 0000000..c41f7b1 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityBehaviourTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityBehaviourTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityBehaviourTable(EntityMAbilityBehaviour[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityBehaviourId; + } + + public EntityMAbilityBehaviour FindByAbilityBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityDetailTable.cs b/src/Models/Tables/EntityMAbilityDetailTable.cs new file mode 100644 index 0000000..800f024 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityDetailTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityDetailTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityDetailTable(EntityMAbilityDetail[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityDetailId; + } + + public EntityMAbilityDetail FindByAbilityDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityLevelGroupTable.cs b/src/Models/Tables/EntityMAbilityLevelGroupTable.cs new file mode 100644 index 0000000..d30ed1b --- /dev/null +++ b/src/Models/Tables/EntityMAbilityLevelGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityLevelGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMAbilityLevelGroupTable(EntityMAbilityLevelGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.AbilityLevelGroupId, element.LevelLowerLimit); + secondaryIndexSelector = element => element.AbilityLevelGroupId; + } + + public EntityMAbilityLevelGroup FindClosestByAbilityLevelGroupIdAndLevelLowerLimit(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); + + public RangeView FindByAbilityLevelGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityStatusTable.cs b/src/Models/Tables/EntityMAbilityStatusTable.cs new file mode 100644 index 0000000..fee5d22 --- /dev/null +++ b/src/Models/Tables/EntityMAbilityStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityStatusTable(EntityMAbilityStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityStatusId; + } + + public EntityMAbilityStatus FindByAbilityStatusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAbilityTable.cs b/src/Models/Tables/EntityMAbilityTable.cs new file mode 100644 index 0000000..1f23d9d --- /dev/null +++ b/src/Models/Tables/EntityMAbilityTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAbilityTable(EntityMAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AbilityId; + } + + public EntityMAbility FindByAbilityId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByAbilityId(int key, out EntityMAbility result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMActorAnimationCategoryTable.cs b/src/Models/Tables/EntityMActorAnimationCategoryTable.cs new file mode 100644 index 0000000..e55ee2f --- /dev/null +++ b/src/Models/Tables/EntityMActorAnimationCategoryTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMActorAnimationCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMActorAnimationCategoryTable(EntityMActorAnimationCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorAnimationCategoryId; + } +} diff --git a/src/Models/Tables/EntityMActorAnimationControllerTable.cs b/src/Models/Tables/EntityMActorAnimationControllerTable.cs new file mode 100644 index 0000000..725a064 --- /dev/null +++ b/src/Models/Tables/EntityMActorAnimationControllerTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMActorAnimationControllerTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMActorAnimationControllerTable(EntityMActorAnimationController[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorAnimationControllerId; + } +} diff --git a/src/Models/Tables/EntityMActorAnimationTable.cs b/src/Models/Tables/EntityMActorAnimationTable.cs new file mode 100644 index 0000000..19e8e0e --- /dev/null +++ b/src/Models/Tables/EntityMActorAnimationTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMActorAnimationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMActorAnimationTable(EntityMActorAnimation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorAnimationId; + } + + public EntityMActorAnimation FindByActorAnimationId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMActorObjectTable.cs b/src/Models/Tables/EntityMActorObjectTable.cs new file mode 100644 index 0000000..6a57a6f --- /dev/null +++ b/src/Models/Tables/EntityMActorObjectTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMActorObjectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMActorObjectTable(EntityMActorObject[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorObjectId; + } + + public EntityMActorObject FindByActorObjectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMActorTable.cs b/src/Models/Tables/EntityMActorTable.cs new file mode 100644 index 0000000..2415e5d --- /dev/null +++ b/src/Models/Tables/EntityMActorTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMActorTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMActorTable(EntityMActor[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorId; + } + + public EntityMActor FindByActorId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByActorId(int key, out EntityMActor result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMAppealDialogTable.cs b/src/Models/Tables/EntityMAppealDialogTable.cs new file mode 100644 index 0000000..b5d61ab --- /dev/null +++ b/src/Models/Tables/EntityMAppealDialogTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAppealDialogTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMAppealDialogTable(EntityMAppealDialog[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AppealDialogId; + secondaryIndexSelector = element => element.AppealTargetType; + } + + public RangeView FindByAppealTargetType(AppealTargetType key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAssetBackgroundTable.cs b/src/Models/Tables/EntityMAssetBackgroundTable.cs new file mode 100644 index 0000000..6ee338b --- /dev/null +++ b/src/Models/Tables/EntityMAssetBackgroundTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetBackgroundTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetBackgroundTable(EntityMAssetBackground[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetBackgroundId; + } + + public EntityMAssetBackground FindByAssetBackgroundId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAssetCalculatorTable.cs b/src/Models/Tables/EntityMAssetCalculatorTable.cs new file mode 100644 index 0000000..ef5d16f --- /dev/null +++ b/src/Models/Tables/EntityMAssetCalculatorTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetCalculatorTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetCalculatorTable(EntityMAssetCalculator[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetCalculatorId; + } + + public EntityMAssetCalculator FindByAssetCalculatorId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAssetDataSettingTable.cs b/src/Models/Tables/EntityMAssetDataSettingTable.cs new file mode 100644 index 0000000..cbf375a --- /dev/null +++ b/src/Models/Tables/EntityMAssetDataSettingTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetDataSettingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetDataSettingTable(EntityMAssetDataSetting[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetDataSettingId; + } +} diff --git a/src/Models/Tables/EntityMAssetEffectTable.cs b/src/Models/Tables/EntityMAssetEffectTable.cs new file mode 100644 index 0000000..1b67e0e --- /dev/null +++ b/src/Models/Tables/EntityMAssetEffectTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetEffectTable(EntityMAssetEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetEffectId; + } +} diff --git a/src/Models/Tables/EntityMAssetGradeIconTable.cs b/src/Models/Tables/EntityMAssetGradeIconTable.cs new file mode 100644 index 0000000..1c807c0 --- /dev/null +++ b/src/Models/Tables/EntityMAssetGradeIconTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetGradeIconTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetGradeIconTable(EntityMAssetGradeIcon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetGradeIconId; + } + + public EntityMAssetGradeIcon FindByAssetGradeIconId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAssetTimelineTable.cs b/src/Models/Tables/EntityMAssetTimelineTable.cs new file mode 100644 index 0000000..8375be0 --- /dev/null +++ b/src/Models/Tables/EntityMAssetTimelineTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetTimelineTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetTimelineTable(EntityMAssetTimeline[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetTimelineId; + } + + public EntityMAssetTimeline FindByAssetTimelineId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMAssetTurnbattlePrefabTable.cs b/src/Models/Tables/EntityMAssetTurnbattlePrefabTable.cs new file mode 100644 index 0000000..1af8d60 --- /dev/null +++ b/src/Models/Tables/EntityMAssetTurnbattlePrefabTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMAssetTurnbattlePrefabTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMAssetTurnbattlePrefabTable(EntityMAssetTurnbattlePrefab[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetTurnbattlePrefabId; + } +} diff --git a/src/Models/Tables/EntityMBattleActorAiTable.cs b/src/Models/Tables/EntityMBattleActorAiTable.cs new file mode 100644 index 0000000..391f676 --- /dev/null +++ b/src/Models/Tables/EntityMBattleActorAiTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleActorAiTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleActorAiTable(EntityMBattleActorAi[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleActorAiId; + } + + public EntityMBattleActorAi FindByBattleActorAiId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleActorSkillAiGroupTable.cs b/src/Models/Tables/EntityMBattleActorSkillAiGroupTable.cs new file mode 100644 index 0000000..9f57e4e --- /dev/null +++ b/src/Models/Tables/EntityMBattleActorSkillAiGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleActorSkillAiGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleActorSkillAiGroupTable(EntityMBattleActorSkillAiGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleActorSkillAiGroupId, element.Priority); + } + + public RangeView FindRangeByBattleActorSkillAiGroupIdAndPriority(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleAdditionalAbilityTable.cs b/src/Models/Tables/EntityMBattleAdditionalAbilityTable.cs new file mode 100644 index 0000000..856ffdb --- /dev/null +++ b/src/Models/Tables/EntityMBattleAdditionalAbilityTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleAdditionalAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMBattleAdditionalAbilityTable(EntityMBattleAdditionalAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleGroupId, element.TargetActorAppearanceWaveNumber, element.AbilityIndex); + secondaryIndexSelector = element => (element.BattleGroupId, element.TargetActorAppearanceWaveNumber); + } + + public RangeView FindByBattleGroupIdAndTargetActorAppearanceWaveNumber(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleAttributeDamageCoefficientDefineTable.cs b/src/Models/Tables/EntityMBattleAttributeDamageCoefficientDefineTable.cs new file mode 100644 index 0000000..6229d25 --- /dev/null +++ b/src/Models/Tables/EntityMBattleAttributeDamageCoefficientDefineTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleAttributeDamageCoefficientDefineTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleAttributeDamageCoefficientDefineTable(EntityMBattleAttributeDamageCoefficientDefine[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleSchemeType; + } + + public EntityMBattleAttributeDamageCoefficientDefine FindByBattleSchemeType(BattleSchemeType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleAttributeDamageCoefficientGroupTable.cs b/src/Models/Tables/EntityMBattleAttributeDamageCoefficientGroupTable.cs new file mode 100644 index 0000000..3e73f3e --- /dev/null +++ b/src/Models/Tables/EntityMBattleAttributeDamageCoefficientGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleAttributeDamageCoefficientGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleAttributeDamageCoefficientGroupTable(EntityMBattleAttributeDamageCoefficientGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.AttributeDamageCoefficientGroupId, element.SkillExecutorAttributeType, element.SkillTargetAttributeType); + } +} diff --git a/src/Models/Tables/EntityMBattleBgmSetGroupTable.cs b/src/Models/Tables/EntityMBattleBgmSetGroupTable.cs new file mode 100644 index 0000000..d73de9e --- /dev/null +++ b/src/Models/Tables/EntityMBattleBgmSetGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBgmSetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBgmSetGroupTable(EntityMBattleBgmSetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BgmSetGroupId, element.BgmSetGroupIndex); + } + + public RangeView FindRangeByBgmSetGroupIdAndBgmSetGroupIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleBgmSetTable.cs b/src/Models/Tables/EntityMBattleBgmSetTable.cs new file mode 100644 index 0000000..356e74e --- /dev/null +++ b/src/Models/Tables/EntityMBattleBgmSetTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBgmSetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBgmSetTable(EntityMBattleBgmSet[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BgmSetId, element.TrackNumber); + } + + public RangeView FindRangeByBgmSetIdAndTrackNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleBigHuntDamageThresholdGroupTable.cs b/src/Models/Tables/EntityMBattleBigHuntDamageThresholdGroupTable.cs new file mode 100644 index 0000000..c39a978 --- /dev/null +++ b/src/Models/Tables/EntityMBattleBigHuntDamageThresholdGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBigHuntDamageThresholdGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBigHuntDamageThresholdGroupTable(EntityMBattleBigHuntDamageThresholdGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.KnockDownDamageThresholdGroupId, element.KnockDownDamageThresholdGroupOrder); + } + + public RangeView FindRangeByKnockDownDamageThresholdGroupIdAndKnockDownDamageThresholdGroupOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable.cs b/src/Models/Tables/EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable.cs new file mode 100644 index 0000000..1047a68 --- /dev/null +++ b/src/Models/Tables/EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBigHuntKnockDownGaugeValueConfigGroupTable(EntityMBattleBigHuntKnockDownGaugeValueConfigGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.KnockDownGaugeValueConfigGroupId, element.ActiveSkillHitCount, element.DamageValueLowerLimit); + } + + public RangeView FindRangeByKnockDownGaugeValueConfigGroupIdAndActiveSkillHitCountAndDamageValueLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleBigHuntPhaseGroupTable.cs b/src/Models/Tables/EntityMBattleBigHuntPhaseGroupTable.cs new file mode 100644 index 0000000..f4c8981 --- /dev/null +++ b/src/Models/Tables/EntityMBattleBigHuntPhaseGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBigHuntPhaseGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBigHuntPhaseGroupTable(EntityMBattleBigHuntPhaseGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleBigHuntPhaseGroupId, element.BattleBigHuntPhaseGroupOrder); + } + + public RangeView FindRangeByBattleBigHuntPhaseGroupIdAndBattleBigHuntPhaseGroupOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleBigHuntTable.cs b/src/Models/Tables/EntityMBattleBigHuntTable.cs new file mode 100644 index 0000000..146c94c --- /dev/null +++ b/src/Models/Tables/EntityMBattleBigHuntTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleBigHuntTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleBigHuntTable(EntityMBattleBigHunt[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleGroupId; + } + + public EntityMBattleBigHunt FindByBattleGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleCompanionSkillAiGroupTable.cs b/src/Models/Tables/EntityMBattleCompanionSkillAiGroupTable.cs new file mode 100644 index 0000000..554f268 --- /dev/null +++ b/src/Models/Tables/EntityMBattleCompanionSkillAiGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleCompanionSkillAiGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleCompanionSkillAiGroupTable(EntityMBattleCompanionSkillAiGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleCompanionSkillAiGroupId, element.Priority); + } +} diff --git a/src/Models/Tables/EntityMBattleCostumeSkillFireActTable.cs b/src/Models/Tables/EntityMBattleCostumeSkillFireActTable.cs new file mode 100644 index 0000000..b316ef2 --- /dev/null +++ b/src/Models/Tables/EntityMBattleCostumeSkillFireActTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleCostumeSkillFireActTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleCostumeSkillFireActTable(EntityMBattleCostumeSkillFireAct[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMBattleCostumeSkillFireAct result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleCostumeSkillSeTable.cs b/src/Models/Tables/EntityMBattleCostumeSkillSeTable.cs new file mode 100644 index 0000000..b402d4d --- /dev/null +++ b/src/Models/Tables/EntityMBattleCostumeSkillSeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleCostumeSkillSeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleCostumeSkillSeTable(EntityMBattleCostumeSkillSe[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMBattleCostumeSkillSe result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleDropRewardTable.cs b/src/Models/Tables/EntityMBattleDropRewardTable.cs new file mode 100644 index 0000000..7c7ff90 --- /dev/null +++ b/src/Models/Tables/EntityMBattleDropRewardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleDropRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleDropRewardTable(EntityMBattleDropReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleDropRewardId; + } + + public EntityMBattleDropReward FindByBattleDropRewardId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleEnemySizeTypeConfigTable.cs b/src/Models/Tables/EntityMBattleEnemySizeTypeConfigTable.cs new file mode 100644 index 0000000..8002931 --- /dev/null +++ b/src/Models/Tables/EntityMBattleEnemySizeTypeConfigTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEnemySizeTypeConfigTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEnemySizeTypeConfigTable(EntityMBattleEnemySizeTypeConfig[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAssetCategoryType, element.ActorSkeletonId); + } + + public bool TryFindByCostumeAssetCategoryTypeAndActorSkeletonId(ValueTuple key, out EntityMBattleEnemySizeTypeConfig result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(CostumeAssetCategoryType, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleEventGroupTable.cs b/src/Models/Tables/EntityMBattleEventGroupTable.cs new file mode 100644 index 0000000..dbe20ae --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventGroupTable(EntityMBattleEventGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleEventGroupId, element.BattleEventId); + } + + public RangeView FindRangeByBattleEventGroupIdAndBattleEventId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleEventReceiverBehaviourGroupTable.cs b/src/Models/Tables/EntityMBattleEventReceiverBehaviourGroupTable.cs new file mode 100644 index 0000000..ac1f34e --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventReceiverBehaviourGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventReceiverBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventReceiverBehaviourGroupTable(EntityMBattleEventReceiverBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleEventReceiverBehaviourGroupId, element.ExecuteOrder); + } + + public RangeView FindRangeByBattleEventReceiverBehaviourGroupIdAndExecuteOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleEventReceiverBehaviourHudActSequenceTable.cs b/src/Models/Tables/EntityMBattleEventReceiverBehaviourHudActSequenceTable.cs new file mode 100644 index 0000000..7ceb52c --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventReceiverBehaviourHudActSequenceTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventReceiverBehaviourHudActSequenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventReceiverBehaviourHudActSequenceTable(EntityMBattleEventReceiverBehaviourHudActSequence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleEventReceiverBehaviourId; + } + + public EntityMBattleEventReceiverBehaviourHudActSequence FindByBattleEventReceiverBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleEventReceiverBehaviourRadioMessageTable.cs b/src/Models/Tables/EntityMBattleEventReceiverBehaviourRadioMessageTable.cs new file mode 100644 index 0000000..6ac25d5 --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventReceiverBehaviourRadioMessageTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventReceiverBehaviourRadioMessageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventReceiverBehaviourRadioMessageTable(EntityMBattleEventReceiverBehaviourRadioMessage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleEventReceiverBehaviourId; + } + + public EntityMBattleEventReceiverBehaviourRadioMessage FindByBattleEventReceiverBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleEventTable.cs b/src/Models/Tables/EntityMBattleEventTable.cs new file mode 100644 index 0000000..e4b10a9 --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventTable(EntityMBattleEvent[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleEventId; + } + + public EntityMBattleEvent FindByBattleEventId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleEventTriggerBehaviourBattleStartTable.cs b/src/Models/Tables/EntityMBattleEventTriggerBehaviourBattleStartTable.cs new file mode 100644 index 0000000..0f1e1ab --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventTriggerBehaviourBattleStartTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventTriggerBehaviourBattleStartTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventTriggerBehaviourBattleStartTable(EntityMBattleEventTriggerBehaviourBattleStart[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleEventTriggerBehaviourId; + } + + public EntityMBattleEventTriggerBehaviourBattleStart FindByBattleEventTriggerBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleEventTriggerBehaviourGroupTable.cs b/src/Models/Tables/EntityMBattleEventTriggerBehaviourGroupTable.cs new file mode 100644 index 0000000..c4661d3 --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventTriggerBehaviourGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventTriggerBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventTriggerBehaviourGroupTable(EntityMBattleEventTriggerBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleEventTriggerBehaviourGroupId, element.BattleEventTriggerBehaviourType, element.BattleEventTriggerBehaviourId); + } +} diff --git a/src/Models/Tables/EntityMBattleEventTriggerBehaviourWaveStartTable.cs b/src/Models/Tables/EntityMBattleEventTriggerBehaviourWaveStartTable.cs new file mode 100644 index 0000000..1aadd08 --- /dev/null +++ b/src/Models/Tables/EntityMBattleEventTriggerBehaviourWaveStartTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleEventTriggerBehaviourWaveStartTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleEventTriggerBehaviourWaveStartTable(EntityMBattleEventTriggerBehaviourWaveStart[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleEventTriggerBehaviourId; + } + + public EntityMBattleEventTriggerBehaviourWaveStart FindByBattleEventTriggerBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleGeneralViewConfigurationTable.cs b/src/Models/Tables/EntityMBattleGeneralViewConfigurationTable.cs new file mode 100644 index 0000000..d38f8db --- /dev/null +++ b/src/Models/Tables/EntityMBattleGeneralViewConfigurationTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleGeneralViewConfigurationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleGeneralViewConfigurationTable(EntityMBattleGeneralViewConfiguration[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneId, element.WaveNumber); + } + + public bool TryFindByQuestSceneIdAndWaveNumber(ValueTuple key, out EntityMBattleGeneralViewConfiguration result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleGroupTable.cs b/src/Models/Tables/EntityMBattleGroupTable.cs new file mode 100644 index 0000000..e481aca --- /dev/null +++ b/src/Models/Tables/EntityMBattleGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleGroupTable(EntityMBattleGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleGroupId, element.WaveNumber); + } + + public RangeView FindRangeByBattleGroupIdAndWaveNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterBoardAbilityTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterBoardAbilityTable.cs new file mode 100644 index 0000000..6c450b3 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterBoardAbilityTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterBoardAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterBoardAbilityTable(EntityMBattleNpcCharacterBoardAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterId, element.AbilityId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterBoardCompleteRewardTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterBoardCompleteRewardTable.cs new file mode 100644 index 0000000..bb427de --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterBoardCompleteRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterBoardCompleteRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterBoardCompleteRewardTable(EntityMBattleNpcCharacterBoardCompleteReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterBoardCompleteRewardId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterBoardStatusUpTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterBoardStatusUpTable.cs new file mode 100644 index 0000000..18c1b76 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterBoardStatusUpTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterBoardStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterBoardStatusUpTable(EntityMBattleNpcCharacterBoardStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterId, element.StatusCalculationType); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterBoardTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterBoardTable.cs new file mode 100644 index 0000000..f11fb00 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterBoardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterBoardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterBoardTable(EntityMBattleNpcCharacterBoard[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterBoardId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterCostumeLevelBonusTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterCostumeLevelBonusTable.cs new file mode 100644 index 0000000..3e8adfa --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterCostumeLevelBonusTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterCostumeLevelBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterCostumeLevelBonusTable(EntityMBattleNpcCharacterCostumeLevelBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterId, element.StatusCalculationType); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterRebirthTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterRebirthTable.cs new file mode 100644 index 0000000..32c39cb --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterRebirthTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterRebirthTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterRebirthTable(EntityMBattleNpcCharacterRebirth[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterTable.cs new file mode 100644 index 0000000..854a79b --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterTable(EntityMBattleNpcCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterId); + } + + public EntityMBattleNpcCharacter FindByBattleNpcIdAndCharacterId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(long, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcCharacterViewerFieldTable.cs b/src/Models/Tables/EntityMBattleNpcCharacterViewerFieldTable.cs new file mode 100644 index 0000000..5db917c --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCharacterViewerFieldTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCharacterViewerFieldTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCharacterViewerFieldTable(EntityMBattleNpcCharacterViewerField[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CharacterViewerFieldId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCompanionTable.cs b/src/Models/Tables/EntityMBattleNpcCompanionTable.cs new file mode 100644 index 0000000..4d40570 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCompanionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCompanionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCompanionTable(EntityMBattleNpcCompanion[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCompanionUuid); + } + + public EntityMBattleNpcCompanion FindByBattleNpcIdAndBattleNpcCompanionUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeActiveSkillTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeActiveSkillTable.cs new file mode 100644 index 0000000..99cedd5 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeActiveSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeActiveSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeActiveSkillTable(EntityMBattleNpcCostumeActiveSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid); + } + + public EntityMBattleNpcCostumeActiveSkill FindByBattleNpcIdAndBattleNpcCostumeUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeAwakenStatusUpTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeAwakenStatusUpTable.cs new file mode 100644 index 0000000..79f8fbf --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeAwakenStatusUpTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeAwakenStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeAwakenStatusUpTable(EntityMBattleNpcCostumeAwakenStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid, element.StatusCalculationType); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReevaluateTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReevaluateTable.cs new file mode 100644 index 0000000..f5e6ad1 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReevaluateTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLevelBonusReevaluateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLevelBonusReevaluateTable(EntityMBattleNpcCostumeLevelBonusReevaluate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleNpcId; + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReleaseStatusTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReleaseStatusTable.cs new file mode 100644 index 0000000..076be9e --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLevelBonusReleaseStatusTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLevelBonusReleaseStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLevelBonusReleaseStatusTable(EntityMBattleNpcCostumeLevelBonusReleaseStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.CostumeId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectAbilityTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectAbilityTable.cs new file mode 100644 index 0000000..c9bd90e --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectAbilityTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLotteryEffectAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLotteryEffectAbilityTable(EntityMBattleNpcCostumeLotteryEffectAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid, element.SlotNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectPendingTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectPendingTable.cs new file mode 100644 index 0000000..9e48839 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectPendingTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLotteryEffectPendingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLotteryEffectPendingTable(EntityMBattleNpcCostumeLotteryEffectPending[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectStatusUpTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectStatusUpTable.cs new file mode 100644 index 0000000..df64fed --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectStatusUpTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLotteryEffectStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLotteryEffectStatusUpTable(EntityMBattleNpcCostumeLotteryEffectStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid, element.StatusCalculationType); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectTable.cs new file mode 100644 index 0000000..f6dc279 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeLotteryEffectTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeLotteryEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeLotteryEffectTable(EntityMBattleNpcCostumeLotteryEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid, element.SlotNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcCostumeTable.cs b/src/Models/Tables/EntityMBattleNpcCostumeTable.cs new file mode 100644 index 0000000..045d31b --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcCostumeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcCostumeTable(EntityMBattleNpcCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcCostumeUuid); + } + + public EntityMBattleNpcCostume FindByBattleNpcIdAndBattleNpcCostumeUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckBackupTable.cs b/src/Models/Tables/EntityMBattleNpcDeckBackupTable.cs new file mode 100644 index 0000000..9edab0c --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckBackupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckBackupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckBackupTable(EntityMBattleNpcDeckBackup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckBackupUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckCharacterDressupCostumeTable.cs b/src/Models/Tables/EntityMBattleNpcDeckCharacterDressupCostumeTable.cs new file mode 100644 index 0000000..c35179d --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckCharacterDressupCostumeTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckCharacterDressupCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckCharacterDressupCostumeTable(EntityMBattleNpcDeckCharacterDressupCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckCharacterDropCategoryTable.cs b/src/Models/Tables/EntityMBattleNpcDeckCharacterDropCategoryTable.cs new file mode 100644 index 0000000..54b1c12 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckCharacterDropCategoryTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckCharacterDropCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckCharacterDropCategoryTable(EntityMBattleNpcDeckCharacterDropCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid); + } + + public EntityMBattleNpcDeckCharacterDropCategory FindByBattleNpcIdAndBattleNpcDeckCharacterUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckCharacterTable.cs b/src/Models/Tables/EntityMBattleNpcDeckCharacterTable.cs new file mode 100644 index 0000000..e51dbb1 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckCharacterTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckCharacterTable(EntityMBattleNpcDeckCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid); + } + + public EntityMBattleNpcDeckCharacter FindByBattleNpcIdAndBattleNpcDeckCharacterUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckCharacterTypeTable.cs b/src/Models/Tables/EntityMBattleNpcDeckCharacterTypeTable.cs new file mode 100644 index 0000000..242ee0c --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckCharacterTypeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckCharacterTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckCharacterTypeTable(EntityMBattleNpcDeckCharacterType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid); + } + + public EntityMBattleNpcDeckCharacterType FindByBattleNpcIdAndBattleNpcDeckCharacterUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupRestoredTable.cs b/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupRestoredTable.cs new file mode 100644 index 0000000..c1a2d49 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupRestoredTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckLimitContentBackupRestoredTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckLimitContentBackupRestoredTable(EntityMBattleNpcDeckLimitContentBackupRestored[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.EventQuestChapterId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupTable.cs b/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupTable.cs new file mode 100644 index 0000000..f365ec0 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckLimitContentBackupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckLimitContentBackupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckLimitContentBackupTable(EntityMBattleNpcDeckLimitContentBackup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.EventQuestChapterId, element.EventQuestSequenceSortOrder); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckLimitContentDeletedCharacterTable.cs b/src/Models/Tables/EntityMBattleNpcDeckLimitContentDeletedCharacterTable.cs new file mode 100644 index 0000000..19c7d6f --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckLimitContentDeletedCharacterTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckLimitContentDeletedCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckLimitContentDeletedCharacterTable(EntityMBattleNpcDeckLimitContentDeletedCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckNumber, element.BattleNpcDeckCharacterNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckLimitContentRestrictedTable.cs b/src/Models/Tables/EntityMBattleNpcDeckLimitContentRestrictedTable.cs new file mode 100644 index 0000000..5ae40d4 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckLimitContentRestrictedTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckLimitContentRestrictedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckLimitContentRestrictedTable(EntityMBattleNpcDeckLimitContentRestricted[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.EventQuestChapterId, element.QuestId, element.DeckRestrictedUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckPartsGroupTable.cs b/src/Models/Tables/EntityMBattleNpcDeckPartsGroupTable.cs new file mode 100644 index 0000000..cb3c95b --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckPartsGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckPartsGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckPartsGroupTable(EntityMBattleNpcDeckPartsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid, element.BattleNpcPartsUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckSubWeaponGroupTable.cs b/src/Models/Tables/EntityMBattleNpcDeckSubWeaponGroupTable.cs new file mode 100644 index 0000000..71161fd --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckSubWeaponGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckSubWeaponGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckSubWeaponGroupTable(EntityMBattleNpcDeckSubWeaponGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcDeckCharacterUuid, element.BattleNpcWeaponUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckTable.cs b/src/Models/Tables/EntityMBattleNpcDeckTable.cs new file mode 100644 index 0000000..5cb318f --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckTable(EntityMBattleNpcDeck[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.DeckType, element.BattleNpcDeckNumber); + } + + public EntityMBattleNpcDeck FindByBattleNpcIdAndDeckTypeAndBattleNpcDeckNumber(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, DeckType, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcDeckTypeNoteTable.cs b/src/Models/Tables/EntityMBattleNpcDeckTypeNoteTable.cs new file mode 100644 index 0000000..b61092b --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcDeckTypeNoteTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcDeckTypeNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcDeckTypeNoteTable(EntityMBattleNpcDeckTypeNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.DeckType); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcPartsGroupNoteTable.cs b/src/Models/Tables/EntityMBattleNpcPartsGroupNoteTable.cs new file mode 100644 index 0000000..b11e888 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcPartsGroupNoteTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcPartsGroupNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcPartsGroupNoteTable(EntityMBattleNpcPartsGroupNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.PartsGroupId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcPartsPresetTable.cs b/src/Models/Tables/EntityMBattleNpcPartsPresetTable.cs new file mode 100644 index 0000000..0fcf06c --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcPartsPresetTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcPartsPresetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcPartsPresetTable(EntityMBattleNpcPartsPreset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcPartsPresetNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcPartsPresetTagTable.cs b/src/Models/Tables/EntityMBattleNpcPartsPresetTagTable.cs new file mode 100644 index 0000000..bf7b956 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcPartsPresetTagTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcPartsPresetTagTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcPartsPresetTagTable(EntityMBattleNpcPartsPresetTag[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcPartsPresetTagNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcPartsStatusSubTable.cs b/src/Models/Tables/EntityMBattleNpcPartsStatusSubTable.cs new file mode 100644 index 0000000..96ad249 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcPartsStatusSubTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcPartsStatusSubTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcPartsStatusSubTable(EntityMBattleNpcPartsStatusSub[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcPartsUuid, element.StatusIndex); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcPartsTable.cs b/src/Models/Tables/EntityMBattleNpcPartsTable.cs new file mode 100644 index 0000000..c93ac83 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcPartsTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcPartsTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcPartsTable(EntityMBattleNpcParts[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcPartsUuid); + } + + public EntityMBattleNpcParts FindByBattleNpcIdAndBattleNpcPartsUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcSpecialEndActTable.cs b/src/Models/Tables/EntityMBattleNpcSpecialEndActTable.cs new file mode 100644 index 0000000..1e11c44 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcSpecialEndActTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcSpecialEndActTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcSpecialEndActTable(EntityMBattleNpcSpecialEndAct[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneId, element.WaveNumber, element.BattleNpcId, element.BattleNpcDeckCharacterUuid); + } + + public EntityMBattleNpcSpecialEndAct FindByQuestSceneIdAndWaveNumberAndBattleNpcIdAndBattleNpcDeckCharacterUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int, long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleNpcTable.cs b/src/Models/Tables/EntityMBattleNpcTable.cs new file mode 100644 index 0000000..1626083 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcTable(EntityMBattleNpc[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleNpcId; + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponAbilityReevaluateTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponAbilityReevaluateTable.cs new file mode 100644 index 0000000..0d9c564 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponAbilityReevaluateTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponAbilityReevaluateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponAbilityReevaluateTable(EntityMBattleNpcWeaponAbilityReevaluate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleNpcId; + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponAbilityTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponAbilityTable.cs new file mode 100644 index 0000000..c1054f3 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponAbilityTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponAbilityTable(EntityMBattleNpcWeaponAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcWeaponUuid, element.SlotNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponAwakenTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponAwakenTable.cs new file mode 100644 index 0000000..7142971 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponAwakenTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponAwakenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponAwakenTable(EntityMBattleNpcWeaponAwaken[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcWeaponUuid); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponNoteReevaluateTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponNoteReevaluateTable.cs new file mode 100644 index 0000000..e2173dd --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponNoteReevaluateTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponNoteReevaluateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponNoteReevaluateTable(EntityMBattleNpcWeaponNoteReevaluate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleNpcId; + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponNoteTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponNoteTable.cs new file mode 100644 index 0000000..4e444de --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponNoteTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponNoteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponNoteTable(EntityMBattleNpcWeaponNote[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.WeaponId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponSkillTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponSkillTable.cs new file mode 100644 index 0000000..27ec9c9 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponSkillTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponSkillTable(EntityMBattleNpcWeaponSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcWeaponUuid, element.SlotNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponStoryReevaluateTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponStoryReevaluateTable.cs new file mode 100644 index 0000000..d3f166f --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponStoryReevaluateTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponStoryReevaluateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponStoryReevaluateTable(EntityMBattleNpcWeaponStoryReevaluate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleNpcId; + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponStoryTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponStoryTable.cs new file mode 100644 index 0000000..874fcae --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponStoryTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponStoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponStoryTable(EntityMBattleNpcWeaponStory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.WeaponId); + } +} diff --git a/src/Models/Tables/EntityMBattleNpcWeaponTable.cs b/src/Models/Tables/EntityMBattleNpcWeaponTable.cs new file mode 100644 index 0000000..7c7d675 --- /dev/null +++ b/src/Models/Tables/EntityMBattleNpcWeaponTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleNpcWeaponTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleNpcWeaponTable(EntityMBattleNpcWeapon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleNpcId, element.BattleNpcWeaponUuid); + } + + public EntityMBattleNpcWeapon FindByBattleNpcIdAndBattleNpcWeaponUuid(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(long, string)>.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleProgressUiTypeTable.cs b/src/Models/Tables/EntityMBattleProgressUiTypeTable.cs new file mode 100644 index 0000000..921e373 --- /dev/null +++ b/src/Models/Tables/EntityMBattleProgressUiTypeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleProgressUiTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleProgressUiTypeTable(EntityMBattleProgressUiType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public bool TryFindByQuestSceneId(int key, out EntityMBattleProgressUiType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleQuestSceneBgmSetGroupTable.cs b/src/Models/Tables/EntityMBattleQuestSceneBgmSetGroupTable.cs new file mode 100644 index 0000000..7b2f2c8 --- /dev/null +++ b/src/Models/Tables/EntityMBattleQuestSceneBgmSetGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleQuestSceneBgmSetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleQuestSceneBgmSetGroupTable(EntityMBattleQuestSceneBgmSetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public EntityMBattleQuestSceneBgmSetGroup FindByQuestSceneId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleQuestSceneBgmTable.cs b/src/Models/Tables/EntityMBattleQuestSceneBgmTable.cs new file mode 100644 index 0000000..2bd589d --- /dev/null +++ b/src/Models/Tables/EntityMBattleQuestSceneBgmTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleQuestSceneBgmTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleQuestSceneBgmTable(EntityMBattleQuestSceneBgm[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneId, element.StartWaveNumber); + } +} diff --git a/src/Models/Tables/EntityMBattleRentalDeckTable.cs b/src/Models/Tables/EntityMBattleRentalDeckTable.cs new file mode 100644 index 0000000..f8cb31a --- /dev/null +++ b/src/Models/Tables/EntityMBattleRentalDeckTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleRentalDeckTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleRentalDeckTable(EntityMBattleRentalDeck[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleGroupId; + } + + public EntityMBattleRentalDeck FindByBattleGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleSkillBehaviourHitDamageConfigurationTable.cs b/src/Models/Tables/EntityMBattleSkillBehaviourHitDamageConfigurationTable.cs new file mode 100644 index 0000000..ebddbfc --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillBehaviourHitDamageConfigurationTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillBehaviourHitDamageConfigurationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleSkillBehaviourHitDamageConfigurationTable(EntityMBattleSkillBehaviourHitDamageConfiguration[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillCategoryType, element.HitCount, element.HitIndexLowerLimit); + } +} diff --git a/src/Models/Tables/EntityMBattleSkillFireActConditionAttributeTypeTable.cs b/src/Models/Tables/EntityMBattleSkillFireActConditionAttributeTypeTable.cs new file mode 100644 index 0000000..733bfb9 --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillFireActConditionAttributeTypeTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillFireActConditionAttributeTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleSkillFireActConditionAttributeTypeTable(EntityMBattleSkillFireActConditionAttributeType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleSkillFireActConditionId; + } + + public bool TryFindByBattleSkillFireActConditionId(int key, out EntityMBattleSkillFireActConditionAttributeType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleSkillFireActConditionGroupTable.cs b/src/Models/Tables/EntityMBattleSkillFireActConditionGroupTable.cs new file mode 100644 index 0000000..cb375e2 --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillFireActConditionGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillFireActConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMBattleSkillFireActConditionGroupTable(EntityMBattleSkillFireActConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BattleSkillFireActConditionGroupId, element.BattleSkillFireActConditionGroupOrder); + secondaryIndexSelector = element => element.BattleSkillFireActConditionGroupId; + } + + public RangeView FindByBattleSkillFireActConditionGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBattleSkillFireActConditionSkillCategoryTypeTable.cs b/src/Models/Tables/EntityMBattleSkillFireActConditionSkillCategoryTypeTable.cs new file mode 100644 index 0000000..135c8bf --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillFireActConditionSkillCategoryTypeTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillFireActConditionSkillCategoryTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleSkillFireActConditionSkillCategoryTypeTable(EntityMBattleSkillFireActConditionSkillCategoryType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleSkillFireActConditionId; + } + + public bool TryFindByBattleSkillFireActConditionId(int key, out EntityMBattleSkillFireActConditionSkillCategoryType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleSkillFireActConditionWeaponTypeTable.cs b/src/Models/Tables/EntityMBattleSkillFireActConditionWeaponTypeTable.cs new file mode 100644 index 0000000..295c695 --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillFireActConditionWeaponTypeTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillFireActConditionWeaponTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleSkillFireActConditionWeaponTypeTable(EntityMBattleSkillFireActConditionWeaponType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleSkillFireActConditionId; + } + + public bool TryFindByBattleSkillFireActConditionId(int key, out EntityMBattleSkillFireActConditionWeaponType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleSkillFireActTable.cs b/src/Models/Tables/EntityMBattleSkillFireActTable.cs new file mode 100644 index 0000000..732c9f5 --- /dev/null +++ b/src/Models/Tables/EntityMBattleSkillFireActTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleSkillFireActTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleSkillFireActTable(EntityMBattleSkillFireAct[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleSkillFireActId; + } + + public bool TryFindByBattleSkillFireActId(int key, out EntityMBattleSkillFireAct result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBattleTable.cs b/src/Models/Tables/EntityMBattleTable.cs new file mode 100644 index 0000000..3f107f4 --- /dev/null +++ b/src/Models/Tables/EntityMBattleTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBattleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBattleTable(EntityMBattle[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BattleId; + } + + public EntityMBattle FindByBattleId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByBattleId(int key, out EntityMBattle result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMBeginnerCampaignTable.cs b/src/Models/Tables/EntityMBeginnerCampaignTable.cs new file mode 100644 index 0000000..848d3e0 --- /dev/null +++ b/src/Models/Tables/EntityMBeginnerCampaignTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBeginnerCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBeginnerCampaignTable(EntityMBeginnerCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BeginnerCampaignId; + } + + public EntityMBeginnerCampaign FindByBeginnerCampaignId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntBossGradeGroupAttributeTable.cs b/src/Models/Tables/EntityMBigHuntBossGradeGroupAttributeTable.cs new file mode 100644 index 0000000..0ee814a --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossGradeGroupAttributeTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossGradeGroupAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossGradeGroupAttributeTable(EntityMBigHuntBossGradeGroupAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AttributeType; + } +} diff --git a/src/Models/Tables/EntityMBigHuntBossGradeGroupTable.cs b/src/Models/Tables/EntityMBigHuntBossGradeGroupTable.cs new file mode 100644 index 0000000..d5e543b --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossGradeGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossGradeGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossGradeGroupTable(EntityMBigHuntBossGradeGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntBossGradeGroupId, element.NecessaryScore); + } + + public EntityMBigHuntBossGradeGroup FindClosestByBigHuntBossGradeGroupIdAndNecessaryScore(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, long)>.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMBigHuntBossQuestGroupChallengeCategoryTable.cs b/src/Models/Tables/EntityMBigHuntBossQuestGroupChallengeCategoryTable.cs new file mode 100644 index 0000000..0d79ab1 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossQuestGroupChallengeCategoryTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossQuestGroupChallengeCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossQuestGroupChallengeCategoryTable(EntityMBigHuntBossQuestGroupChallengeCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntBossQuestGroupChallengeCategoryId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMBigHuntBossQuestGroupTable.cs b/src/Models/Tables/EntityMBigHuntBossQuestGroupTable.cs new file mode 100644 index 0000000..86eb29d --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossQuestGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossQuestGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossQuestGroupTable(EntityMBigHuntBossQuestGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntBossQuestGroupId, element.SortOrder); + } + + public RangeView FindRangeByBigHuntBossQuestGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBigHuntBossQuestTable.cs b/src/Models/Tables/EntityMBigHuntBossQuestTable.cs new file mode 100644 index 0000000..8bc3f91 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossQuestTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossQuestTable(EntityMBigHuntBossQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntBossQuestId; + } + + public EntityMBigHuntBossQuest FindByBigHuntBossQuestId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntBossTable.cs b/src/Models/Tables/EntityMBigHuntBossTable.cs new file mode 100644 index 0000000..f4ff5f0 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntBossTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntBossTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntBossTable(EntityMBigHuntBoss[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntBossId; + } + + public EntityMBigHuntBoss FindByBigHuntBossId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntLinkTable.cs b/src/Models/Tables/EntityMBigHuntLinkTable.cs new file mode 100644 index 0000000..c93db6f --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntLinkTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntLinkTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntLinkTable(EntityMBigHuntLink[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntLinkId; + } +} diff --git a/src/Models/Tables/EntityMBigHuntQuestGroupTable.cs b/src/Models/Tables/EntityMBigHuntQuestGroupTable.cs new file mode 100644 index 0000000..3481031 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntQuestGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntQuestGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntQuestGroupTable(EntityMBigHuntQuestGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntQuestGroupId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMBigHuntQuestScoreCoefficientTable.cs b/src/Models/Tables/EntityMBigHuntQuestScoreCoefficientTable.cs new file mode 100644 index 0000000..59d0cc9 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntQuestScoreCoefficientTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntQuestScoreCoefficientTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntQuestScoreCoefficientTable(EntityMBigHuntQuestScoreCoefficient[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntQuestScoreCoefficientId; + } + + public EntityMBigHuntQuestScoreCoefficient FindByBigHuntQuestScoreCoefficientId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntQuestTable.cs b/src/Models/Tables/EntityMBigHuntQuestTable.cs new file mode 100644 index 0000000..0eb70e0 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntQuestTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntQuestTable(EntityMBigHuntQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntQuestId; + } + + public EntityMBigHuntQuest FindByBigHuntQuestId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntRewardGroupTable.cs b/src/Models/Tables/EntityMBigHuntRewardGroupTable.cs new file mode 100644 index 0000000..68c1038 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntRewardGroupTable(EntityMBigHuntRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntRewardGroupId, element.SortOrder); + } + + public RangeView FindRangeByBigHuntRewardGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMBigHuntScheduleTable.cs b/src/Models/Tables/EntityMBigHuntScheduleTable.cs new file mode 100644 index 0000000..b322a42 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntScheduleTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntScheduleTable(EntityMBigHuntSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.BigHuntScheduleId; + } + + public EntityMBigHuntSchedule FindByBigHuntScheduleId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMBigHuntScoreRewardGroupScheduleTable.cs b/src/Models/Tables/EntityMBigHuntScoreRewardGroupScheduleTable.cs new file mode 100644 index 0000000..4169ede --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntScoreRewardGroupScheduleTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntScoreRewardGroupScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntScoreRewardGroupScheduleTable(EntityMBigHuntScoreRewardGroupSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntScoreRewardGroupScheduleId, element.GroupIndex); + } +} diff --git a/src/Models/Tables/EntityMBigHuntScoreRewardGroupTable.cs b/src/Models/Tables/EntityMBigHuntScoreRewardGroupTable.cs new file mode 100644 index 0000000..8a7a468 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntScoreRewardGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntScoreRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntScoreRewardGroupTable(EntityMBigHuntScoreRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntScoreRewardGroupId, element.NecessaryScore); + } +} diff --git a/src/Models/Tables/EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable.cs b/src/Models/Tables/EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable.cs new file mode 100644 index 0000000..a7fecc1 --- /dev/null +++ b/src/Models/Tables/EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMBigHuntWeeklyAttributeScoreRewardGroupScheduleTable(EntityMBigHuntWeeklyAttributeScoreRewardGroupSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.BigHuntWeeklyAttributeScoreRewardGroupScheduleId, element.AttributeType, element.GroupIndex); + } +} diff --git a/src/Models/Tables/EntityMCageMemoryTable.cs b/src/Models/Tables/EntityMCageMemoryTable.cs new file mode 100644 index 0000000..7e3bf8f --- /dev/null +++ b/src/Models/Tables/EntityMCageMemoryTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCageMemoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCageMemoryTable(EntityMCageMemory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CageMemoryId; + secondaryIndexSelector = element => element.MainQuestSeasonId; + } + + public EntityMCageMemory FindByCageMemoryId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCageOrnamentMainQuestChapterStillTable.cs b/src/Models/Tables/EntityMCageOrnamentMainQuestChapterStillTable.cs new file mode 100644 index 0000000..8593b5d --- /dev/null +++ b/src/Models/Tables/EntityMCageOrnamentMainQuestChapterStillTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCageOrnamentMainQuestChapterStillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCageOrnamentMainQuestChapterStillTable(EntityMCageOrnamentMainQuestChapterStill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MainQuestChapterId; + } + + public EntityMCageOrnamentMainQuestChapterStill FindByMainQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCageOrnamentRewardTable.cs b/src/Models/Tables/EntityMCageOrnamentRewardTable.cs new file mode 100644 index 0000000..624c446 --- /dev/null +++ b/src/Models/Tables/EntityMCageOrnamentRewardTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCageOrnamentRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCageOrnamentRewardTable(EntityMCageOrnamentReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CageOrnamentRewardId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMCageOrnamentStillReleaseConditionTable.cs b/src/Models/Tables/EntityMCageOrnamentStillReleaseConditionTable.cs new file mode 100644 index 0000000..c9e8f1d --- /dev/null +++ b/src/Models/Tables/EntityMCageOrnamentStillReleaseConditionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCageOrnamentStillReleaseConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCageOrnamentStillReleaseConditionTable(EntityMCageOrnamentStillReleaseCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CageOrnamentStillReleaseConditionId, element.CageOrnamentId); + } +} diff --git a/src/Models/Tables/EntityMCageOrnamentTable.cs b/src/Models/Tables/EntityMCageOrnamentTable.cs new file mode 100644 index 0000000..ebdc23e --- /dev/null +++ b/src/Models/Tables/EntityMCageOrnamentTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCageOrnamentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCageOrnamentTable(EntityMCageOrnament[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CageOrnamentId; + } + + public EntityMCageOrnament FindByCageOrnamentId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByCageOrnamentId(int key, out EntityMCageOrnament result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); + + public RangeView FindRangeByCageOrnamentId(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCatalogCompanionTable.cs b/src/Models/Tables/EntityMCatalogCompanionTable.cs new file mode 100644 index 0000000..ea612b3 --- /dev/null +++ b/src/Models/Tables/EntityMCatalogCompanionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogCompanionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogCompanionTable(EntityMCatalogCompanion[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionId; + } + + public EntityMCatalogCompanion FindByCompanionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCatalogCostumeTable.cs b/src/Models/Tables/EntityMCatalogCostumeTable.cs new file mode 100644 index 0000000..d2ec84f --- /dev/null +++ b/src/Models/Tables/EntityMCatalogCostumeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogCostumeTable(EntityMCatalogCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCatalogCostume result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCatalogPartsGroupTable.cs b/src/Models/Tables/EntityMCatalogPartsGroupTable.cs new file mode 100644 index 0000000..436201d --- /dev/null +++ b/src/Models/Tables/EntityMCatalogPartsGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogPartsGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogPartsGroupTable(EntityMCatalogPartsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsGroupId; + } + + public EntityMCatalogPartsGroup FindByPartsGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCatalogTermTable.cs b/src/Models/Tables/EntityMCatalogTermTable.cs new file mode 100644 index 0000000..7b59090 --- /dev/null +++ b/src/Models/Tables/EntityMCatalogTermTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogTermTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogTermTable(EntityMCatalogTerm[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CatalogTermId; + } + + public EntityMCatalogTerm FindByCatalogTermId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCatalogThoughtTable.cs b/src/Models/Tables/EntityMCatalogThoughtTable.cs new file mode 100644 index 0000000..2d8b986 --- /dev/null +++ b/src/Models/Tables/EntityMCatalogThoughtTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogThoughtTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogThoughtTable(EntityMCatalogThought[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ThoughtId; + } + + public EntityMCatalogThought FindByThoughtId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCatalogWeaponTable.cs b/src/Models/Tables/EntityMCatalogWeaponTable.cs new file mode 100644 index 0000000..f4f6788 --- /dev/null +++ b/src/Models/Tables/EntityMCatalogWeaponTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCatalogWeaponTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCatalogWeaponTable(EntityMCatalogWeapon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponId; + } + + public EntityMCatalogWeapon FindByWeaponId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardAbilityMaxLevelTable.cs b/src/Models/Tables/EntityMCharacterBoardAbilityMaxLevelTable.cs new file mode 100644 index 0000000..7c3b37e --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardAbilityMaxLevelTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardAbilityMaxLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardAbilityMaxLevelTable(EntityMCharacterBoardAbilityMaxLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterId, element.AbilityId); + } + + public EntityMCharacterBoardAbilityMaxLevel FindByCharacterIdAndAbilityId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardAbilityTable.cs b/src/Models/Tables/EntityMCharacterBoardAbilityTable.cs new file mode 100644 index 0000000..0affe87 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardAbilityTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardAbilityTable(EntityMCharacterBoardAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardAbilityId; + } + + public bool TryFindByCharacterBoardAbilityId(int key, out EntityMCharacterBoardAbility result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCharacterBoardAssignmentTable.cs b/src/Models/Tables/EntityMCharacterBoardAssignmentTable.cs new file mode 100644 index 0000000..ce77c28 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardAssignmentTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardAssignmentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardAssignmentTable(EntityMCharacterBoardAssignment[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterId; + } + + public EntityMCharacterBoardAssignment FindByCharacterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardCategoryTable.cs b/src/Models/Tables/EntityMCharacterBoardCategoryTable.cs new file mode 100644 index 0000000..892daee --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardCategoryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardCategoryTable(EntityMCharacterBoardCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardCategoryId; + } + + public EntityMCharacterBoardCategory FindByCharacterBoardCategoryId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardCompleteRewardGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardCompleteRewardGroupTable.cs new file mode 100644 index 0000000..46f88dc --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardCompleteRewardGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardCompleteRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardCompleteRewardGroupTable(EntityMCharacterBoardCompleteRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardCompleteRewardGroupId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMCharacterBoardCompleteRewardTable.cs b/src/Models/Tables/EntityMCharacterBoardCompleteRewardTable.cs new file mode 100644 index 0000000..6cd6846 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardCompleteRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardCompleteRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardCompleteRewardTable(EntityMCharacterBoardCompleteReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardCompleteRewardId; + } +} diff --git a/src/Models/Tables/EntityMCharacterBoardConditionDetailTable.cs b/src/Models/Tables/EntityMCharacterBoardConditionDetailTable.cs new file mode 100644 index 0000000..11de908 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardConditionDetailTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardConditionDetailTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardConditionDetailTable(EntityMCharacterBoardConditionDetail[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardConditionDetailId, element.DetailIndex); + } + + public EntityMCharacterBoardConditionDetail FindByCharacterBoardConditionDetailIdAndDetailIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public EntityMCharacterBoardConditionDetail FindClosestByCharacterBoardConditionDetailIdAndDetailIndex(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMCharacterBoardConditionGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardConditionGroupTable.cs new file mode 100644 index 0000000..97b4896 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardConditionGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardConditionGroupTable(EntityMCharacterBoardConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardConditionGroupId; + } + + public EntityMCharacterBoardConditionGroup FindByCharacterBoardConditionGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardConditionIgnoreTable.cs b/src/Models/Tables/EntityMCharacterBoardConditionIgnoreTable.cs new file mode 100644 index 0000000..05433a3 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardConditionIgnoreTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardConditionIgnoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardConditionIgnoreTable(EntityMCharacterBoardConditionIgnore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardConditionIgnoreId, element.IgnoreIndex); + } +} diff --git a/src/Models/Tables/EntityMCharacterBoardConditionTable.cs b/src/Models/Tables/EntityMCharacterBoardConditionTable.cs new file mode 100644 index 0000000..0fba689 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardConditionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardConditionTable(EntityMCharacterBoardCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardConditionGroupId, element.GroupIndex); + } + + public RangeView FindRangeByCharacterBoardConditionGroupIdAndGroupIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCharacterBoardEffectTargetGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardEffectTargetGroupTable.cs new file mode 100644 index 0000000..1441418 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardEffectTargetGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardEffectTargetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardEffectTargetGroupTable(EntityMCharacterBoardEffectTargetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardEffectTargetGroupId, element.GroupIndex); + } + + public RangeView FindRangeByCharacterBoardEffectTargetGroupIdAndGroupIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCharacterBoardGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardGroupTable.cs new file mode 100644 index 0000000..6b0e04f --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardGroupTable(EntityMCharacterBoardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardGroupId; + } + + public EntityMCharacterBoardGroup FindByCharacterBoardGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardPanelReleaseEffectGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardPanelReleaseEffectGroupTable.cs new file mode 100644 index 0000000..a8e5e71 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardPanelReleaseEffectGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardPanelReleaseEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardPanelReleaseEffectGroupTable(EntityMCharacterBoardPanelReleaseEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardPanelReleaseEffectGroupId, element.SortOrder); + } + + public EntityMCharacterBoardPanelReleaseEffectGroup FindByCharacterBoardPanelReleaseEffectGroupIdAndSortOrder(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardPanelReleasePossessionGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardPanelReleasePossessionGroupTable.cs new file mode 100644 index 0000000..304a1aa --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardPanelReleasePossessionGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardPanelReleasePossessionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardPanelReleasePossessionGroupTable(EntityMCharacterBoardPanelReleasePossessionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardPanelReleasePossessionGroupId, element.PossessionType, element.PossessionId); + } + + public RangeView FindRangeByCharacterBoardPanelReleasePossessionGroupIdAndPossessionTypeAndPossessionId( + ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, PossessionType, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCharacterBoardPanelReleaseRewardGroupTable.cs b/src/Models/Tables/EntityMCharacterBoardPanelReleaseRewardGroupTable.cs new file mode 100644 index 0000000..683451f --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardPanelReleaseRewardGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardPanelReleaseRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardPanelReleaseRewardGroupTable(EntityMCharacterBoardPanelReleaseRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterBoardPanelReleaseRewardGroupId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMCharacterBoardPanelTable.cs b/src/Models/Tables/EntityMCharacterBoardPanelTable.cs new file mode 100644 index 0000000..b75a520 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardPanelTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardPanelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardPanelTable(EntityMCharacterBoardPanel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardPanelId; + } + + public EntityMCharacterBoardPanel FindByCharacterBoardPanelId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterBoardStatusUpTable.cs b/src/Models/Tables/EntityMCharacterBoardStatusUpTable.cs new file mode 100644 index 0000000..626836d --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardStatusUpTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardStatusUpTable(EntityMCharacterBoardStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardStatusUpId; + } + + public bool TryFindByCharacterBoardStatusUpId(int key, out EntityMCharacterBoardStatusUp result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCharacterBoardTable.cs b/src/Models/Tables/EntityMCharacterBoardTable.cs new file mode 100644 index 0000000..02aee82 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterBoardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterBoardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterBoardTable(EntityMCharacterBoard[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterBoardId; + } + + public EntityMCharacterBoard FindByCharacterBoardId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterDisplaySwitchTable.cs b/src/Models/Tables/EntityMCharacterDisplaySwitchTable.cs new file mode 100644 index 0000000..057bcd6 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterDisplaySwitchTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterDisplaySwitchTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterDisplaySwitchTable(EntityMCharacterDisplaySwitch[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterId; + } + + public EntityMCharacterDisplaySwitch FindByCharacterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterLevelBonusAbilityGroupTable.cs b/src/Models/Tables/EntityMCharacterLevelBonusAbilityGroupTable.cs new file mode 100644 index 0000000..02af20a --- /dev/null +++ b/src/Models/Tables/EntityMCharacterLevelBonusAbilityGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterLevelBonusAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterLevelBonusAbilityGroupTable(EntityMCharacterLevelBonusAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterLevelBonusAbilityGroupId, element.ActivationCharacterLevel); + } + + public RangeView FindRangeByCharacterLevelBonusAbilityGroupIdAndActivationCharacterLevel(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCharacterRebirthMaterialGroupTable.cs b/src/Models/Tables/EntityMCharacterRebirthMaterialGroupTable.cs new file mode 100644 index 0000000..d8a09e7 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterRebirthMaterialGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterRebirthMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCharacterRebirthMaterialGroupTable(EntityMCharacterRebirthMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterRebirthMaterialGroupId, element.MaterialId); + secondaryIndexSelector = element => element.CharacterRebirthMaterialGroupId; + } + + public RangeView FindByCharacterRebirthMaterialGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterRebirthStepGroupTable.cs b/src/Models/Tables/EntityMCharacterRebirthStepGroupTable.cs new file mode 100644 index 0000000..f370671 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterRebirthStepGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterRebirthStepGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterRebirthStepGroupTable(EntityMCharacterRebirthStepGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterRebirthStepGroupId, element.BeforeRebirthCount); + } + + public EntityMCharacterRebirthStepGroup FindByCharacterRebirthStepGroupIdAndBeforeRebirthCount(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterRebirthTable.cs b/src/Models/Tables/EntityMCharacterRebirthTable.cs new file mode 100644 index 0000000..505c2cc --- /dev/null +++ b/src/Models/Tables/EntityMCharacterRebirthTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterRebirthTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCharacterRebirthTable(EntityMCharacterRebirth[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterId; + secondaryIndexSelector = element => element.CharacterAssignmentType; + } + + public EntityMCharacterRebirth FindByCharacterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindByCharacterAssignmentType(CharacterAssignmentType key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterTable.cs b/src/Models/Tables/EntityMCharacterTable.cs new file mode 100644 index 0000000..361f7f2 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCharacterTable(EntityMCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterId; + secondaryIndexSelector = element => element.EndWeaponId; + } + + public EntityMCharacter FindByCharacterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindByEndWeaponId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterViewerActorIconTable.cs b/src/Models/Tables/EntityMCharacterViewerActorIconTable.cs new file mode 100644 index 0000000..dfb99dc --- /dev/null +++ b/src/Models/Tables/EntityMCharacterViewerActorIconTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterViewerActorIconTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterViewerActorIconTable(EntityMCharacterViewerActorIcon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAssetCategoryType, element.SkeletonId, element.AssetVariationId); + } + + public bool TryFindByCostumeAssetCategoryTypeAndSkeletonIdAndAssetVariationId(ValueTuple key, out EntityMCharacterViewerActorIcon result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(CostumeAssetCategoryType, int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCharacterViewerFieldSettingsTable.cs b/src/Models/Tables/EntityMCharacterViewerFieldSettingsTable.cs new file mode 100644 index 0000000..54fa17e --- /dev/null +++ b/src/Models/Tables/EntityMCharacterViewerFieldSettingsTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterViewerFieldSettingsTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterViewerFieldSettingsTable(EntityMCharacterViewerFieldSettings[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.AssetBackgroundId; + } + + public EntityMCharacterViewerFieldSettings FindByAssetBackgroundId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByAssetBackgroundId(int key, out EntityMCharacterViewerFieldSettings result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCharacterViewerFieldTable.cs b/src/Models/Tables/EntityMCharacterViewerFieldTable.cs new file mode 100644 index 0000000..77eda57 --- /dev/null +++ b/src/Models/Tables/EntityMCharacterViewerFieldTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterViewerFieldTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterViewerFieldTable(EntityMCharacterViewerField[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CharacterViewerFieldId; + } + + public EntityMCharacterViewerField FindByCharacterViewerFieldId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCharacterVoiceUnlockConditionTable.cs b/src/Models/Tables/EntityMCharacterVoiceUnlockConditionTable.cs new file mode 100644 index 0000000..eb85dea --- /dev/null +++ b/src/Models/Tables/EntityMCharacterVoiceUnlockConditionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCharacterVoiceUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCharacterVoiceUnlockConditionTable(EntityMCharacterVoiceUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CharacterId, element.SortOrder); + } + + public EntityMCharacterVoiceUnlockCondition FindByCharacterIdAndSortOrder(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCollectionBonusEffectTable.cs b/src/Models/Tables/EntityMCollectionBonusEffectTable.cs new file mode 100644 index 0000000..4163e7e --- /dev/null +++ b/src/Models/Tables/EntityMCollectionBonusEffectTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCollectionBonusEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCollectionBonusEffectTable(EntityMCollectionBonusEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CollectionBonusEffectId, element.CollectionBonusEffectType); + } + + public EntityMCollectionBonusEffect FindByCollectionBonusEffectIdAndCollectionBonusEffectType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, CollectionBonusEffectType)>.Default, key); + + public RangeView FindRangeByCollectionBonusEffectIdAndCollectionBonusEffectType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, CollectionBonusEffectType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCollectionBonusQuestAssignmentGroupTable.cs b/src/Models/Tables/EntityMCollectionBonusQuestAssignmentGroupTable.cs new file mode 100644 index 0000000..dfc0dd5 --- /dev/null +++ b/src/Models/Tables/EntityMCollectionBonusQuestAssignmentGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCollectionBonusQuestAssignmentGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCollectionBonusQuestAssignmentGroupTable(EntityMCollectionBonusQuestAssignmentGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CollectionBonusQuestAssignmentGroupId, element.CollectionBonusQuestAssignmentId); + } + + public RangeView FindRangeByCollectionBonusQuestAssignmentGroupIdAndCollectionBonusQuestAssignmentId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCollectionBonusQuestAssignmentTable.cs b/src/Models/Tables/EntityMCollectionBonusQuestAssignmentTable.cs new file mode 100644 index 0000000..400d7ad --- /dev/null +++ b/src/Models/Tables/EntityMCollectionBonusQuestAssignmentTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCollectionBonusQuestAssignmentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCollectionBonusQuestAssignmentTable(EntityMCollectionBonusQuestAssignment[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CollectionBonusQuestAssignmentId; + } + + public EntityMCollectionBonusQuestAssignment FindByCollectionBonusQuestAssignmentId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMComboCalculationSettingTable.cs b/src/Models/Tables/EntityMComboCalculationSettingTable.cs new file mode 100644 index 0000000..d8cc7dc --- /dev/null +++ b/src/Models/Tables/EntityMComboCalculationSettingTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMComboCalculationSettingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMComboCalculationSettingTable(EntityMComboCalculationSetting[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ComboCountLowerLimit; + } +} diff --git a/src/Models/Tables/EntityMComebackCampaignTable.cs b/src/Models/Tables/EntityMComebackCampaignTable.cs new file mode 100644 index 0000000..69b3215 --- /dev/null +++ b/src/Models/Tables/EntityMComebackCampaignTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMComebackCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMComebackCampaignTable(EntityMComebackCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ComebackCampaignId; + } + + public EntityMComebackCampaign FindByComebackCampaignId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCompanionAbilityGroupTable.cs b/src/Models/Tables/EntityMCompanionAbilityGroupTable.cs new file mode 100644 index 0000000..48111d1 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionAbilityGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionAbilityGroupTable(EntityMCompanionAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CompanionAbilityGroupId, element.SlotNumber); + } + + public EntityMCompanionAbilityGroup FindByCompanionAbilityGroupIdAndSlotNumber(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCompanionAbilityLevelTable.cs b/src/Models/Tables/EntityMCompanionAbilityLevelTable.cs new file mode 100644 index 0000000..b36b07d --- /dev/null +++ b/src/Models/Tables/EntityMCompanionAbilityLevelTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionAbilityLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionAbilityLevelTable(EntityMCompanionAbilityLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionLevelLowerLimit; + } + + public EntityMCompanionAbilityLevel FindClosestByCompanionLevelLowerLimit(int key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer.Default, key, selectLower); + + public RangeView FindRangeByCompanionLevelLowerLimit(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCompanionBaseStatusTable.cs b/src/Models/Tables/EntityMCompanionBaseStatusTable.cs new file mode 100644 index 0000000..47b7ea6 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionBaseStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionBaseStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionBaseStatusTable(EntityMCompanionBaseStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionBaseStatusId; + } + + public EntityMCompanionBaseStatus FindByCompanionBaseStatusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCompanionCategoryTable.cs b/src/Models/Tables/EntityMCompanionCategoryTable.cs new file mode 100644 index 0000000..602cfb5 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionCategoryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionCategoryTable(EntityMCompanionCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionCategoryType; + } + + public EntityMCompanionCategory FindByCompanionCategoryType(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCompanionDuplicationExchangePossessionGroupTable.cs b/src/Models/Tables/EntityMCompanionDuplicationExchangePossessionGroupTable.cs new file mode 100644 index 0000000..06b2a50 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionDuplicationExchangePossessionGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionDuplicationExchangePossessionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionDuplicationExchangePossessionGroupTable(EntityMCompanionDuplicationExchangePossessionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CompanionId, element.PossessionType); + } +} diff --git a/src/Models/Tables/EntityMCompanionEnhancedTable.cs b/src/Models/Tables/EntityMCompanionEnhancedTable.cs new file mode 100644 index 0000000..304cd54 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionEnhancedTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionEnhancedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionEnhancedTable(EntityMCompanionEnhanced[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionEnhancedId; + } + + public bool TryFindByCompanionEnhancedId(int key, out EntityMCompanionEnhanced result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCompanionEnhancementMaterialTable.cs b/src/Models/Tables/EntityMCompanionEnhancementMaterialTable.cs new file mode 100644 index 0000000..2ad43d4 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionEnhancementMaterialTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionEnhancementMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionEnhancementMaterialTable(EntityMCompanionEnhancementMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CompanionCategoryType, element.Level, element.MaterialId); + } +} diff --git a/src/Models/Tables/EntityMCompanionSkillLevelTable.cs b/src/Models/Tables/EntityMCompanionSkillLevelTable.cs new file mode 100644 index 0000000..bda2093 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionSkillLevelTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionSkillLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionSkillLevelTable(EntityMCompanionSkillLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionLevelLowerLimit; + } + + public EntityMCompanionSkillLevel FindClosestByCompanionLevelLowerLimit(int key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer.Default, key, selectLower); + + public RangeView FindRangeByCompanionLevelLowerLimit(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCompanionStatusCalculationTable.cs b/src/Models/Tables/EntityMCompanionStatusCalculationTable.cs new file mode 100644 index 0000000..821c924 --- /dev/null +++ b/src/Models/Tables/EntityMCompanionStatusCalculationTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionStatusCalculationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionStatusCalculationTable(EntityMCompanionStatusCalculation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionStatusCalculationId; + } + + public EntityMCompanionStatusCalculation FindByCompanionStatusCalculationId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCompanionTable.cs b/src/Models/Tables/EntityMCompanionTable.cs new file mode 100644 index 0000000..8beb93c --- /dev/null +++ b/src/Models/Tables/EntityMCompanionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompanionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompanionTable(EntityMCompanion[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CompanionId; + } + + public EntityMCompanion FindByCompanionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCompleteMissionGroupTable.cs b/src/Models/Tables/EntityMCompleteMissionGroupTable.cs new file mode 100644 index 0000000..615b52b --- /dev/null +++ b/src/Models/Tables/EntityMCompleteMissionGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCompleteMissionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCompleteMissionGroupTable(EntityMCompleteMissionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MissionId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMConfigTable.cs b/src/Models/Tables/EntityMConfigTable.cs new file mode 100644 index 0000000..3e8bc73 --- /dev/null +++ b/src/Models/Tables/EntityMConfigTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMConfigTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMConfigTable(EntityMConfig[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ConfigKey; + } + + public EntityMConfig FindByConfigKey(string key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMConsumableItemEffectTable.cs b/src/Models/Tables/EntityMConsumableItemEffectTable.cs new file mode 100644 index 0000000..0e0e965 --- /dev/null +++ b/src/Models/Tables/EntityMConsumableItemEffectTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMConsumableItemEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMConsumableItemEffectTable(EntityMConsumableItemEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ConsumableItemId; + } + + public EntityMConsumableItemEffect FindByConsumableItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMConsumableItemTable.cs b/src/Models/Tables/EntityMConsumableItemTable.cs new file mode 100644 index 0000000..68fe5ba --- /dev/null +++ b/src/Models/Tables/EntityMConsumableItemTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMConsumableItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMConsumableItemTable(EntityMConsumableItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ConsumableItemId; + } + + public EntityMConsumableItem FindByConsumableItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMConsumableItemTermTable.cs b/src/Models/Tables/EntityMConsumableItemTermTable.cs new file mode 100644 index 0000000..f9ad379 --- /dev/null +++ b/src/Models/Tables/EntityMConsumableItemTermTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMConsumableItemTermTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMConsumableItemTermTable(EntityMConsumableItemTerm[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ConsumableItemTermId; + } + + public EntityMConsumableItemTerm FindByConsumableItemTermId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMContentsStoryTable.cs b/src/Models/Tables/EntityMContentsStoryTable.cs new file mode 100644 index 0000000..0e9f892 --- /dev/null +++ b/src/Models/Tables/EntityMContentsStoryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMContentsStoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMContentsStoryTable(EntityMContentsStory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ContentsStoryId; + } + + public EntityMContentsStory FindByContentsStoryId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeAbilityGroupTable.cs b/src/Models/Tables/EntityMCostumeAbilityGroupTable.cs new file mode 100644 index 0000000..7bbf7bf --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAbilityGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeAbilityGroupTable(EntityMCostumeAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAbilityGroupId, element.SlotNumber); + secondaryIndexSelector = element => element.CostumeAbilityGroupId; + } + + public RangeView FindByCostumeAbilityGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeAbilityLevelGroupTable.cs b/src/Models/Tables/EntityMCostumeAbilityLevelGroupTable.cs new file mode 100644 index 0000000..608b1eb --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAbilityLevelGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAbilityLevelGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAbilityLevelGroupTable(EntityMCostumeAbilityLevelGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAbilityLevelGroupId, element.CostumeLimitBreakCountLowerLimit); + } + + public EntityMCostumeAbilityLevelGroup FindClosestByCostumeAbilityLevelGroupIdAndCostumeLimitBreakCountLowerLimit(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMCostumeActiveSkillEnhancementMaterialTable.cs b/src/Models/Tables/EntityMCostumeActiveSkillEnhancementMaterialTable.cs new file mode 100644 index 0000000..c7cd2dd --- /dev/null +++ b/src/Models/Tables/EntityMCostumeActiveSkillEnhancementMaterialTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeActiveSkillEnhancementMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeActiveSkillEnhancementMaterialTable(EntityMCostumeActiveSkillEnhancementMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeActiveSkillEnhancementMaterialId, element.SkillLevel, element.MaterialId); + } + + public RangeView FindRangeByCostumeActiveSkillEnhancementMaterialIdAndSkillLevelAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeActiveSkillGroupTable.cs b/src/Models/Tables/EntityMCostumeActiveSkillGroupTable.cs new file mode 100644 index 0000000..6e0717d --- /dev/null +++ b/src/Models/Tables/EntityMCostumeActiveSkillGroupTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeActiveSkillGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeActiveSkillGroupTable(EntityMCostumeActiveSkillGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeActiveSkillGroupId, element.CostumeLimitBreakCountLowerLimit); + } + + public EntityMCostumeActiveSkillGroup FindByCostumeActiveSkillGroupIdAndCostumeLimitBreakCountLowerLimit(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public EntityMCostumeActiveSkillGroup FindClosestByCostumeActiveSkillGroupIdAndCostumeLimitBreakCountLowerLimit(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMCostumeAnimationStepTable.cs b/src/Models/Tables/EntityMCostumeAnimationStepTable.cs new file mode 100644 index 0000000..cc69dc9 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAnimationStepTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAnimationStepTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAnimationStepTable(EntityMCostumeAnimationStep[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeId, element.Step, element.ActorAnimationId); + } +} diff --git a/src/Models/Tables/EntityMCostumeAutoOrganizationConditionTable.cs b/src/Models/Tables/EntityMCostumeAutoOrganizationConditionTable.cs new file mode 100644 index 0000000..e8a3ed5 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAutoOrganizationConditionTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAutoOrganizationConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAutoOrganizationConditionTable(EntityMCostumeAutoOrganizationCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeId, element.CostumeAutoOrganizationConditionType); + } + + public bool TryFindByCostumeIdAndCostumeAutoOrganizationConditionType(ValueTuple key, out EntityMCostumeAutoOrganizationCondition result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, CostumeAutoOrganizationConditionType)>.Default, key, out result); + + public RangeView FindRangeByCostumeIdAndCostumeAutoOrganizationConditionType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, CostumeAutoOrganizationConditionType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenAbilityTable.cs b/src/Models/Tables/EntityMCostumeAwakenAbilityTable.cs new file mode 100644 index 0000000..a80afdb --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenAbilityTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenAbilityTable(EntityMCostumeAwakenAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeAwakenAbilityId; + } + + public EntityMCostumeAwakenAbility FindByCostumeAwakenAbilityId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByCostumeAwakenAbilityId(int key, out EntityMCostumeAwakenAbility result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenEffectGroupTable.cs b/src/Models/Tables/EntityMCostumeAwakenEffectGroupTable.cs new file mode 100644 index 0000000..c37a84d --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenEffectGroupTable.cs @@ -0,0 +1,25 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeAwakenEffectGroupTable(EntityMCostumeAwakenEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenEffectGroupId, element.AwakenStep, element.CostumeAwakenEffectType); + secondaryIndexSelector = element => (element.CostumeAwakenEffectGroupId, element.CostumeAwakenEffectType); + } + + public RangeView FindRangeByCostumeAwakenEffectGroupIdAndAwakenStepAndCostumeAwakenEffectType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, CostumeAwakenEffectType)>.Default, min, max, ascendant); + + public RangeView FindByCostumeAwakenEffectGroupIdAndCostumeAwakenEffectType(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, CostumeAwakenEffectType)>.Default, key); + + public RangeView FindRangeByCostumeAwakenEffectGroupIdAndCostumeAwakenEffectType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, secondaryIndexSelector, Comparer<(int, CostumeAwakenEffectType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenItemAcquireTable.cs b/src/Models/Tables/EntityMCostumeAwakenItemAcquireTable.cs new file mode 100644 index 0000000..f094774 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenItemAcquireTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenItemAcquireTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenItemAcquireTable(EntityMCostumeAwakenItemAcquire[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenItemAcquireId, element.PossessionType, element.PossessionId); + } + + public RangeView FindRangeByCostumeAwakenItemAcquireIdAndPossessionTypeAndPossessionId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, PossessionType, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenMaterialGroupTable.cs b/src/Models/Tables/EntityMCostumeAwakenMaterialGroupTable.cs new file mode 100644 index 0000000..fdb3f0a --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenMaterialGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenMaterialGroupTable(EntityMCostumeAwakenMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenMaterialGroupId, element.MaterialId); + } + + public RangeView FindRangeByCostumeAwakenMaterialGroupIdAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenPriceGroupTable.cs b/src/Models/Tables/EntityMCostumeAwakenPriceGroupTable.cs new file mode 100644 index 0000000..02a8145 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenPriceGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenPriceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenPriceGroupTable(EntityMCostumeAwakenPriceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenPriceGroupId, element.AwakenStepLowerLimit); + } + + public RangeView FindRangeByCostumeAwakenPriceGroupIdAndAwakenStepLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenStatusUpGroupTable.cs b/src/Models/Tables/EntityMCostumeAwakenStatusUpGroupTable.cs new file mode 100644 index 0000000..4332c5d --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenStatusUpGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenStatusUpGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeAwakenStatusUpGroupTable(EntityMCostumeAwakenStatusUpGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenStatusUpGroupId, element.SortOrder); + secondaryIndexSelector = element => element.CostumeAwakenStatusUpGroupId; + } + + public RangeView FindRangeByCostumeAwakenStatusUpGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenStepMaterialGroupTable.cs b/src/Models/Tables/EntityMCostumeAwakenStepMaterialGroupTable.cs new file mode 100644 index 0000000..3d42206 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenStepMaterialGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenStepMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenStepMaterialGroupTable(EntityMCostumeAwakenStepMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeAwakenStepMaterialGroupId, element.AwakenStepLowerLimit); + } + + public RangeView FindRangeByCostumeAwakenStepMaterialGroupIdAndAwakenStepLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeAwakenTable.cs b/src/Models/Tables/EntityMCostumeAwakenTable.cs new file mode 100644 index 0000000..23a9441 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeAwakenTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeAwakenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeAwakenTable(EntityMCostumeAwaken[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCostumeAwaken result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeBaseStatusTable.cs b/src/Models/Tables/EntityMCostumeBaseStatusTable.cs new file mode 100644 index 0000000..9cbfcde --- /dev/null +++ b/src/Models/Tables/EntityMCostumeBaseStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeBaseStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeBaseStatusTable(EntityMCostumeBaseStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeBaseStatusId; + } + + public EntityMCostumeBaseStatus FindByCostumeBaseStatusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeCollectionBonusGroupTable.cs b/src/Models/Tables/EntityMCostumeCollectionBonusGroupTable.cs new file mode 100644 index 0000000..7eaf916 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeCollectionBonusGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeCollectionBonusGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeCollectionBonusGroupTable(EntityMCostumeCollectionBonusGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CollectionBonusGroupId, element.CostumeId); + } +} diff --git a/src/Models/Tables/EntityMCostumeCollectionBonusTable.cs b/src/Models/Tables/EntityMCostumeCollectionBonusTable.cs new file mode 100644 index 0000000..5d6d58e --- /dev/null +++ b/src/Models/Tables/EntityMCostumeCollectionBonusTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeCollectionBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeCollectionBonusTable(EntityMCostumeCollectionBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CollectionBonusId; + } + + public RangeView FindRangeByCollectionBonusId(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeDefaultSkillGroupTable.cs b/src/Models/Tables/EntityMCostumeDefaultSkillGroupTable.cs new file mode 100644 index 0000000..0a9b8be --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDefaultSkillGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDefaultSkillGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDefaultSkillGroupTable(EntityMCostumeDefaultSkillGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeDefaultSkillGroupId, element.CostumeDefaultSkillLotteryType); + } + + public EntityMCostumeDefaultSkillGroup FindByCostumeDefaultSkillGroupIdAndCostumeDefaultSkillLotteryType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, CostumeDefaultSkillLotteryType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeDefaultSkillLotteryGroupTable.cs b/src/Models/Tables/EntityMCostumeDefaultSkillLotteryGroupTable.cs new file mode 100644 index 0000000..f0c0982 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDefaultSkillLotteryGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDefaultSkillLotteryGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDefaultSkillLotteryGroupTable(EntityMCostumeDefaultSkillLotteryGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeDefaultSkillLotteryGroupId, element.SkillDetailId); + } + + public RangeView FindRangeByCostumeDefaultSkillLotteryGroupIdAndSkillDetailId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeDeleteTable.cs b/src/Models/Tables/EntityMCostumeDeleteTable.cs new file mode 100644 index 0000000..cc091da --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDeleteTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDeleteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDeleteTable(EntityMCostumeDelete[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCostumeDelete result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeDisplayCoordinateAdjustmentTable.cs b/src/Models/Tables/EntityMCostumeDisplayCoordinateAdjustmentTable.cs new file mode 100644 index 0000000..ce6a7d2 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDisplayCoordinateAdjustmentTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDisplayCoordinateAdjustmentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDisplayCoordinateAdjustmentTable(EntityMCostumeDisplayCoordinateAdjustment[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeId, element.DisplayCoordinateAdjustmentFunctionType); + } + + public EntityMCostumeDisplayCoordinateAdjustment FindByCostumeIdAndDisplayCoordinateAdjustmentFunctionType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, DisplayCoordinateAdjustmentFunctionType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeDisplaySwitchTable.cs b/src/Models/Tables/EntityMCostumeDisplaySwitchTable.cs new file mode 100644 index 0000000..a6d658c --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDisplaySwitchTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDisplaySwitchTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDisplaySwitchTable(EntityMCostumeDisplaySwitch[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCostumeDisplaySwitch result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeDuplicationExchangePossessionGroupTable.cs b/src/Models/Tables/EntityMCostumeDuplicationExchangePossessionGroupTable.cs new file mode 100644 index 0000000..a1e0850 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeDuplicationExchangePossessionGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeDuplicationExchangePossessionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeDuplicationExchangePossessionGroupTable(EntityMCostumeDuplicationExchangePossessionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMCostumeEmblemTable.cs b/src/Models/Tables/EntityMCostumeEmblemTable.cs new file mode 100644 index 0000000..8b6fc98 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeEmblemTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeEmblemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeEmblemTable(EntityMCostumeEmblem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeEmblemAssetId; + } + + public EntityMCostumeEmblem FindByCostumeEmblemAssetId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeEnhancedTable.cs b/src/Models/Tables/EntityMCostumeEnhancedTable.cs new file mode 100644 index 0000000..8eb2f96 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeEnhancedTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeEnhancedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeEnhancedTable(EntityMCostumeEnhanced[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeEnhancedId; + } + + public bool TryFindByCostumeEnhancedId(int key, out EntityMCostumeEnhanced result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeLevelBonusTable.cs b/src/Models/Tables/EntityMCostumeLevelBonusTable.cs new file mode 100644 index 0000000..e27b225 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLevelBonusTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLevelBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLevelBonusTable(EntityMCostumeLevelBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLevelBonusId, element.Level); + } + + public bool TryFindByCostumeLevelBonusIdAndLevel(ValueTuple key, out EntityMCostumeLevelBonus result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); + + public RangeView FindRangeByCostumeLevelBonusIdAndLevel(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeLimitBreakMaterialGroupTable.cs b/src/Models/Tables/EntityMCostumeLimitBreakMaterialGroupTable.cs new file mode 100644 index 0000000..066ead2 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLimitBreakMaterialGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLimitBreakMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLimitBreakMaterialGroupTable(EntityMCostumeLimitBreakMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLimitBreakMaterialGroupId, element.MaterialId); + } + + public RangeView FindRangeByCostumeLimitBreakMaterialGroupIdAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeLimitBreakMaterialRarityGroupTable.cs b/src/Models/Tables/EntityMCostumeLimitBreakMaterialRarityGroupTable.cs new file mode 100644 index 0000000..2ec5fec --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLimitBreakMaterialRarityGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLimitBreakMaterialRarityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLimitBreakMaterialRarityGroupTable(EntityMCostumeLimitBreakMaterialRarityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLimitBreakMaterialRarityGroupId, element.MaterialId); + } +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectMaterialGroupTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectMaterialGroupTable.cs new file mode 100644 index 0000000..c7b779a --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectMaterialGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeLotteryEffectMaterialGroupTable(EntityMCostumeLotteryEffectMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLotteryEffectMaterialGroupId, element.MaterialId); + secondaryIndexSelector = element => element.CostumeLotteryEffectMaterialGroupId; + } + + public RangeView FindByCostumeLotteryEffectMaterialGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTable.cs new file mode 100644 index 0000000..8b142d4 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectOddsGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeLotteryEffectOddsGroupTable(EntityMCostumeLotteryEffectOddsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLotteryEffectOddsGroupId, element.OddsNumber); + secondaryIndexSelector = element => element.CostumeLotteryEffectOddsGroupId; + } + + public bool TryFindByCostumeLotteryEffectOddsGroupIdAndOddsNumber(ValueTuple key, out EntityMCostumeLotteryEffectOddsGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); + + public RangeView FindByCostumeLotteryEffectOddsGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTableTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTableTable.cs new file mode 100644 index 0000000..f56eed1 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectOddsGroupTableTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectOddsGroupTableTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeLotteryEffectOddsGroupTableTable(EntityMCostumeLotteryEffectOddsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLotteryEffectOddsGroupId, element.OddsNumber); + secondaryIndexSelector = element => element.CostumeLotteryEffectOddsGroupId; + } + + public bool TryFindByCostumeLotteryEffectOddsGroupIdAndOddsNumber(ValueTuple key, out EntityMCostumeLotteryEffectOddsGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); + + public RangeView FindByCostumeLotteryEffectOddsGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectReleaseScheduleTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectReleaseScheduleTable.cs new file mode 100644 index 0000000..b83c34e --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectReleaseScheduleTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectReleaseScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLotteryEffectReleaseScheduleTable(EntityMCostumeLotteryEffectReleaseSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeLotteryEffectReleaseScheduleId; + } + + public bool TryFindByCostumeLotteryEffectReleaseScheduleId(int key, out EntityMCostumeLotteryEffectReleaseSchedule result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectTable.cs new file mode 100644 index 0000000..7943fd6 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLotteryEffectTable(EntityMCostumeLotteryEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeId, element.SlotNumber); + } + + public bool TryFindByCostumeIdAndSlotNumber(ValueTuple key, out EntityMCostumeLotteryEffect result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); + + public RangeView FindRangeByCostumeIdAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectTargetAbilityTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectTargetAbilityTable.cs new file mode 100644 index 0000000..a9e5d71 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectTargetAbilityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectTargetAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeLotteryEffectTargetAbilityTable(EntityMCostumeLotteryEffectTargetAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeLotteryEffectTargetAbilityId; + } + + public EntityMCostumeLotteryEffectTargetAbility FindByCostumeLotteryEffectTargetAbilityId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeLotteryEffectTargetStatusUpTable.cs b/src/Models/Tables/EntityMCostumeLotteryEffectTargetStatusUpTable.cs new file mode 100644 index 0000000..e8a9d75 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeLotteryEffectTargetStatusUpTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeLotteryEffectTargetStatusUpTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeLotteryEffectTargetStatusUpTable(EntityMCostumeLotteryEffectTargetStatusUp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.CostumeLotteryEffectTargetStatusUpId, element.StatusKindType, element.StatusCalculationType); + secondaryIndexSelector = element => element.CostumeLotteryEffectTargetStatusUpId; + } + + public RangeView FindByCostumeLotteryEffectTargetStatusUpId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeOverflowExchangePossessionGroupTable.cs b/src/Models/Tables/EntityMCostumeOverflowExchangePossessionGroupTable.cs new file mode 100644 index 0000000..dea8eb0 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeOverflowExchangePossessionGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeOverflowExchangePossessionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeOverflowExchangePossessionGroupTable(EntityMCostumeOverflowExchangePossessionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MaterialId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMCostumeProperAttributeHpBonusTable.cs b/src/Models/Tables/EntityMCostumeProperAttributeHpBonusTable.cs new file mode 100644 index 0000000..c4e7b6c --- /dev/null +++ b/src/Models/Tables/EntityMCostumeProperAttributeHpBonusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeProperAttributeHpBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeProperAttributeHpBonusTable(EntityMCostumeProperAttributeHpBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCostumeProperAttributeHpBonus result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeRarityTable.cs b/src/Models/Tables/EntityMCostumeRarityTable.cs new file mode 100644 index 0000000..e85c7a2 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeRarityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeRarityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeRarityTable(EntityMCostumeRarity[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.RarityType; + } + + public EntityMCostumeRarity FindByRarityType(RarityType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeSpecialActActiveSkillConditionAttributeTable.cs b/src/Models/Tables/EntityMCostumeSpecialActActiveSkillConditionAttributeTable.cs new file mode 100644 index 0000000..f3c1a35 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeSpecialActActiveSkillConditionAttributeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeSpecialActActiveSkillConditionAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeSpecialActActiveSkillConditionAttributeTable(EntityMCostumeSpecialActActiveSkillConditionAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeSpecialActActiveSkillConditionId; + } + + public bool TryFindByCostumeSpecialActActiveSkillConditionId(int key, out EntityMCostumeSpecialActActiveSkillConditionAttribute result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeSpecialActActiveSkillTable.cs b/src/Models/Tables/EntityMCostumeSpecialActActiveSkillTable.cs new file mode 100644 index 0000000..8b92738 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeSpecialActActiveSkillTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeSpecialActActiveSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeSpecialActActiveSkillTable(EntityMCostumeSpecialActActiveSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + } + + public bool TryFindByCostumeId(int key, out EntityMCostumeSpecialActActiveSkill result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMCostumeStatusCalculationTable.cs b/src/Models/Tables/EntityMCostumeStatusCalculationTable.cs new file mode 100644 index 0000000..211d0ee --- /dev/null +++ b/src/Models/Tables/EntityMCostumeStatusCalculationTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeStatusCalculationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMCostumeStatusCalculationTable(EntityMCostumeStatusCalculation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeStatusCalculationId; + } + + public EntityMCostumeStatusCalculation FindByCostumeStatusCalculationId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMCostumeTable.cs b/src/Models/Tables/EntityMCostumeTable.cs new file mode 100644 index 0000000..b13fde0 --- /dev/null +++ b/src/Models/Tables/EntityMCostumeTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMCostumeTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMCostumeTable(EntityMCostume[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.CostumeId; + secondaryIndexSelector = element => element.CharacterId; + } + + public EntityMCostume FindByCostumeId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByCostumeId(int key, out EntityMCostume result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); + + public RangeView FindByCharacterId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMDeckEntrustCoefficientAttributeTable.cs b/src/Models/Tables/EntityMDeckEntrustCoefficientAttributeTable.cs new file mode 100644 index 0000000..dba6d66 --- /dev/null +++ b/src/Models/Tables/EntityMDeckEntrustCoefficientAttributeTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDeckEntrustCoefficientAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDeckEntrustCoefficientAttributeTable(EntityMDeckEntrustCoefficientAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EntrustAttributeType, element.AttributeType); + } +} diff --git a/src/Models/Tables/EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable.cs b/src/Models/Tables/EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable.cs new file mode 100644 index 0000000..bb246a5 --- /dev/null +++ b/src/Models/Tables/EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDeckEntrustCoefficientPartsSeriesBonusCountTable(EntityMDeckEntrustCoefficientPartsSeriesBonusCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsSeriesBonusCount; + } +} diff --git a/src/Models/Tables/EntityMDeckEntrustCoefficientStatusTable.cs b/src/Models/Tables/EntityMDeckEntrustCoefficientStatusTable.cs new file mode 100644 index 0000000..789c02d --- /dev/null +++ b/src/Models/Tables/EntityMDeckEntrustCoefficientStatusTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDeckEntrustCoefficientStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDeckEntrustCoefficientStatusTable(EntityMDeckEntrustCoefficientStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EntrustDeckStatusType, element.DeckStatusType); + } +} diff --git a/src/Models/Tables/EntityMDokanContentGroupTable.cs b/src/Models/Tables/EntityMDokanContentGroupTable.cs new file mode 100644 index 0000000..fa9b4d3 --- /dev/null +++ b/src/Models/Tables/EntityMDokanContentGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDokanContentGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDokanContentGroupTable(EntityMDokanContentGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.DokanContentGroupId, element.ContentIndex); + } +} diff --git a/src/Models/Tables/EntityMDokanTable.cs b/src/Models/Tables/EntityMDokanTable.cs new file mode 100644 index 0000000..a609ff2 --- /dev/null +++ b/src/Models/Tables/EntityMDokanTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDokanTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDokanTable(EntityMDokan[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DokanId; + } +} diff --git a/src/Models/Tables/EntityMDokanTextTable.cs b/src/Models/Tables/EntityMDokanTextTable.cs new file mode 100644 index 0000000..6458228 --- /dev/null +++ b/src/Models/Tables/EntityMDokanTextTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMDokanTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMDokanTextTable(EntityMDokanText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.DokanTextId, element.LanguageType); + } + + public EntityMDokanText FindByDokanTextIdAndLanguageType(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, LanguageType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMEnhanceCampaignTable.cs b/src/Models/Tables/EntityMEnhanceCampaignTable.cs new file mode 100644 index 0000000..3277f9a --- /dev/null +++ b/src/Models/Tables/EntityMEnhanceCampaignTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEnhanceCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEnhanceCampaignTable(EntityMEnhanceCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EnhanceCampaignId; + } +} diff --git a/src/Models/Tables/EntityMEnhanceCampaignTargetGroupTable.cs b/src/Models/Tables/EntityMEnhanceCampaignTargetGroupTable.cs new file mode 100644 index 0000000..223a7c8 --- /dev/null +++ b/src/Models/Tables/EntityMEnhanceCampaignTargetGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEnhanceCampaignTargetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEnhanceCampaignTargetGroupTable(EntityMEnhanceCampaignTargetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EnhanceCampaignTargetGroupId, element.EnhanceCampaignTargetIndex); + } + + public RangeView FindRangeByEnhanceCampaignTargetGroupIdAndEnhanceCampaignTargetIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMEvaluateConditionTable.cs b/src/Models/Tables/EntityMEvaluateConditionTable.cs new file mode 100644 index 0000000..eb863df --- /dev/null +++ b/src/Models/Tables/EntityMEvaluateConditionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEvaluateConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEvaluateConditionTable(EntityMEvaluateCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EvaluateConditionId; + } + + public EntityMEvaluateCondition FindByEvaluateConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEvaluateConditionValueGroupTable.cs b/src/Models/Tables/EntityMEvaluateConditionValueGroupTable.cs new file mode 100644 index 0000000..aaa4210 --- /dev/null +++ b/src/Models/Tables/EntityMEvaluateConditionValueGroupTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEvaluateConditionValueGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEvaluateConditionValueGroupTable(EntityMEvaluateConditionValueGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EvaluateConditionValueGroupId, element.GroupIndex); + } + + public EntityMEvaluateConditionValueGroup FindByEvaluateConditionValueGroupIdAndGroupIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByEvaluateConditionValueGroupIdAndGroupIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMEventQuestChapterCharacterTable.cs b/src/Models/Tables/EntityMEventQuestChapterCharacterTable.cs new file mode 100644 index 0000000..4daa6b8 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestChapterCharacterTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestChapterCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestChapterCharacterTable(EntityMEventQuestChapterCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestChapterCharacter FindByEventQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestChapterDifficultyLimitContentUnlockTable.cs b/src/Models/Tables/EntityMEventQuestChapterDifficultyLimitContentUnlockTable.cs new file mode 100644 index 0000000..e3b21dc --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestChapterDifficultyLimitContentUnlockTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestChapterDifficultyLimitContentUnlockTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestChapterDifficultyLimitContentUnlockTable(EntityMEventQuestChapterDifficultyLimitContentUnlock[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestChapterId, element.DifficultyType); + secondaryIndexSelector = element => element.EventQuestChapterId; + } + + public bool TryFindByEventQuestChapterIdAndDifficultyType(ValueTuple key, out EntityMEventQuestChapterDifficultyLimitContentUnlock result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMEventQuestChapterLimitContentRelationTable.cs b/src/Models/Tables/EntityMEventQuestChapterLimitContentRelationTable.cs new file mode 100644 index 0000000..037d8c3 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestChapterLimitContentRelationTable.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestChapterLimitContentRelationTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestChapterLimitContentRelationTable(EntityMEventQuestChapterLimitContentRelation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestChapterId; + secondaryIndexSelector = element => element.EventQuestLimitContentId; + } + + public EntityMEventQuestChapterLimitContentRelation FindByEventQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByEventQuestChapterId(int key, out EntityMEventQuestChapterLimitContentRelation result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); + + public RangeView FindByEventQuestLimitContentId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestChapterTable.cs b/src/Models/Tables/EntityMEventQuestChapterTable.cs new file mode 100644 index 0000000..4ef59de --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestChapterTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestChapterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestChapterTable(EntityMEventQuestChapter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestChapter FindByEventQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestDailyGroupCompleteRewardTable.cs b/src/Models/Tables/EntityMEventQuestDailyGroupCompleteRewardTable.cs new file mode 100644 index 0000000..8ff13fc --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestDailyGroupCompleteRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestDailyGroupCompleteRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestDailyGroupCompleteRewardTable(EntityMEventQuestDailyGroupCompleteReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestDailyGroupCompleteRewardId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMEventQuestDailyGroupMessageTable.cs b/src/Models/Tables/EntityMEventQuestDailyGroupMessageTable.cs new file mode 100644 index 0000000..42b4ad2 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestDailyGroupMessageTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestDailyGroupMessageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestDailyGroupMessageTable(EntityMEventQuestDailyGroupMessage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestDailyGroupMessageId, element.OddsNumber); + } + + public bool TryFindByEventQuestDailyGroupMessageIdAndOddsNumber(ValueTuple key, out EntityMEventQuestDailyGroupMessage result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMEventQuestDailyGroupTable.cs b/src/Models/Tables/EntityMEventQuestDailyGroupTable.cs new file mode 100644 index 0000000..0302c5a --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestDailyGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestDailyGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestDailyGroupTable(EntityMEventQuestDailyGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestDailyGroupId; + } +} diff --git a/src/Models/Tables/EntityMEventQuestDailyGroupTargetChapterTable.cs b/src/Models/Tables/EntityMEventQuestDailyGroupTargetChapterTable.cs new file mode 100644 index 0000000..7f20e8d --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestDailyGroupTargetChapterTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestDailyGroupTargetChapterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestDailyGroupTargetChapterTable(EntityMEventQuestDailyGroupTargetChapter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestDailyGroupTargetChapterId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMEventQuestDisplayItemGroupTable.cs b/src/Models/Tables/EntityMEventQuestDisplayItemGroupTable.cs new file mode 100644 index 0000000..eb86ab8 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestDisplayItemGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestDisplayItemGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestDisplayItemGroupTable(EntityMEventQuestDisplayItemGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestDisplayItemGroupId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable.cs b/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable.cs new file mode 100644 index 0000000..bca9b0a --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondenceTable(EntityMEventQuestGuerrillaFreeOpenScheduleCorrespondence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.QuestScheduleId); + } + + public RangeView FindRangeByQuestIdAndQuestScheduleId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenTable.cs b/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenTable.cs new file mode 100644 index 0000000..d3e1c3a --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestGuerrillaFreeOpenTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestGuerrillaFreeOpenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestGuerrillaFreeOpenTable(EntityMEventQuestGuerrillaFreeOpen[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestGuerrillaFreeOpenId; + } +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthMobTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthMobTable.cs new file mode 100644 index 0000000..47353c4 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthMobTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthMobTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLabyrinthMobTable(EntityMEventQuestLabyrinthMob[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestLabyrinthMobId; + } + + public bool TryFindByEventQuestLabyrinthMobId(int key, out EntityMEventQuestLabyrinthMob result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthQuestDisplayTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthQuestDisplayTable.cs new file mode 100644 index 0000000..10f958c --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthQuestDisplayTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthQuestDisplayTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLabyrinthQuestDisplayTable(EntityMEventQuestLabyrinthQuestDisplay[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestId; + } + + public bool TryFindByQuestId(int key, out EntityMEventQuestLabyrinthQuestDisplay result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable.cs new file mode 100644 index 0000000..e3df4ef --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLabyrinthQuestEffectDescriptionAbilityTable(EntityMEventQuestLabyrinthQuestEffectDescriptionAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestLabyrinthQuestEffectDescriptionId; + } + + public EntityMEventQuestLabyrinthQuestEffectDescriptionAbility FindByEventQuestLabyrinthQuestEffectDescriptionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable.cs new file mode 100644 index 0000000..2dda2ad --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLabyrinthQuestEffectDescriptionFreeTable(EntityMEventQuestLabyrinthQuestEffectDescriptionFree[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestLabyrinthQuestEffectDescriptionId; + } + + public EntityMEventQuestLabyrinthQuestEffectDescriptionFree FindByEventQuestLabyrinthQuestEffectDescriptionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDisplayTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDisplayTable.cs new file mode 100644 index 0000000..71e2ecf --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthQuestEffectDisplayTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthQuestEffectDisplayTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthQuestEffectDisplayTable(EntityMEventQuestLabyrinthQuestEffectDisplay[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.SortOrder); + secondaryIndexSelector = element => element.QuestId; + } + + public RangeView FindByQuestId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthRewardGroupTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthRewardGroupTable.cs new file mode 100644 index 0000000..ec88862 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthRewardGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthRewardGroupTable(EntityMEventQuestLabyrinthRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestLabyrinthRewardGroupId, element.SortOrder); + secondaryIndexSelector = element => element.EventQuestLabyrinthRewardGroupId; + } + + public RangeView FindByEventQuestLabyrinthRewardGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthSeasonRewardGroupTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthSeasonRewardGroupTable.cs new file mode 100644 index 0000000..d419d12 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthSeasonRewardGroupTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthSeasonRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthSeasonRewardGroupTable(EntityMEventQuestLabyrinthSeasonRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestLabyrinthSeasonRewardGroupId, element.HeadQuestId); + secondaryIndexSelector = element => element.EventQuestLabyrinthSeasonRewardGroupId; + } + + public EntityMEventQuestLabyrinthSeasonRewardGroup FindByEventQuestLabyrinthSeasonRewardGroupIdAndHeadQuestId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindByEventQuestLabyrinthSeasonRewardGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthSeasonTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthSeasonTable.cs new file mode 100644 index 0000000..d500954 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthSeasonTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthSeasonTable(EntityMEventQuestLabyrinthSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestChapterId, element.SeasonNumber); + secondaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestLabyrinthSeason FindByEventQuestChapterIdAndSeasonNumber(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindByEventQuestChapterId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable.cs new file mode 100644 index 0000000..d7104c8 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthStageAccumulationRewardGroupTable(EntityMEventQuestLabyrinthStageAccumulationRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestLabyrinthStageAccumulationRewardGroupId, element.QuestMissionClearCount); + secondaryIndexSelector = element => element.EventQuestLabyrinthStageAccumulationRewardGroupId; + } + + public RangeView FindByEventQuestLabyrinthStageAccumulationRewardGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLabyrinthStageTable.cs b/src/Models/Tables/EntityMEventQuestLabyrinthStageTable.cs new file mode 100644 index 0000000..c016700 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLabyrinthStageTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLabyrinthStageTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLabyrinthStageTable(EntityMEventQuestLabyrinthStage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestChapterId, element.StageOrder); + secondaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestLabyrinthStage FindByEventQuestChapterIdAndStageOrder(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindByEventQuestChapterId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTable.cs b/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTable.cs new file mode 100644 index 0000000..4667152 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLimitContentDeckRestrictionTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLimitContentDeckRestrictionTable(EntityMEventQuestLimitContentDeckRestriction[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestLimitContentDeckRestrictionId, element.GroupIndex); + secondaryIndexSelector = element => element.EventQuestLimitContentDeckRestrictionId; + } + + public RangeView FindByEventQuestLimitContentDeckRestrictionId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTargetTable.cs b/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTargetTable.cs new file mode 100644 index 0000000..6f07237 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLimitContentDeckRestrictionTargetTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLimitContentDeckRestrictionTargetTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestLimitContentDeckRestrictionTargetTable(EntityMEventQuestLimitContentDeckRestrictionTarget[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestLimitContentDeckRestrictionTargetId, element.LimitContentDeckRestrictionType); + secondaryIndexSelector = element => element.EventQuestLimitContentDeckRestrictionTargetId; + } + + public RangeView FindByEventQuestLimitContentDeckRestrictionTargetId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestLimitContentTable.cs b/src/Models/Tables/EntityMEventQuestLimitContentTable.cs new file mode 100644 index 0000000..5c99bce --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLimitContentTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLimitContentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLimitContentTable(EntityMEventQuestLimitContent[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestLimitContentId; + } + + public EntityMEventQuestLimitContent FindByEventQuestLimitContentId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByEventQuestLimitContentId(int key, out EntityMEventQuestLimitContent result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMEventQuestLinkTable.cs b/src/Models/Tables/EntityMEventQuestLinkTable.cs new file mode 100644 index 0000000..af63db5 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestLinkTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestLinkTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestLinkTable(EntityMEventQuestLink[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestLinkId; + } + + public EntityMEventQuestLink FindByEventQuestLinkId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestSequenceGroupTable.cs b/src/Models/Tables/EntityMEventQuestSequenceGroupTable.cs new file mode 100644 index 0000000..5790fc9 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestSequenceGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestSequenceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestSequenceGroupTable(EntityMEventQuestSequenceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestSequenceGroupId, element.DifficultyType); + } + + public EntityMEventQuestSequenceGroup FindByEventQuestSequenceGroupIdAndDifficultyType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key); + + public RangeView FindRangeByEventQuestSequenceGroupIdAndDifficultyType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMEventQuestSequenceTable.cs b/src/Models/Tables/EntityMEventQuestSequenceTable.cs new file mode 100644 index 0000000..68630aa --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestSequenceTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestSequenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestSequenceTable(EntityMEventQuestSequence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestSequenceId, element.SortOrder); + } + + public EntityMEventQuestSequence FindByEventQuestSequenceIdAndSortOrder(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByEventQuestSequenceIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardGroupTable.cs b/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardGroupTable.cs new file mode 100644 index 0000000..f5e703b --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestTowerAccumulationRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestTowerAccumulationRewardGroupTable(EntityMEventQuestTowerAccumulationRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestTowerAccumulationRewardGroupId, element.QuestMissionClearCount); + } +} diff --git a/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardTable.cs b/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardTable.cs new file mode 100644 index 0000000..caac191 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestTowerAccumulationRewardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestTowerAccumulationRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestTowerAccumulationRewardTable(EntityMEventQuestTowerAccumulationReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestTowerAccumulationReward FindByEventQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestTowerAssetTable.cs b/src/Models/Tables/EntityMEventQuestTowerAssetTable.cs new file mode 100644 index 0000000..f9c32f6 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestTowerAssetTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestTowerAssetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestTowerAssetTable(EntityMEventQuestTowerAsset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.EventQuestChapterId; + } + + public EntityMEventQuestTowerAsset FindByEventQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestTowerRewardGroupTable.cs b/src/Models/Tables/EntityMEventQuestTowerRewardGroupTable.cs new file mode 100644 index 0000000..a20a512 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestTowerRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestTowerRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMEventQuestTowerRewardGroupTable(EntityMEventQuestTowerRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestTowerRewardGroupId, element.SortOrder); + } + + public EntityMEventQuestTowerRewardGroup FindByEventQuestTowerRewardGroupIdAndSortOrder(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMEventQuestUnlockConditionTable.cs b/src/Models/Tables/EntityMEventQuestUnlockConditionTable.cs new file mode 100644 index 0000000..43fffd7 --- /dev/null +++ b/src/Models/Tables/EntityMEventQuestUnlockConditionTable.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMEventQuestUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMEventQuestUnlockConditionTable(EntityMEventQuestUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.EventQuestType, element.CharacterId, element.QuestId); + secondaryIndexSelector = element => (element.EventQuestType, element.UnlockConditionType); + } + + public EntityMEventQuestUnlockCondition FindByEventQuestTypeAndCharacterIdAndQuestId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(EventQuestType, int, int)>.Default, key); + + public RangeView FindByEventQuestTypeAndUnlockConditionType(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(EventQuestType, UnlockConditionType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMExploreGradeAssetTable.cs b/src/Models/Tables/EntityMExploreGradeAssetTable.cs new file mode 100644 index 0000000..05f341d --- /dev/null +++ b/src/Models/Tables/EntityMExploreGradeAssetTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExploreGradeAssetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExploreGradeAssetTable(EntityMExploreGradeAsset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ExploreGradeId; + } + + public EntityMExploreGradeAsset FindByExploreGradeId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMExploreGradeScoreTable.cs b/src/Models/Tables/EntityMExploreGradeScoreTable.cs new file mode 100644 index 0000000..d62a81a --- /dev/null +++ b/src/Models/Tables/EntityMExploreGradeScoreTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExploreGradeScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExploreGradeScoreTable(EntityMExploreGradeScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ExploreId, element.NecessaryScore); + } + + public EntityMExploreGradeScore FindClosestByExploreIdAndNecessaryScore(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMExploreGroupTable.cs b/src/Models/Tables/EntityMExploreGroupTable.cs new file mode 100644 index 0000000..c5e6f05 --- /dev/null +++ b/src/Models/Tables/EntityMExploreGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExploreGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMExploreGroupTable(EntityMExploreGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ExploreGroupId, element.DifficultyType); + secondaryIndexSelector = element => element.ExploreId; + } + + public EntityMExploreGroup FindByExploreGroupIdAndDifficultyType(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key); + + public RangeView FindByExploreId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMExploreTable.cs b/src/Models/Tables/EntityMExploreTable.cs new file mode 100644 index 0000000..5e53b20 --- /dev/null +++ b/src/Models/Tables/EntityMExploreTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExploreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExploreTable(EntityMExplore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ExploreId; + } + + public EntityMExplore FindByExploreId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindRangeByExploreId(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMExploreUnlockConditionTable.cs b/src/Models/Tables/EntityMExploreUnlockConditionTable.cs new file mode 100644 index 0000000..68b80ff --- /dev/null +++ b/src/Models/Tables/EntityMExploreUnlockConditionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExploreUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExploreUnlockConditionTable(EntityMExploreUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ExploreUnlockConditionId; + } + + public EntityMExploreUnlockCondition FindByExploreUnlockConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMExtraQuestGroupInMainQuestChapterTable.cs b/src/Models/Tables/EntityMExtraQuestGroupInMainQuestChapterTable.cs new file mode 100644 index 0000000..21cf7e7 --- /dev/null +++ b/src/Models/Tables/EntityMExtraQuestGroupInMainQuestChapterTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExtraQuestGroupInMainQuestChapterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExtraQuestGroupInMainQuestChapterTable(EntityMExtraQuestGroupInMainQuestChapter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MainQuestChapterId, element.ExtraQuestIndex); + } + + public bool TryFindByMainQuestChapterIdAndExtraQuestIndex(ValueTuple key, out EntityMExtraQuestGroupInMainQuestChapter result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMExtraQuestGroupTable.cs b/src/Models/Tables/EntityMExtraQuestGroupTable.cs new file mode 100644 index 0000000..f371508 --- /dev/null +++ b/src/Models/Tables/EntityMExtraQuestGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMExtraQuestGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMExtraQuestGroupTable(EntityMExtraQuestGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.ExtraQuestIndex); + } +} diff --git a/src/Models/Tables/EntityMFieldEffectBlessRelationTable.cs b/src/Models/Tables/EntityMFieldEffectBlessRelationTable.cs new file mode 100644 index 0000000..e7b1605 --- /dev/null +++ b/src/Models/Tables/EntityMFieldEffectBlessRelationTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMFieldEffectBlessRelationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMFieldEffectBlessRelationTable(EntityMFieldEffectBlessRelation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.FieldEffectGroupId, element.FieldEffectBlessRelationIndex); + } +} diff --git a/src/Models/Tables/EntityMFieldEffectDecreasePointTable.cs b/src/Models/Tables/EntityMFieldEffectDecreasePointTable.cs new file mode 100644 index 0000000..6e88159 --- /dev/null +++ b/src/Models/Tables/EntityMFieldEffectDecreasePointTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMFieldEffectDecreasePointTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMFieldEffectDecreasePointTable(EntityMFieldEffectDecreasePoint[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponId, element.FieldEffectAbilityId); + } +} diff --git a/src/Models/Tables/EntityMFieldEffectGroupTable.cs b/src/Models/Tables/EntityMFieldEffectGroupTable.cs new file mode 100644 index 0000000..90164c9 --- /dev/null +++ b/src/Models/Tables/EntityMFieldEffectGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMFieldEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMFieldEffectGroupTable(EntityMFieldEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.FieldEffectGroupId, element.FieldEffectGroupIndex); + secondaryIndexSelector = element => element.FieldEffectGroupId; + } + + public RangeView FindByFieldEffectGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMGachaMedalTable.cs b/src/Models/Tables/EntityMGachaMedalTable.cs new file mode 100644 index 0000000..2c6ef14 --- /dev/null +++ b/src/Models/Tables/EntityMGachaMedalTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGachaMedalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGachaMedalTable(EntityMGachaMedal[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GachaMedalId; + } + + public EntityMGachaMedal FindByGachaMedalId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMGiftTextTable.cs b/src/Models/Tables/EntityMGiftTextTable.cs new file mode 100644 index 0000000..9cd10c5 --- /dev/null +++ b/src/Models/Tables/EntityMGiftTextTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGiftTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGiftTextTable(EntityMGiftText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GiftTextId, element.LanguageType); + } + + public EntityMGiftText FindByGiftTextIdAndLanguageType(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, LanguageType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMGimmickAdditionalAssetTable.cs b/src/Models/Tables/EntityMGimmickAdditionalAssetTable.cs new file mode 100644 index 0000000..41e20b4 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickAdditionalAssetTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickAdditionalAssetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickAdditionalAssetTable(EntityMGimmickAdditionalAsset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickId; + } +} diff --git a/src/Models/Tables/EntityMGimmickExtraQuestTable.cs b/src/Models/Tables/EntityMGimmickExtraQuestTable.cs new file mode 100644 index 0000000..860f326 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickExtraQuestTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickExtraQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickExtraQuestTable(EntityMGimmickExtraQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GimmickId, element.GimmickOrnamentIndex); + } + + public EntityMGimmickExtraQuest FindByGimmickIdAndGimmickOrnamentIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public bool TryFindByGimmickIdAndGimmickOrnamentIndex(ValueTuple key, out EntityMGimmickExtraQuest result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMGimmickGroupEventLogTable.cs b/src/Models/Tables/EntityMGimmickGroupEventLogTable.cs new file mode 100644 index 0000000..062d02a --- /dev/null +++ b/src/Models/Tables/EntityMGimmickGroupEventLogTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickGroupEventLogTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickGroupEventLogTable(EntityMGimmickGroupEventLog[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickGroupId; + } + + public bool TryFindByGimmickGroupId(int key, out EntityMGimmickGroupEventLog result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMGimmickGroupTable.cs b/src/Models/Tables/EntityMGimmickGroupTable.cs new file mode 100644 index 0000000..c3ad01e --- /dev/null +++ b/src/Models/Tables/EntityMGimmickGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickGroupTable(EntityMGimmickGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GimmickGroupId, element.GroupIndex); + } +} diff --git a/src/Models/Tables/EntityMGimmickIntervalTable.cs b/src/Models/Tables/EntityMGimmickIntervalTable.cs new file mode 100644 index 0000000..7f49245 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickIntervalTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickIntervalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickIntervalTable(EntityMGimmickInterval[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickId; + } +} diff --git a/src/Models/Tables/EntityMGimmickOrnamentTable.cs b/src/Models/Tables/EntityMGimmickOrnamentTable.cs new file mode 100644 index 0000000..cb9e128 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickOrnamentTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickOrnamentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickOrnamentTable(EntityMGimmickOrnament[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GimmickOrnamentGroupId, element.GimmickOrnamentIndex); + } +} diff --git a/src/Models/Tables/EntityMGimmickSequenceGroupTable.cs b/src/Models/Tables/EntityMGimmickSequenceGroupTable.cs new file mode 100644 index 0000000..5210039 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickSequenceGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickSequenceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickSequenceGroupTable(EntityMGimmickSequenceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GimmickSequenceGroupId, element.GroupIndex); + } +} diff --git a/src/Models/Tables/EntityMGimmickSequenceRewardGroupTable.cs b/src/Models/Tables/EntityMGimmickSequenceRewardGroupTable.cs new file mode 100644 index 0000000..da0643c --- /dev/null +++ b/src/Models/Tables/EntityMGimmickSequenceRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickSequenceRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickSequenceRewardGroupTable(EntityMGimmickSequenceRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.GimmickSequenceRewardGroupId, element.GroupIndex); + } + + public bool TryFindByGimmickSequenceRewardGroupIdAndGroupIndex(ValueTuple key, out EntityMGimmickSequenceRewardGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMGimmickSequenceScheduleTable.cs b/src/Models/Tables/EntityMGimmickSequenceScheduleTable.cs new file mode 100644 index 0000000..f805228 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickSequenceScheduleTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickSequenceScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickSequenceScheduleTable(EntityMGimmickSequenceSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickSequenceScheduleId; + } +} diff --git a/src/Models/Tables/EntityMGimmickSequenceTable.cs b/src/Models/Tables/EntityMGimmickSequenceTable.cs new file mode 100644 index 0000000..46d9bbb --- /dev/null +++ b/src/Models/Tables/EntityMGimmickSequenceTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickSequenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickSequenceTable(EntityMGimmickSequence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickSequenceId; + } + + public EntityMGimmickSequence FindByGimmickSequenceId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMGimmickTable.cs b/src/Models/Tables/EntityMGimmickTable.cs new file mode 100644 index 0000000..5219400 --- /dev/null +++ b/src/Models/Tables/EntityMGimmickTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMGimmickTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMGimmickTable(EntityMGimmick[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.GimmickId; + } + + public EntityMGimmick FindByGimmickId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMHeadupDisplayViewTable.cs b/src/Models/Tables/EntityMHeadupDisplayViewTable.cs new file mode 100644 index 0000000..cb7ea95 --- /dev/null +++ b/src/Models/Tables/EntityMHeadupDisplayViewTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMHeadupDisplayViewTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMHeadupDisplayViewTable(EntityMHeadupDisplayView[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.HeadupDisplayViewId; + } + + public EntityMHeadupDisplayView FindByHeadupDisplayViewId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMHelpCategoryTable.cs b/src/Models/Tables/EntityMHelpCategoryTable.cs new file mode 100644 index 0000000..546ef60 --- /dev/null +++ b/src/Models/Tables/EntityMHelpCategoryTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMHelpCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMHelpCategoryTable(EntityMHelpCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.HelpCategoryId; + } +} diff --git a/src/Models/Tables/EntityMHelpItemTable.cs b/src/Models/Tables/EntityMHelpItemTable.cs new file mode 100644 index 0000000..e4677a7 --- /dev/null +++ b/src/Models/Tables/EntityMHelpItemTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMHelpItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMHelpItemTable(EntityMHelpItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.HelpItemId; + secondaryIndexSelector = element => element.HelpCategoryId; + } + + public EntityMHelpItem FindByHelpItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindByHelpCategoryId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMHelpPageGroupTable.cs b/src/Models/Tables/EntityMHelpPageGroupTable.cs new file mode 100644 index 0000000..51f56ca --- /dev/null +++ b/src/Models/Tables/EntityMHelpPageGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMHelpPageGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMHelpPageGroupTable(EntityMHelpPageGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.HelpPageGroupId, element.SortOrder); + secondaryIndexSelector = element => element.HelpPageGroupId; + } + + public RangeView FindRangeByHelpPageGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMHelpTable.cs b/src/Models/Tables/EntityMHelpTable.cs new file mode 100644 index 0000000..420ef3e --- /dev/null +++ b/src/Models/Tables/EntityMHelpTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMHelpTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMHelpTable(EntityMHelp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.HelpType; + secondaryIndexSelector = element => element.HelpPageGroupId; + } + + public bool TryFindByHelpType(HelpType key, out EntityMHelp result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMImportantItemEffectDropCountTable.cs b/src/Models/Tables/EntityMImportantItemEffectDropCountTable.cs new file mode 100644 index 0000000..f4a4dae --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectDropCountTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectDropCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectDropCountTable(EntityMImportantItemEffectDropCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ImportantItemEffectDropCountId; + } +} diff --git a/src/Models/Tables/EntityMImportantItemEffectDropRateTable.cs b/src/Models/Tables/EntityMImportantItemEffectDropRateTable.cs new file mode 100644 index 0000000..3b39fae --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectDropRateTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectDropRateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectDropRateTable(EntityMImportantItemEffectDropRate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ImportantItemEffectDropRateId; + } +} diff --git a/src/Models/Tables/EntityMImportantItemEffectTable.cs b/src/Models/Tables/EntityMImportantItemEffectTable.cs new file mode 100644 index 0000000..48ad9d3 --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectTable(EntityMImportantItemEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ImportantItemEffectId; + } + + public EntityMImportantItemEffect FindByImportantItemEffectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMImportantItemEffectTargetItemGroupTable.cs b/src/Models/Tables/EntityMImportantItemEffectTargetItemGroupTable.cs new file mode 100644 index 0000000..0ceda34 --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectTargetItemGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectTargetItemGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectTargetItemGroupTable(EntityMImportantItemEffectTargetItemGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ImportantItemEffectTargetItemGroupId, element.TargetIndex); + } +} diff --git a/src/Models/Tables/EntityMImportantItemEffectTargetQuestGroupTable.cs b/src/Models/Tables/EntityMImportantItemEffectTargetQuestGroupTable.cs new file mode 100644 index 0000000..627dea1 --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectTargetQuestGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectTargetQuestGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectTargetQuestGroupTable(EntityMImportantItemEffectTargetQuestGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ImportantItemEffectTargetQuestGroupId, element.TargetIndex); + } +} diff --git a/src/Models/Tables/EntityMImportantItemEffectUnlockFunctionTable.cs b/src/Models/Tables/EntityMImportantItemEffectUnlockFunctionTable.cs new file mode 100644 index 0000000..76e4f61 --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemEffectUnlockFunctionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemEffectUnlockFunctionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMImportantItemEffectUnlockFunctionTable(EntityMImportantItemEffectUnlockFunction[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ImportantItemEffectUnlockFunctionId; + } +} diff --git a/src/Models/Tables/EntityMImportantItemTable.cs b/src/Models/Tables/EntityMImportantItemTable.cs new file mode 100644 index 0000000..178d640 --- /dev/null +++ b/src/Models/Tables/EntityMImportantItemTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMImportantItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMImportantItemTable(EntityMImportantItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ImportantItemId; + secondaryIndexSelector = element => element.ImportantItemType; + } + + public EntityMImportantItem FindByImportantItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByImportantItemId(int key, out EntityMImportantItem result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); + + public RangeView FindByImportantItemType(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMLibraryEventQuestStoryGroupingTable.cs b/src/Models/Tables/EntityMLibraryEventQuestStoryGroupingTable.cs new file mode 100644 index 0000000..2c91200 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryEventQuestStoryGroupingTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryEventQuestStoryGroupingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryEventQuestStoryGroupingTable(EntityMLibraryEventQuestStoryGrouping[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.LibraryStoryGroupingId, element.EventQuestChapterId); + } +} diff --git a/src/Models/Tables/EntityMLibraryMainQuestGroupTable.cs b/src/Models/Tables/EntityMLibraryMainQuestGroupTable.cs new file mode 100644 index 0000000..2f7a3d4 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryMainQuestGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryMainQuestGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryMainQuestGroupTable(EntityMLibraryMainQuestGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LibraryMainQuestGroupId; + } +} diff --git a/src/Models/Tables/EntityMLibraryMainQuestStoryTable.cs b/src/Models/Tables/EntityMLibraryMainQuestStoryTable.cs new file mode 100644 index 0000000..dd49606 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryMainQuestStoryTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryMainQuestStoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMLibraryMainQuestStoryTable(EntityMLibraryMainQuestStory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.LibraryMainQuestGroupId, element.SortOrder); + secondaryIndexSelector = element => element.LibraryMainQuestGroupId; + } + + public RangeView FindByLibraryMainQuestGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMLibraryMovieCategoryTable.cs b/src/Models/Tables/EntityMLibraryMovieCategoryTable.cs new file mode 100644 index 0000000..24635e1 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryMovieCategoryTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryMovieCategoryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryMovieCategoryTable(EntityMLibraryMovieCategory[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LibraryMovieCategoryId; + } +} diff --git a/src/Models/Tables/EntityMLibraryMovieTable.cs b/src/Models/Tables/EntityMLibraryMovieTable.cs new file mode 100644 index 0000000..714f081 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryMovieTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryMovieTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryMovieTable(EntityMLibraryMovie[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LibraryMovieId; + } +} diff --git a/src/Models/Tables/EntityMLibraryMovieUnlockConditionTable.cs b/src/Models/Tables/EntityMLibraryMovieUnlockConditionTable.cs new file mode 100644 index 0000000..1c4ea92 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryMovieUnlockConditionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryMovieUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryMovieUnlockConditionTable(EntityMLibraryMovieUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LibraryMovieUnlockConditionId; + } + + public EntityMLibraryMovieUnlockCondition FindByLibraryMovieUnlockConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMLibraryRecordGroupingTable.cs b/src/Models/Tables/EntityMLibraryRecordGroupingTable.cs new file mode 100644 index 0000000..dba9267 --- /dev/null +++ b/src/Models/Tables/EntityMLibraryRecordGroupingTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryRecordGroupingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryRecordGroupingTable(EntityMLibraryRecordGrouping[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LibraryRecordType; + } +} diff --git a/src/Models/Tables/EntityMLibraryStoryGroupTable.cs b/src/Models/Tables/EntityMLibraryStoryGroupTable.cs new file mode 100644 index 0000000..b9b761d --- /dev/null +++ b/src/Models/Tables/EntityMLibraryStoryGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLibraryStoryGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLibraryStoryGroupTable(EntityMLibraryStoryGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.SortOrder); + } + + public bool TryFindByQuestIdAndSortOrder(ValueTuple key, out EntityMLibraryStoryGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMLimitedOpenTextGroupTable.cs b/src/Models/Tables/EntityMLimitedOpenTextGroupTable.cs new file mode 100644 index 0000000..effbc87 --- /dev/null +++ b/src/Models/Tables/EntityMLimitedOpenTextGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLimitedOpenTextGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLimitedOpenTextGroupTable(EntityMLimitedOpenTextGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.LimitedOpenTextGroupId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMLimitedOpenTextTable.cs b/src/Models/Tables/EntityMLimitedOpenTextTable.cs new file mode 100644 index 0000000..94db0e0 --- /dev/null +++ b/src/Models/Tables/EntityMLimitedOpenTextTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLimitedOpenTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLimitedOpenTextTable(EntityMLimitedOpenText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.LimitedOpenTargetType, element.TargetId); + } + + public EntityMLimitedOpenText FindByLimitedOpenTargetTypeAndTargetId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(LimitedOpenTargetType, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMListSettingAbilityGroupTable.cs b/src/Models/Tables/EntityMListSettingAbilityGroupTable.cs new file mode 100644 index 0000000..4a2f8d8 --- /dev/null +++ b/src/Models/Tables/EntityMListSettingAbilityGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMListSettingAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMListSettingAbilityGroupTable(EntityMListSettingAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ListSettingAbilityGroupId; + } + + public EntityMListSettingAbilityGroup FindByListSettingAbilityGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMListSettingAbilityGroupTargetTable.cs b/src/Models/Tables/EntityMListSettingAbilityGroupTargetTable.cs new file mode 100644 index 0000000..899523d --- /dev/null +++ b/src/Models/Tables/EntityMListSettingAbilityGroupTargetTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMListSettingAbilityGroupTargetTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMListSettingAbilityGroupTargetTable(EntityMListSettingAbilityGroupTarget[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ListSettingAbilityGroupTargetId, element.SortOrder); + secondaryIndexSelector = element => element.ListSettingAbilityGroupTargetId; + } + + public RangeView FindByListSettingAbilityGroupTargetId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMLoginBonusStampTable.cs b/src/Models/Tables/EntityMLoginBonusStampTable.cs new file mode 100644 index 0000000..9007fc8 --- /dev/null +++ b/src/Models/Tables/EntityMLoginBonusStampTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLoginBonusStampTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLoginBonusStampTable(EntityMLoginBonusStamp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.LoginBonusId, element.LowerPageNumber, element.StampNumber); + } +} diff --git a/src/Models/Tables/EntityMLoginBonusTable.cs b/src/Models/Tables/EntityMLoginBonusTable.cs new file mode 100644 index 0000000..1a6dd72 --- /dev/null +++ b/src/Models/Tables/EntityMLoginBonusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMLoginBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMLoginBonusTable(EntityMLoginBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LoginBonusId; + } + + public EntityMLoginBonus FindByLoginBonusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMainQuestChapterTable.cs b/src/Models/Tables/EntityMMainQuestChapterTable.cs new file mode 100644 index 0000000..7d91b7e --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestChapterTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestChapterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestChapterTable(EntityMMainQuestChapter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MainQuestChapterId; + } + + public EntityMMainQuestChapter FindByMainQuestChapterId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByMainQuestChapterId(int key, out EntityMMainQuestChapter result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMMainQuestPortalCageCharacterTable.cs b/src/Models/Tables/EntityMMainQuestPortalCageCharacterTable.cs new file mode 100644 index 0000000..2da32fb --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestPortalCageCharacterTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestPortalCageCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestPortalCageCharacterTable(EntityMMainQuestPortalCageCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } +} diff --git a/src/Models/Tables/EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable.cs b/src/Models/Tables/EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable.cs new file mode 100644 index 0000000..c637363 --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestRouteAnotherReplayFlowUnlockConditionTable(EntityMMainQuestRouteAnotherReplayFlowUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MainQuestRouteId; + } + + public bool TryFindByMainQuestRouteId(int key, out EntityMMainQuestRouteAnotherReplayFlowUnlockCondition result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMMainQuestRouteTable.cs b/src/Models/Tables/EntityMMainQuestRouteTable.cs new file mode 100644 index 0000000..faba44c --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestRouteTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestRouteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestRouteTable(EntityMMainQuestRoute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MainQuestRouteId; + } + + public EntityMMainQuestRoute FindByMainQuestRouteId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMainQuestSeasonTable.cs b/src/Models/Tables/EntityMMainQuestSeasonTable.cs new file mode 100644 index 0000000..863d65a --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestSeasonTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestSeasonTable(EntityMMainQuestSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MainQuestSeasonId; + } + + public EntityMMainQuestSeason FindByMainQuestSeasonId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMainQuestSequenceGroupTable.cs b/src/Models/Tables/EntityMMainQuestSequenceGroupTable.cs new file mode 100644 index 0000000..b640a67 --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestSequenceGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestSequenceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestSequenceGroupTable(EntityMMainQuestSequenceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MainQuestSequenceGroupId, element.DifficultyType); + } + + public EntityMMainQuestSequenceGroup FindByMainQuestSequenceGroupIdAndDifficultyType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key); + + public bool TryFindByMainQuestSequenceGroupIdAndDifficultyType(ValueTuple key, out EntityMMainQuestSequenceGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMMainQuestSequenceTable.cs b/src/Models/Tables/EntityMMainQuestSequenceTable.cs new file mode 100644 index 0000000..20073ef --- /dev/null +++ b/src/Models/Tables/EntityMMainQuestSequenceTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMainQuestSequenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMainQuestSequenceTable(EntityMMainQuestSequence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MainQuestSequenceId, element.SortOrder); + } + + public EntityMMainQuestSequence FindClosestByMainQuestSequenceIdAndSortOrder(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); + + public RangeView FindRangeByMainQuestSequenceIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMMaintenanceGroupTable.cs b/src/Models/Tables/EntityMMaintenanceGroupTable.cs new file mode 100644 index 0000000..a8f3e89 --- /dev/null +++ b/src/Models/Tables/EntityMMaintenanceGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMaintenanceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMaintenanceGroupTable(EntityMMaintenanceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MaintenanceGroupId, element.ApiPath); + } +} diff --git a/src/Models/Tables/EntityMMaintenanceTable.cs b/src/Models/Tables/EntityMMaintenanceTable.cs new file mode 100644 index 0000000..10f17ca --- /dev/null +++ b/src/Models/Tables/EntityMMaintenanceTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMaintenanceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMaintenanceTable(EntityMMaintenance[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MaintenanceId; + } +} diff --git a/src/Models/Tables/EntityMMaterialSaleObtainPossessionTable.cs b/src/Models/Tables/EntityMMaterialSaleObtainPossessionTable.cs new file mode 100644 index 0000000..3fd6810 --- /dev/null +++ b/src/Models/Tables/EntityMMaterialSaleObtainPossessionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMaterialSaleObtainPossessionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMaterialSaleObtainPossessionTable(EntityMMaterialSaleObtainPossession[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MaterialSaleObtainPossessionId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMMaterialTable.cs b/src/Models/Tables/EntityMMaterialTable.cs new file mode 100644 index 0000000..b4215f8 --- /dev/null +++ b/src/Models/Tables/EntityMMaterialTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMaterialTable(EntityMMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MaterialId; + } + + public EntityMMaterial FindByMaterialId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionClearConditionValueViewTable.cs b/src/Models/Tables/EntityMMissionClearConditionValueViewTable.cs new file mode 100644 index 0000000..46b86f5 --- /dev/null +++ b/src/Models/Tables/EntityMMissionClearConditionValueViewTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionClearConditionValueViewTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionClearConditionValueViewTable(EntityMMissionClearConditionValueView[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionClearConditionType; + } + + public bool TryFindByMissionClearConditionType(MissionClearConditionType key, out EntityMMissionClearConditionValueView result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMMissionGroupTable.cs b/src/Models/Tables/EntityMMissionGroupTable.cs new file mode 100644 index 0000000..6108700 --- /dev/null +++ b/src/Models/Tables/EntityMMissionGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionGroupTable(EntityMMissionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionGroupId; + } + + public EntityMMissionGroup FindByMissionGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionLinkTable.cs b/src/Models/Tables/EntityMMissionLinkTable.cs new file mode 100644 index 0000000..17c8ef6 --- /dev/null +++ b/src/Models/Tables/EntityMMissionLinkTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionLinkTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionLinkTable(EntityMMissionLink[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionLinkId; + } + + public EntityMMissionLink FindByMissionLinkId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionPassLevelGroupTable.cs b/src/Models/Tables/EntityMMissionPassLevelGroupTable.cs new file mode 100644 index 0000000..0044bad --- /dev/null +++ b/src/Models/Tables/EntityMMissionPassLevelGroupTable.cs @@ -0,0 +1,27 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionPassLevelGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMMissionPassLevelGroupTable(EntityMMissionPassLevelGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MissionPassLevelGroupId, element.Level); + secondaryIndexSelector = element => element.MissionPassLevelGroupId; + } + + public EntityMMissionPassLevelGroup FindByMissionPassLevelGroupIdAndLevel(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindByMissionPassLevelGroupId(int key) + { + var result = data + .Where(x => x.MissionPassLevelGroupId == key) + .ToArray(); + + return new RangeView(result, 0, result.Length, true); + } +} diff --git a/src/Models/Tables/EntityMMissionPassMissionGroupTable.cs b/src/Models/Tables/EntityMMissionPassMissionGroupTable.cs new file mode 100644 index 0000000..a8ef22a --- /dev/null +++ b/src/Models/Tables/EntityMMissionPassMissionGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionPassMissionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMMissionPassMissionGroupTable(EntityMMissionPassMissionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MissionPassId, element.MissionGroupId); + secondaryIndexSelector = element => element.MissionPassId; + } + + public RangeView FindByMissionPassId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionPassRewardGroupTable.cs b/src/Models/Tables/EntityMMissionPassRewardGroupTable.cs new file mode 100644 index 0000000..1b06e44 --- /dev/null +++ b/src/Models/Tables/EntityMMissionPassRewardGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionPassRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMMissionPassRewardGroupTable(EntityMMissionPassRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MissionPassRewardGroupId, element.Level, element.IsPremium, element.SortOrder); + secondaryIndexSelector = element => element.MissionPassRewardGroupId; + } + + public RangeView FindByMissionPassRewardGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionPassTable.cs b/src/Models/Tables/EntityMMissionPassTable.cs new file mode 100644 index 0000000..641d293 --- /dev/null +++ b/src/Models/Tables/EntityMMissionPassTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionPassTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionPassTable(EntityMMissionPass[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionPassId; + } + + public EntityMMissionPass FindByMissionPassId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionRewardTable.cs b/src/Models/Tables/EntityMMissionRewardTable.cs new file mode 100644 index 0000000..21f5e18 --- /dev/null +++ b/src/Models/Tables/EntityMMissionRewardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionRewardTable(EntityMMissionReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionRewardId; + } + + public EntityMMissionReward FindByMissionRewardId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionSubCategoryTextTable.cs b/src/Models/Tables/EntityMMissionSubCategoryTextTable.cs new file mode 100644 index 0000000..f1bb85f --- /dev/null +++ b/src/Models/Tables/EntityMMissionSubCategoryTextTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionSubCategoryTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionSubCategoryTextTable(EntityMMissionSubCategoryText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionSubCategoryId; + } + + public EntityMMissionSubCategoryText FindByMissionSubCategoryId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionTable.cs b/src/Models/Tables/EntityMMissionTable.cs new file mode 100644 index 0000000..e9d1298 --- /dev/null +++ b/src/Models/Tables/EntityMMissionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionTable(EntityMMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionId; + } + + public EntityMMission FindByMissionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionTermTable.cs b/src/Models/Tables/EntityMMissionTermTable.cs new file mode 100644 index 0000000..e132239 --- /dev/null +++ b/src/Models/Tables/EntityMMissionTermTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionTermTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionTermTable(EntityMMissionTerm[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionTermId; + } + + public EntityMMissionTerm FindByMissionTermId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMissionUnlockConditionTable.cs b/src/Models/Tables/EntityMMissionUnlockConditionTable.cs new file mode 100644 index 0000000..e7a8e3a --- /dev/null +++ b/src/Models/Tables/EntityMMissionUnlockConditionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMissionUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMissionUnlockConditionTable(EntityMMissionUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MissionUnlockConditionId; + } + + public EntityMMissionUnlockCondition FindByMissionUnlockConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMMomBannerTable.cs b/src/Models/Tables/EntityMMomBannerTable.cs new file mode 100644 index 0000000..ed1c074 --- /dev/null +++ b/src/Models/Tables/EntityMMomBannerTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMomBannerTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMomBannerTable(EntityMMomBanner[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MomBannerId; + } +} diff --git a/src/Models/Tables/EntityMMomPointBannerTable.cs b/src/Models/Tables/EntityMMomPointBannerTable.cs new file mode 100644 index 0000000..836095f --- /dev/null +++ b/src/Models/Tables/EntityMMomPointBannerTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMomPointBannerTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMomPointBannerTable(EntityMMomPointBanner[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MomPointBannerId; + } +} diff --git a/src/Models/Tables/EntityMMovieTable.cs b/src/Models/Tables/EntityMMovieTable.cs new file mode 100644 index 0000000..ca2259d --- /dev/null +++ b/src/Models/Tables/EntityMMovieTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMMovieTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMMovieTable(EntityMMovie[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.MovieId; + } + + public EntityMMovie FindByMovieId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMNaviCutInContentGroupTable.cs b/src/Models/Tables/EntityMNaviCutInContentGroupTable.cs new file mode 100644 index 0000000..f36eb14 --- /dev/null +++ b/src/Models/Tables/EntityMNaviCutInContentGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNaviCutInContentGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMNaviCutInContentGroupTable(EntityMNaviCutInContentGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.NaviCutInContentGroupId, element.ContentIndex); + } +} diff --git a/src/Models/Tables/EntityMNaviCutInTable.cs b/src/Models/Tables/EntityMNaviCutInTable.cs new file mode 100644 index 0000000..5a1911c --- /dev/null +++ b/src/Models/Tables/EntityMNaviCutInTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNaviCutInTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMNaviCutInTable(EntityMNaviCutIn[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.NaviCutInId; + } +} diff --git a/src/Models/Tables/EntityMNaviCutInTextTable.cs b/src/Models/Tables/EntityMNaviCutInTextTable.cs new file mode 100644 index 0000000..ee364c2 --- /dev/null +++ b/src/Models/Tables/EntityMNaviCutInTextTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNaviCutInTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMNaviCutInTextTable(EntityMNaviCutInText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.NaviCutInTextId, element.LanguageType); + } + + public EntityMNaviCutInText FindByNaviCutInTextIdAndLanguageType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, LanguageType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMNumericalFunctionParameterGroupTable.cs b/src/Models/Tables/EntityMNumericalFunctionParameterGroupTable.cs new file mode 100644 index 0000000..7dc0d0e --- /dev/null +++ b/src/Models/Tables/EntityMNumericalFunctionParameterGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNumericalFunctionParameterGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMNumericalFunctionParameterGroupTable(EntityMNumericalFunctionParameterGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.NumericalFunctionParameterGroupId, element.ParameterIndex); + secondaryIndexSelector = element => element.NumericalFunctionParameterGroupId; + } + + public RangeView FindByNumericalFunctionParameterGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMNumericalFunctionTable.cs b/src/Models/Tables/EntityMNumericalFunctionTable.cs new file mode 100644 index 0000000..1ae154b --- /dev/null +++ b/src/Models/Tables/EntityMNumericalFunctionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNumericalFunctionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMNumericalFunctionTable(EntityMNumericalFunction[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.NumericalFunctionId; + } + + public EntityMNumericalFunction FindByNumericalFunctionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMNumericalParameterMapTable.cs b/src/Models/Tables/EntityMNumericalParameterMapTable.cs new file mode 100644 index 0000000..08ff559 --- /dev/null +++ b/src/Models/Tables/EntityMNumericalParameterMapTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMNumericalParameterMapTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMNumericalParameterMapTable(EntityMNumericalParameterMap[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.NumericalParameterMapId, element.ParameterKey); + } + + public EntityMNumericalParameterMap FindByNumericalParameterMapIdAndParameterKey(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMOmikujiTable.cs b/src/Models/Tables/EntityMOmikujiTable.cs new file mode 100644 index 0000000..1e8c6f1 --- /dev/null +++ b/src/Models/Tables/EntityMOmikujiTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMOmikujiTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMOmikujiTable(EntityMOmikuji[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.OmikujiId; + } +} diff --git a/src/Models/Tables/EntityMOverrideHitEffectConditionCriticalTable.cs b/src/Models/Tables/EntityMOverrideHitEffectConditionCriticalTable.cs new file mode 100644 index 0000000..2cf680b --- /dev/null +++ b/src/Models/Tables/EntityMOverrideHitEffectConditionCriticalTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMOverrideHitEffectConditionCriticalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMOverrideHitEffectConditionCriticalTable(EntityMOverrideHitEffectConditionCritical[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.OverrideHitEffectConditionId; + } + + public EntityMOverrideHitEffectConditionCritical FindByOverrideHitEffectConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMOverrideHitEffectConditionDamageAttributeTable.cs b/src/Models/Tables/EntityMOverrideHitEffectConditionDamageAttributeTable.cs new file mode 100644 index 0000000..6b3a40b --- /dev/null +++ b/src/Models/Tables/EntityMOverrideHitEffectConditionDamageAttributeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMOverrideHitEffectConditionDamageAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMOverrideHitEffectConditionDamageAttributeTable(EntityMOverrideHitEffectConditionDamageAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.OverrideHitEffectConditionId; + } + + public EntityMOverrideHitEffectConditionDamageAttribute FindByOverrideHitEffectConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMOverrideHitEffectConditionGroupTable.cs b/src/Models/Tables/EntityMOverrideHitEffectConditionGroupTable.cs new file mode 100644 index 0000000..f79427a --- /dev/null +++ b/src/Models/Tables/EntityMOverrideHitEffectConditionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMOverrideHitEffectConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMOverrideHitEffectConditionGroupTable(EntityMOverrideHitEffectConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.OverrideHitEffectConditionGroupId, element.ConditionIndex); + } + + public RangeView FindRangeByOverrideHitEffectConditionGroupIdAndConditionIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMOverrideHitEffectConditionSkillExecutorTable.cs b/src/Models/Tables/EntityMOverrideHitEffectConditionSkillExecutorTable.cs new file mode 100644 index 0000000..e67a660 --- /dev/null +++ b/src/Models/Tables/EntityMOverrideHitEffectConditionSkillExecutorTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMOverrideHitEffectConditionSkillExecutorTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMOverrideHitEffectConditionSkillExecutorTable(EntityMOverrideHitEffectConditionSkillExecutor[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.OverrideHitEffectConditionId; + } + + public EntityMOverrideHitEffectConditionSkillExecutor FindByOverrideHitEffectConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMPartsEnhancedSubStatusTable.cs b/src/Models/Tables/EntityMPartsEnhancedSubStatusTable.cs new file mode 100644 index 0000000..bee9f60 --- /dev/null +++ b/src/Models/Tables/EntityMPartsEnhancedSubStatusTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsEnhancedSubStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsEnhancedSubStatusTable(EntityMPartsEnhancedSubStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PartsEnhancedId, element.StatusIndex); + } +} diff --git a/src/Models/Tables/EntityMPartsEnhancedTable.cs b/src/Models/Tables/EntityMPartsEnhancedTable.cs new file mode 100644 index 0000000..a2a63ea --- /dev/null +++ b/src/Models/Tables/EntityMPartsEnhancedTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsEnhancedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsEnhancedTable(EntityMPartsEnhanced[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsEnhancedId; + } + + public bool TryFindByPartsEnhancedId(int key, out EntityMPartsEnhanced result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMPartsGroupTable.cs b/src/Models/Tables/EntityMPartsGroupTable.cs new file mode 100644 index 0000000..6a7bf69 --- /dev/null +++ b/src/Models/Tables/EntityMPartsGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsGroupTable(EntityMPartsGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsGroupId; + } + + public EntityMPartsGroup FindByPartsGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByPartsGroupId(int key, out EntityMPartsGroup result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMPartsLevelUpPriceGroupTable.cs b/src/Models/Tables/EntityMPartsLevelUpPriceGroupTable.cs new file mode 100644 index 0000000..89c07a5 --- /dev/null +++ b/src/Models/Tables/EntityMPartsLevelUpPriceGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsLevelUpPriceGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsLevelUpPriceGroupTable(EntityMPartsLevelUpPriceGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PartsLevelUpPriceGroupId, element.LevelLowerLimit); + } + + public EntityMPartsLevelUpPriceGroup FindByPartsLevelUpPriceGroupIdAndLevelLowerLimit(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMPartsLevelUpRateGroupTable.cs b/src/Models/Tables/EntityMPartsLevelUpRateGroupTable.cs new file mode 100644 index 0000000..246e5ee --- /dev/null +++ b/src/Models/Tables/EntityMPartsLevelUpRateGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsLevelUpRateGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsLevelUpRateGroupTable(EntityMPartsLevelUpRateGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PartsLevelUpRateGroupId, element.LevelLowerLimit); + } + + public EntityMPartsLevelUpRateGroup FindByPartsLevelUpRateGroupIdAndLevelLowerLimit(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMPartsRarityTable.cs b/src/Models/Tables/EntityMPartsRarityTable.cs new file mode 100644 index 0000000..f969961 --- /dev/null +++ b/src/Models/Tables/EntityMPartsRarityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsRarityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsRarityTable(EntityMPartsRarity[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.RarityType; + } + + public EntityMPartsRarity FindByRarityType(RarityType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMPartsSeriesBonusAbilityGroupTable.cs b/src/Models/Tables/EntityMPartsSeriesBonusAbilityGroupTable.cs new file mode 100644 index 0000000..1914c11 --- /dev/null +++ b/src/Models/Tables/EntityMPartsSeriesBonusAbilityGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsSeriesBonusAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsSeriesBonusAbilityGroupTable(EntityMPartsSeriesBonusAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PartsSeriesBonusAbilityGroupId, element.SetCount, element.AbilityId); + } + + public RangeView FindRangeByPartsSeriesBonusAbilityGroupIdAndSetCountAndAbilityId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPartsSeriesTable.cs b/src/Models/Tables/EntityMPartsSeriesTable.cs new file mode 100644 index 0000000..cb49d13 --- /dev/null +++ b/src/Models/Tables/EntityMPartsSeriesTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsSeriesTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsSeriesTable(EntityMPartsSeries[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsSeriesId; + } + + public EntityMPartsSeries FindByPartsSeriesId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMPartsStatusMainTable.cs b/src/Models/Tables/EntityMPartsStatusMainTable.cs new file mode 100644 index 0000000..bce3643 --- /dev/null +++ b/src/Models/Tables/EntityMPartsStatusMainTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsStatusMainTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsStatusMainTable(EntityMPartsStatusMain[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsStatusMainId; + } + + public EntityMPartsStatusMain FindByPartsStatusMainId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByPartsStatusMainId(int key, out EntityMPartsStatusMain result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMPartsTable.cs b/src/Models/Tables/EntityMPartsTable.cs new file mode 100644 index 0000000..25e513d --- /dev/null +++ b/src/Models/Tables/EntityMPartsTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPartsTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPartsTable(EntityMParts[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PartsId; + } + + public EntityMParts FindByPartsId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMPlatformPaymentPriceTable.cs b/src/Models/Tables/EntityMPlatformPaymentPriceTable.cs new file mode 100644 index 0000000..fdbcc98 --- /dev/null +++ b/src/Models/Tables/EntityMPlatformPaymentPriceTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPlatformPaymentPriceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPlatformPaymentPriceTable(EntityMPlatformPaymentPrice[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PlatformPaymentId, element.PlatformType); + } + + public EntityMPlatformPaymentPrice FindByPlatformPaymentIdAndPlatformType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, PlatformType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMPlatformPaymentTable.cs b/src/Models/Tables/EntityMPlatformPaymentTable.cs new file mode 100644 index 0000000..b00739b --- /dev/null +++ b/src/Models/Tables/EntityMPlatformPaymentTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPlatformPaymentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPlatformPaymentTable(EntityMPlatformPayment[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PlatformPaymentId, element.PlatformType); + } + + public EntityMPlatformPayment FindByPlatformPaymentIdAndPlatformType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, PlatformType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupScheduleTable.cs b/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupScheduleTable.cs new file mode 100644 index 0000000..76f20f5 --- /dev/null +++ b/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupScheduleTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPortalCageAccessPointFunctionGroupScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPortalCageAccessPointFunctionGroupScheduleTable(EntityMPortalCageAccessPointFunctionGroupSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PortalCageAccessPointFunctionGroupScheduleId, element.PriorityDesc); + } +} diff --git a/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupTable.cs b/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupTable.cs new file mode 100644 index 0000000..d81b6de --- /dev/null +++ b/src/Models/Tables/EntityMPortalCageAccessPointFunctionGroupTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPortalCageAccessPointFunctionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPortalCageAccessPointFunctionGroupTable(EntityMPortalCageAccessPointFunctionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.AccessPointFunctionGroupId, element.AccessPointFunctionIndex); + } + + public EntityMPortalCageAccessPointFunctionGroup FindByAccessPointFunctionGroupIdAndAccessPointFunctionIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByAccessPointFunctionGroupIdAndAccessPointFunctionIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPortalCageCharacterGroupTable.cs b/src/Models/Tables/EntityMPortalCageCharacterGroupTable.cs new file mode 100644 index 0000000..e75f3bf --- /dev/null +++ b/src/Models/Tables/EntityMPortalCageCharacterGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPortalCageCharacterGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPortalCageCharacterGroupTable(EntityMPortalCageCharacterGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PortalCageCharacterGroupId; + } + + public bool TryFindByPortalCageCharacterGroupId(int key, out EntityMPortalCageCharacterGroup result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMPortalCageGateTable.cs b/src/Models/Tables/EntityMPortalCageGateTable.cs new file mode 100644 index 0000000..8d395b4 --- /dev/null +++ b/src/Models/Tables/EntityMPortalCageGateTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPortalCageGateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPortalCageGateTable(EntityMPortalCageGate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PortalCageGateId, element.GatePositionIndex); + } + + public EntityMPortalCageGate FindByPortalCageGateIdAndGatePositionIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMPortalCageSceneTable.cs b/src/Models/Tables/EntityMPortalCageSceneTable.cs new file mode 100644 index 0000000..ade140f --- /dev/null +++ b/src/Models/Tables/EntityMPortalCageSceneTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPortalCageSceneTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPortalCageSceneTable(EntityMPortalCageScene[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PortalCageSceneId; + } +} diff --git a/src/Models/Tables/EntityMPossessionAcquisitionRouteTable.cs b/src/Models/Tables/EntityMPossessionAcquisitionRouteTable.cs new file mode 100644 index 0000000..7e8cf16 --- /dev/null +++ b/src/Models/Tables/EntityMPossessionAcquisitionRouteTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPossessionAcquisitionRouteTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPossessionAcquisitionRouteTable(EntityMPossessionAcquisitionRoute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PossessionType, element.PossessionId, element.SortOrder); + } + + public RangeView FindRangeByPossessionTypeAndPossessionIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(PossessionType, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPowerCalculationConstantValueTable.cs b/src/Models/Tables/EntityMPowerCalculationConstantValueTable.cs new file mode 100644 index 0000000..ee4450c --- /dev/null +++ b/src/Models/Tables/EntityMPowerCalculationConstantValueTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPowerCalculationConstantValueTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPowerCalculationConstantValueTable(EntityMPowerCalculationConstantValue[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PowerCalculationConstantValueType; + } +} diff --git a/src/Models/Tables/EntityMPowerReferenceStatusGroupTable.cs b/src/Models/Tables/EntityMPowerReferenceStatusGroupTable.cs new file mode 100644 index 0000000..62d3116 --- /dev/null +++ b/src/Models/Tables/EntityMPowerReferenceStatusGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPowerReferenceStatusGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPowerReferenceStatusGroupTable(EntityMPowerReferenceStatusGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PowerReferenceStatusGroupId, element.ReferenceStatusType); + } + + public RangeView FindRangeByPowerReferenceStatusGroupIdAndReferenceStatusType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, StatusKindType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPremiumItemTable.cs b/src/Models/Tables/EntityMPremiumItemTable.cs new file mode 100644 index 0000000..933a909 --- /dev/null +++ b/src/Models/Tables/EntityMPremiumItemTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPremiumItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPremiumItemTable(EntityMPremiumItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PremiumItemId; + } +} diff --git a/src/Models/Tables/EntityMPvpBackgroundTable.cs b/src/Models/Tables/EntityMPvpBackgroundTable.cs new file mode 100644 index 0000000..49df892 --- /dev/null +++ b/src/Models/Tables/EntityMPvpBackgroundTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpBackgroundTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpBackgroundTable(EntityMPvpBackground[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.AssetBackgroundId, element.BattleFieldLocaleSettingIndex, element.BattlePointIndex); + } +} diff --git a/src/Models/Tables/EntityMPvpGradeGroupTable.cs b/src/Models/Tables/EntityMPvpGradeGroupTable.cs new file mode 100644 index 0000000..176adeb --- /dev/null +++ b/src/Models/Tables/EntityMPvpGradeGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpGradeGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpGradeGroupTable(EntityMPvpGradeGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpGradeGroupId, element.PvpGradeId); + } + + public RangeView FindRangeByPvpGradeGroupIdAndPvpGradeId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPvpGradeOneMatchRewardGroupTable.cs b/src/Models/Tables/EntityMPvpGradeOneMatchRewardGroupTable.cs new file mode 100644 index 0000000..e7c3058 --- /dev/null +++ b/src/Models/Tables/EntityMPvpGradeOneMatchRewardGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpGradeOneMatchRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpGradeOneMatchRewardGroupTable(EntityMPvpGradeOneMatchRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpGradeOneMatchRewardGroupId, element.PvpGradeOneMatchRewardId); + } +} diff --git a/src/Models/Tables/EntityMPvpGradeOneMatchRewardTable.cs b/src/Models/Tables/EntityMPvpGradeOneMatchRewardTable.cs new file mode 100644 index 0000000..d48bdf3 --- /dev/null +++ b/src/Models/Tables/EntityMPvpGradeOneMatchRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpGradeOneMatchRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpGradeOneMatchRewardTable(EntityMPvpGradeOneMatchReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpGradeOneMatchRewardId, element.PvpRewardId); + } +} diff --git a/src/Models/Tables/EntityMPvpGradeTable.cs b/src/Models/Tables/EntityMPvpGradeTable.cs new file mode 100644 index 0000000..a1e477a --- /dev/null +++ b/src/Models/Tables/EntityMPvpGradeTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpGradeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpGradeTable(EntityMPvpGrade[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PvpGradeId; + } +} diff --git a/src/Models/Tables/EntityMPvpGradeWeeklyRewardGroupTable.cs b/src/Models/Tables/EntityMPvpGradeWeeklyRewardGroupTable.cs new file mode 100644 index 0000000..9f2d98a --- /dev/null +++ b/src/Models/Tables/EntityMPvpGradeWeeklyRewardGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpGradeWeeklyRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpGradeWeeklyRewardGroupTable(EntityMPvpGradeWeeklyRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpGradeWeeklyRewardGroupId, element.PvpRewardId); + } +} diff --git a/src/Models/Tables/EntityMPvpRewardTable.cs b/src/Models/Tables/EntityMPvpRewardTable.cs new file mode 100644 index 0000000..c9635e7 --- /dev/null +++ b/src/Models/Tables/EntityMPvpRewardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpRewardTable(EntityMPvpReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PvpRewardId; + } + + public EntityMPvpReward FindByPvpRewardId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMPvpSeasonGradeTable.cs b/src/Models/Tables/EntityMPvpSeasonGradeTable.cs new file mode 100644 index 0000000..23883c5 --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonGradeTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonGradeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonGradeTable(EntityMPvpSeasonGrade[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpGradeId, element.PvpSeasonId); + } +} diff --git a/src/Models/Tables/EntityMPvpSeasonGroupingTable.cs b/src/Models/Tables/EntityMPvpSeasonGroupingTable.cs new file mode 100644 index 0000000..f1f23bc --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonGroupingTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonGroupingTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonGroupingTable(EntityMPvpSeasonGrouping[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpSeasonGroupingId, element.GroupId); + } +} diff --git a/src/Models/Tables/EntityMPvpSeasonRankRewardGroupTable.cs b/src/Models/Tables/EntityMPvpSeasonRankRewardGroupTable.cs new file mode 100644 index 0000000..bfda49e --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonRankRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonRankRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonRankRewardGroupTable(EntityMPvpSeasonRankRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpSeasonRankRewardGroupId, element.PvpRewardId); + } + + public RangeView FindRangeByPvpSeasonRankRewardGroupIdAndPvpRewardId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPvpSeasonRankRewardPerSeasonTable.cs b/src/Models/Tables/EntityMPvpSeasonRankRewardPerSeasonTable.cs new file mode 100644 index 0000000..23ca61a --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonRankRewardPerSeasonTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonRankRewardPerSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonRankRewardPerSeasonTable(EntityMPvpSeasonRankRewardPerSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.RankLowerLimit, element.PvpSeasonId); + } +} diff --git a/src/Models/Tables/EntityMPvpSeasonRankRewardRankGroupTable.cs b/src/Models/Tables/EntityMPvpSeasonRankRewardRankGroupTable.cs new file mode 100644 index 0000000..3326151 --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonRankRewardRankGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonRankRewardRankGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonRankRewardRankGroupTable(EntityMPvpSeasonRankRewardRankGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpSeasonRankRewardRankGroupId, element.RankLowerLimit); + } + + public RangeView FindRangeByPvpSeasonRankRewardRankGroupIdAndRankLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPvpSeasonRankRewardTable.cs b/src/Models/Tables/EntityMPvpSeasonRankRewardTable.cs new file mode 100644 index 0000000..6a51f6e --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonRankRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonRankRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonRankRewardTable(EntityMPvpSeasonRankReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.RankLowerLimit; + } +} diff --git a/src/Models/Tables/EntityMPvpSeasonTable.cs b/src/Models/Tables/EntityMPvpSeasonTable.cs new file mode 100644 index 0000000..9369abb --- /dev/null +++ b/src/Models/Tables/EntityMPvpSeasonTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpSeasonTable(EntityMPvpSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.PvpSeasonId; + } + + public EntityMPvpSeason FindByPvpSeasonId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByPvpSeasonId(int key, out EntityMPvpSeason result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMPvpWeeklyRankRewardGroupTable.cs b/src/Models/Tables/EntityMPvpWeeklyRankRewardGroupTable.cs new file mode 100644 index 0000000..aa29b29 --- /dev/null +++ b/src/Models/Tables/EntityMPvpWeeklyRankRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpWeeklyRankRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpWeeklyRankRewardGroupTable(EntityMPvpWeeklyRankRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpWeeklyRankRewardGroupId, element.PvpRewardId); + } + + public RangeView FindRangeByPvpWeeklyRankRewardGroupIdAndPvpRewardId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPvpWeeklyRankRewardRankGroupTable.cs b/src/Models/Tables/EntityMPvpWeeklyRankRewardRankGroupTable.cs new file mode 100644 index 0000000..48c5cb5 --- /dev/null +++ b/src/Models/Tables/EntityMPvpWeeklyRankRewardRankGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpWeeklyRankRewardRankGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpWeeklyRankRewardRankGroupTable(EntityMPvpWeeklyRankRewardRankGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PvpWeeklyRankRewardRankGroupId, element.RankLowerLimit); + } + + public RangeView FindRangeByPvpWeeklyRankRewardRankGroupIdAndRankLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMPvpWinStreakCountEffectTable.cs b/src/Models/Tables/EntityMPvpWinStreakCountEffectTable.cs new file mode 100644 index 0000000..fcacc05 --- /dev/null +++ b/src/Models/Tables/EntityMPvpWinStreakCountEffectTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMPvpWinStreakCountEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMPvpWinStreakCountEffectTable(EntityMPvpWinStreakCountEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WinStreakCount; + } + + public EntityMPvpWinStreakCountEffect FindClosestByWinStreakCount(int key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer.Default, key, selectLower); +} diff --git a/src/Models/Tables/EntityMQuestBonusAbilityTable.cs b/src/Models/Tables/EntityMQuestBonusAbilityTable.cs new file mode 100644 index 0000000..139ae0b --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusAbilityTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusAbilityTable(EntityMQuestBonusAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestBonusEffectId; + } + + public EntityMQuestBonusAbility FindByQuestBonusEffectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByQuestBonusEffectId(int key, out EntityMQuestBonusAbility result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestBonusAllyCharacterTable.cs b/src/Models/Tables/EntityMQuestBonusAllyCharacterTable.cs new file mode 100644 index 0000000..a17a292 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusAllyCharacterTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusAllyCharacterTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusAllyCharacterTable(EntityMQuestBonusAllyCharacter[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestBonusAllyCharacterId; + } + + public bool TryFindByQuestBonusAllyCharacterId(int key, out EntityMQuestBonusAllyCharacter result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestBonusCharacterGroupTable.cs b/src/Models/Tables/EntityMQuestBonusCharacterGroupTable.cs new file mode 100644 index 0000000..ff2d837 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusCharacterGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusCharacterGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusCharacterGroupTable(EntityMQuestBonusCharacterGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusCharacterGroupId, element.CharacterId); + } + + public RangeView FindRangeByQuestBonusCharacterGroupIdAndCharacterId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestBonusCostumeGroupTable.cs b/src/Models/Tables/EntityMQuestBonusCostumeGroupTable.cs new file mode 100644 index 0000000..fdc4387 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusCostumeGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusCostumeGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusCostumeGroupTable(EntityMQuestBonusCostumeGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusCostumeGroupId, element.CostumeId); + } +} diff --git a/src/Models/Tables/EntityMQuestBonusCostumeSettingGroupTable.cs b/src/Models/Tables/EntityMQuestBonusCostumeSettingGroupTable.cs new file mode 100644 index 0000000..a25646f --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusCostumeSettingGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusCostumeSettingGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusCostumeSettingGroupTable(EntityMQuestBonusCostumeSettingGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusCostumeSettingGroupId, element.CostumeId, element.LimitBreakCountLowerLimit); + } + + public RangeView FindRangeByQuestBonusCostumeSettingGroupIdAndCostumeIdAndLimitBreakCountLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestBonusDropRewardTable.cs b/src/Models/Tables/EntityMQuestBonusDropRewardTable.cs new file mode 100644 index 0000000..432dc67 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusDropRewardTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusDropRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusDropRewardTable(EntityMQuestBonusDropReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestBonusEffectId; + } + + public EntityMQuestBonusDropReward FindByQuestBonusEffectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestBonusEffectGroupTable.cs b/src/Models/Tables/EntityMQuestBonusEffectGroupTable.cs new file mode 100644 index 0000000..c57c17e --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusEffectGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusEffectGroupTable(EntityMQuestBonusEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusEffectGroupId, element.SortOrder); + } + + public RangeView FindRangeByQuestBonusEffectGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestBonusExpTable.cs b/src/Models/Tables/EntityMQuestBonusExpTable.cs new file mode 100644 index 0000000..db47ee1 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusExpTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusExpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusExpTable(EntityMQuestBonusExp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestBonusEffectId; + } + + public EntityMQuestBonusExp FindByQuestBonusEffectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestBonusTable.cs b/src/Models/Tables/EntityMQuestBonusTable.cs new file mode 100644 index 0000000..9255106 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusTable(EntityMQuestBonus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestBonusId; + } + + public EntityMQuestBonus FindByQuestBonusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestBonusTermGroupTable.cs b/src/Models/Tables/EntityMQuestBonusTermGroupTable.cs new file mode 100644 index 0000000..2ecad31 --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusTermGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusTermGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestBonusTermGroupTable(EntityMQuestBonusTermGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusTermGroupId, element.SortOrder); + secondaryIndexSelector = element => element.QuestBonusTermGroupId; + } + + public RangeView FindByQuestBonusTermGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestBonusWeaponGroupTable.cs b/src/Models/Tables/EntityMQuestBonusWeaponGroupTable.cs new file mode 100644 index 0000000..0ecab3a --- /dev/null +++ b/src/Models/Tables/EntityMQuestBonusWeaponGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestBonusWeaponGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestBonusWeaponGroupTable(EntityMQuestBonusWeaponGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestBonusWeaponGroupId, element.WeaponId, element.LimitBreakCountLowerLimit); + } + + public RangeView FindRangeByQuestBonusWeaponGroupIdAndWeaponIdAndLimitBreakCountLowerLimit(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestCampaignEffectGroupTable.cs b/src/Models/Tables/EntityMQuestCampaignEffectGroupTable.cs new file mode 100644 index 0000000..2d225c6 --- /dev/null +++ b/src/Models/Tables/EntityMQuestCampaignEffectGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestCampaignEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestCampaignEffectGroupTable(EntityMQuestCampaignEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestCampaignEffectGroupId, element.QuestCampaignEffectType); + } + + public RangeView FindRangeByQuestCampaignEffectGroupIdAndQuestCampaignEffectType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, QuestCampaignEffectType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestCampaignTable.cs b/src/Models/Tables/EntityMQuestCampaignTable.cs new file mode 100644 index 0000000..71ebfc6 --- /dev/null +++ b/src/Models/Tables/EntityMQuestCampaignTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestCampaignTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestCampaignTable(EntityMQuestCampaign[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestCampaignId; + } +} diff --git a/src/Models/Tables/EntityMQuestCampaignTargetGroupTable.cs b/src/Models/Tables/EntityMQuestCampaignTargetGroupTable.cs new file mode 100644 index 0000000..703b10d --- /dev/null +++ b/src/Models/Tables/EntityMQuestCampaignTargetGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestCampaignTargetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestCampaignTargetGroupTable(EntityMQuestCampaignTargetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestCampaignTargetGroupId, element.QuestCampaignTargetIndex); + } + + public RangeView FindRangeByQuestCampaignTargetGroupIdAndQuestCampaignTargetIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestCampaignTargetItemGroupTable.cs b/src/Models/Tables/EntityMQuestCampaignTargetItemGroupTable.cs new file mode 100644 index 0000000..219d460 --- /dev/null +++ b/src/Models/Tables/EntityMQuestCampaignTargetItemGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestCampaignTargetItemGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestCampaignTargetItemGroupTable(EntityMQuestCampaignTargetItemGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestCampaignTargetItemGroupId, element.TargetIndex); + } +} diff --git a/src/Models/Tables/EntityMQuestDeckMultiRestrictionGroupTable.cs b/src/Models/Tables/EntityMQuestDeckMultiRestrictionGroupTable.cs new file mode 100644 index 0000000..b57e917 --- /dev/null +++ b/src/Models/Tables/EntityMQuestDeckMultiRestrictionGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestDeckMultiRestrictionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestDeckMultiRestrictionGroupTable(EntityMQuestDeckMultiRestrictionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestDeckMultiRestrictionGroupId, element.GroupIndex); + secondaryIndexSelector = element => (element.QuestDeckMultiRestrictionGroupId); + } + + public RangeView FindByQuestDeckMultiRestrictionGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestDeckRestrictionGroupTable.cs b/src/Models/Tables/EntityMQuestDeckRestrictionGroupTable.cs new file mode 100644 index 0000000..f40032c --- /dev/null +++ b/src/Models/Tables/EntityMQuestDeckRestrictionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestDeckRestrictionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestDeckRestrictionGroupTable(EntityMQuestDeckRestrictionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestDeckRestrictionGroupId, element.SlotNumber); + } + + public RangeView FindRangeByQuestDeckRestrictionGroupIdAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestDeckRestrictionGroupUnlockTable.cs b/src/Models/Tables/EntityMQuestDeckRestrictionGroupUnlockTable.cs new file mode 100644 index 0000000..78b6d03 --- /dev/null +++ b/src/Models/Tables/EntityMQuestDeckRestrictionGroupUnlockTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestDeckRestrictionGroupUnlockTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestDeckRestrictionGroupUnlockTable(EntityMQuestDeckRestrictionGroupUnlock[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestDeckRestrictionGroupId; + } + + public EntityMQuestDeckRestrictionGroupUnlock FindByQuestDeckRestrictionGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestDisplayAttributeGroupTable.cs b/src/Models/Tables/EntityMQuestDisplayAttributeGroupTable.cs new file mode 100644 index 0000000..11de3e8 --- /dev/null +++ b/src/Models/Tables/EntityMQuestDisplayAttributeGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestDisplayAttributeGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestDisplayAttributeGroupTable(EntityMQuestDisplayAttributeGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestDisplayAttributeGroupId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMQuestDisplayEnemyThumbnailReplaceTable.cs b/src/Models/Tables/EntityMQuestDisplayEnemyThumbnailReplaceTable.cs new file mode 100644 index 0000000..81675f1 --- /dev/null +++ b/src/Models/Tables/EntityMQuestDisplayEnemyThumbnailReplaceTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestDisplayEnemyThumbnailReplaceTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestDisplayEnemyThumbnailReplaceTable(EntityMQuestDisplayEnemyThumbnailReplace[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.Priority); + secondaryIndexSelector = element => element.QuestId; + } + + public RangeView FindByQuestId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestFirstClearRewardGroupTable.cs b/src/Models/Tables/EntityMQuestFirstClearRewardGroupTable.cs new file mode 100644 index 0000000..dbdbafa --- /dev/null +++ b/src/Models/Tables/EntityMQuestFirstClearRewardGroupTable.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestFirstClearRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestFirstClearRewardGroupTable(EntityMQuestFirstClearRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestFirstClearRewardGroupId, element.QuestFirstClearRewardType, element.SortOrder); + secondaryIndexSelector = element => (element.QuestFirstClearRewardGroupId, element.QuestFirstClearRewardType); + } + + public RangeView FindRangeByQuestFirstClearRewardGroupIdAndQuestFirstClearRewardTypeAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, QuestFirstClearRewardType, int)>.Default, min, max, ascendant); + + public RangeView FindByQuestFirstClearRewardGroupIdAndQuestFirstClearRewardType(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, QuestFirstClearRewardType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestFirstClearRewardSwitchTable.cs b/src/Models/Tables/EntityMQuestFirstClearRewardSwitchTable.cs new file mode 100644 index 0000000..6c273bd --- /dev/null +++ b/src/Models/Tables/EntityMQuestFirstClearRewardSwitchTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestFirstClearRewardSwitchTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestFirstClearRewardSwitchTable(EntityMQuestFirstClearRewardSwitch[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestId; + } + + public bool TryFindByQuestId(int key, out EntityMQuestFirstClearRewardSwitch result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestMissionConditionValueGroupTable.cs b/src/Models/Tables/EntityMQuestMissionConditionValueGroupTable.cs new file mode 100644 index 0000000..8f77bf1 --- /dev/null +++ b/src/Models/Tables/EntityMQuestMissionConditionValueGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestMissionConditionValueGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestMissionConditionValueGroupTable(EntityMQuestMissionConditionValueGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestMissionConditionValueGroupId, element.SortOrder); + } + + public RangeView FindRangeByQuestMissionConditionValueGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestMissionGroupTable.cs b/src/Models/Tables/EntityMQuestMissionGroupTable.cs new file mode 100644 index 0000000..ed0b9ca --- /dev/null +++ b/src/Models/Tables/EntityMQuestMissionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestMissionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestMissionGroupTable(EntityMQuestMissionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestMissionGroupId, element.SortOrder); + } + + public RangeView FindRangeByQuestMissionGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestMissionRewardTable.cs b/src/Models/Tables/EntityMQuestMissionRewardTable.cs new file mode 100644 index 0000000..dc2bd5b --- /dev/null +++ b/src/Models/Tables/EntityMQuestMissionRewardTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestMissionRewardTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestMissionRewardTable(EntityMQuestMissionReward[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestMissionRewardId; + } +} diff --git a/src/Models/Tables/EntityMQuestMissionTable.cs b/src/Models/Tables/EntityMQuestMissionTable.cs new file mode 100644 index 0000000..46c8498 --- /dev/null +++ b/src/Models/Tables/EntityMQuestMissionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestMissionTable(EntityMQuestMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestMissionId; + } + + public EntityMQuestMission FindByQuestMissionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestPickupRewardGroupTable.cs b/src/Models/Tables/EntityMQuestPickupRewardGroupTable.cs new file mode 100644 index 0000000..3032598 --- /dev/null +++ b/src/Models/Tables/EntityMQuestPickupRewardGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestPickupRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestPickupRewardGroupTable(EntityMQuestPickupRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestPickupRewardGroupId, element.SortOrder); + } +} diff --git a/src/Models/Tables/EntityMQuestRelationMainFlowTable.cs b/src/Models/Tables/EntityMQuestRelationMainFlowTable.cs new file mode 100644 index 0000000..275bef9 --- /dev/null +++ b/src/Models/Tables/EntityMQuestRelationMainFlowTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestRelationMainFlowTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestRelationMainFlowTable(EntityMQuestRelationMainFlow[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MainFlowQuestId, element.DifficultyType); + } + + public bool TryFindByMainFlowQuestIdAndDifficultyType(ValueTuple key, out EntityMQuestRelationMainFlow result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key, out result); + + public RangeView FindRangeByMainFlowQuestIdAndDifficultyType(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, DifficultyType)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionBigHuntScoreTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionBigHuntScoreTable.cs new file mode 100644 index 0000000..bd12512 --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionBigHuntScoreTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionBigHuntScoreTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionBigHuntScoreTable(EntityMQuestReleaseConditionBigHuntScore[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionBigHuntScore FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionCharacterLevelTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionCharacterLevelTable.cs new file mode 100644 index 0000000..0634bbd --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionCharacterLevelTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionCharacterLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionCharacterLevelTable(EntityMQuestReleaseConditionCharacterLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionCharacterLevel FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionDeckPowerTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionDeckPowerTable.cs new file mode 100644 index 0000000..136eda5 --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionDeckPowerTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionDeckPowerTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionDeckPowerTable(EntityMQuestReleaseConditionDeckPower[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionDeckPower FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionGroupTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionGroupTable.cs new file mode 100644 index 0000000..847d4bc --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionGroupTable(EntityMQuestReleaseConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestReleaseConditionGroupId, element.SortOrder); + } + + public RangeView FindRangeByQuestReleaseConditionGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionListTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionListTable.cs new file mode 100644 index 0000000..0c0b923 --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionListTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionListTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionListTable(EntityMQuestReleaseConditionList[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionListId; + } + + public EntityMQuestReleaseConditionList FindByQuestReleaseConditionListId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionQuestChallengeTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionQuestChallengeTable.cs new file mode 100644 index 0000000..9fa05ca --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionQuestChallengeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionQuestChallengeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionQuestChallengeTable(EntityMQuestReleaseConditionQuestChallenge[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionQuestChallenge FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionQuestClearTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionQuestClearTable.cs new file mode 100644 index 0000000..5d5df2e --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionQuestClearTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionQuestClearTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionQuestClearTable(EntityMQuestReleaseConditionQuestClear[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionQuestClear FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionUserLevelTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionUserLevelTable.cs new file mode 100644 index 0000000..0b17c2b --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionUserLevelTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionUserLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionUserLevelTable(EntityMQuestReleaseConditionUserLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionUserLevel FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReleaseConditionWeaponAcquisitionTable.cs b/src/Models/Tables/EntityMQuestReleaseConditionWeaponAcquisitionTable.cs new file mode 100644 index 0000000..0d2bbb6 --- /dev/null +++ b/src/Models/Tables/EntityMQuestReleaseConditionWeaponAcquisitionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReleaseConditionWeaponAcquisitionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReleaseConditionWeaponAcquisitionTable(EntityMQuestReleaseConditionWeaponAcquisition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestReleaseConditionId; + } + + public EntityMQuestReleaseConditionWeaponAcquisition FindByQuestReleaseConditionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestReplayFlowRewardGroupTable.cs b/src/Models/Tables/EntityMQuestReplayFlowRewardGroupTable.cs new file mode 100644 index 0000000..eb2566e --- /dev/null +++ b/src/Models/Tables/EntityMQuestReplayFlowRewardGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestReplayFlowRewardGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestReplayFlowRewardGroupTable(EntityMQuestReplayFlowRewardGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestReplayFlowRewardGroupId, element.SortOrder); + } + + public RangeView FindRangeByQuestReplayFlowRewardGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestSceneBattleTable.cs b/src/Models/Tables/EntityMQuestSceneBattleTable.cs new file mode 100644 index 0000000..11e1255 --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneBattleTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneBattleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestSceneBattleTable(EntityMQuestSceneBattle[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public EntityMQuestSceneBattle FindByQuestSceneId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestSceneChoiceCostumeEffectGroupTable.cs b/src/Models/Tables/EntityMQuestSceneChoiceCostumeEffectGroupTable.cs new file mode 100644 index 0000000..7b8507c --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneChoiceCostumeEffectGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneChoiceCostumeEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestSceneChoiceCostumeEffectGroupTable(EntityMQuestSceneChoiceCostumeEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneChoiceCostumeEffectGroupId, element.SortOrder); + secondaryIndexSelector = element => element.CostumeId; + } + + public RangeView FindByCostumeId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestSceneChoiceEffectTable.cs b/src/Models/Tables/EntityMQuestSceneChoiceEffectTable.cs new file mode 100644 index 0000000..09b5a6f --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneChoiceEffectTable.cs @@ -0,0 +1,24 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneChoiceEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestSceneChoiceEffectTable(EntityMQuestSceneChoiceEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneChoiceEffectId; + secondaryIndexSelector = element => (element.QuestSceneChoiceCostumeEffectGroupId, element.QuestSceneChoiceWeaponEffectGroupId); + } + + public RangeView FindByQuestSceneChoiceCostumeEffectGroupId(int key) + { + var result = data + .Where(x => x.QuestSceneChoiceCostumeEffectGroupId == key) + .ToArray(); + + return new RangeView(result, 0, result.Length - 1, true); + } +} diff --git a/src/Models/Tables/EntityMQuestSceneChoiceTable.cs b/src/Models/Tables/EntityMQuestSceneChoiceTable.cs new file mode 100644 index 0000000..e5a1ffa --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneChoiceTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneChoiceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestSceneChoiceTable(EntityMQuestSceneChoice[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.MainFlowQuestSceneId, element.QuestFlowType, element.ChoiceNumber); + } +} diff --git a/src/Models/Tables/EntityMQuestSceneChoiceWeaponEffectGroupTable.cs b/src/Models/Tables/EntityMQuestSceneChoiceWeaponEffectGroupTable.cs new file mode 100644 index 0000000..6bf5dce --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneChoiceWeaponEffectGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneChoiceWeaponEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMQuestSceneChoiceWeaponEffectGroupTable(EntityMQuestSceneChoiceWeaponEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneChoiceWeaponEffectGroupId, element.SortOrder); + secondaryIndexSelector = element => element.WeaponId; + } + + public RangeView FindByWeaponId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestSceneNotConfirmTitleDialogTable.cs b/src/Models/Tables/EntityMQuestSceneNotConfirmTitleDialogTable.cs new file mode 100644 index 0000000..2de64da --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneNotConfirmTitleDialogTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneNotConfirmTitleDialogTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestSceneNotConfirmTitleDialogTable(EntityMQuestSceneNotConfirmTitleDialog[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public EntityMQuestSceneNotConfirmTitleDialog FindByQuestSceneId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestSceneOutgameBlendshapeMotionTable.cs b/src/Models/Tables/EntityMQuestSceneOutgameBlendshapeMotionTable.cs new file mode 100644 index 0000000..1900f62 --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneOutgameBlendshapeMotionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneOutgameBlendshapeMotionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestSceneOutgameBlendshapeMotionTable(EntityMQuestSceneOutgameBlendshapeMotion[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public EntityMQuestSceneOutgameBlendshapeMotion FindByQuestSceneId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMQuestScenePictureBookReplaceTable.cs b/src/Models/Tables/EntityMQuestScenePictureBookReplaceTable.cs new file mode 100644 index 0000000..6729b43 --- /dev/null +++ b/src/Models/Tables/EntityMQuestScenePictureBookReplaceTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestScenePictureBookReplaceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestScenePictureBookReplaceTable(EntityMQuestScenePictureBookReplace[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public bool TryFindByQuestSceneId(int key, out EntityMQuestScenePictureBookReplace result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestSceneTable.cs b/src/Models/Tables/EntityMQuestSceneTable.cs new file mode 100644 index 0000000..7f62412 --- /dev/null +++ b/src/Models/Tables/EntityMQuestSceneTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestSceneTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestSceneTable(EntityMQuestScene[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestSceneId; + } + + public EntityMQuestScene FindByQuestSceneId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByQuestSceneId(int key, out EntityMQuestScene result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestScheduleCorrespondenceTable.cs b/src/Models/Tables/EntityMQuestScheduleCorrespondenceTable.cs new file mode 100644 index 0000000..571d62c --- /dev/null +++ b/src/Models/Tables/EntityMQuestScheduleCorrespondenceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestScheduleCorrespondenceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestScheduleCorrespondenceTable(EntityMQuestScheduleCorrespondence[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestId, element.QuestScheduleId); + } + + public RangeView FindRangeByQuestIdAndQuestScheduleId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMQuestScheduleTable.cs b/src/Models/Tables/EntityMQuestScheduleTable.cs new file mode 100644 index 0000000..c81477c --- /dev/null +++ b/src/Models/Tables/EntityMQuestScheduleTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestScheduleTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestScheduleTable(EntityMQuestSchedule[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestScheduleId; + } + + public EntityMQuestSchedule FindByQuestScheduleId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByQuestScheduleId(int key, out EntityMQuestSchedule result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMQuestTable.cs b/src/Models/Tables/EntityMQuestTable.cs new file mode 100644 index 0000000..d2743af --- /dev/null +++ b/src/Models/Tables/EntityMQuestTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMQuestTable(EntityMQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.QuestId; + } + + public EntityMQuest FindByQuestId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByQuestId(int key, out EntityMQuest result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMReportTable.cs b/src/Models/Tables/EntityMReportTable.cs new file mode 100644 index 0000000..d3829ae --- /dev/null +++ b/src/Models/Tables/EntityMReportTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMReportTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMReportTable(EntityMReport[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ReportId; + secondaryIndexSelector = element => element.MainQuestSeasonId; + } + + public EntityMReport FindByReportId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopDisplayPriceTable.cs b/src/Models/Tables/EntityMShopDisplayPriceTable.cs new file mode 100644 index 0000000..3272ce5 --- /dev/null +++ b/src/Models/Tables/EntityMShopDisplayPriceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopDisplayPriceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopDisplayPriceTable(EntityMShopDisplayPrice[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.PriceType, element.PriceId); + } + + public EntityMShopDisplayPrice FindByPriceTypeAndPriceId(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(PriceType, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemAdditionalContentTable.cs b/src/Models/Tables/EntityMShopItemAdditionalContentTable.cs new file mode 100644 index 0000000..e6d3d7a --- /dev/null +++ b/src/Models/Tables/EntityMShopItemAdditionalContentTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemAdditionalContentTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemAdditionalContentTable(EntityMShopItemAdditionalContent[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ShopItemAdditionalContentId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMShopItemCellGroupTable.cs b/src/Models/Tables/EntityMShopItemCellGroupTable.cs new file mode 100644 index 0000000..ea87441 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemCellGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemCellGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemCellGroupTable(EntityMShopItemCellGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ShopItemCellGroupId, element.ShopItemCellId); + } + + public RangeView FindRangeByShopItemCellGroupIdAndShopItemCellId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMShopItemCellLimitedOpenTable.cs b/src/Models/Tables/EntityMShopItemCellLimitedOpenTable.cs new file mode 100644 index 0000000..4f6f4bf --- /dev/null +++ b/src/Models/Tables/EntityMShopItemCellLimitedOpenTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemCellLimitedOpenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemCellLimitedOpenTable(EntityMShopItemCellLimitedOpen[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemCellId; + } + + public EntityMShopItemCellLimitedOpen FindByShopItemCellId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemCellTable.cs b/src/Models/Tables/EntityMShopItemCellTable.cs new file mode 100644 index 0000000..35c3ea6 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemCellTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemCellTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemCellTable(EntityMShopItemCell[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ShopItemCellId, element.StepNumber); + } + + public RangeView FindRangeByShopItemCellIdAndStepNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMShopItemCellTermTable.cs b/src/Models/Tables/EntityMShopItemCellTermTable.cs new file mode 100644 index 0000000..7404b5d --- /dev/null +++ b/src/Models/Tables/EntityMShopItemCellTermTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemCellTermTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemCellTermTable(EntityMShopItemCellTerm[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemCellTermId; + } + + public EntityMShopItemCellTerm FindByShopItemCellTermId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemContentEffectTable.cs b/src/Models/Tables/EntityMShopItemContentEffectTable.cs new file mode 100644 index 0000000..0bfc97b --- /dev/null +++ b/src/Models/Tables/EntityMShopItemContentEffectTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemContentEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemContentEffectTable(EntityMShopItemContentEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemId; + } + + public EntityMShopItemContentEffect FindByShopItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemContentMissionTable.cs b/src/Models/Tables/EntityMShopItemContentMissionTable.cs new file mode 100644 index 0000000..c99fd25 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemContentMissionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemContentMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemContentMissionTable(EntityMShopItemContentMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemId; + } + + public EntityMShopItemContentMission FindByShopItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemContentPossessionTable.cs b/src/Models/Tables/EntityMShopItemContentPossessionTable.cs new file mode 100644 index 0000000..72ebf50 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemContentPossessionTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemContentPossessionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemContentPossessionTable(EntityMShopItemContentPossession[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.ShopItemId, element.PossessionType, element.PossessionId); + } +} diff --git a/src/Models/Tables/EntityMShopItemLimitedStockTable.cs b/src/Models/Tables/EntityMShopItemLimitedStockTable.cs new file mode 100644 index 0000000..4a20e37 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemLimitedStockTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemLimitedStockTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemLimitedStockTable(EntityMShopItemLimitedStock[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemLimitedStockId; + } + + public EntityMShopItemLimitedStock FindByShopItemLimitedStockId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemTable.cs b/src/Models/Tables/EntityMShopItemTable.cs new file mode 100644 index 0000000..68a23e7 --- /dev/null +++ b/src/Models/Tables/EntityMShopItemTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemTable(EntityMShopItem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemId; + } + + public EntityMShopItem FindByShopItemId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMShopItemUserLevelConditionTable.cs b/src/Models/Tables/EntityMShopItemUserLevelConditionTable.cs new file mode 100644 index 0000000..20507fc --- /dev/null +++ b/src/Models/Tables/EntityMShopItemUserLevelConditionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopItemUserLevelConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopItemUserLevelConditionTable(EntityMShopItemUserLevelCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopItemId; + } +} diff --git a/src/Models/Tables/EntityMShopReplaceableGemTable.cs b/src/Models/Tables/EntityMShopReplaceableGemTable.cs new file mode 100644 index 0000000..5022bfd --- /dev/null +++ b/src/Models/Tables/EntityMShopReplaceableGemTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopReplaceableGemTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopReplaceableGemTable(EntityMShopReplaceableGem[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.LineupUpdateCountLowerLimit; + } +} diff --git a/src/Models/Tables/EntityMShopTable.cs b/src/Models/Tables/EntityMShopTable.cs new file mode 100644 index 0000000..119a27f --- /dev/null +++ b/src/Models/Tables/EntityMShopTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMShopTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMShopTable(EntityMShop[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ShopId; + } + + public EntityMShop FindByShopId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByShopId(int key, out EntityMShop result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSideStoryQuestLimitContentTable.cs b/src/Models/Tables/EntityMSideStoryQuestLimitContentTable.cs new file mode 100644 index 0000000..5aaea63 --- /dev/null +++ b/src/Models/Tables/EntityMSideStoryQuestLimitContentTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSideStoryQuestLimitContentTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMSideStoryQuestLimitContentTable(EntityMSideStoryQuestLimitContent[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SideStoryQuestLimitContentId; + secondaryIndexSelector = element => (element.EventQuestChapterId, element.DifficultyType); + } + + public EntityMSideStoryQuestLimitContent FindBySideStoryQuestLimitContentId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindByEventQuestChapterIdAndDifficultyType(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, DifficultyType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMSideStoryQuestSceneTable.cs b/src/Models/Tables/EntityMSideStoryQuestSceneTable.cs new file mode 100644 index 0000000..533494f --- /dev/null +++ b/src/Models/Tables/EntityMSideStoryQuestSceneTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSideStoryQuestSceneTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSideStoryQuestSceneTable(EntityMSideStoryQuestScene[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SideStoryQuestId, element.SideStoryQuestSceneId); + } + + public EntityMSideStoryQuestScene FindBySideStoryQuestIdAndSideStoryQuestSceneId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMSideStoryQuestTable.cs b/src/Models/Tables/EntityMSideStoryQuestTable.cs new file mode 100644 index 0000000..b534a73 --- /dev/null +++ b/src/Models/Tables/EntityMSideStoryQuestTable.cs @@ -0,0 +1,23 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSideStoryQuestTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMSideStoryQuestTable(EntityMSideStoryQuest[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SideStoryQuestId; + secondaryIndexSelector = element => (element.SideStoryQuestType, element.TargetId); + } + + public EntityMSideStoryQuest FindBySideStoryQuestId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindBySideStoryQuestId(int key, out EntityMSideStoryQuest result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); + + public RangeView FindBySideStoryQuestTypeAndTargetId(ValueTuple key) => + FindManyCore(data, secondaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable.cs new file mode 100644 index 0000000..a56666b --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionAbnormalResistanceTable(EntityMSkillAbnormalBehaviourActionAbnormalResistance[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionAbnormalResistance FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable.cs new file mode 100644 index 0000000..3186f48 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionAttributeDamageCorrectionTable(EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionAttributeDamageCorrection FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionBuffResistanceTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionBuffResistanceTable.cs new file mode 100644 index 0000000..bd98385 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionBuffResistanceTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionBuffResistanceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionBuffResistanceTable(EntityMSkillAbnormalBehaviourActionBuffResistance[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionBuffResistance FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable.cs new file mode 100644 index 0000000..551c708 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlwaysTable(EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public EntityMSkillAbnormalBehaviourActionDamageMultiplyDetailAlways FindByDamageMultiplyAbnormalDetailId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyTable.cs new file mode 100644 index 0000000..1c29278 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageMultiplyTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionDamageMultiplyTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionDamageMultiplyTable(EntityMSkillAbnormalBehaviourActionDamageMultiply[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionDamageMultiply FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageTable.cs new file mode 100644 index 0000000..15085ba --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDamageTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionDamageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionDamageTable(EntityMSkillAbnormalBehaviourActionDamage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionDamage FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable.cs new file mode 100644 index 0000000..6d9722d --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionDefaultSkillLotteryTable(EntityMSkillAbnormalBehaviourActionDefaultSkillLottery[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionDefaultSkillLottery FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionHitRatioDownTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionHitRatioDownTable.cs new file mode 100644 index 0000000..9081f22 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionHitRatioDownTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionHitRatioDownTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionHitRatioDownTable(EntityMSkillAbnormalBehaviourActionHitRatioDown[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionHitRatioDown FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionModifyHateValueTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionModifyHateValueTable.cs new file mode 100644 index 0000000..89dea46 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionModifyHateValueTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionModifyHateValueTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionModifyHateValueTable(EntityMSkillAbnormalBehaviourActionModifyHateValue[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionModifyHateValue FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable.cs new file mode 100644 index 0000000..3bef6bf --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionOverrideEvasionValueTable(EntityMSkillAbnormalBehaviourActionOverrideEvasionValue[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionOverrideEvasionValue FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable.cs new file mode 100644 index 0000000..390986e --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionOverrideHitEffectTable(EntityMSkillAbnormalBehaviourActionOverrideHitEffect[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionOverrideHitEffect FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionRecoveryTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionRecoveryTable.cs new file mode 100644 index 0000000..9f1c39d --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionRecoveryTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionRecoveryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionRecoveryTable(EntityMSkillAbnormalBehaviourActionRecovery[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionRecovery FindBySkillAbnormalBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourActionTurnRestrictionTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionTurnRestrictionTable.cs new file mode 100644 index 0000000..2a47bf9 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourActionTurnRestrictionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourActionTurnRestrictionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourActionTurnRestrictionTable(EntityMSkillAbnormalBehaviourActionTurnRestriction[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillAbnormalBehaviourActionTurnRestriction FindBySkillBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourGroupTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourGroupTable.cs new file mode 100644 index 0000000..55c4722 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourGroupTable(EntityMSkillAbnormalBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillAbnormalBehaviourGroupId, element.AbnormalBehaviourIndex); + } +} diff --git a/src/Models/Tables/EntityMSkillAbnormalBehaviourTable.cs b/src/Models/Tables/EntityMSkillAbnormalBehaviourTable.cs new file mode 100644 index 0000000..bca2d64 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalBehaviourTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalBehaviourTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalBehaviourTable(EntityMSkillAbnormalBehaviour[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalBehaviourId; + } + + public EntityMSkillAbnormalBehaviour FindBySkillAbnormalBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable.cs b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable.cs new file mode 100644 index 0000000..ac08155 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalDamageMultiplyDetailAbnormalTable(EntityMSkillAbnormalDamageMultiplyDetailAbnormal[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public bool TryFindByDamageMultiplyAbnormalDetailId(int key, out EntityMSkillAbnormalDamageMultiplyDetailAbnormal result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable.cs b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable.cs new file mode 100644 index 0000000..5ec6cc1 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalDamageMultiplyDetailBuffAttachedTable(EntityMSkillAbnormalDamageMultiplyDetailBuffAttached[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public bool TryFindByDamageMultiplyAbnormalDetailId(int key, out EntityMSkillAbnormalDamageMultiplyDetailBuffAttached result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailCriticalTable.cs b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailCriticalTable.cs new file mode 100644 index 0000000..2fe0b78 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailCriticalTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalDamageMultiplyDetailCriticalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalDamageMultiplyDetailCriticalTable(EntityMSkillAbnormalDamageMultiplyDetailCritical[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public bool TryFindByDamageMultiplyAbnormalDetailId(int key, out EntityMSkillAbnormalDamageMultiplyDetailCritical result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable.cs b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable.cs new file mode 100644 index 0000000..9c69336 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalDamageMultiplyDetailHitIndexTable(EntityMSkillAbnormalDamageMultiplyDetailHitIndex[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public EntityMSkillAbnormalDamageMultiplyDetailHitIndex FindByDamageMultiplyAbnormalDetailId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable.cs b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable.cs new file mode 100644 index 0000000..ae0f9ae --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeaponTable(EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.DamageMultiplyAbnormalDetailId; + } + + public bool TryFindByDamageMultiplyAbnormalDetailId(int key, out EntityMSkillAbnormalDamageMultiplyDetailSkillfulWeapon result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourActivateCountTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourActivateCountTable.cs new file mode 100644 index 0000000..6872cf7 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourActivateCountTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeBehaviourActivateCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeBehaviourActivateCountTable(EntityMSkillAbnormalLifetimeBehaviourActivateCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalLifetimeBehaviourId; + } + + public EntityMSkillAbnormalLifetimeBehaviourActivateCount FindBySkillAbnormalLifetimeBehaviourId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourFrameCountTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourFrameCountTable.cs new file mode 100644 index 0000000..23b207b --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourFrameCountTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeBehaviourFrameCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeBehaviourFrameCountTable(EntityMSkillAbnormalLifetimeBehaviourFrameCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalLifetimeBehaviourId; + } + + public EntityMSkillAbnormalLifetimeBehaviourFrameCount FindBySkillAbnormalLifetimeBehaviourId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourGroupTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourGroupTable.cs new file mode 100644 index 0000000..96246eb --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeBehaviourGroupTable(EntityMSkillAbnormalLifetimeBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillAbnormalLifetimeBehaviourGroupId, element.AbnormalLifetimeBehaviourIndex); + } +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable.cs new file mode 100644 index 0000000..a40dbf9 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCountTable(EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalLifetimeBehaviourId; + } + + public EntityMSkillAbnormalLifetimeBehaviourReceiveDamageCount FindBySkillAbnormalLifetimeBehaviourId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourTurnCountTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourTurnCountTable.cs new file mode 100644 index 0000000..76461e1 --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeBehaviourTurnCountTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeBehaviourTurnCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeBehaviourTurnCountTable(EntityMSkillAbnormalLifetimeBehaviourTurnCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalLifetimeBehaviourId; + } + + public EntityMSkillAbnormalLifetimeBehaviourTurnCount FindBySkillAbnormalLifetimeBehaviourId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalLifetimeTable.cs b/src/Models/Tables/EntityMSkillAbnormalLifetimeTable.cs new file mode 100644 index 0000000..58479bd --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalLifetimeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalLifetimeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalLifetimeTable(EntityMSkillAbnormalLifetime[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalLifetimeId; + } + + public EntityMSkillAbnormalLifetime FindBySkillAbnormalLifetimeId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillAbnormalTable.cs b/src/Models/Tables/EntityMSkillAbnormalTable.cs new file mode 100644 index 0000000..ecdaf4e --- /dev/null +++ b/src/Models/Tables/EntityMSkillAbnormalTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillAbnormalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillAbnormalTable(EntityMSkillAbnormal[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillAbnormalId; + } + + public EntityMSkillAbnormal FindBySkillAbnormalId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAbnormalTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAbnormalTable.cs new file mode 100644 index 0000000..07ae613 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAbnormalTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAbnormalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAbnormalTable(EntityMSkillBehaviourActionAbnormal[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAbnormal FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable.cs new file mode 100644 index 0000000..6eb7511 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionActiveSkillDamageCorrectionTable(EntityMSkillBehaviourActionActiveSkillDamageCorrection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionActiveSkillDamageCorrection FindBySkillBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable.cs new file mode 100644 index 0000000..e9505f7 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediateTable(EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeImmediate FindBySkillBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable.cs new file mode 100644 index 0000000..927178e --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltimeTable(EntityMSkillBehaviourActionAdvanceActiveSkillCooltime[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAdvanceActiveSkillCooltime FindBySkillBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackClampHpTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackClampHpTable.cs new file mode 100644 index 0000000..8394031 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackClampHpTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackClampHpTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackClampHpTable(EntityMSkillBehaviourActionAttackClampHp[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public bool TryFindBySkillBehaviourActionId(int key, out EntityMSkillBehaviourActionAttackClampHp result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackComboTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackComboTable.cs new file mode 100644 index 0000000..9a98071 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackComboTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackComboTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackComboTable(EntityMSkillBehaviourActionAttackCombo[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackCombo FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackFixedDamageTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackFixedDamageTable.cs new file mode 100644 index 0000000..371e311 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackFixedDamageTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackFixedDamageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackFixedDamageTable(EntityMSkillBehaviourActionAttackFixedDamage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackFixedDamage FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackHpRatioTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackHpRatioTable.cs new file mode 100644 index 0000000..1c46391 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackHpRatioTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackHpRatioTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackHpRatioTable(EntityMSkillBehaviourActionAttackHpRatio[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackHpRatio FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackIgnoreVitalityTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackIgnoreVitalityTable.cs new file mode 100644 index 0000000..3d09ef3 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackIgnoreVitalityTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackIgnoreVitalityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackIgnoreVitalityTable(EntityMSkillBehaviourActionAttackIgnoreVitality[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackIgnoreVitality FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackMainWeaponAttributeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackMainWeaponAttributeTable.cs new file mode 100644 index 0000000..fdd3d4b --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackMainWeaponAttributeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackMainWeaponAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackMainWeaponAttributeTable(EntityMSkillBehaviourActionAttackMainWeaponAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackMainWeaponAttribute FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable.cs new file mode 100644 index 0000000..7c62569 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackSkillfulMainWeaponTypeTable(EntityMSkillBehaviourActionAttackSkillfulMainWeaponType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttackSkillfulMainWeaponType FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackTable.cs new file mode 100644 index 0000000..1adf20c --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackTable(EntityMSkillBehaviourActionAttack[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttack FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttackVitalityTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttackVitalityTable.cs new file mode 100644 index 0000000..bffd29e --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttackVitalityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttackVitalityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttackVitalityTable(EntityMSkillBehaviourActionAttackVitality[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public bool TryFindBySkillBehaviourActionId(int key, out EntityMSkillBehaviourActionAttackVitality result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionAttributeDamageCorrectionTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionAttributeDamageCorrectionTable.cs new file mode 100644 index 0000000..2886f62 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionAttributeDamageCorrectionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionAttributeDamageCorrectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionAttributeDamageCorrectionTable(EntityMSkillBehaviourActionAttributeDamageCorrection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionAttributeDamageCorrection FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionBuffTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionBuffTable.cs new file mode 100644 index 0000000..a5de739 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionBuffTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionBuffTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionBuffTable(EntityMSkillBehaviourActionBuff[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionBuff FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionChangestepTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionChangestepTable.cs new file mode 100644 index 0000000..a38fed3 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionChangestepTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionChangestepTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionChangestepTable(EntityMSkillBehaviourActionChangestep[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionChangestep FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionDamageCorrectionHpRatioTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionDamageCorrectionHpRatioTable.cs new file mode 100644 index 0000000..a72d826 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionDamageCorrectionHpRatioTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionDamageCorrectionHpRatioTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionDamageCorrectionHpRatioTable(EntityMSkillBehaviourActionDamageCorrectionHpRatio[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionDamageCorrectionHpRatio FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionDamageMultiplyTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionDamageMultiplyTable.cs new file mode 100644 index 0000000..54a335a --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionDamageMultiplyTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionDamageMultiplyTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionDamageMultiplyTable(EntityMSkillBehaviourActionDamageMultiply[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionDamageMultiply FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionDefaultSkillLotteryTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionDefaultSkillLotteryTable.cs new file mode 100644 index 0000000..ec9ed3b --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionDefaultSkillLotteryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionDefaultSkillLotteryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionDefaultSkillLotteryTable(EntityMSkillBehaviourActionDefaultSkillLottery[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionDefaultSkillLottery FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionExtendBuffCooltimeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionExtendBuffCooltimeTable.cs new file mode 100644 index 0000000..892e626 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionExtendBuffCooltimeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionExtendBuffCooltimeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionExtendBuffCooltimeTable(EntityMSkillBehaviourActionExtendBuffCooltime[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionExtendBuffCooltime FindBySkillBehaviourActionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionHpRatioDamageTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionHpRatioDamageTable.cs new file mode 100644 index 0000000..f3fdd61 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionHpRatioDamageTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionHpRatioDamageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionHpRatioDamageTable(EntityMSkillBehaviourActionHpRatioDamage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionHpRatioDamage FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionOverlimitDamageMultiplyTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionOverlimitDamageMultiplyTable.cs new file mode 100644 index 0000000..8708876 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionOverlimitDamageMultiplyTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionOverlimitDamageMultiplyTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionOverlimitDamageMultiplyTable(EntityMSkillBehaviourActionOverlimitDamageMultiply[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionOverlimitDamageMultiply FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionRecoveryPointCorrectionTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionRecoveryPointCorrectionTable.cs new file mode 100644 index 0000000..6992875 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionRecoveryPointCorrectionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionRecoveryPointCorrectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionRecoveryPointCorrectionTable(EntityMSkillBehaviourActionRecoveryPointCorrection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionRecoveryTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionRecoveryTable.cs new file mode 100644 index 0000000..6205661 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionRecoveryTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionRecoveryTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionRecoveryTable(EntityMSkillBehaviourActionRecovery[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionRecovery FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionRemoveAbnormalTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionRemoveAbnormalTable.cs new file mode 100644 index 0000000..aed8137 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionRemoveAbnormalTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionRemoveAbnormalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionRemoveAbnormalTable(EntityMSkillBehaviourActionRemoveAbnormal[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionRemoveAbnormal FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionRemoveBuffTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionRemoveBuffTable.cs new file mode 100644 index 0000000..f3d016f --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionRemoveBuffTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionRemoveBuffTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionRemoveBuffTable(EntityMSkillBehaviourActionRemoveBuff[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionRemoveBuff FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable.cs new file mode 100644 index 0000000..1474509 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionShortenActiveSkillCooltimeTable(EntityMSkillBehaviourActionShortenActiveSkillCooltime[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionShortenActiveSkillCooltime FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable.cs b/src/Models/Tables/EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable.cs new file mode 100644 index 0000000..1a3a9db --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActionSkillRecoveryPowerCorrectionTable(EntityMSkillBehaviourActionSkillRecoveryPowerCorrection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActionId; + } + + public EntityMSkillBehaviourActionSkillRecoveryPowerCorrection FindBySkillBehaviourActionId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionActivationUpperCountTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionActivationUpperCountTable.cs new file mode 100644 index 0000000..ad202ef --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionActivationUpperCountTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionActivationUpperCountTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionActivationUpperCountTable(EntityMSkillBehaviourActivationConditionActivationUpperCount[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationConditionId; + } + + public EntityMSkillBehaviourActivationConditionActivationUpperCount FindBySkillBehaviourActivationConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionAttributeTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionAttributeTable.cs new file mode 100644 index 0000000..6fd7422 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionAttributeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionAttributeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionAttributeTable(EntityMSkillBehaviourActivationConditionAttribute[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationConditionId; + } + + public EntityMSkillBehaviourActivationConditionAttribute FindBySkillBehaviourActivationConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionGroupTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionGroupTable.cs new file mode 100644 index 0000000..8f1a352 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionGroupTable(EntityMSkillBehaviourActivationConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillBehaviourActivationConditionGroupId, element.ConditionCheckOrder); + } + + public RangeView FindRangeBySkillBehaviourActivationConditionGroupIdAndConditionCheckOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionHpRatioTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionHpRatioTable.cs new file mode 100644 index 0000000..c3a3827 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionHpRatioTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionHpRatioTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionHpRatioTable(EntityMSkillBehaviourActivationConditionHpRatio[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationConditionId; + } + + public EntityMSkillBehaviourActivationConditionHpRatio FindBySkillBehaviourActivationConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionInSkillFlowTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionInSkillFlowTable.cs new file mode 100644 index 0000000..03044d7 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionInSkillFlowTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionInSkillFlowTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionInSkillFlowTable(EntityMSkillBehaviourActivationConditionInSkillFlow[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationConditionId; + } + + public EntityMSkillBehaviourActivationConditionInSkillFlow FindBySkillBehaviourActivationConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationConditionWaveNumberTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationConditionWaveNumberTable.cs new file mode 100644 index 0000000..c76d1b0 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationConditionWaveNumberTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationConditionWaveNumberTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationConditionWaveNumberTable(EntityMSkillBehaviourActivationConditionWaveNumber[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationConditionId; + } + + public EntityMSkillBehaviourActivationConditionWaveNumber FindBySkillBehaviourActivationConditionId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourActivationMethodTable.cs b/src/Models/Tables/EntityMSkillBehaviourActivationMethodTable.cs new file mode 100644 index 0000000..b6da05c --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourActivationMethodTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourActivationMethodTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourActivationMethodTable(EntityMSkillBehaviourActivationMethod[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourActivationMethodId; + } + + public EntityMSkillBehaviourActivationMethod FindBySkillBehaviourActivationMethodId(int key) => + FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourGroupTable.cs b/src/Models/Tables/EntityMSkillBehaviourGroupTable.cs new file mode 100644 index 0000000..1057593 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourGroupTable(EntityMSkillBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillBehaviourGroupId, element.SkillBehaviourId); + } + + public RangeView FindRangeBySkillBehaviourGroupIdAndSkillBehaviourId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillBehaviourTable.cs b/src/Models/Tables/EntityMSkillBehaviourTable.cs new file mode 100644 index 0000000..29be224 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBehaviourTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBehaviourTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBehaviourTable(EntityMSkillBehaviour[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBehaviourId; + } + + public EntityMSkillBehaviour FindBySkillBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillBuffTable.cs b/src/Models/Tables/EntityMSkillBuffTable.cs new file mode 100644 index 0000000..d005fc4 --- /dev/null +++ b/src/Models/Tables/EntityMSkillBuffTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillBuffTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillBuffTable(EntityMSkillBuff[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillBuffId; + } + + public EntityMSkillBuff FindBySkillBuffId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable.cs b/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable.cs new file mode 100644 index 0000000..e435f2a --- /dev/null +++ b/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCasttimeBehaviourActionOnFrameUpdateTable(EntityMSkillCasttimeBehaviourActionOnFrameUpdate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCasttimeBehaviourActionId; + } + + public bool TryFindBySkillCasttimeBehaviourActionId(int key, out EntityMSkillCasttimeBehaviourActionOnFrameUpdate result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable.cs b/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable.cs new file mode 100644 index 0000000..2312909 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCasttimeBehaviourActionOnSkillDamageConditionTable(EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCasttimeBehaviourActionId; + } + + public bool TryFindBySkillCasttimeBehaviourActionId(int key, out EntityMSkillCasttimeBehaviourActionOnSkillDamageCondition result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCasttimeBehaviourGroupTable.cs b/src/Models/Tables/EntityMSkillCasttimeBehaviourGroupTable.cs new file mode 100644 index 0000000..16efb8a --- /dev/null +++ b/src/Models/Tables/EntityMSkillCasttimeBehaviourGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCasttimeBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCasttimeBehaviourGroupTable(EntityMSkillCasttimeBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillCasttimeBehaviourGroupId, element.SkillCasttimeBehaviourIndex); + } + + public RangeView FindRangeBySkillCasttimeBehaviourGroupIdAndSkillCasttimeBehaviourIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillCasttimeBehaviourTable.cs b/src/Models/Tables/EntityMSkillCasttimeBehaviourTable.cs new file mode 100644 index 0000000..5487530 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCasttimeBehaviourTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCasttimeBehaviourTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCasttimeBehaviourTable(EntityMSkillCasttimeBehaviour[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCasttimeBehaviourId; + } + + public EntityMSkillCasttimeBehaviour FindBySkillCasttimeBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillCasttimeTable.cs b/src/Models/Tables/EntityMSkillCasttimeTable.cs new file mode 100644 index 0000000..a46caf0 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCasttimeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCasttimeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCasttimeTable(EntityMSkillCasttime[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCasttimeId; + } + + public EntityMSkillCasttime FindBySkillCasttimeId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable.cs b/src/Models/Tables/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable.cs new file mode 100644 index 0000000..3331ec0 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroupTable(EntityMSkillCooltimeAdvanceValueOnDefaultSkillGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillCooltimeAdvanceValueOnDefaultSkillGroupId, element.SkillHitCountLowerLimit); + } + + public RangeView FindRangeBySkillCooltimeAdvanceValueOnDefaultSkillGroupIdAndSkillHitCountLowerLimit( + ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourGroupTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourGroupTable.cs new file mode 100644 index 0000000..ddc1954 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourGroupTable(EntityMSkillCooltimeBehaviourGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillCooltimeBehaviourGroupId, element.SkillCooltimeBehaviourId); + } + + public RangeView FindRangeBySkillCooltimeBehaviourGroupIdAndSkillCooltimeBehaviourId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable.cs new file mode 100644 index 0000000..6aa5751 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourOnExecuteActiveSkillTable(EntityMSkillCooltimeBehaviourOnExecuteActiveSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourActionId; + } + + public bool TryFindBySkillCooltimeBehaviourActionId(int key, out EntityMSkillCooltimeBehaviourOnExecuteActiveSkill result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable.cs new file mode 100644 index 0000000..f12573a --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourOnExecuteCompanionSkillTable(EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourActionId; + } + + public bool TryFindBySkillCooltimeBehaviourActionId(int key, out EntityMSkillCooltimeBehaviourOnExecuteCompanionSkill result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable.cs new file mode 100644 index 0000000..0dee378 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourOnExecuteDefaultSkillTable(EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourActionId; + } + + public bool TryFindBySkillCooltimeBehaviourActionId(int key, out EntityMSkillCooltimeBehaviourOnExecuteDefaultSkill result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourOnFrameUpdateTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnFrameUpdateTable.cs new file mode 100644 index 0000000..4ad1390 --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnFrameUpdateTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourOnFrameUpdateTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourOnFrameUpdateTable(EntityMSkillCooltimeBehaviourOnFrameUpdate[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourActionId; + } + + public bool TryFindBySkillCooltimeBehaviourActionId(int key, out EntityMSkillCooltimeBehaviourOnFrameUpdate result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourOnSkillDamageTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnSkillDamageTable.cs new file mode 100644 index 0000000..106bd4c --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourOnSkillDamageTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourOnSkillDamageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourOnSkillDamageTable(EntityMSkillCooltimeBehaviourOnSkillDamage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourActionId; + } + + public bool TryFindBySkillCooltimeBehaviourActionId(int key, out EntityMSkillCooltimeBehaviourOnSkillDamage result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillCooltimeBehaviourTable.cs b/src/Models/Tables/EntityMSkillCooltimeBehaviourTable.cs new file mode 100644 index 0000000..0ab1bcd --- /dev/null +++ b/src/Models/Tables/EntityMSkillCooltimeBehaviourTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillCooltimeBehaviourTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillCooltimeBehaviourTable(EntityMSkillCooltimeBehaviour[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillCooltimeBehaviourId; + } + + public EntityMSkillCooltimeBehaviour FindBySkillCooltimeBehaviourId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable.cs new file mode 100644 index 0000000..567590a --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyAbnormalAttachedValueGroupTable(EntityMSkillDamageMultiplyAbnormalAttachedValueGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillDamageMultiplyAbnormalAttachedValueGroupId, element.SkillDamageMultiplyAbnormalAttachedValueGroupIndex); + } + + public RangeView FindRangeBySkillDamageMultiplyAbnormalAttachedValueGroupIdAndSkillDamageMultiplyAbnormalAttachedValueGroupIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailAbnormalAttachedTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailAbnormalAttachedTable.cs new file mode 100644 index 0000000..148aa65 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailAbnormalAttachedTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailAbnormalAttachedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailAbnormalAttachedTable(EntityMSkillDamageMultiplyDetailAbnormalAttached[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public EntityMSkillDamageMultiplyDetailAbnormalAttached FindBySkillDamageMultiplyDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailAlwaysTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailAlwaysTable.cs new file mode 100644 index 0000000..61ff84d --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailAlwaysTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailAlwaysTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailAlwaysTable(EntityMSkillDamageMultiplyDetailAlways[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public EntityMSkillDamageMultiplyDetailAlways FindBySkillDamageMultiplyDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailBuffAttachedTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailBuffAttachedTable.cs new file mode 100644 index 0000000..d331a90 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailBuffAttachedTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailBuffAttachedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailBuffAttachedTable(EntityMSkillDamageMultiplyDetailBuffAttached[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public bool TryFindBySkillDamageMultiplyDetailId(int key, out EntityMSkillDamageMultiplyDetailBuffAttached result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailCriticalTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailCriticalTable.cs new file mode 100644 index 0000000..e14c7b3 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailCriticalTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailCriticalTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailCriticalTable(EntityMSkillDamageMultiplyDetailCritical[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public EntityMSkillDamageMultiplyDetailCritical FindBySkillDamageMultiplyDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailHitIndexTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailHitIndexTable.cs new file mode 100644 index 0000000..8435f1e --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailHitIndexTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailHitIndexTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailHitIndexTable(EntityMSkillDamageMultiplyDetailHitIndex[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public EntityMSkillDamageMultiplyDetailHitIndex FindBySkillDamageMultiplyDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable.cs new file mode 100644 index 0000000..972bb6c --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailSkillfulWeaponTypeTable(EntityMSkillDamageMultiplyDetailSkillfulWeaponType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public bool TryFindBySkillDamageMultiplyDetailId(int key, out EntityMSkillDamageMultiplyDetailSkillfulWeaponType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable.cs new file mode 100644 index 0000000..657a059 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyDetailSpecifiedCostumeTypeTable(EntityMSkillDamageMultiplyDetailSpecifiedCostumeType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDamageMultiplyDetailId; + } + + public bool TryFindBySkillDamageMultiplyDetailId(int key, out EntityMSkillDamageMultiplyDetailSpecifiedCostumeType result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyHitIndexValueGroupTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyHitIndexValueGroupTable.cs new file mode 100644 index 0000000..f1e5e23 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyHitIndexValueGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyHitIndexValueGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDamageMultiplyHitIndexValueGroupTable(EntityMSkillDamageMultiplyHitIndexValueGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillDamageMultiplyHitIndexValueGroupId, element.SkillDamageMultiplyHitIndexValueGroupIndex); + } + + public RangeView FindRangeBySkillDamageMultiplyHitIndexValueGroupIdAndSkillDamageMultiplyHitIndexValueGroupIndex( + ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable.cs b/src/Models/Tables/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable.cs new file mode 100644 index 0000000..90a6d3f --- /dev/null +++ b/src/Models/Tables/EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable : TableBase +{ + private readonly Func> primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroupTable(EntityMSkillDamageMultiplyTargetSpecifiedCostumeGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TargetSpecifiedCostumeGroupId, element.TargetSpecifiedCostumeGroupIndex); + secondaryIndexSelector = element => element.TargetSpecifiedCostumeGroupId; + } + + public RangeView FindByTargetSpecifiedCostumeGroupId(int key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillDetailTable.cs b/src/Models/Tables/EntityMSkillDetailTable.cs new file mode 100644 index 0000000..2ff25b6 --- /dev/null +++ b/src/Models/Tables/EntityMSkillDetailTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillDetailTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillDetailTable(EntityMSkillDetail[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDetailId; + } + + public EntityMSkillDetail FindBySkillDetailId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillLevelGroupTable.cs b/src/Models/Tables/EntityMSkillLevelGroupTable.cs new file mode 100644 index 0000000..4a9ef39 --- /dev/null +++ b/src/Models/Tables/EntityMSkillLevelGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillLevelGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMSkillLevelGroupTable(EntityMSkillLevelGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillLevelGroupId, element.LevelLowerLimit); + secondaryIndexSelector = element => element.SkillLevelGroupId; + } + + public EntityMSkillLevelGroup FindClosestBySkillLevelGroupIdAndLevelLowerLimit(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); + + public RangeView FindBySkillLevelGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMSkillRemoveAbnormalTargetAbnormalGroupTable.cs b/src/Models/Tables/EntityMSkillRemoveAbnormalTargetAbnormalGroupTable.cs new file mode 100644 index 0000000..212af36 --- /dev/null +++ b/src/Models/Tables/EntityMSkillRemoveAbnormalTargetAbnormalGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillRemoveAbnormalTargetAbnormalGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillRemoveAbnormalTargetAbnormalGroupTable(EntityMSkillRemoveAbnormalTargetAbnormalGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillRemoveAbnormalTargetAbnormalGroupId, element.SkillRemoveAbnormalTargetAbnormalGroupIndex); + } + + public RangeView FindRangeBySkillRemoveAbnormalTargetAbnormalGroupIdAndSkillRemoveAbnormalTargetAbnormalGroupIndex( + ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillRemoveBuffFilterStatusKindTable.cs b/src/Models/Tables/EntityMSkillRemoveBuffFilterStatusKindTable.cs new file mode 100644 index 0000000..66ecd03 --- /dev/null +++ b/src/Models/Tables/EntityMSkillRemoveBuffFilterStatusKindTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillRemoveBuffFilterStatusKindTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillRemoveBuffFilterStatusKindTable(EntityMSkillRemoveBuffFilterStatusKind[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SkillRemoveBuffFilteringId, element.FilterIndex); + } + + public RangeView FindRangeBySkillRemoveBuffFilteringIdAndFilterIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSkillReserveUiTypeTable.cs b/src/Models/Tables/EntityMSkillReserveUiTypeTable.cs new file mode 100644 index 0000000..ee0eafc --- /dev/null +++ b/src/Models/Tables/EntityMSkillReserveUiTypeTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillReserveUiTypeTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillReserveUiTypeTable(EntityMSkillReserveUiType[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillDetailId; + } + + public bool TryFindBySkillDetailId(int key, out EntityMSkillReserveUiType result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSkillTable.cs b/src/Models/Tables/EntityMSkillTable.cs new file mode 100644 index 0000000..e39c759 --- /dev/null +++ b/src/Models/Tables/EntityMSkillTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSkillTable(EntityMSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SkillId; + } + + public EntityMSkill FindBySkillId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindBySkillId(int key, out EntityMSkill result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMSmartphoneChatGroupMessageTable.cs b/src/Models/Tables/EntityMSmartphoneChatGroupMessageTable.cs new file mode 100644 index 0000000..8185870 --- /dev/null +++ b/src/Models/Tables/EntityMSmartphoneChatGroupMessageTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSmartphoneChatGroupMessageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSmartphoneChatGroupMessageTable(EntityMSmartphoneChatGroupMessage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.SmartphoneChatGroupId, element.SortOrder); + } + + public RangeView FindRangeBySmartphoneChatGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSmartphoneChatGroupTable.cs b/src/Models/Tables/EntityMSmartphoneChatGroupTable.cs new file mode 100644 index 0000000..e6bb0a3 --- /dev/null +++ b/src/Models/Tables/EntityMSmartphoneChatGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSmartphoneChatGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSmartphoneChatGroupTable(EntityMSmartphoneChatGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.SmartphoneChatGroupId; + } + + public RangeView FindRangeBySmartphoneChatGroupId(int min, int max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMSpeakerTable.cs b/src/Models/Tables/EntityMSpeakerTable.cs new file mode 100644 index 0000000..b880b02 --- /dev/null +++ b/src/Models/Tables/EntityMSpeakerTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMSpeakerTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMSpeakerTable(EntityMSpeaker[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ActorObjectId; + } + + public EntityMSpeaker FindByActorObjectId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMStainedGlassStatusUpGroupTable.cs b/src/Models/Tables/EntityMStainedGlassStatusUpGroupTable.cs new file mode 100644 index 0000000..9d07b6b --- /dev/null +++ b/src/Models/Tables/EntityMStainedGlassStatusUpGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMStainedGlassStatusUpGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMStainedGlassStatusUpGroupTable(EntityMStainedGlassStatusUpGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.StainedGlassStatusUpGroupId, element.GroupIndex); + secondaryIndexSelector = element => element.StainedGlassStatusUpGroupId; + } + + public RangeView FindByStainedGlassStatusUpGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMStainedGlassStatusUpTargetGroupTable.cs b/src/Models/Tables/EntityMStainedGlassStatusUpTargetGroupTable.cs new file mode 100644 index 0000000..6459837 --- /dev/null +++ b/src/Models/Tables/EntityMStainedGlassStatusUpTargetGroupTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMStainedGlassStatusUpTargetGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMStainedGlassStatusUpTargetGroupTable(EntityMStainedGlassStatusUpTargetGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.StainedGlassStatusUpTargetGroupId, element.GroupIndex); + secondaryIndexSelector = element => element.StainedGlassStatusUpTargetGroupId; + } + + public RangeView FindByStainedGlassStatusUpTargetGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMStainedGlassTable.cs b/src/Models/Tables/EntityMStainedGlassTable.cs new file mode 100644 index 0000000..4dab215 --- /dev/null +++ b/src/Models/Tables/EntityMStainedGlassTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMStainedGlassTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMStainedGlassTable(EntityMStainedGlass[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.StainedGlassId; + } + + public EntityMStainedGlass FindByStainedGlassId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMThoughtTable.cs b/src/Models/Tables/EntityMThoughtTable.cs new file mode 100644 index 0000000..4d65b3a --- /dev/null +++ b/src/Models/Tables/EntityMThoughtTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMThoughtTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMThoughtTable(EntityMThought[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.ThoughtId; + } + + public bool TryFindByThoughtId(int key, out EntityMThought result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMTipBackgroundAssetTable.cs b/src/Models/Tables/EntityMTipBackgroundAssetTable.cs new file mode 100644 index 0000000..62b28bb --- /dev/null +++ b/src/Models/Tables/EntityMTipBackgroundAssetTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipBackgroundAssetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipBackgroundAssetTable(EntityMTipBackgroundAsset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TipBackgroundAssetId; + } + + public EntityMTipBackgroundAsset FindByTipBackgroundAssetId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTipDisplayConditionGroupTable.cs b/src/Models/Tables/EntityMTipDisplayConditionGroupTable.cs new file mode 100644 index 0000000..1e03172 --- /dev/null +++ b/src/Models/Tables/EntityMTipDisplayConditionGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipDisplayConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipDisplayConditionGroupTable(EntityMTipDisplayConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipDisplayConditionGroupId, element.SortOrder); + } + + public RangeView FindRangeByTipDisplayConditionGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMTipGroupBackgroundAssetRelationTable.cs b/src/Models/Tables/EntityMTipGroupBackgroundAssetRelationTable.cs new file mode 100644 index 0000000..aa66fc3 --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupBackgroundAssetRelationTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupBackgroundAssetRelationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupBackgroundAssetRelationTable(EntityMTipGroupBackgroundAssetRelation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipGroupId, element.TipBackgroundAssetId); + } +} diff --git a/src/Models/Tables/EntityMTipGroupBackgroundAssetTable.cs b/src/Models/Tables/EntityMTipGroupBackgroundAssetTable.cs new file mode 100644 index 0000000..ea1ed2f --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupBackgroundAssetTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupBackgroundAssetTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupBackgroundAssetTable(EntityMTipGroupBackgroundAsset[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipGroupId, element.BackgroundAssetName); + } +} diff --git a/src/Models/Tables/EntityMTipGroupSelectionTable.cs b/src/Models/Tables/EntityMTipGroupSelectionTable.cs new file mode 100644 index 0000000..beb2cf8 --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupSelectionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupSelectionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupSelectionTable(EntityMTipGroupSelection[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipGroupId, element.TipId); + } +} diff --git a/src/Models/Tables/EntityMTipGroupSituationSeasonTable.cs b/src/Models/Tables/EntityMTipGroupSituationSeasonTable.cs new file mode 100644 index 0000000..e5ea39b --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupSituationSeasonTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupSituationSeasonTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupSituationSeasonTable(EntityMTipGroupSituationSeason[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipSituationType, element.TipSituationSeasonId, element.TipGroupId); + } +} diff --git a/src/Models/Tables/EntityMTipGroupSituationTable.cs b/src/Models/Tables/EntityMTipGroupSituationTable.cs new file mode 100644 index 0000000..ace5301 --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupSituationTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupSituationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupSituationTable(EntityMTipGroupSituation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TipSituationType, element.TipGroupId); + } +} diff --git a/src/Models/Tables/EntityMTipGroupTable.cs b/src/Models/Tables/EntityMTipGroupTable.cs new file mode 100644 index 0000000..12baade --- /dev/null +++ b/src/Models/Tables/EntityMTipGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipGroupTable(EntityMTipGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TipGroupId; + } + + public EntityMTipGroup FindByTipGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTipTable.cs b/src/Models/Tables/EntityMTipTable.cs new file mode 100644 index 0000000..6e8f10d --- /dev/null +++ b/src/Models/Tables/EntityMTipTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTipTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTipTable(EntityMTip[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TipId; + } + + public EntityMTip FindByTipId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTitleFlowMovieTable.cs b/src/Models/Tables/EntityMTitleFlowMovieTable.cs new file mode 100644 index 0000000..9002115 --- /dev/null +++ b/src/Models/Tables/EntityMTitleFlowMovieTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTitleFlowMovieTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTitleFlowMovieTable(EntityMTitleFlowMovie[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TitleFlowMovieId; + } +} diff --git a/src/Models/Tables/EntityMTitleStillGroupTable.cs b/src/Models/Tables/EntityMTitleStillGroupTable.cs new file mode 100644 index 0000000..4c1e38b --- /dev/null +++ b/src/Models/Tables/EntityMTitleStillGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTitleStillGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTitleStillGroupTable(EntityMTitleStillGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TitleStillGroupId; + } + + public EntityMTitleStillGroup FindByTitleStillGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTitleStillTable.cs b/src/Models/Tables/EntityMTitleStillTable.cs new file mode 100644 index 0000000..c9f6b61 --- /dev/null +++ b/src/Models/Tables/EntityMTitleStillTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTitleStillTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMTitleStillTable(EntityMTitleStill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TitleStillId; + secondaryIndexSelector = element => element.TitleStillGroupId; + } + + public EntityMTitleStill FindByTitleStillId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public RangeView FindByTitleStillGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTutorialConsumePossessionGroupTable.cs b/src/Models/Tables/EntityMTutorialConsumePossessionGroupTable.cs new file mode 100644 index 0000000..3d09e21 --- /dev/null +++ b/src/Models/Tables/EntityMTutorialConsumePossessionGroupTable.cs @@ -0,0 +1,20 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTutorialConsumePossessionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + private readonly Func secondaryIndexSelector; + + public EntityMTutorialConsumePossessionGroupTable(EntityMTutorialConsumePossessionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.TutorialType, element.PossessionType, element.PossessionId); + secondaryIndexSelector = element => element.TutorialType; + } + + public RangeView FindByTutorialType(TutorialType key) => + FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTutorialDialogTable.cs b/src/Models/Tables/EntityMTutorialDialogTable.cs new file mode 100644 index 0000000..e4e7bf1 --- /dev/null +++ b/src/Models/Tables/EntityMTutorialDialogTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTutorialDialogTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTutorialDialogTable(EntityMTutorialDialog[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TutorialType; + } + + public EntityMTutorialDialog FindByTutorialType(TutorialType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMTutorialUnlockConditionTable.cs b/src/Models/Tables/EntityMTutorialUnlockConditionTable.cs new file mode 100644 index 0000000..704e623 --- /dev/null +++ b/src/Models/Tables/EntityMTutorialUnlockConditionTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMTutorialUnlockConditionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMTutorialUnlockConditionTable(EntityMTutorialUnlockCondition[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.TutorialType; + } + + public EntityMTutorialUnlockCondition FindByTutorialType(TutorialType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByTutorialType(TutorialType key, out EntityMTutorialUnlockCondition result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMUserLevelTable.cs b/src/Models/Tables/EntityMUserLevelTable.cs new file mode 100644 index 0000000..55db84b --- /dev/null +++ b/src/Models/Tables/EntityMUserLevelTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMUserLevelTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMUserLevelTable(EntityMUserLevel[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.UserLevel; + } + + public EntityMUserLevel FindByUserLevel(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMUserQuestSceneGrantPossessionTable.cs b/src/Models/Tables/EntityMUserQuestSceneGrantPossessionTable.cs new file mode 100644 index 0000000..4c3800e --- /dev/null +++ b/src/Models/Tables/EntityMUserQuestSceneGrantPossessionTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMUserQuestSceneGrantPossessionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMUserQuestSceneGrantPossessionTable(EntityMUserQuestSceneGrantPossession[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.QuestSceneId, element.PossessionType, element.PossessionId); + } + + public RangeView FindRangeByQuestSceneIdAndPossessionTypeAndPossessionId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, PossessionType, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponAbilityEnhancementMaterialTable.cs b/src/Models/Tables/EntityMWeaponAbilityEnhancementMaterialTable.cs new file mode 100644 index 0000000..335a313 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAbilityEnhancementMaterialTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAbilityEnhancementMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAbilityEnhancementMaterialTable(EntityMWeaponAbilityEnhancementMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponAbilityEnhancementMaterialId, element.AbilityLevel, element.MaterialId); + } + + public RangeView FindRangeByWeaponAbilityEnhancementMaterialIdAndAbilityLevelAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponAbilityGroupTable.cs b/src/Models/Tables/EntityMWeaponAbilityGroupTable.cs new file mode 100644 index 0000000..664166b --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAbilityGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAbilityGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAbilityGroupTable(EntityMWeaponAbilityGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponAbilityGroupId, element.SlotNumber); + } + + public EntityMWeaponAbilityGroup FindByWeaponAbilityGroupIdAndSlotNumber(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByWeaponAbilityGroupIdAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponAwakenAbilityTable.cs b/src/Models/Tables/EntityMWeaponAwakenAbilityTable.cs new file mode 100644 index 0000000..da539d0 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAwakenAbilityTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAwakenAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAwakenAbilityTable(EntityMWeaponAwakenAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponAwakenAbilityId; + } + + public EntityMWeaponAwakenAbility FindByWeaponAwakenAbilityId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponAwakenEffectGroupTable.cs b/src/Models/Tables/EntityMWeaponAwakenEffectGroupTable.cs new file mode 100644 index 0000000..f787d91 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAwakenEffectGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAwakenEffectGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAwakenEffectGroupTable(EntityMWeaponAwakenEffectGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponAwakenEffectGroupId, element.WeaponAwakenEffectType); + } + + public EntityMWeaponAwakenEffectGroup FindByWeaponAwakenEffectGroupIdAndWeaponAwakenEffectType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponAwakenMaterialGroupTable.cs b/src/Models/Tables/EntityMWeaponAwakenMaterialGroupTable.cs new file mode 100644 index 0000000..4e850b3 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAwakenMaterialGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAwakenMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAwakenMaterialGroupTable(EntityMWeaponAwakenMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponAwakenMaterialGroupId, element.MaterialId); + } + + public RangeView FindRangeByWeaponAwakenMaterialGroupIdAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponAwakenStatusUpGroupTable.cs b/src/Models/Tables/EntityMWeaponAwakenStatusUpGroupTable.cs new file mode 100644 index 0000000..9ae091f --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAwakenStatusUpGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAwakenStatusUpGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMWeaponAwakenStatusUpGroupTable(EntityMWeaponAwakenStatusUpGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponAwakenStatusUpGroupId, element.StatusKindType, element.StatusCalculationType); + secondaryIndexSelector = element => element.WeaponAwakenStatusUpGroupId; + } + + public RangeView FindByWeaponAwakenStatusUpGroupId(int key) => FindManyCore(data, secondaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponAwakenTable.cs b/src/Models/Tables/EntityMWeaponAwakenTable.cs new file mode 100644 index 0000000..9dfaf4d --- /dev/null +++ b/src/Models/Tables/EntityMWeaponAwakenTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponAwakenTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponAwakenTable(EntityMWeaponAwaken[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponId; + } + + public EntityMWeaponAwaken FindByWeaponId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); + + public bool TryFindByWeaponId(int key, out EntityMWeaponAwaken result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMWeaponBaseStatusTable.cs b/src/Models/Tables/EntityMWeaponBaseStatusTable.cs new file mode 100644 index 0000000..3024f64 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponBaseStatusTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponBaseStatusTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponBaseStatusTable(EntityMWeaponBaseStatus[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponBaseStatusId; + } + + public EntityMWeaponBaseStatus FindByWeaponBaseStatusId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponConsumeExchangeConsumableItemGroupTable.cs b/src/Models/Tables/EntityMWeaponConsumeExchangeConsumableItemGroupTable.cs new file mode 100644 index 0000000..c417cbb --- /dev/null +++ b/src/Models/Tables/EntityMWeaponConsumeExchangeConsumableItemGroupTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponConsumeExchangeConsumableItemGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponConsumeExchangeConsumableItemGroupTable(EntityMWeaponConsumeExchangeConsumableItemGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponId, element.ConsumableItemId); + } + + public EntityMWeaponConsumeExchangeConsumableItemGroup FindByWeaponIdAndConsumableItemId(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponEnhancedAbilityTable.cs b/src/Models/Tables/EntityMWeaponEnhancedAbilityTable.cs new file mode 100644 index 0000000..20527a9 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponEnhancedAbilityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponEnhancedAbilityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponEnhancedAbilityTable(EntityMWeaponEnhancedAbility[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponEnhancedId, element.AbilityId); + } + + public bool TryFindByWeaponEnhancedIdAndAbilityId(ValueTuple key, out EntityMWeaponEnhancedAbility result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMWeaponEnhancedSkillTable.cs b/src/Models/Tables/EntityMWeaponEnhancedSkillTable.cs new file mode 100644 index 0000000..01c19c8 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponEnhancedSkillTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponEnhancedSkillTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponEnhancedSkillTable(EntityMWeaponEnhancedSkill[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponEnhancedId, element.SkillId); + } + + public bool TryFindByWeaponEnhancedIdAndSkillId(ValueTuple key, out EntityMWeaponEnhancedSkill result) => + TryFindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMWeaponEnhancedTable.cs b/src/Models/Tables/EntityMWeaponEnhancedTable.cs new file mode 100644 index 0000000..aeb912f --- /dev/null +++ b/src/Models/Tables/EntityMWeaponEnhancedTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponEnhancedTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponEnhancedTable(EntityMWeaponEnhanced[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponEnhancedId; + } + + public bool TryFindByWeaponEnhancedId(int key, out EntityMWeaponEnhanced result) => TryFindUniqueCore(data, primaryIndexSelector, Comparer.Default, key, out result); +} diff --git a/src/Models/Tables/EntityMWeaponEvolutionGroupTable.cs b/src/Models/Tables/EntityMWeaponEvolutionGroupTable.cs new file mode 100644 index 0000000..1a67461 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponEvolutionGroupTable.cs @@ -0,0 +1,39 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponEvolutionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMWeaponEvolutionGroupTable(EntityMWeaponEvolutionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponEvolutionGroupId, element.EvolutionOrder); + secondaryIndexSelector = element => (element.WeaponEvolutionGroupId, element.WeaponId); + } + + public EntityMWeaponEvolutionGroup FindByWeaponEvolutionGroupIdAndEvolutionOrder(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public EntityMWeaponEvolutionGroup FindClosestByWeaponEvolutionGroupIdAndEvolutionOrder(ValueTuple key, bool selectLower = true) => + FindUniqueClosestCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key, selectLower); + + public RangeView FindByWeaponEvolutionGroupId(int key) + { + var result = data + .Where(x => x.WeaponEvolutionGroupId == key) + .ToArray(); + + return new RangeView(result, 0, result.Length, true); + } + + public RangeView FindByWeaponId(int key) + { + var result = data + .Where(x => x.WeaponId == key) + .ToArray(); + + return new RangeView(result, 0, result.Length, true); + } +} diff --git a/src/Models/Tables/EntityMWeaponEvolutionMaterialGroupTable.cs b/src/Models/Tables/EntityMWeaponEvolutionMaterialGroupTable.cs new file mode 100644 index 0000000..f8a612e --- /dev/null +++ b/src/Models/Tables/EntityMWeaponEvolutionMaterialGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponEvolutionMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponEvolutionMaterialGroupTable(EntityMWeaponEvolutionMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponEvolutionMaterialGroupId, element.MaterialId); + } +} diff --git a/src/Models/Tables/EntityMWeaponFieldEffectDecreasePointTable.cs b/src/Models/Tables/EntityMWeaponFieldEffectDecreasePointTable.cs new file mode 100644 index 0000000..0a071d0 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponFieldEffectDecreasePointTable.cs @@ -0,0 +1,21 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponFieldEffectDecreasePointTable : TableBase +{ + private readonly Func primaryIndexSelector; + private readonly Func secondaryIndexSelector; + + public EntityMWeaponFieldEffectDecreasePointTable(EntityMWeaponFieldEffectDecreasePoint[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponId, element.RelationIndex); + secondaryIndexSelector = element => (element.WeaponId, element.IsWeaponAwaken); + } + + public RangeView FindRangeByWeaponIdAndRelationIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); + + public RangeView FindRangeByWeaponIdAndIsWeaponAwaken(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, secondaryIndexSelector, Comparer<(int, bool)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponRarityLimitBreakMaterialGroupTable.cs b/src/Models/Tables/EntityMWeaponRarityLimitBreakMaterialGroupTable.cs new file mode 100644 index 0000000..dd2cd40 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponRarityLimitBreakMaterialGroupTable.cs @@ -0,0 +1,14 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponRarityLimitBreakMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponRarityLimitBreakMaterialGroupTable(EntityMWeaponRarityLimitBreakMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.RarityType, element.MaterialId); + } +} diff --git a/src/Models/Tables/EntityMWeaponRarityTable.cs b/src/Models/Tables/EntityMWeaponRarityTable.cs new file mode 100644 index 0000000..53a4b5a --- /dev/null +++ b/src/Models/Tables/EntityMWeaponRarityTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponRarityTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponRarityTable(EntityMWeaponRarity[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.RarityType; + } + + public EntityMWeaponRarity FindByRarityType(RarityType key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponSkillEnhancementMaterialTable.cs b/src/Models/Tables/EntityMWeaponSkillEnhancementMaterialTable.cs new file mode 100644 index 0000000..d75424e --- /dev/null +++ b/src/Models/Tables/EntityMWeaponSkillEnhancementMaterialTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponSkillEnhancementMaterialTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponSkillEnhancementMaterialTable(EntityMWeaponSkillEnhancementMaterial[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponSkillEnhancementMaterialId, element.SkillLevel, element.MaterialId); + } + + public RangeView FindRangeByWeaponSkillEnhancementMaterialIdAndSkillLevelAndMaterialId(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponSkillGroupTable.cs b/src/Models/Tables/EntityMWeaponSkillGroupTable.cs new file mode 100644 index 0000000..3994398 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponSkillGroupTable.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponSkillGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponSkillGroupTable(EntityMWeaponSkillGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponSkillGroupId, element.SlotNumber); + } + + public EntityMWeaponSkillGroup FindByWeaponSkillGroupIdAndSlotNumber(ValueTuple key) => FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByWeaponSkillGroupIdAndSlotNumber(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponSpecificEnhanceTable.cs b/src/Models/Tables/EntityMWeaponSpecificEnhanceTable.cs new file mode 100644 index 0000000..6012137 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponSpecificEnhanceTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponSpecificEnhanceTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponSpecificEnhanceTable(EntityMWeaponSpecificEnhance[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponSpecificEnhanceId; + } + + public EntityMWeaponSpecificEnhance FindByWeaponSpecificEnhanceId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponSpecificLimitBreakMaterialGroupTable.cs b/src/Models/Tables/EntityMWeaponSpecificLimitBreakMaterialGroupTable.cs new file mode 100644 index 0000000..f0beab5 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponSpecificLimitBreakMaterialGroupTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponSpecificLimitBreakMaterialGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponSpecificLimitBreakMaterialGroupTable(EntityMWeaponSpecificLimitBreakMaterialGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponSpecificLimitBreakMaterialGroupId, element.LimitBreakCountLowerLimit, element.MaterialId); + } +} diff --git a/src/Models/Tables/EntityMWeaponStatusCalculationTable.cs b/src/Models/Tables/EntityMWeaponStatusCalculationTable.cs new file mode 100644 index 0000000..8398ea4 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponStatusCalculationTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponStatusCalculationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponStatusCalculationTable(EntityMWeaponStatusCalculation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponStatusCalculationId; + } + + public EntityMWeaponStatusCalculation FindByWeaponStatusCalculationId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponStoryReleaseConditionGroupTable.cs b/src/Models/Tables/EntityMWeaponStoryReleaseConditionGroupTable.cs new file mode 100644 index 0000000..a8429b1 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponStoryReleaseConditionGroupTable.cs @@ -0,0 +1,19 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponStoryReleaseConditionGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponStoryReleaseConditionGroupTable(EntityMWeaponStoryReleaseConditionGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponStoryReleaseConditionGroupId, element.StoryIndex); + } + + public EntityMWeaponStoryReleaseConditionGroup FindByWeaponStoryReleaseConditionGroupIdAndStoryIndex(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, key); + + public RangeView FindRangeByWeaponStoryReleaseConditionGroupIdAndStoryIndex(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationGroupTable.cs b/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationGroupTable.cs new file mode 100644 index 0000000..a71aed3 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationGroupTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponStoryReleaseConditionOperationGroupTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponStoryReleaseConditionOperationGroupTable(EntityMWeaponStoryReleaseConditionOperationGroup[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponStoryReleaseConditionOperationGroupId; + } + + public EntityMWeaponStoryReleaseConditionOperationGroup FindByWeaponStoryReleaseConditionOperationGroupId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationTable.cs b/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationTable.cs new file mode 100644 index 0000000..aef5367 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponStoryReleaseConditionOperationTable.cs @@ -0,0 +1,16 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponStoryReleaseConditionOperationTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponStoryReleaseConditionOperationTable(EntityMWeaponStoryReleaseConditionOperation[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WeaponStoryReleaseConditionOperationGroupId, element.SortOrder); + } + + public RangeView FindRangeByWeaponStoryReleaseConditionOperationGroupIdAndSortOrder(ValueTuple min, ValueTuple max, bool ascendant = true) => + FindUniqueRangeCore(data, primaryIndexSelector, Comparer<(int, int)>.Default, min, max, ascendant); +} diff --git a/src/Models/Tables/EntityMWeaponTable.cs b/src/Models/Tables/EntityMWeaponTable.cs new file mode 100644 index 0000000..0e56f81 --- /dev/null +++ b/src/Models/Tables/EntityMWeaponTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWeaponTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWeaponTable(EntityMWeapon[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WeaponId; + } + + public EntityMWeapon FindByWeaponId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWebviewMissionTable.cs b/src/Models/Tables/EntityMWebviewMissionTable.cs new file mode 100644 index 0000000..70e44e5 --- /dev/null +++ b/src/Models/Tables/EntityMWebviewMissionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWebviewMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWebviewMissionTable(EntityMWebviewMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WebviewMissionId; + } +} diff --git a/src/Models/Tables/EntityMWebviewMissionTitleTextTable.cs b/src/Models/Tables/EntityMWebviewMissionTitleTextTable.cs new file mode 100644 index 0000000..ef8e587 --- /dev/null +++ b/src/Models/Tables/EntityMWebviewMissionTitleTextTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWebviewMissionTitleTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWebviewMissionTitleTextTable(EntityMWebviewMissionTitleText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WebviewMissionTitleTextId, element.LanguageType); + } + + public EntityMWebviewMissionTitleText FindByWebviewMissionTitleTextIdAndLanguageType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, LanguageType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMWebviewPanelMissionCompleteFlavorTextTable.cs b/src/Models/Tables/EntityMWebviewPanelMissionCompleteFlavorTextTable.cs new file mode 100644 index 0000000..b50b523 --- /dev/null +++ b/src/Models/Tables/EntityMWebviewPanelMissionCompleteFlavorTextTable.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Models.Entities; +using MariesWonderland.Models.Type; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWebviewPanelMissionCompleteFlavorTextTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWebviewPanelMissionCompleteFlavorTextTable(EntityMWebviewPanelMissionCompleteFlavorText[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WebviewPanelMissionCompleteFlavorTextId, element.LanguageType); + } + + public EntityMWebviewPanelMissionCompleteFlavorText FindByWebviewPanelMissionCompleteFlavorTextIdAndLanguageType(ValueTuple key) => + FindUniqueCore(data, primaryIndexSelector, Comparer<(int, LanguageType)>.Default, key); +} diff --git a/src/Models/Tables/EntityMWebviewPanelMissionPageTable.cs b/src/Models/Tables/EntityMWebviewPanelMissionPageTable.cs new file mode 100644 index 0000000..3d9514b --- /dev/null +++ b/src/Models/Tables/EntityMWebviewPanelMissionPageTable.cs @@ -0,0 +1,15 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWebviewPanelMissionPageTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWebviewPanelMissionPageTable(EntityMWebviewPanelMissionPage[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => element.WebviewPanelMissionPageId; + } + + public EntityMWebviewPanelMissionPage FindByWebviewPanelMissionPageId(int key) => FindUniqueCore(data, primaryIndexSelector, Comparer.Default, key); +} diff --git a/src/Models/Tables/EntityMWebviewPanelMissionTable.cs b/src/Models/Tables/EntityMWebviewPanelMissionTable.cs new file mode 100644 index 0000000..cc81585 --- /dev/null +++ b/src/Models/Tables/EntityMWebviewPanelMissionTable.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Models.Entities; + +namespace MariesWonderland.Models.Tables; + +public class EntityMWebviewPanelMissionTable : TableBase +{ + private readonly Func primaryIndexSelector; + + public EntityMWebviewPanelMissionTable(EntityMWebviewPanelMission[] sortedData) : base(sortedData) + { + primaryIndexSelector = element => (element.WebviewPanelMissionId, element.Page); + } +} diff --git a/src/Models/Tables/RangeView.cs b/src/Models/Tables/RangeView.cs new file mode 100644 index 0000000..77ffa60 --- /dev/null +++ b/src/Models/Tables/RangeView.cs @@ -0,0 +1,51 @@ +using System.Collections; + +namespace MariesWonderland.Models.Tables; + +public readonly struct RangeView : IReadOnlyList +{ + public static RangeView Empty; + + private readonly T[] OrderedData; + + private readonly int Left; + + private readonly int Right; + + private readonly bool Ascendant; + + private readonly bool HasValue; + + public int Count => HasValue ? Right + 1 - Left : 0; + + public T this[int index] + { + get + { + index = Ascendant ? Left + index : Right - index; + return OrderedData[index]; + } + } + + public RangeView(T[] orderedData, int left, int right, bool ascendant) + { + OrderedData = orderedData; + Left = left; + Right = right; + Ascendant = ascendant; + HasValue = left <= right && orderedData.Length != 0; + } + + public IEnumerator GetEnumerator() + { + var enumeration = OrderedData.Skip(Left).Take(Count); + if (!Ascendant) + { + enumeration = enumeration.Reverse(); + } + + return enumeration.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); +} diff --git a/src/Models/Tables/TableBase.cs b/src/Models/Tables/TableBase.cs new file mode 100644 index 0000000..f03869f --- /dev/null +++ b/src/Models/Tables/TableBase.cs @@ -0,0 +1,68 @@ +namespace MariesWonderland.Models.Tables; + +public abstract class TableBase +{ + protected TElement[] data; + + public int Count => data.Length; + + public RangeView All => new(data, 0, data.Length - 1, true); + + public TElement[] GetRawDataUnsafe() => data; + + public void SetRawDataUnsafe(TElement[] data) => this.data = data; + + protected TableBase(TElement[] sortedData) + { + data = sortedData; + } + + protected static TElement ThrowKeyNotFound(TKey key) + { + throw new KeyNotFoundException($"DataType: {key.GetType().Name}, Key: {key}"); + } + + protected static TElement FindUniqueCore(TElement[] indexArray, Func keySelector, IComparer comparer, TKey key, bool throwIfNotFound = false) + { + var foundElement = Array.Find(indexArray, x => comparer.Compare(keySelector(x), key) == 0); + + if (foundElement == null && throwIfNotFound) + { + ThrowKeyNotFound(key); + } + + return foundElement!; + } + + protected static bool TryFindUniqueCore(TElement[] indexArray, Func keySelector, IComparer comparer, TKey key, out TElement result) + { + result = Array.Find(indexArray, x => comparer.Compare(keySelector(x), key) == 0); + + return result != null; + } + + protected static TElement FindUniqueClosestCore(TElement[] indexArray, Func keySelector, IComparer comparer, TKey key, bool selectLower) + { + var ordered = indexArray.Select(x => (comparer.Compare(keySelector(x), key), x)).OrderBy(x => x.Item1); + + return selectLower + ? ordered.LastOrDefault(x => x.Item1 <= 0).x + : ordered.FirstOrDefault(x => x.Item1 >= 0).x; + } + + protected static RangeView FindUniqueRangeCore(TElement[] indexArray, Func keySelector, IComparer comparer, TKey min, TKey max, bool ascendant) + { + var keys = indexArray.Select(keySelector).ToArray(); + var left = Array.FindIndex(keys, key => comparer.Compare(key, min) >= 0); + var right = Array.FindLastIndex(keys, key => comparer.Compare(key, max) <= 0); + + return new RangeView(indexArray, left, right, ascendant); + } + + protected static RangeView FindManyCore(TElement[] indexKeys, Func keySelector, IComparer comparer, TKey key) + { + var foundElements = indexKeys.Where(x => comparer.Compare(keySelector(x), key) == 0).ToArray(); + + return new RangeView(foundElements, 0, foundElements.Length - 1, true); + } +} diff --git a/src/Models/Type/AbilityBehaviourStatusApplyScopeType.cs b/src/Models/Type/AbilityBehaviourStatusApplyScopeType.cs new file mode 100644 index 0000000..f46a96b --- /dev/null +++ b/src/Models/Type/AbilityBehaviourStatusApplyScopeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbilityBehaviourStatusApplyScopeType +{ + UNKNOWN = 0, + ACTOR = 1, + PARTY = 2 +} diff --git a/src/Models/Type/AbilityBehaviourStatusChangeType.cs b/src/Models/Type/AbilityBehaviourStatusChangeType.cs new file mode 100644 index 0000000..3624a4e --- /dev/null +++ b/src/Models/Type/AbilityBehaviourStatusChangeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbilityBehaviourStatusChangeType +{ + UNKNOWN = 0, + ADD = 1, + MULTIPLY = 2 +} diff --git a/src/Models/Type/AbilityBehaviourStatusOrganizationConditionType.cs b/src/Models/Type/AbilityBehaviourStatusOrganizationConditionType.cs new file mode 100644 index 0000000..27d4a11 --- /dev/null +++ b/src/Models/Type/AbilityBehaviourStatusOrganizationConditionType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum AbilityBehaviourStatusOrganizationConditionType +{ + UNKNOWN = 0, + COSTUME = 1, + WEAPON = 2, + COMPANION = 3, + ALL = 4 +} diff --git a/src/Models/Type/AbilityBehaviourType.cs b/src/Models/Type/AbilityBehaviourType.cs new file mode 100644 index 0000000..74f2d79 --- /dev/null +++ b/src/Models/Type/AbilityBehaviourType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum AbilityBehaviourType +{ + UNKNOWN = 0, + PASSIVE_SKILL = 1, + RESIST_ABNORMAL = 2, + STATUS = 3, + BLESS = 4 +} diff --git a/src/Models/Type/AbnormalBehaviourActionType.cs b/src/Models/Type/AbnormalBehaviourActionType.cs new file mode 100644 index 0000000..dc4cac9 --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourActionType.cs @@ -0,0 +1,19 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourActionType +{ + UNKNOWN = 0, + DAMAGE = 1, + TURN_RESTRICTION = 2, + ATTRIBUTE_DAMAGE_CORRECTION = 3, + RECOVERY = 4, + HIT_RATIO_DOWN = 5, + DEFAULT_SKILL_LOTTERY_CORRECTION = 6, + DAMAGE_MULTIPLY = 7, + ABNORMAL_RESISTANCE = 8, + BUFF_RESISTANCE = 9, + OVERRIDE_HIT_EFFECT = 10, + MODIFY_HATE_VALUE = 11, + UNDEAD = 12, + OVERRIDE_EVASION_VALUE = 13 +} diff --git a/src/Models/Type/AbnormalBehaviourActivationMethodType.cs b/src/Models/Type/AbnormalBehaviourActivationMethodType.cs new file mode 100644 index 0000000..463de7d --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourActivationMethodType.cs @@ -0,0 +1,15 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourActivationMethodType +{ + UNKNOWN = 0, + AFTER_SKILL_EXECUTE = 1, + AFTER_SKILL_EXECUTE_SELF = 2, + BEFORE_SKILL_EXECUTE = 3, + BEFORE_SKILL_EXECUTE_SELF = 4, + END_TURN = 5, + END_TURN_SELF = 6, + START_TURN = 7, + START_TURN_SELF = 8, + ON_ATTACH = 9 +} diff --git a/src/Models/Type/AbnormalBehaviourDamageType.cs b/src/Models/Type/AbnormalBehaviourDamageType.cs new file mode 100644 index 0000000..9b43aac --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourDamageType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourDamageType +{ + UNKNOWN = 0, + FIXED_DAMAGE = 1, + HP_RATIO_DAMAGE = 2 +} diff --git a/src/Models/Type/AbnormalBehaviourDeactivationMethodType.cs b/src/Models/Type/AbnormalBehaviourDeactivationMethodType.cs new file mode 100644 index 0000000..355d373 --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourDeactivationMethodType.cs @@ -0,0 +1,16 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourDeactivationMethodType +{ + UNKNOWN = 0, + AFTER_SKILL_EXECUTE = 1, + AFTER_SKILL_EXECUTE_SELF = 2, + BEFORE_SKILL_EXECUTE = 3, + BEFORE_SKILL_EXECUTE_SELF = 4, + END_TURN = 5, + END_TURN_SELF = 6, + START_TURN = 7, + START_TURN_SELF = 8, + NOTHING = 9, + ON_DETACH = 10 +} diff --git a/src/Models/Type/AbnormalBehaviourRecoveryType.cs b/src/Models/Type/AbnormalBehaviourRecoveryType.cs new file mode 100644 index 0000000..54f316c --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourRecoveryType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourRecoveryType +{ + UNKNOWN = 0, + FIXED_RECOVERY = 1, + HP_RATIO_RECOVERY = 2 +} diff --git a/src/Models/Type/AbnormalBehaviourTurnRestrictionSkillType.cs b/src/Models/Type/AbnormalBehaviourTurnRestrictionSkillType.cs new file mode 100644 index 0000000..6b7ec76 --- /dev/null +++ b/src/Models/Type/AbnormalBehaviourTurnRestrictionSkillType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalBehaviourTurnRestrictionSkillType +{ + UNKNOWN = 0, + DEFAULT_SKILL = 1, + ACTIVE_SKILL = 2, + PASSIVE_SKILL = 3 +} diff --git a/src/Models/Type/AbnormalLifetimeBehaviourConditionType.cs b/src/Models/Type/AbnormalLifetimeBehaviourConditionType.cs new file mode 100644 index 0000000..00b1e0a --- /dev/null +++ b/src/Models/Type/AbnormalLifetimeBehaviourConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalLifetimeBehaviourConditionType +{ + UNKNOWN = 0, + AND = 1, + OR = 2 +} diff --git a/src/Models/Type/AbnormalLifetimeMethodType.cs b/src/Models/Type/AbnormalLifetimeMethodType.cs new file mode 100644 index 0000000..f727261 --- /dev/null +++ b/src/Models/Type/AbnormalLifetimeMethodType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalLifetimeMethodType +{ + UNKNOWN = 0, + FRAME_COUNT = 1, + TARGET_TURN_COUNT = 2, + TOTAL_TURN_COUNT = 3, + ACTIVATE_COUNT = 4, + RECEIVE_DAMAGE_COUNT = 5 +} diff --git a/src/Models/Type/AbnormalPolarityType.cs b/src/Models/Type/AbnormalPolarityType.cs new file mode 100644 index 0000000..2c698a1 --- /dev/null +++ b/src/Models/Type/AbnormalPolarityType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalPolarityType +{ + UNKNOWN = 0, + POSITIVE = 1, + NEGATIVE = 2 +} diff --git a/src/Models/Type/AbnormalResistancePolarityType.cs b/src/Models/Type/AbnormalResistancePolarityType.cs new file mode 100644 index 0000000..c09042f --- /dev/null +++ b/src/Models/Type/AbnormalResistancePolarityType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum AbnormalResistancePolarityType +{ + UNKNOWN = 0, + POSITIVE = 1, + NEGATIVE = 2, + DONT_CARE = 3 +} diff --git a/src/Models/Type/ActivationMethodType.cs b/src/Models/Type/ActivationMethodType.cs new file mode 100644 index 0000000..df4e4ef --- /dev/null +++ b/src/Models/Type/ActivationMethodType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum ActivationMethodType +{ + UNKNOWN = 0, + IMMEDIATE = 1, + AFTER_SKILL_EXECUTE = 2, + BEFORE_CALCULATE_SKILL_BEHAVIOUR = 3, + AFTER_CALCULATE_SKILL_BEHAVIOUR = 4, + TO_SKILL_BEHAVIOUR_HIT = 5, + BATTLE_START = 6, + PRE_IMMEDIATE = 7 +} diff --git a/src/Models/Type/ActiveSkillType.cs b/src/Models/Type/ActiveSkillType.cs new file mode 100644 index 0000000..4eac6ef --- /dev/null +++ b/src/Models/Type/ActiveSkillType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum ActiveSkillType +{ + UNKNOWN = 0, + ALL_ACTIVE_SKILL = 1, + WEAPON_ACTIVE_SKILL = 2, + COSTUME_ACTIVE_SKILL = 3 +} diff --git a/src/Models/Type/AppealTargetType.cs b/src/Models/Type/AppealTargetType.cs new file mode 100644 index 0000000..68ac2e8 --- /dev/null +++ b/src/Models/Type/AppealTargetType.cs @@ -0,0 +1,7 @@ +namespace MariesWonderland.Models.Type; + +public enum AppealTargetType +{ + UNKNOWN = 0, + SHOP = 1 +} diff --git a/src/Models/Type/AttributeCompatibilityType.cs b/src/Models/Type/AttributeCompatibilityType.cs new file mode 100644 index 0000000..764b052 --- /dev/null +++ b/src/Models/Type/AttributeCompatibilityType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum AttributeCompatibilityType +{ + UNKNOWN = 0, + EVEN = 1, + GOOD = 2, + BAD = 3 +} diff --git a/src/Models/Type/AttributeConditionType.cs b/src/Models/Type/AttributeConditionType.cs new file mode 100644 index 0000000..753eb24 --- /dev/null +++ b/src/Models/Type/AttributeConditionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum AttributeConditionType +{ + UNKNOWN = 0, + DARK = 1, + FIRE = 2, + LIGHT = 3, + WATER = 5, + WIND = 6, + NOTHING = 7, + ALL = 8 +} diff --git a/src/Models/Type/AttributeType.cs b/src/Models/Type/AttributeType.cs new file mode 100644 index 0000000..f832b2a --- /dev/null +++ b/src/Models/Type/AttributeType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum AttributeType +{ + UNKNOWN = 0, + FIRE = 2, + WATER = 5, + WIND = 6, + LIGHT = 3, + DARK = 1, + NOTHING = 4 +} diff --git a/src/Models/Type/AutoResetType.cs b/src/Models/Type/AutoResetType.cs new file mode 100644 index 0000000..f488f2f --- /dev/null +++ b/src/Models/Type/AutoResetType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum AutoResetType +{ + UNKNOWN = 0, + NONE = 1, + DAILY = 2, + MONTHLY = 3 +} diff --git a/src/Models/Type/BattleAdditionalAbilityApplyScopeType.cs b/src/Models/Type/BattleAdditionalAbilityApplyScopeType.cs new file mode 100644 index 0000000..05f0ef0 --- /dev/null +++ b/src/Models/Type/BattleAdditionalAbilityApplyScopeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleAdditionalAbilityApplyScopeType +{ + UNKNOWN = 0, + BOSS = 1, + ENEMY_ALL = 2 +} diff --git a/src/Models/Type/BattleEnemyType.cs b/src/Models/Type/BattleEnemyType.cs new file mode 100644 index 0000000..9c10969 --- /dev/null +++ b/src/Models/Type/BattleEnemyType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleEnemyType +{ + UNKNOWN = 0, + NORMAL = 1, + BOSS = 2 +} diff --git a/src/Models/Type/BattleEventReceiverType.cs b/src/Models/Type/BattleEventReceiverType.cs new file mode 100644 index 0000000..27ff12b --- /dev/null +++ b/src/Models/Type/BattleEventReceiverType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleEventReceiverType +{ + UNKNOWN = 0, + RADIO_MESSAGE = 1, + HUD_ACT_SEQUENCE = 2 +} diff --git a/src/Models/Type/BattleSchemeType.cs b/src/Models/Type/BattleSchemeType.cs new file mode 100644 index 0000000..d82a295 --- /dev/null +++ b/src/Models/Type/BattleSchemeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleSchemeType +{ + UNKNOWN = 0, + DEFAULT = 1, + PVP = 2 +} diff --git a/src/Models/Type/BattleSkillFireActConditionGroupType.cs b/src/Models/Type/BattleSkillFireActConditionGroupType.cs new file mode 100644 index 0000000..dc1301d --- /dev/null +++ b/src/Models/Type/BattleSkillFireActConditionGroupType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleSkillFireActConditionGroupType +{ + UNKNOWN = 0, + AND = 1, + OR = 2 +} diff --git a/src/Models/Type/BattleSkillFireActConditionType.cs b/src/Models/Type/BattleSkillFireActConditionType.cs new file mode 100644 index 0000000..70ba52e --- /dev/null +++ b/src/Models/Type/BattleSkillFireActConditionType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleSkillFireActConditionType +{ + UNKNOWN = 0, + WEAPON_TYPE = 1, + ATTRIBUTE_TYPE = 2, + SKILL_CATEGORY_TYPE = 3 +} diff --git a/src/Models/Type/BattleStartCameraType.cs b/src/Models/Type/BattleStartCameraType.cs new file mode 100644 index 0000000..6ec619b --- /dev/null +++ b/src/Models/Type/BattleStartCameraType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum BattleStartCameraType +{ + UNKNOWN = 0, + FOLLOW_ACTOR = 1, + FOLLOW_PATH = 2, + FOLLOW_ACTOR_OFFSET = 3 +} diff --git a/src/Models/Type/BigHuntBattleReportRandomDisplayType.cs b/src/Models/Type/BigHuntBattleReportRandomDisplayType.cs new file mode 100644 index 0000000..809595e --- /dev/null +++ b/src/Models/Type/BigHuntBattleReportRandomDisplayType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum BigHuntBattleReportRandomDisplayType +{ + UNKNOWN = 0, + CRITICAL_COUNT = 1, + MAX_DAMAGE = 2, + MIN_DAMAGE = 3, + DEFAULT_SKILL_HIT_COUNT = 4, + MOVE_COUNT = 5, + DAMAGE_RECEIVE_COUNT = 6, + SUPPORT_SKILL_HIT_COUNT = 7, + DAMAGE_RANDOM_AMPLITUDE_SCORE = 8 +} diff --git a/src/Models/Type/BuffResistanceStatusKindType.cs b/src/Models/Type/BuffResistanceStatusKindType.cs new file mode 100644 index 0000000..d0fd9a4 --- /dev/null +++ b/src/Models/Type/BuffResistanceStatusKindType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum BuffResistanceStatusKindType +{ + UNKNOWN = 0, + AGILITY = 1, + ATTACK = 2, + CRITICAL_ATTACK = 3, + CRITICAL_RATIO = 4, + EVASION_RATIO = 5, + HP = 6, + VITALITY = 7, + DONT_CARE = 8 +} diff --git a/src/Models/Type/BuffResistanceType.cs b/src/Models/Type/BuffResistanceType.cs new file mode 100644 index 0000000..8505e21 --- /dev/null +++ b/src/Models/Type/BuffResistanceType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum BuffResistanceType +{ + UNKNOWN = 0, + BUFF = 1, + DEBUFF = 2, + DONT_CARE = 3, +} diff --git a/src/Models/Type/BuffType.cs b/src/Models/Type/BuffType.cs new file mode 100644 index 0000000..1d85410 --- /dev/null +++ b/src/Models/Type/BuffType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum BuffType +{ + UNKNOWN = 0, + BUFF = 1, + DEBUFF = 2, +} diff --git a/src/Models/Type/CharacterAssignmentType.cs b/src/Models/Type/CharacterAssignmentType.cs new file mode 100644 index 0000000..770fe69 --- /dev/null +++ b/src/Models/Type/CharacterAssignmentType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterAssignmentType +{ + UNKNOWN = 0, + ORIGINAL = 1, + COLLABORATION = 2 +} diff --git a/src/Models/Type/CharacterBoardAssignmentType.cs b/src/Models/Type/CharacterBoardAssignmentType.cs new file mode 100644 index 0000000..33244bf --- /dev/null +++ b/src/Models/Type/CharacterBoardAssignmentType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterBoardAssignmentType +{ + UNKNOWN = 0, + ORIGINAL = 1, + COLLABORATION = 2 +} diff --git a/src/Models/Type/CharacterBoardConditionType.cs b/src/Models/Type/CharacterBoardConditionType.cs new file mode 100644 index 0000000..c14b8e1 --- /dev/null +++ b/src/Models/Type/CharacterBoardConditionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterBoardConditionType +{ + UNKNOWN = 0, + PANEL_RELEASE_BY_ID = 1, + BOARD_ALL_RELEASE_BY_ID = 2, + QUEST_CLEAR_BY_ID = 3, + MAIN_FUNCTION_RELEASED = 4, + CHARACTER_TOTAL_RANK = 5, + CHARACTER_TOTAL_COSTUME_LEVEL = 6, + ALL_CHARACTER_TOTAL_COSTUME_LEVEL = 7 +} diff --git a/src/Models/Type/CharacterBoardEffectType.cs b/src/Models/Type/CharacterBoardEffectType.cs new file mode 100644 index 0000000..3db26f3 --- /dev/null +++ b/src/Models/Type/CharacterBoardEffectType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterBoardEffectType +{ + UNKNOWN = 0, + ABILITY = 1, + STATUS_UP = 2 +} diff --git a/src/Models/Type/CharacterBoardGroupType.cs b/src/Models/Type/CharacterBoardGroupType.cs new file mode 100644 index 0000000..a02a20a --- /dev/null +++ b/src/Models/Type/CharacterBoardGroupType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterBoardGroupType +{ + UNKNOWN = 0, + BASIC = 1, + BIG_HUNT = 2 +} diff --git a/src/Models/Type/CharacterBoardStatusUpType.cs b/src/Models/Type/CharacterBoardStatusUpType.cs new file mode 100644 index 0000000..7300a5c --- /dev/null +++ b/src/Models/Type/CharacterBoardStatusUpType.cs @@ -0,0 +1,16 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterBoardStatusUpType +{ + UNKNOWN = 0, + AGILITY_ADD = 1, + AGILITY_MULTIPLY = 2, + ATTACK_ADD = 3, + ATTACK_MULTIPLY = 4, + CRITICAL_ATTACK_ADD = 5, + CRITICAL_RATIO_ADD = 6, + HP_ADD = 7, + HP_MULTIPLY = 8, + VITALITY_ADD = 9, + VITALITY_MULTIPLY = 10 +} diff --git a/src/Models/Type/CharacterVoiceUnlockConditionType.cs b/src/Models/Type/CharacterVoiceUnlockConditionType.cs new file mode 100644 index 0000000..dd45575 --- /dev/null +++ b/src/Models/Type/CharacterVoiceUnlockConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CharacterVoiceUnlockConditionType +{ + UNKNOWN = 0, + NONE = 1, + QUEST_CLEAR = 2 +} diff --git a/src/Models/Type/CollectionBonusEffectType.cs b/src/Models/Type/CollectionBonusEffectType.cs new file mode 100644 index 0000000..4784896 --- /dev/null +++ b/src/Models/Type/CollectionBonusEffectType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum CollectionBonusEffectType +{ + UNKNOWN = 0, + CHARACTER_EXP = 1, + COSTUME_EXP = 2, + DROP_RATE = 3, + GOLD = 4, + USER_EXP = 5, + DROP_NUM_COEF = 6 +} diff --git a/src/Models/Type/CompareType.cs b/src/Models/Type/CompareType.cs new file mode 100644 index 0000000..1353ba7 --- /dev/null +++ b/src/Models/Type/CompareType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum CompareType +{ + UNKNOWN = 0, + EQUAL = 1, + NOT_EQUAL = 2, + GREATER = 3, + GREATER_EQUAL = 4, + LESS = 5, + LESS_EQUAL = 6 +} diff --git a/src/Models/Type/ConditionOperationType.cs b/src/Models/Type/ConditionOperationType.cs new file mode 100644 index 0000000..1a1dc6a --- /dev/null +++ b/src/Models/Type/ConditionOperationType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum ConditionOperationType +{ + UNKNOWN = 0, + AND = 1, + OR = 2 +} diff --git a/src/Models/Type/ConsumableItemType.cs b/src/Models/Type/ConsumableItemType.cs new file mode 100644 index 0000000..9202800 --- /dev/null +++ b/src/Models/Type/ConsumableItemType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum ConsumableItemType +{ + UNKNOWN = 0, + GOLD = 100, + MEDAL = 110, + GACHA_MEDAL = 120, + MOM_POINT = 130, + GACHA_TICKET = 200, + EXPLORE_TICKET = 201, + QUEST_SKIP_TICKET = 202, + EFFECT = 300 +} diff --git a/src/Models/Type/CorrectionTargetDamageType.cs b/src/Models/Type/CorrectionTargetDamageType.cs new file mode 100644 index 0000000..0c234b9 --- /dev/null +++ b/src/Models/Type/CorrectionTargetDamageType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CorrectionTargetDamageType +{ + UNKNOWN = 0, + DEAL_DAMAGE = 1, + RECEIVE_DAMAGE = 2 +} diff --git a/src/Models/Type/CostumeAssetCategoryType.cs b/src/Models/Type/CostumeAssetCategoryType.cs new file mode 100644 index 0000000..d8534d7 --- /dev/null +++ b/src/Models/Type/CostumeAssetCategoryType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeAssetCategoryType +{ + UNKNOWN = 0, + NORMAL = 1, + ENEMY = 2 +} diff --git a/src/Models/Type/CostumeAutoOrganizationConditionType.cs b/src/Models/Type/CostumeAutoOrganizationConditionType.cs new file mode 100644 index 0000000..5f05882 --- /dev/null +++ b/src/Models/Type/CostumeAutoOrganizationConditionType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeAutoOrganizationConditionType +{ + UNKNOWN = 0, + RECOVERY_COEFFICIENT_FIRE = 1, + RECOVERY_COEFFICIENT_WATER = 2, + RECOVERY_COEFFICIENT_WIND = 3, + RECOVERY_COEFFICIENT_LIGHT = 4, + RECOVERY_COEFFICIENT_DARK = 5, + ATTACKER_IGNORE_TARGET = 6 +} diff --git a/src/Models/Type/CostumeAwakenEffectType.cs b/src/Models/Type/CostumeAwakenEffectType.cs new file mode 100644 index 0000000..0a9e58b --- /dev/null +++ b/src/Models/Type/CostumeAwakenEffectType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeAwakenEffectType +{ + UNKNOWN = 0, + STATUS_UP = 1, + ABILITY = 2, + ITEM_ACQUIRE = 3 +} diff --git a/src/Models/Type/CostumeDefaultSkillLotteryType.cs b/src/Models/Type/CostumeDefaultSkillLotteryType.cs new file mode 100644 index 0000000..5a3809e --- /dev/null +++ b/src/Models/Type/CostumeDefaultSkillLotteryType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeDefaultSkillLotteryType +{ + UNKNOWN = 0, + SKILLFUL_WEAPON = 1, + COMMON_WEAPON = 2 +} diff --git a/src/Models/Type/CostumeLevelBonusType.cs b/src/Models/Type/CostumeLevelBonusType.cs new file mode 100644 index 0000000..92dae72 --- /dev/null +++ b/src/Models/Type/CostumeLevelBonusType.cs @@ -0,0 +1,16 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeLevelBonusType +{ + UNKNOWN = 0, + AGILITY_ADD = 1, + AGILITY_MULTIPLY = 2, + ATTACK_ADD = 3, + ATTACK_MULTIPLY = 4, + CRITICAL_ATTACK_ADD = 5, + CRITICAL_RATIO_ADD = 6, + HP_ADD = 7, + HP_MULTIPLY = 8, + VITALITY_ADD = 9, + VITALITY_MULTIPLY = 10 +} diff --git a/src/Models/Type/CostumeLotteryEffectType.cs b/src/Models/Type/CostumeLotteryEffectType.cs new file mode 100644 index 0000000..4cf3dc6 --- /dev/null +++ b/src/Models/Type/CostumeLotteryEffectType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeLotteryEffectType +{ + UNKNOWN = 0, + ABILITY = 1, + STATUS_UP = 2 +} diff --git a/src/Models/Type/CostumeSpecialActActiveSkillConditionType.cs b/src/Models/Type/CostumeSpecialActActiveSkillConditionType.cs new file mode 100644 index 0000000..ce39846 --- /dev/null +++ b/src/Models/Type/CostumeSpecialActActiveSkillConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum CostumeSpecialActActiveSkillConditionType +{ + UNKNOWN = 0, + ALWAYS = 1, + ATTRIBUTE_MAIN_WEAPON = 2 +} diff --git a/src/Models/Type/CutInFunctionType.cs b/src/Models/Type/CutInFunctionType.cs new file mode 100644 index 0000000..305b84c --- /dev/null +++ b/src/Models/Type/CutInFunctionType.cs @@ -0,0 +1,15 @@ +namespace MariesWonderland.Models.Type; + +public enum CutInFunctionType +{ + UNKNOWN = 0, + PVP = 1, + EVENT_QUEST = 2, + EXPLORATION = 3, + GACHA = 4, + HOME = 5, + BIG_HUNT = 6, + WORLD_MAP = 7, + LIMIT_CONTENT = 8, + ANOTHER_ROUTE = 9 +} diff --git a/src/Models/Type/DamageCorrectionHpRatioType.cs b/src/Models/Type/DamageCorrectionHpRatioType.cs new file mode 100644 index 0000000..a6eab07 --- /dev/null +++ b/src/Models/Type/DamageCorrectionHpRatioType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageCorrectionHpRatioType +{ + UNKNOWN = 0, + LOWER = 1, + HIGHER = 2 +} diff --git a/src/Models/Type/DamageCorrectionOverlapType.cs b/src/Models/Type/DamageCorrectionOverlapType.cs new file mode 100644 index 0000000..24185c1 --- /dev/null +++ b/src/Models/Type/DamageCorrectionOverlapType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageCorrectionOverlapType +{ + UNKNOWN = 0, + CUMULATIVE = 1, + EXTREMUM = 2 +} diff --git a/src/Models/Type/DamageMultiplyAbnormalAttachedPolarityConditionType.cs b/src/Models/Type/DamageMultiplyAbnormalAttachedPolarityConditionType.cs new file mode 100644 index 0000000..b4818bb --- /dev/null +++ b/src/Models/Type/DamageMultiplyAbnormalAttachedPolarityConditionType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyAbnormalAttachedPolarityConditionType +{ + UNKNOWN = 0, + POSITIVE = 1, + NEGATIVE = 2, + DONT_CARE = 3 +} diff --git a/src/Models/Type/DamageMultiplyAbnormalAttachedTargetType.cs b/src/Models/Type/DamageMultiplyAbnormalAttachedTargetType.cs new file mode 100644 index 0000000..9caae05 --- /dev/null +++ b/src/Models/Type/DamageMultiplyAbnormalAttachedTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyAbnormalAttachedTargetType +{ + UNKNOWN = 0, + SKILL_EXECUTOR = 1, + SKILL_TARGET = 2 +} diff --git a/src/Models/Type/DamageMultiplyBuffAttachedConditionTargetType.cs b/src/Models/Type/DamageMultiplyBuffAttachedConditionTargetType.cs new file mode 100644 index 0000000..9c569b4 --- /dev/null +++ b/src/Models/Type/DamageMultiplyBuffAttachedConditionTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyBuffAttachedConditionTargetType +{ + UNKNOWN = 0, + SKILL_EXECUTOR = 1, + SKILL_TARGET = 2 +} diff --git a/src/Models/Type/DamageMultiplyBuffAttachedTargetBuffType.cs b/src/Models/Type/DamageMultiplyBuffAttachedTargetBuffType.cs new file mode 100644 index 0000000..da3245f --- /dev/null +++ b/src/Models/Type/DamageMultiplyBuffAttachedTargetBuffType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyBuffAttachedTargetBuffType +{ + UNKNOWN = 0, + BUFF = 1, + DEBUFF = 2, + DONT_CARE = 3 +} diff --git a/src/Models/Type/DamageMultiplyBuffAttachedTargetStatusKindType.cs b/src/Models/Type/DamageMultiplyBuffAttachedTargetStatusKindType.cs new file mode 100644 index 0000000..0f511cd --- /dev/null +++ b/src/Models/Type/DamageMultiplyBuffAttachedTargetStatusKindType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyBuffAttachedTargetStatusKindType +{ + UNKNOWN = 0, + AGILITY = 1, + ATTACK = 2, + CRITICAL_ATTACK = 3, + CRITICAL_RATIO = 4, + EVASION_RATIO = 5, + HP = 6, + VITALITY = 7, + DONT_CARE = 8 +} diff --git a/src/Models/Type/DamageMultiplyDetailType.cs b/src/Models/Type/DamageMultiplyDetailType.cs new file mode 100644 index 0000000..4c97e67 --- /dev/null +++ b/src/Models/Type/DamageMultiplyDetailType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyDetailType +{ + UNKNOWN = 0, + ALWAYS = 1, + CRITICAL = 2, + HIT_INDEX = 3, + ABNORMAL_ATTACHED = 4, + SKILLFUL_WEAPON_TYPE = 5, + BUFF_ATTACHED = 6, + SPECIFIED_COSTUME = 7 +} diff --git a/src/Models/Type/DamageMultiplySkillfulWeaponConditionTargetType.cs b/src/Models/Type/DamageMultiplySkillfulWeaponConditionTargetType.cs new file mode 100644 index 0000000..c6189fb --- /dev/null +++ b/src/Models/Type/DamageMultiplySkillfulWeaponConditionTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplySkillfulWeaponConditionTargetType +{ + UNKNOWN = 0, + SKILL_EXECUTOR = 1, + SKILL_TARGET = 2 +} diff --git a/src/Models/Type/DamageMultiplySpecifiedCostumeConditionTargetType.cs b/src/Models/Type/DamageMultiplySpecifiedCostumeConditionTargetType.cs new file mode 100644 index 0000000..4519794 --- /dev/null +++ b/src/Models/Type/DamageMultiplySpecifiedCostumeConditionTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplySpecifiedCostumeConditionTargetType +{ + UNKNOWN = 0, + SKILL_EXECUTOR = 1, + SKILL_TARGET = 2 +} diff --git a/src/Models/Type/DamageMultiplyTargetType.cs b/src/Models/Type/DamageMultiplyTargetType.cs new file mode 100644 index 0000000..762c0e9 --- /dev/null +++ b/src/Models/Type/DamageMultiplyTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DamageMultiplyTargetType +{ + UNKNOWN = 0, + RECEIVE_DAMAGE = 1, + DEAL_DAMAGE = 2 +} diff --git a/src/Models/Type/DeckType.cs b/src/Models/Type/DeckType.cs new file mode 100644 index 0000000..7b88506 --- /dev/null +++ b/src/Models/Type/DeckType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum DeckType +{ + UNKNOWN = 0, + QUEST = 1, + PVP = 2, + MULTI = 3, + RESTRICTED_QUEST = 4, + BIG_HUNT = 5, + RESTRICTED_LIMIT_CONTENT_QUEST = 6 +} diff --git a/src/Models/Type/DifficultyType.cs b/src/Models/Type/DifficultyType.cs new file mode 100644 index 0000000..8398772 --- /dev/null +++ b/src/Models/Type/DifficultyType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum DifficultyType +{ + UNKNOWN = 0, + NORMAL = 1, + HARD = 2, + VERY_HARD = 3, + EX_HARD = 4 +} diff --git a/src/Models/Type/DisplayCoordinateAdjustmentFunctionType.cs b/src/Models/Type/DisplayCoordinateAdjustmentFunctionType.cs new file mode 100644 index 0000000..9df8548 --- /dev/null +++ b/src/Models/Type/DisplayCoordinateAdjustmentFunctionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum DisplayCoordinateAdjustmentFunctionType +{ + UNKNOWN = 0, + GACHA_RESULT = 1, + PROFILE = 2, + CHARACTER_DISPLAY_QUEST = 3, + LIMIT_QUEST_CHARACTER_CELL = 4, + CHARACTER_ENHANCE = 5, + CHARACTER_DETAIL = 6, + REBIRTH_CONFIRMATION = 7 +} diff --git a/src/Models/Type/DokanType.cs b/src/Models/Type/DokanType.cs new file mode 100644 index 0000000..482acb1 --- /dev/null +++ b/src/Models/Type/DokanType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum DokanType +{ + UNKNOWN = 0, + APPEAL = 1, + FUNCTION_INTRODUCTION = 3 +} diff --git a/src/Models/Type/DomainType.cs b/src/Models/Type/DomainType.cs new file mode 100644 index 0000000..b6d4686 --- /dev/null +++ b/src/Models/Type/DomainType.cs @@ -0,0 +1,38 @@ +namespace MariesWonderland.Models.Type; + +public enum DomainType +{ + UNKNOWN = 0, + GACHA = 1, + SHOP = 2, + EXCHANGE_SHOP = 3, + QUEST = 4, + PVP = 5, + ENHANCEMENT = 6, + ENHANCEMENT_WEAPON = 7, + ENHANCEMENT_COSTUME = 8, + ENHANCEMENT_COMPANION = 9, + ENHANCEMENT_PARTS = 10, + ITEM_LIST = 11, + DECK = 12, + EXPLORATION = 13, + LIBRARY = 14, + MENU = 15, + CAGE = 16, + SETTING_FAVORITE_COSTUME = 17, + QUEST_NORMAL = 18, + QUEST_HARD = 19, + QUEST_VERYHARD = 20, + LOGIN_BONUS = 21, + MISSION = 22, + INFORMATION = 23, + MAIN_QUEST_CHAPTER = 24, + EVENT_QUEST_CHAPTER = 25, + QUIZ = 26, + WEBVIEW_MISSION = 27, + FRIEND = 28, + BIG_HUNT = 29, + CHARACTER_BOARD = 30, + QUEST_EXHARD = 31, + CHARACTER_REBIRTH = 32 +} diff --git a/src/Models/Type/EffectTargetType.cs b/src/Models/Type/EffectTargetType.cs new file mode 100644 index 0000000..97fb76c --- /dev/null +++ b/src/Models/Type/EffectTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EffectTargetType +{ + UNKNOWN = 0, + STAMINA_RECOVERY = 1, + BATTLE_POINT_RECOVERY = 2 +} diff --git a/src/Models/Type/EffectValueType.cs b/src/Models/Type/EffectValueType.cs new file mode 100644 index 0000000..8cbaaf1 --- /dev/null +++ b/src/Models/Type/EffectValueType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EffectValueType +{ + UNKNOWN = 0, + FIXED_VALUE = 1, + PERMIL_VALUE = 2 +} diff --git a/src/Models/Type/EnemySizeType.cs b/src/Models/Type/EnemySizeType.cs new file mode 100644 index 0000000..3f1a448 --- /dev/null +++ b/src/Models/Type/EnemySizeType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum EnemySizeType +{ + UNKNOWN = 0, + SMALL = 1, + MEDIUM = 2, + LARGE = 3, + EX_LARGE = 4 +} diff --git a/src/Models/Type/EnemyThumbnailReplaceConditionType.cs b/src/Models/Type/EnemyThumbnailReplaceConditionType.cs new file mode 100644 index 0000000..a7e9740 --- /dev/null +++ b/src/Models/Type/EnemyThumbnailReplaceConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EnemyThumbnailReplaceConditionType +{ + UNKNOWN = 0, + QUEST_NOT_CLEAR = 1, + ALWAYS = 2 +} diff --git a/src/Models/Type/EnemyThumbnailReplaceMethodType.cs b/src/Models/Type/EnemyThumbnailReplaceMethodType.cs new file mode 100644 index 0000000..e72c47d --- /dev/null +++ b/src/Models/Type/EnemyThumbnailReplaceMethodType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EnemyThumbnailReplaceMethodType +{ + UNKNOWN = 0, + SAME_ACTOR = 1, + REPLACE_ACTOR = 2 +} diff --git a/src/Models/Type/EnhanceCampaignEffectType.cs b/src/Models/Type/EnhanceCampaignEffectType.cs new file mode 100644 index 0000000..b60ba01 --- /dev/null +++ b/src/Models/Type/EnhanceCampaignEffectType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EnhanceCampaignEffectType +{ + UNKNOWN = 0, + PROBABILITY_PER_MILE = 1, + ADDITIONAL_PER_MILE = 2 +} diff --git a/src/Models/Type/EnhanceCampaignTargetType.cs b/src/Models/Type/EnhanceCampaignTargetType.cs new file mode 100644 index 0000000..1608cfd --- /dev/null +++ b/src/Models/Type/EnhanceCampaignTargetType.cs @@ -0,0 +1,17 @@ +namespace MariesWonderland.Models.Type; + +public enum EnhanceCampaignTargetType +{ + UNKNOWN = 0, + COSTUME_ALL = 1, + WEAPON_ALL = 2, + PARTS_ALL = 3, + COSTUME_CHARACTER_ID = 11, + COSTUME_SKILLFUL_WEAPON_TYPE_ID = 12, + COSTUME_ID = 13, + WEAPON_TYPE_ID = 21, + WEAPON_ATTRIBUTE_TYPE_ID = 22, + WEAPON_ID = 23, + PARTS_SERIES_ID = 31, + PARTS_ID = 32 +} diff --git a/src/Models/Type/EvaluateConditionEvaluateType.cs b/src/Models/Type/EvaluateConditionEvaluateType.cs new file mode 100644 index 0000000..541dc72 --- /dev/null +++ b/src/Models/Type/EvaluateConditionEvaluateType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum EvaluateConditionEvaluateType +{ + UNKNOWN = 0, + AND = 1, + OR = 2, + GE = 3, + ID_CONTAIN = 4, + EQ = 5, + LE = 6 +} diff --git a/src/Models/Type/EvaluateConditionFunctionType.cs b/src/Models/Type/EvaluateConditionFunctionType.cs new file mode 100644 index 0000000..47d4cc3 --- /dev/null +++ b/src/Models/Type/EvaluateConditionFunctionType.cs @@ -0,0 +1,18 @@ +namespace MariesWonderland.Models.Type; + +public enum EvaluateConditionFunctionType +{ + UNKNOWN = 0, + RECURSION = 1, + CAGE_TREASURE_HUNT = 2, + CAGE_INTERVAL_DROP_ITEM = 3, + QUEST_CLEAR = 4, + GIMMICK_BIT_COUNT = 5, + WEAPON_ACQUISITION = 6, + TUTORIAL = 7, + MISSION_CLEAR = 8, + QUEST_MISSION_CLEAR = 9, + OTHER_GIMMICK_BIT_COUNT = 10, + QUEST_SCENE_CHOICE = 11, + QUEST_NOT_CLEAR = 12 +} diff --git a/src/Models/Type/EventQuestMenuCategoryType.cs b/src/Models/Type/EventQuestMenuCategoryType.cs new file mode 100644 index 0000000..ee144aa --- /dev/null +++ b/src/Models/Type/EventQuestMenuCategoryType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum EventQuestMenuCategoryType +{ + Unknown = 0, + EventDefault = 1, + CharacterExQuest = 2 +} diff --git a/src/Models/Type/EventQuestType.cs b/src/Models/Type/EventQuestType.cs new file mode 100644 index 0000000..44ef156 --- /dev/null +++ b/src/Models/Type/EventQuestType.cs @@ -0,0 +1,18 @@ +namespace MariesWonderland.Models.Type; + +public enum EventQuestType +{ + UNKNOWN = 0, + MARATHON = 1, + HUNT = 2, + DUNGEON = 3, + DAY_OF_THE_WEEK = 4, + GUERRILLA = 5, + CHARACTER = 6, + END_CONTENTS = 7, + PORTAL_CAGE = 8, + SPECIAL = 9, + TOWER = 10, + LIMIT_CONTENT = 11, + LABYRINTH = 12 +} diff --git a/src/Models/Type/ExploreUnlockConditionType.cs b/src/Models/Type/ExploreUnlockConditionType.cs new file mode 100644 index 0000000..9b1222e --- /dev/null +++ b/src/Models/Type/ExploreUnlockConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum ExploreUnlockConditionType +{ + UNKNOWN = 0, + MAIN_QUEST_CLEAR = 1, + EXPLORE_SCORE_OVER_IN_SAME_GROUP_AND_ONE_LOW_DIFFICULTY = 2 +} diff --git a/src/Models/Type/ExtendBuffCooltimeBuffType.cs b/src/Models/Type/ExtendBuffCooltimeBuffType.cs new file mode 100644 index 0000000..0de27b0 --- /dev/null +++ b/src/Models/Type/ExtendBuffCooltimeBuffType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum ExtendBuffCooltimeBuffType +{ + UNKNOWN = 0, + BUFF = 1, + DEBUFF = 2, + DONT_CARE = 3 +} diff --git a/src/Models/Type/ExtendBuffCooltimeExtendType.cs b/src/Models/Type/ExtendBuffCooltimeExtendType.cs new file mode 100644 index 0000000..d24809d --- /dev/null +++ b/src/Models/Type/ExtendBuffCooltimeExtendType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum ExtendBuffCooltimeExtendType +{ + UNKNOWN = 0, + ADD = 1, + SUB = 2, + MULTIPLY = 3 +} diff --git a/src/Models/Type/ExtendBuffCooltimeStatusType.cs b/src/Models/Type/ExtendBuffCooltimeStatusType.cs new file mode 100644 index 0000000..f7ff8d9 --- /dev/null +++ b/src/Models/Type/ExtendBuffCooltimeStatusType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum ExtendBuffCooltimeStatusType +{ + UNKNOWN = 0, + AGILITY = 1, + ATTACK = 2, + CRITICAL_ATTACK = 3, + CRITICAL_RATIO = 4, + EVASION_RATIO = 5, + HP = 6, + VITALITY = 7, + DONT_CARE = 8 +} diff --git a/src/Models/Type/ExtendBuffCooltimeTargetSkillType.cs b/src/Models/Type/ExtendBuffCooltimeTargetSkillType.cs new file mode 100644 index 0000000..5ad41c0 --- /dev/null +++ b/src/Models/Type/ExtendBuffCooltimeTargetSkillType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum ExtendBuffCooltimeTargetSkillType +{ + UNKNOWN = 0, + COSTUME_ACTIVE = 1, + WEAPON_ACTIVE = 2, + COSTUME_OR_WEAPON_ACTIVE = 3 +} diff --git a/src/Models/Type/FieldEffectApplyScopeType.cs b/src/Models/Type/FieldEffectApplyScopeType.cs new file mode 100644 index 0000000..b0a1c80 --- /dev/null +++ b/src/Models/Type/FieldEffectApplyScopeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum FieldEffectApplyScopeType +{ + UNKNOWN = 0, + PLAYER_ACTOR = 1, + ALL_ACTOR = 2 +} diff --git a/src/Models/Type/FlowType.cs b/src/Models/Type/FlowType.cs new file mode 100644 index 0000000..1a918c9 --- /dev/null +++ b/src/Models/Type/FlowType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum FlowType +{ + UNKNOWN = 0, + MAIN = 1, + REPLAY = 2, + MAIN_AND_REPLAY = 3 +} diff --git a/src/Models/Type/GachaAutoResetType.cs b/src/Models/Type/GachaAutoResetType.cs new file mode 100644 index 0000000..b119529 --- /dev/null +++ b/src/Models/Type/GachaAutoResetType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaAutoResetType +{ + UNKNOWN = 0, + NONE = 1, + DAILY = 2, + MONTHLY = 3 +} diff --git a/src/Models/Type/GachaBadgeType.cs b/src/Models/Type/GachaBadgeType.cs new file mode 100644 index 0000000..3cc42c3 --- /dev/null +++ b/src/Models/Type/GachaBadgeType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaBadgeType +{ + UNKNOWN = 0, + NONE = 1, + LIMITED_EXEC_COUNT = 2, + LIMITED_PAID_GEM = 3, + LIMITED_PAID_GEM_AND_EXEC_COUNT = 4, + CURRENT_STEP_COUNT = 5, + CURRENT_STEP_COUNT_AND_LIMITED_PAID_GEM = 6 +} diff --git a/src/Models/Type/GachaDecorationType.cs b/src/Models/Type/GachaDecorationType.cs new file mode 100644 index 0000000..71dac5d --- /dev/null +++ b/src/Models/Type/GachaDecorationType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaDecorationType +{ + UNKNOWN = 0, + NORMAL = 1, + FESTIVAL = 2, +} diff --git a/src/Models/Type/GachaLabelType.cs b/src/Models/Type/GachaLabelType.cs new file mode 100644 index 0000000..00268bf --- /dev/null +++ b/src/Models/Type/GachaLabelType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaLabelType +{ + UNKNOWN = 0, + PREMIUM = 1, + EVENT = 2, + CHAPTER = 3, + PORTAL_CAGE = 4, + RECYCLE = 5 +} diff --git a/src/Models/Type/GachaModeType.cs b/src/Models/Type/GachaModeType.cs new file mode 100644 index 0000000..014d98d --- /dev/null +++ b/src/Models/Type/GachaModeType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaModeType +{ + UNKNOWN = 0, + BASIC = 1, + STEPUP = 2, + BOX = 3 +} diff --git a/src/Models/Type/GachaUnlockConditionType.cs b/src/Models/Type/GachaUnlockConditionType.cs new file mode 100644 index 0000000..8ab6380 --- /dev/null +++ b/src/Models/Type/GachaUnlockConditionType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum GachaUnlockConditionType +{ + UNKNOWN = 0, + NONE = 1, + USER_RANK_GREATER_OR_EQUAL = 2, + WITHIN_HOURS_FROM_GAME_STARTED = 3, + MAIN_QUEST_CLEAR = 4, + MAIN_FUNCTION_RELEASED = 5 +} diff --git a/src/Models/Type/GiftExpirationFilterType.cs b/src/Models/Type/GiftExpirationFilterType.cs new file mode 100644 index 0000000..c936f5d --- /dev/null +++ b/src/Models/Type/GiftExpirationFilterType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum GiftExpirationFilterType +{ + UNKNOWN = 0, + NONE = 1, + ONLY_EXPIRE = 2, + ONLY_NOT_EXPIRE = 3 +} diff --git a/src/Models/Type/GiftRewardKindFilterType.cs b/src/Models/Type/GiftRewardKindFilterType.cs new file mode 100644 index 0000000..e708f44 --- /dev/null +++ b/src/Models/Type/GiftRewardKindFilterType.cs @@ -0,0 +1,15 @@ +namespace MariesWonderland.Models.Type; + +public enum GiftRewardKindFilterType +{ + UNKNOWN = 0, + NONE = 1, + GEM = 2, + GOLD = 3, + WEAPON = 4, + COMPANION = 5, + PARTS = 6, + MATERIAL = 7, + OTHER = 8, + COSTUME = 9 +} diff --git a/src/Models/Type/GimmickType.cs b/src/Models/Type/GimmickType.cs new file mode 100644 index 0000000..cf48ee8 --- /dev/null +++ b/src/Models/Type/GimmickType.cs @@ -0,0 +1,17 @@ +namespace MariesWonderland.Models.Type; + +public enum GimmickType +{ + UNKNOWN = 0, + CAGE_TREASURE_HUNT = 1, + CAGE_INTERVAL_DROP_ITEM = 2, + BROKEN_OBELISK = 3, + IRON_GRILL = 4, + RADIO_MESSAGE = 5, + FIRST_BROKEN_OBELISK = 6, + MAP_ONLY_CAGE_TREASURE_HUNT = 7, + MAP_ONLY_CAGE_INTERVAL_DROP_ITEM = 8, + REPORT = 9, + CAGE_MEMORY = 10, + MAP_ONLY_HIDE_OBELISK = 11 +} diff --git a/src/Models/Type/HateValueCalculationType.cs b/src/Models/Type/HateValueCalculationType.cs new file mode 100644 index 0000000..3cde01e --- /dev/null +++ b/src/Models/Type/HateValueCalculationType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum HateValueCalculationType +{ + UNKNOWN = 0, + ADD = 1, + MULTIPLY = 2, + SUBTRACT = 3 +} diff --git a/src/Models/Type/HelpType.cs b/src/Models/Type/HelpType.cs new file mode 100644 index 0000000..5a317ff --- /dev/null +++ b/src/Models/Type/HelpType.cs @@ -0,0 +1,122 @@ +namespace MariesWonderland.Models.Type; + +public enum HelpType +{ + UNKNOWN = 0, + QUEST_TOP_SCREEN = 1, + QUEST_MAIN_SCREEN = 2, + QUEST_SUB_SCREEN = 3, + QUEST_CHARACTER_SCREEN = 4, + QUEST_END_SCREEN = 5, + BIG_HUNT_SCREEN = 6, + ARENA_TOP_SCREEN = 7, + LIBRARY_EVENT_STORY_SCREEN = 8, + LIBRARY_CHARACTER_STORY_SCREEN = 9, + LIBRARY_MAIN_STORY_SCREEN = 10, + LIBRARY_CATALOG_SCREEN = 11, + LIBRARY_MOVIE_SCREEN = 12, + ENHANCE_TOP_SCREEN = 13, + ENHANCE_COSTUME_SCREEN = 14, + ENHANCE_MEMORY_SCREEN = 15, + ENHANCE_WEAPON_SCREEN = 16, + ENHANCE_COMPANION_SCREEN = 17, + CHARACTER_BOARD_LIST_SCREEN = 18, + LIST_SELL_SCREEN = 19, + GACHA_TOP_SCREEN = 20, + ORGANIZATION_SCREEN = 21, + SEARCH_SCREEN = 22, + MENU_TOP_SCREEN = 23, + SHOP_TOP_SCREEN = 24, + SHOP_PREMIUM_SCREEN = 25, + SHOP_EXCHANGE_SCREEN = 26, + WORLD_MAP_TOP_SCREEN = 27, + CHARACTER_BOARD_SCREEN = 28, + LIBRARY_RECORD_SCREEN = 29, + LIBRARY_CARD_STORY_SCREEN = 30, + LIBRARY_SECRET_REPORT_SCREEN = 31, + LIBRARY_CAGE_MEMORY_SCREEN = 32, + THOUGHT_ORGANIZATION_SCREEN = 33, + PORTAL_CAGE_TUTORIAL = 1001, + DAILY_QUEST_TUTORIAL = 1002, + DAILY_GACHA_TUTORIAL = 1003, + QUEST_HARD_TUTORIAL = 1004, + QUEST_VERY_HARD_TUTORIAL = 1005, + PORTAL_CAGE_DROP_ITEM_TUTORIAL = 1006, + END_CONTENTS_QUEST_TUTORIAL = 1007, + SMART_PHONE_FIRST_TUTORIAL = 1008, + SMART_PHONE_SECOND_TUTORIAL = 1009, + CHARACTER_BOARD_TUTORIAL = 1010, + EVET_QUEST_TUTORIAL = 1011, + BIG_WIN_BONUS_TUTORIAL = 1012, + BLACK_BIRD_TUTORIAL = 1013, + BATTLE_TUTORIAL = 1014, + BATTLE_CHARACTER_TUTORIAL = 1015, + BATTLE_COMPANION_TUTORIAL = 1016, + BATTLE_SKILL_CANCEL_TUTORIAL = 1017, + MINIGAME_SHOOTING_TUTORIAL = 1018, + MINIGAME_FLYING_MOM_TUTORIAL = 1019, + GOHOBI_TUTORIAL = 1020, + EVENT_QUEST_DAY_OF_THE_WEEK_TUTORIAL = 1021, + EVENT_QUEST_GUERRILLA_TUTORIAL = 1022, + LIBRARY_TUTORIAL = 1023, + EVENT_QUEST_CHARACTER_TUTORIAL = 1024, + SUB_QUEST_TUTORIAL = 1025, + ARENA_TUTORIAL = 1026, + ENHANCE_TUTORIAL = 1027, + DECK_TUTORIAL = 1028, + EXPLORE_TUTORIAL = 1029, + BIG_HUNT_TUTORIAL = 1030, + END_CONTENTS_QUEST_UNLOCK_TUTORIAL = 1031, + QUEST_SKIP_TUTORIAL = 1032, + WORLD_MAP_UNLOCK_TUTORIAL = 1033, + WORLD_MAP_FIRST_TUTORIAL = 1034, + WORLD_MAP_BLACK_BIRD_TUTORIAL = 1035, + WORLD_MAP_APPLE_TUTORIAL = 1036, + WORLD_MAP_SKIP_TUTORIAL = 1037, + WORLD_MAP_FIRST_LOSE_TUTORIAL = 1038, + DUNGEON_TUTORIAL = 1039, + CHARACTER_BOARD_UNLOCK_TUTORIAL = 1040, + TRIPLE_DECK_TUTORIAL = 1041, + CHARACTER_BOARD_BASIC_TUTORIAL = 1042, + CHARACTER_BOARD_BIG_HUNT_TUTORIAL = 1043, + PORTAL_CAGE_DAILY_GACHA_TUTORIAL = 1044, + PARTS_TUTORIAL = 1045, + CAGE_TUTORIAL = 1046, + COSTUME_LEVEL_BONUS_TUTORIAL = 1047, + WORLD_MAP_REPORT_TUTORIAL = 1048, + BOSS_SPECIAL_EFFECT_TUTORIAL = 1049, + EVENT_QUEST_GUERRILLA_FREE_OPEN_TUTORIAL = 1050, + EXPLORE_HARD_TUTORIAL = 1051, + CAGE_MEMORY_TUTORIAL = 1052, + BATTLE_CERTAIN_KILL_SKILL_TUTORIAL = 1053, + DRESSUP_COSTUME_TUTORIAL = 1054, + COSTUME_AWAKEN_TUTORIAL = 1055, + THOUGHT_ORGANIZATION_TUTORIAL = 1056, + HIDE_OBELISK_TUTORIAL = 1057, + LIMIT_CONTENT_TUTORIAL = 1058, + FIELD_EFFECT_TUTORIAL = 1059, + LIMIT_CONTENT_CAGE_TUTORIAL = 1060, + CHARACTER_VIEWER_TUTORIAL = 1061, + CHARACTER_VIEWER_FIELD_SELECT = 1062, + CHARACTER_VIEWER_ABOUT = 1063, + CHARACTER_VIEWER_OPERATION = 1064, + CHARACTER_VIEWER_MENU = 1065, + CHARACTER_VIEWER_CREATE = 1066, + CHARACTER_VIEWER_CAMERA = 1067, + CHARACTER_VIEWER_MOTION = 1068, + RECYCLE_GACHA_TUTORIAL = 1069, + MOM_POINT_TUTORIAL = 1070, + STAINED_GLASS_TUTORIAL = 1071, + LIBRARY_STAINED_GLASS_SCREEN = 1072, + CHARACTER_VIEWER_FACIAL = 1073, + CHARACTER_REBIRTH_LIST_SCREEN = 1074, + CHARACTER_REBIRTH_TUTORIAL = 1075, + WEAPON_AWAKEN_TUTORIAL = 1076, + EVENT_QUEST_LABYRINTH_TUTORIAL = 1077, + MISSION_PASS = 1079, + WEAPON_ALL_ORGANIZATION_TUTORIAL = 1080, + COSTUME_LOTTERY_EFFECT_TUTORIAL = 1081, + ANOTHER_ROUTE_TUTORIAL = 1082, + DELETE_COSTUME_FIO_TUTORIAL = 1083, + REWARD_ROULETTE_TUTORIAL = 10001 +} diff --git a/src/Models/Type/HpBarDisplayType.cs b/src/Models/Type/HpBarDisplayType.cs new file mode 100644 index 0000000..ac11e6b --- /dev/null +++ b/src/Models/Type/HpBarDisplayType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum HpBarDisplayType +{ + UNKNOWN = 0, + STANDARD = 1, + FOLLOW_TARGET = 2, + LARGE = 3, + NONE = 4 +} diff --git a/src/Models/Type/HpRatioDamageCalculateDenominatorType.cs b/src/Models/Type/HpRatioDamageCalculateDenominatorType.cs new file mode 100644 index 0000000..2a268c8 --- /dev/null +++ b/src/Models/Type/HpRatioDamageCalculateDenominatorType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum HpRatioDamageCalculateDenominatorType +{ + UNKNOWN = 0, + CURRENT_HP = 1, + MAX_HP = 2 +} diff --git a/src/Models/Type/ImportantItemEffectTargetQuestGroupType.cs b/src/Models/Type/ImportantItemEffectTargetQuestGroupType.cs new file mode 100644 index 0000000..cc8f243 --- /dev/null +++ b/src/Models/Type/ImportantItemEffectTargetQuestGroupType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum ImportantItemEffectTargetQuestGroupType +{ + UNKNOWN = 0, + WHOLE_QUEST = 1, + QUEST_TYPE = 2, + EVENT_QUEST_TYPE = 3, + MAIN_QUEST_CHAPTER_ID = 4, + MAIN_QUEST_QUEST_ID = 5, + SUB_QUEST_CHAPTER_ID = 6, + SUB_QUEST_QUEST_ID = 7, + MAIN_QUEST_DIFFICULTY_TYPE = 8 +} diff --git a/src/Models/Type/LabyrinthQuestEffectDescriptionType.cs b/src/Models/Type/LabyrinthQuestEffectDescriptionType.cs new file mode 100644 index 0000000..7ecf5a2 --- /dev/null +++ b/src/Models/Type/LabyrinthQuestEffectDescriptionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum LabyrinthQuestEffectDescriptionType +{ + UNKNOWN = 0, + FREE = 1, + ABILITY = 2 +} diff --git a/src/Models/Type/LanguageType.cs b/src/Models/Type/LanguageType.cs new file mode 100644 index 0000000..b2f2c00 --- /dev/null +++ b/src/Models/Type/LanguageType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum LanguageType +{ + UNKNOWN = 0, + JA = 1, + EN = 2, + KO = 3 +} diff --git a/src/Models/Type/LibraryRecordType.cs b/src/Models/Type/LibraryRecordType.cs new file mode 100644 index 0000000..3a24f75 --- /dev/null +++ b/src/Models/Type/LibraryRecordType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum LibraryRecordType +{ + UNKNOWN = 0, + CARD_STORY = 1, + REPORT = 2, + CAGE_MEMORY = 3, + LIMIT_CONTENT = 4, + STAINED_GLASS = 5 +} diff --git a/src/Models/Type/LimitContentDeckRestrictionType.cs b/src/Models/Type/LimitContentDeckRestrictionType.cs new file mode 100644 index 0000000..ba9bc54 --- /dev/null +++ b/src/Models/Type/LimitContentDeckRestrictionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum LimitContentDeckRestrictionType +{ + UNKNOWN = 0, + COSTUME = 1, + WEAPON = 2 +} diff --git a/src/Models/Type/LimitedOpenTargetType.cs b/src/Models/Type/LimitedOpenTargetType.cs new file mode 100644 index 0000000..182db1c --- /dev/null +++ b/src/Models/Type/LimitedOpenTargetType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum LimitedOpenTargetType +{ + UNKNOWN = 0, + SHOP = 1, + GACHA = 2, + NONE = 3, + STEPUP_GACHA = 4, + SHOP_ITEM_CELL = 5 +} diff --git a/src/Models/Type/LimitedOpenTextDisplayConditionType.cs b/src/Models/Type/LimitedOpenTextDisplayConditionType.cs new file mode 100644 index 0000000..d3bfaa4 --- /dev/null +++ b/src/Models/Type/LimitedOpenTextDisplayConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum LimitedOpenTextDisplayConditionType +{ + UNKNOWN = 0, + COUNT = 1, + LEFT_HOUR_COUNT = 2 +} diff --git a/src/Models/Type/ListSettingAbilityGroupType.cs b/src/Models/Type/ListSettingAbilityGroupType.cs new file mode 100644 index 0000000..6e83466 --- /dev/null +++ b/src/Models/Type/ListSettingAbilityGroupType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum ListSettingAbilityGroupType +{ + UNKNOWN = 0, + COSTUME = 1, + WEAPON = 2, + COMPANION = 3, + THOUGHT = 4, + BLESS = 5 +} diff --git a/src/Models/Type/ListSettingCostumeGroupType.cs b/src/Models/Type/ListSettingCostumeGroupType.cs new file mode 100644 index 0000000..f556d04 --- /dev/null +++ b/src/Models/Type/ListSettingCostumeGroupType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum ListSettingCostumeGroupType +{ + UNKNOWN = 0, + INDIVIDUAL = 1, + OTHER = 2 +} diff --git a/src/Models/Type/LotteryRatioCorrectionCalculationType.cs b/src/Models/Type/LotteryRatioCorrectionCalculationType.cs new file mode 100644 index 0000000..5d772b3 --- /dev/null +++ b/src/Models/Type/LotteryRatioCorrectionCalculationType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum LotteryRatioCorrectionCalculationType +{ + UNKNOWN = 0, + ADD = 1, + SUBTRACT = 2, + MULTIPLY = 3 +} diff --git a/src/Models/Type/MainFunctionType.cs b/src/Models/Type/MainFunctionType.cs new file mode 100644 index 0000000..3472b4b --- /dev/null +++ b/src/Models/Type/MainFunctionType.cs @@ -0,0 +1,22 @@ +namespace MariesWonderland.Models.Type; + +public enum MainFunctionType +{ + UNKNOWN = 0, + NONE = 1, + PVP = 2, + EVENT_QUEST = 3, + EXPLORATION = 4, + END_CONTENTS = 5, + LIBRARY = 6, + ENHANCE_COMPANION = 7, + ENHANCE_PARTS = 8, + PREMIUM_GACHA = 9, + BIG_HUNT = 10, + CHARACTER_BOARD = 11, + WORLD_MAP = 12, + DRESSUP_COSTUME = 13, + AWAKEN_COSTUME = 14, + LIMIT_CONTENT = 15, + CHARACTER_VIEWER = 16 +} diff --git a/src/Models/Type/MaintenanceBlockFunctionType.cs b/src/Models/Type/MaintenanceBlockFunctionType.cs new file mode 100644 index 0000000..8563cae --- /dev/null +++ b/src/Models/Type/MaintenanceBlockFunctionType.cs @@ -0,0 +1,37 @@ +namespace MariesWonderland.Models.Type; + +public enum MaintenanceBlockFunctionType +{ + UNKNOWN = 0, + NONE = 1, + CHARACTER_ENHANCE = 2, + WEAPON_ENHANCE = 3, + COMPANION_ENHANCE = 4, + PARTS_ENHANCE = 5, + LIST_SELL = 6, + DECK = 7, + SUB_QUEST_ALL = 8, + PVP = 9, + EXPLORE = 10, + GACHA = 11, + SHOP = 12, + GIFT = 13, + MISSION = 14, + FRIEND = 15, + MENU = 16, + MAMA_BANNER = 17, + BRIDGE = 18, + SUB_QUEST_CHAPTER_ID = 19, + SUB_QUEST_QUEST_ID = 20, + SUB_QUEST_EVENT_QUEST_TYPE = 21, + REWARD_GACHA = 22, + BIG_HUNT = 23, + CHARACTER_BOARD = 24, + WORLD_MAP = 25, + LIMIT_CONTENT = 26, + LIMIT_CONTENT_CHARACTER = 27, + CHARACTER_VIEWER = 28, + SUB_QUEST_EVENT_QUEST_DAILY_GROUP = 29, + CHARACTER_REBIRTH = 30, + MISSION_PASS = 31 +} diff --git a/src/Models/Type/MaterialType.cs b/src/Models/Type/MaterialType.cs new file mode 100644 index 0000000..9f695c6 --- /dev/null +++ b/src/Models/Type/MaterialType.cs @@ -0,0 +1,20 @@ +namespace MariesWonderland.Models.Type; + +public enum MaterialType +{ + UNKNOWN = 0, + WEAPON_ENHANCEMENT = 10, + COSTUME_ENHANCEMENT = 20, + COMPANION_ENHANCEMENT = 30, + WEAPON_SKILL_ENHANCEMENT = 40, + COSTUME_SKILL_ENHANCEMENT = 50, + COMMON_SKILL_ENHANCEMENT = 60, + WEAPON_EVOLUTION = 70, + WEAPON_LIMIT_BREAK = 80, + COSTUME_LIMIT_BREAK = 90, + CHARACTER_BOARD_RELEASE = 100, + COSTUME_AWAKEN = 110, + CHARACTER_REBIRTH = 120, + WEAPON_AWAKEN = 130, + COSTUME_LOTTERY_EFFECT_UNLOCK = 140 +} diff --git a/src/Models/Type/MissionCategoryType.cs b/src/Models/Type/MissionCategoryType.cs new file mode 100644 index 0000000..e0fbb8e --- /dev/null +++ b/src/Models/Type/MissionCategoryType.cs @@ -0,0 +1,16 @@ +namespace MariesWonderland.Models.Type; + +public enum MissionCategoryType +{ + UNKNOWN = 0, + DAILY = 1, + CHALLENGE = 2, + SPECIAL = 3, + WEBVIEW_MISSION = 4, + COMPLETE = 5, + SHOP_PURCHASE = 6, + EVALUATE = 7, + MOM_POINT = 8, + MISSION_PASS_DAILY = 9, + MISSION_PASS_SPECIAL = 10 +} diff --git a/src/Models/Type/MissionClearConditionType.cs b/src/Models/Type/MissionClearConditionType.cs new file mode 100644 index 0000000..565a831 --- /dev/null +++ b/src/Models/Type/MissionClearConditionType.cs @@ -0,0 +1,77 @@ +namespace MariesWonderland.Models.Type; + +public enum MissionClearConditionType +{ + UNKNOWN = 0, + QUEST_CLEAR_BY_COUNT = 1, + QUEST_CLEAR_BY_ID = 2, + POSSESSION_ADD_BY_COUNT = 3, + WEAPON_ENHANCE_BY_COUNT = 5, + WEAPON_ENHANCE_SKILL_BY_COUNT = 6, + WEAPON_EVOLVE_BY_COUNT = 7, + WEAPON_LIMIT_BREAK_BY_COUNT = 8, + COSTUME_ENHANCE_BY_COUNT = 9, + COSTUME_ACTIVE_SKILL_ENHANCE_BY_COUNT = 10, + COSTUME_LIMIT_BREAK_BY_COUNT = 11, + COMPANION_ENHANCE_BY_COUNT = 12, + PARTS_ENHANCE_BY_COUNT = 13, + PARTS_ADD_BY_COUNT = 14, + PVP_FINISH_BY_COUNT = 15, + PVP_FINISH_BY_WIN_COUNT = 16, + PVP_FINISH_BY_WIN_STREAK_COUNT = 17, + GACHA_DRAW_BY_COUNT = 18, + GACHA_EXEC_BY_COUNT = 19, + GACHA_DRAW_BY_GACHA_LABEL_TYPE = 20, + SHOP_BUY_BY_COUNT = 21, + USER_LEVEL = 22, + USER_LOGIN_BY_COUNT = 23, + MISSION_CLEAR_BY_COUNT = 25, + EXPLORE_FINISH_BY_COUNT = 26, + SET_FAVORITE_CHARACTER = 27, + MAX_DECK_POWER = 28, + EXPLORE_HIGH_SCORE = 29, + MISSION_CLEAR_FOR_ALL_DAILY = 30, + MAMA_TAP_BY_COUNT = 31, + TOWER_WALKED_DISTANCE = 32, + CAGE_ORNAMENT_REWARD_ACQUIRED_BY_COUNT = 33, + DEFEAT_BOSS_COUNT = 35, + QUEST_BATTLE_RETIRED_COUNT = 36, + QUEST_BATTLE_ANNIHILATED_COUNT = 37, + COMPLETE_TRANSFER_SETTINGS = 38, + LIBRARY_ELEMENT_COUNT = 39, + COSTUME_MAX_LEVEL = 40, + COSTUME_SKILL_MAX_LEVEL = 41, + COSTUME_ABILITY_MAX_LEVEL = 42, + WEAPON_MAX_LEVEL = 43, + WEAPON_SKILL_MAX_LEVEL = 44, + WEAPON_ABILITY_MAX_LEVEL = 45, + COMPANION_MAX_LEVEL = 46, + PARTS_MAX_LEVEL = 47, + QUIZ = 48, + POSSESSION_COMPLETE = 49, + CHEER_FRIEND_BY_COUNT = 50, + BIG_HUNT_PLAY_BY_COUNT = 51, + BIG_HUNT_BOSS_KNOCK_DOWN = 52, + BIG_HUNT_HIGH_SCORE = 53, + CHARACTER_BOARD_PANEL_RELEASE_BY_COUNT = 54, + DEFEAT_WIZARD_COUNT = 55, + USER_MESSAGE_MATCH_WORD = 56, + TITLE_TRANSITION_BY_COUNT = 57, + WEAPON_PROTECT_BY_COUNT = 58, + EXPLORE_SCORE = 59, + REPORT_COUNT = 60, + RHYTHM_INTERACTION_TAP_COUNT = 61, + QUEST_CLEAR_BY_COUNT_WITHOUT_SKIP = 62, + CHARACTER_BOARD_FULL_OPEN = 63, + WEAPON_COUNT_WITH_LEVEL_GE = 64, + CONSUME_STAMINA_AMOUNT = 65, + COSTUME_AWAKEN_COUNT = 66, + USER_LOGIN_BY_COUNT_FROM_UNLOCK = 67, + MISSION_CLEAR_FOR_ALL_DAILY_BY_SUB_CATEGORY_ID = 68, + PVP_RANK = 69, + WEAPON_AWAKEN_COUNT = 70, + CHARACTER_REBIRTH_COUNT = 71, + COSTUME_LOTTERY_EFFECT_SLOT_UNLOCK_COUNT = 72, + COSTUME_LOTTERY_EFFECT_DRAW_COUNT = 73, + PVP_FINISH_BY_WIN_STREAK_COUNT_FROM_UNLOCK = 74 +} diff --git a/src/Models/Type/MissionProgressStatusType.cs b/src/Models/Type/MissionProgressStatusType.cs new file mode 100644 index 0000000..8874ece --- /dev/null +++ b/src/Models/Type/MissionProgressStatusType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum MissionProgressStatusType +{ + UNKNOWN = 0, + IN_PROGRESS = 1, + CLEAR = 2, + REWARD_RECEIVED = 9 +} diff --git a/src/Models/Type/MissionUnlockConditionType.cs b/src/Models/Type/MissionUnlockConditionType.cs new file mode 100644 index 0000000..47840ea --- /dev/null +++ b/src/Models/Type/MissionUnlockConditionType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum MissionUnlockConditionType +{ + UNKNOWN = 0, + GRANT = 1, + QUEST_CLEAR = 2, + MISSION_CLEAR_BY_ID = 3, + MISSION_CLEAR_FOR_ALL_DAILY = 4, + WEBVIEW_PANEL_MISSION_CLEAR_BY_PAGE_NUMBER = 5, + EVALUATE = 6 +} diff --git a/src/Models/Type/NumericalFunctionType.cs b/src/Models/Type/NumericalFunctionType.cs new file mode 100644 index 0000000..7a7fd89 --- /dev/null +++ b/src/Models/Type/NumericalFunctionType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +// Dark.Generated.Type.NumericalFunctionType +public enum NumericalFunctionType +{ + UNKNOWN = 0, + LINEAR = 1, + MONOMIAL = 2, + DUPLEX_LINEAR = 3, + LINEAR_PERMIL = 4, + POLYNOMIAL_THIRD = 5, + POLYNOMIAL_THIRD_PERMIL = 6, + PARTS_MAIN_OPTION = 7 +} diff --git a/src/Models/Type/OverrideHitEffectConditionSkillOwnerCategoryType.cs b/src/Models/Type/OverrideHitEffectConditionSkillOwnerCategoryType.cs new file mode 100644 index 0000000..cc7c0f6 --- /dev/null +++ b/src/Models/Type/OverrideHitEffectConditionSkillOwnerCategoryType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum OverrideHitEffectConditionSkillOwnerCategoryType +{ + UNKNOWN = 0, + SELF = 1, + ALLY_PARTY = 2, + ENEMY_PARTY = 3 +} diff --git a/src/Models/Type/OverrideHitEffectConditionType.cs b/src/Models/Type/OverrideHitEffectConditionType.cs new file mode 100644 index 0000000..1e9d04f --- /dev/null +++ b/src/Models/Type/OverrideHitEffectConditionType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum OverrideHitEffectConditionType +{ + UNKNOWN = 0, + ALWAYS = 1, + DAMAGE_ATTRIBUTE = 2, + CRITICAL = 3, + SKILL_OWNER_CATEGORY = 4 +} diff --git a/src/Models/Type/PlatformType.cs b/src/Models/Type/PlatformType.cs new file mode 100644 index 0000000..7f756d7 --- /dev/null +++ b/src/Models/Type/PlatformType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum PlatformType +{ + UNKNOWN = 0, + APP_STORE = 1, + GOOGLE_PLAY_STORE = 2, + AMAZON_APP_STORE = 8 +} diff --git a/src/Models/Type/PortalCageAccessPointType.cs b/src/Models/Type/PortalCageAccessPointType.cs new file mode 100644 index 0000000..c3fd65b --- /dev/null +++ b/src/Models/Type/PortalCageAccessPointType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum PortalCageAccessPointType +{ + UNKNOWN = 0, + NONE = 1, + MAIN_QUEST = 2, + DAILY_QUEST = 3, + EVENT_QUEST = 4, + DAILY_GACHA = 5 +} diff --git a/src/Models/Type/PossessionType.cs b/src/Models/Type/PossessionType.cs new file mode 100644 index 0000000..d6e99e9 --- /dev/null +++ b/src/Models/Type/PossessionType.cs @@ -0,0 +1,22 @@ +namespace MariesWonderland.Models.Type; + +public enum PossessionType +{ + UNKNOWN = 0, + COSTUME = 1, + WEAPON = 2, + COMPANION = 3, + PARTS = 4, + MATERIAL = 5, + CONSUMABLE_ITEM = 6, + COSTUME_ENHANCED = 7, + WEAPON_ENHANCED = 8, + COMPANION_ENHANCED = 9, + PARTS_ENHANCED = 10, + PAID_GEM = 11, + FREE_GEM = 12, + IMPORTANT_ITEM = 13, + THOUGHT = 14, + MISSION_PASS_POINT = 15, + PREMIUM_ITEM = 16 +} diff --git a/src/Models/Type/PowerCalculationConstantValueType.cs b/src/Models/Type/PowerCalculationConstantValueType.cs new file mode 100644 index 0000000..5a61ac5 --- /dev/null +++ b/src/Models/Type/PowerCalculationConstantValueType.cs @@ -0,0 +1,57 @@ +namespace MariesWonderland.Models.Type; + +public enum PowerCalculationConstantValueType +{ + UNKNOWN = 0, + COSTUME_ATTACK_COEFFICIENT = 1, + COSTUME_HP_COEFFICIENT = 2, + COSTUME_VITALITY_COEFFICIENT = 3, + WEAPON_ATTACK_COEFFICIENT = 4, + WEAPON_HP_COEFFICIENT = 5, + WEAPON_VITALITY_COEFFICIENT = 6, + COMPANION_ATTACK_COEFFICIENT = 7, + COMPANION_HP_COEFFICIENT = 8, + COMPANION_VITALITY_COEFFICIENT = 9, + PARTS_ADD_POWER_AGILITY_COEFFICIENT = 10, + PARTS_ADD_POWER_ATTACK_COEFFICIENT = 11, + PARTS_ADD_POWER_CRITICAL_ATTACK_COEFFICIENT = 12, + PARTS_ADD_POWER_CRITICAL_RATIO_COEFFICIENT = 13, + PARTS_ADD_POWER_EVASION_RATIO_COEFFICIENT = 14, + PARTS_ADD_POWER_HP_COEFFICIENT = 15, + PARTS_ADD_POWER_VITALITY_COEFFICIENT = 16, + PARTS_MUL_POWER_AGILITY_BASE_VALUE = 17, + PARTS_MUL_POWER_ATTACK_BASE_VALUE = 18, + PARTS_MUL_POWER_CRITICAL_ATTACK_BASE_VALUE = 19, + PARTS_MUL_POWER_CRITICAL_RATIO_BASE_VALUE = 20, + PARTS_MUL_POWER_EVASION_RATIO_BASE_VALUE = 21, + PARTS_MUL_POWER_HP_BASE_VALUE = 22, + PARTS_MUL_POWER_VITALITY_BASE_VALUE = 23, + CHARACTER_BOARD_ADD_POWER_AGILITY_COEFFICIENT = 24, + CHARACTER_BOARD_ADD_POWER_ATTACK_COEFFICIENT = 25, + CHARACTER_BOARD_ADD_POWER_CRITICAL_ATTACK_COEFFICIENT = 26, + CHARACTER_BOARD_ADD_POWER_CRITICAL_RATIO_COEFFICIENT = 27, + CHARACTER_BOARD_ADD_POWER_EVASION_RATIO_COEFFICIENT = 28, + CHARACTER_BOARD_ADD_POWER_HP_COEFFICIENT = 29, + CHARACTER_BOARD_ADD_POWER_VITALITY_COEFFICIENT = 30, + CHARACTER_BOARD_MUL_POWER_AGILITY_BASE_VALUE = 31, + CHARACTER_BOARD_MUL_POWER_ATTACK_BASE_VALUE = 32, + CHARACTER_BOARD_MUL_POWER_CRITICAL_ATTACK_BASE_VALUE = 33, + CHARACTER_BOARD_MUL_POWER_CRITICAL_RATIO_BASE_VALUE = 34, + CHARACTER_BOARD_MUL_POWER_EVASION_RATIO_BASE_VALUE = 35, + CHARACTER_BOARD_MUL_POWER_HP_BASE_VALUE = 36, + CHARACTER_BOARD_MUL_POWER_VITALITY_BASE_VALUE = 37, + CHARACTER_RANK_ADD_POWER_AGILITY_COEFFICIENT = 38, + CHARACTER_RANK_ADD_POWER_ATTACK_COEFFICIENT = 39, + CHARACTER_RANK_ADD_POWER_CRITICAL_ATTACK_COEFFICIENT = 40, + CHARACTER_RANK_ADD_POWER_CRITICAL_RATIO_COEFFICIENT = 41, + CHARACTER_RANK_ADD_POWER_EVASION_RATIO_COEFFICIENT = 42, + CHARACTER_RANK_ADD_POWER_HP_COEFFICIENT = 43, + CHARACTER_RANK_ADD_POWER_VITALITY_COEFFICIENT = 44, + CHARACTER_RANK_MUL_POWER_AGILITY_BASE_VALUE = 45, + CHARACTER_RANK_MUL_POWER_ATTACK_BASE_VALUE = 46, + CHARACTER_RANK_MUL_POWER_CRITICAL_ATTACK_BASE_VALUE = 47, + CHARACTER_RANK_MUL_POWER_CRITICAL_RATIO_BASE_VALUE = 48, + CHARACTER_RANK_MUL_POWER_EVASION_RATIO_BASE_VALUE = 49, + CHARACTER_RANK_MUL_POWER_HP_BASE_VALUE = 50, + CHARACTER_RANK_MUL_POWER_VITALITY_BASE_VALUE = 51 +} diff --git a/src/Models/Type/PowerCalculationReferenceStatusType.cs b/src/Models/Type/PowerCalculationReferenceStatusType.cs new file mode 100644 index 0000000..5564dcc --- /dev/null +++ b/src/Models/Type/PowerCalculationReferenceStatusType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum PowerCalculationReferenceStatusType +{ + UNKNOWN = 0, + SELF = 1, + PARTY = 2, + NONE = 3 +} diff --git a/src/Models/Type/PriceType.cs b/src/Models/Type/PriceType.cs new file mode 100644 index 0000000..bcff384 --- /dev/null +++ b/src/Models/Type/PriceType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum PriceType +{ + UNKNOWN = 0, + CONSUMABLE_ITEM = 1, + GEM = 2, + PAID_GEM = 3, + PLATFORM_PAYMENT = 4 +} diff --git a/src/Models/Type/QuestAssignmentType.cs b/src/Models/Type/QuestAssignmentType.cs new file mode 100644 index 0000000..603da14 --- /dev/null +++ b/src/Models/Type/QuestAssignmentType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestAssignmentType +{ + UNKNOWN = 0, + QUEST = 1, + MAIN_CHAPTER = 2, + EVENT_CHAPTER = 3, + EVENT_DUNGEON = 4, + EVENT_DAY_OF_THE_WEEK = 5, + EVENT_GUERRILLA = 6 +} diff --git a/src/Models/Type/QuestBonusType.cs b/src/Models/Type/QuestBonusType.cs new file mode 100644 index 0000000..d58ecbc --- /dev/null +++ b/src/Models/Type/QuestBonusType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestBonusType +{ + UNKNOWN = 0, + ABILITY = 1, + EXP = 2, + DROP_REWARD = 3 +} diff --git a/src/Models/Type/QuestCampaignEffectType.cs b/src/Models/Type/QuestCampaignEffectType.cs new file mode 100644 index 0000000..dbb122e --- /dev/null +++ b/src/Models/Type/QuestCampaignEffectType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestCampaignEffectType +{ + UNKNOWN = 0, + DROP_RATE = 1, + DROP_COUNT = 2, + STAMINA_CONSUME_AMOUNT = 3, + CLEAR_REWARD_GOLD_COUNT = 4, + DROP_ITEM_ADD = 5 +} diff --git a/src/Models/Type/QuestCampaignTargetType.cs b/src/Models/Type/QuestCampaignTargetType.cs new file mode 100644 index 0000000..8a28177 --- /dev/null +++ b/src/Models/Type/QuestCampaignTargetType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestCampaignTargetType +{ + UNKNOWN = 0, + WHOLE_QUEST = 1, + QUEST_TYPE = 2, + EVENT_QUEST_TYPE = 3, + MAIN_QUEST_CHAPTER_ID = 4, + MAIN_QUEST_QUEST_ID = 5, + SUB_QUEST_CHAPTER_ID = 6, + SUB_QUEST_QUEST_ID = 7 +} diff --git a/src/Models/Type/QuestDeckRestrictionType.cs b/src/Models/Type/QuestDeckRestrictionType.cs new file mode 100644 index 0000000..b32da05 --- /dev/null +++ b/src/Models/Type/QuestDeckRestrictionType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestDeckRestrictionType +{ + UNKNOWN = 0, + CHARACTER_ID = 1, + COSTUME_ID = 2, + PROPER_ATTRIBUTE_TYPE = 3, + FORBIDDEN_CHARACTER_ID_MULTI = 4, + FORBIDDEN_COSTUME_ID_MULTI = 5, + FORBIDDEN = 99 +} diff --git a/src/Models/Type/QuestDisplayAttributeIconSizeType.cs b/src/Models/Type/QuestDisplayAttributeIconSizeType.cs new file mode 100644 index 0000000..b8172bb --- /dev/null +++ b/src/Models/Type/QuestDisplayAttributeIconSizeType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestDisplayAttributeIconSizeType +{ + UNKNOWN = 0, + SMALL = 1, + LARGE = 2 +} diff --git a/src/Models/Type/QuestDisplayAttributeType.cs b/src/Models/Type/QuestDisplayAttributeType.cs new file mode 100644 index 0000000..af08416 --- /dev/null +++ b/src/Models/Type/QuestDisplayAttributeType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestDisplayAttributeType +{ + UNKNOWN = 0, + FIRE = 2, + WATER = 5, + WIND = 6, + LIGHT = 3, + DARK = 1, + NOTHING = 4, + VARIOUS = 90, + ALL = 100 +} diff --git a/src/Models/Type/QuestFirstClearRewardType.cs b/src/Models/Type/QuestFirstClearRewardType.cs new file mode 100644 index 0000000..bd7f11d --- /dev/null +++ b/src/Models/Type/QuestFirstClearRewardType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestFirstClearRewardType +{ + UNKNOWN = 0, + NORMAL = 1, + OBELISK_FIRST = 2, + OBELISK_SECOND = 3, + FULL_RESULT = 4, + NOT_SHOW = 5 +} diff --git a/src/Models/Type/QuestFlowType.cs b/src/Models/Type/QuestFlowType.cs new file mode 100644 index 0000000..f45bf0c --- /dev/null +++ b/src/Models/Type/QuestFlowType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestFlowType +{ + UNKNOWN = 0, + MAIN_FLOW = 1, + SUB_FLOW = 2, + REPLAY_FLOW = 3, + ANOTHER_ROUTE_REPLAY_FLOW = 4 +} diff --git a/src/Models/Type/QuestMissionConditionType.cs b/src/Models/Type/QuestMissionConditionType.cs new file mode 100644 index 0000000..ff41e0d --- /dev/null +++ b/src/Models/Type/QuestMissionConditionType.cs @@ -0,0 +1,81 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestMissionConditionType +{ + UNKNOWN = 0, + LESS_THAN_OR_EQUAL_X_PEOPLE_NOT_ALIVE = 1, + MAX_DAMAGE = 2, + SPECIFIED_COSTUME_IS_IN_DECK = 3, + SPECIFIED_CHARACTER_IS_IN_DECK = 4, + SPECIFIED_ATTRIBUTE_MAIN_WEAPON_IS_IN_DECK = 5, + GREATER_THAN_OR_EQUAL_X_COSTUME_SKILL_USE_COUNT = 6, + GREATER_THAN_OR_EQUAL_X_WEAPON_SKILL_USE_COUNT = 7, + GREATER_THAN_OR_EQUAL_X_COMPANION_SKILL_USE_COUNT = 8, + COSTUME_SKILLFUL_WEAPON_ALL_CHARACTER = 9, + COSTUME_SKILLFUL_WEAPON_ANY_CHARACTER = 10, + COSTUME_RARITY_EQ_ALL_CHARACTER = 11, + COSTUME_RARITY_GE_ALL_CHARACTER = 12, + COSTUME_RARITY_LE_ALL_CHARACTER = 13, + COSTUME_RARITY_EQ_ANY_CHARACTER = 14, + COSTUME_RARITY_GE_ANY_CHARACTER = 15, + COSTUME_RARITY_LE_ANY_CHARACTER = 16, + WEAPON_EVOLUTION_GROUP_ID = 17, + SPECIFIED_ATTRIBUTE_WEAPON_IS_IN_DECK = 18, + SPECIFIED_ATTRIBUTE_MAIN_WEAPON_ALL_CHARACTER = 19, + SPECIFIED_ATTRIBUTE_WEAPON_ALL_CHARACTER = 20, + WEAPON_MAN_SKILLFUL_WEAPON_ALL_CHARACTER = 21, + WEAPON_SKILLFUL_WEAPON_ALL_CHARACTER = 22, + WEAPON_MAN_SKILLFUL_WEAPON_ANY_CHARACTER = 23, + WEAPON_SKILLFUL_WEAPON_ANY_CHARACTER = 24, + WEAPON_RARITY_EQ_ALL_CHARACTER = 25, + WEAPON_RARITY_GE_ALL_CHARACTER = 26, + WEAPON_RARITY_LE_ALL_CHARACTER = 27, + WEAPON_MAIN_RARITY_EQ_ALL_CHARACTER = 28, + WEAPON_MAIN_RARITY_GE_ALL_CHARACTER = 29, + WEAPON_MAIN_RARITY_LE_ALL_CHARACTER = 30, + WEAPON_RARITY_EQ_ANY_CHARACTER = 31, + WEAPON_RARITY_GE_ANY_CHARACTER = 32, + WEAPON_RARITY_LE_ANY_CHARACTER = 33, + WEAPON_MAIN_RARITY_EQ_ANY_CHARACTER = 34, + WEAPON_MAIN_RARITY_GE_ANY_CHARACTER = 35, + WEAPON_MAIN_RARITY_LE_ANY_CHARACTER = 36, + COMPANION_ID = 37, + COMPANION_ATTRIBUTE = 38, + COMPANION_CATEGORY = 39, + PARTS_ID = 40, + PARTS_GROUP_ID = 41, + PARTS_RARITY_EQ = 42, + PARTS_RARITY_GE = 43, + PARTS_RARITY_LE = 44, + DECK_POWER_GE = 45, + DECK_POWER_LE = 46, + DECK_COSTUME_NUM_EQ = 47, + DECK_COSTUME_NUM_GE = 48, + DECK_COSTUME_NUM_LE = 49, + CRITICAL_COUNT_GE = 50, + MIN_HP_PERCENTAGE_GE = 51, + COMBO_COUNT_GE = 52, + COMBO_MAX_DAMAGE_GE = 53, + LESS_THAN_OR_EQUAL_X_COSTUME_SKILL_USE_COUNT = 54, + LESS_THAN_OR_EQUAL_X_WEAPON_SKILL_USE_COUNT = 55, + LESS_THAN_OR_EQUAL_X_COMPANION_SKILL_USE_COUNT = 56, + WITHOUT_RECOVERY_SKILL = 57, + WITHOUT_COSTUME_SKILL = 58, + WITHOUT_WEAPON_SKILL = 59, + WITHOUT_COMPANION_SKILL = 60, + CHARACTER_CONTAIN_ALL = 61, + CHARACTER_CONTAIN_ANY = 62, + COSTUME_CONTAIN_ALL = 63, + COSTUME_CONTAIN_ANY = 64, + COSTUME_SKILLFUL_WEAPON_CONTAIN_ALL = 65, + COSTUME_SKILLFUL_WEAPON_CONTAIN_ANY = 66, + ATTRIBUTE_MAIN_WEAPON_CONTAIN_ALL = 67, + ATTRIBUTE_MAIN_WEAPON_CONTAIN_ANY = 68, + ATTRIBUTE_WEAPON_CONTAIN_ALL = 69, + ATTRIBUTE_WEAPON_CONTAIN_ANY = 70, + WEAPON_MAN_SKILLFUL_WEAPON_CONTAIN_ALL = 71, + WEAPON_MAN_SKILLFUL_WEAPON_CONTAIN_ANY = 72, + WEAPON_SKILLFUL_WEAPON_CONTAIN_ALL = 73, + WEAPON_SKILLFUL_WEAPON_CONTAIN_ANY = 74, + COMPLETE = 9999 +} diff --git a/src/Models/Type/QuestReleaseConditionType.cs b/src/Models/Type/QuestReleaseConditionType.cs new file mode 100644 index 0000000..d267200 --- /dev/null +++ b/src/Models/Type/QuestReleaseConditionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestReleaseConditionType +{ + UNKNOWN = 0, + USER_LEVEL = 1, + CHARACTER_LEVEL = 2, + DECK_POWER = 3, + QUEST_CLEAR = 4, + WEAPON_ACQUISITION = 5, + BIG_HUNT_SCORE = 6, + QUEST_CHALLENGE = 7 +} diff --git a/src/Models/Type/QuestResultType.cs b/src/Models/Type/QuestResultType.cs new file mode 100644 index 0000000..8586ee7 --- /dev/null +++ b/src/Models/Type/QuestResultType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestResultType +{ + UNKNOWN = 0, + NONE = 1, + HALF_RESULT = 2, + FULL_RESULT = 3 +} diff --git a/src/Models/Type/QuestSceneType.cs b/src/Models/Type/QuestSceneType.cs new file mode 100644 index 0000000..cda5cef --- /dev/null +++ b/src/Models/Type/QuestSceneType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestSceneType +{ + UNKNOWN = 0, + TOWER = 1, + PICTURE_BOOK = 2, + FIELD = 3, + NOVEL = 4, + LIMIT_CONTENT = 5 +} diff --git a/src/Models/Type/QuestStorySkipType.cs b/src/Models/Type/QuestStorySkipType.cs new file mode 100644 index 0000000..cd3f14a --- /dev/null +++ b/src/Models/Type/QuestStorySkipType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestStorySkipType +{ + UNKNOWN = 0, + NOT_SKIPPED = 1, + SKIP_PICTURE_BOOK_IN_MAIN_FLOW = 2, + SKIP_IN_MAINFLOW = 3, + SKIP_BY_BATTLE_ONLY_IN_SUB_FLOW = 4 +} diff --git a/src/Models/Type/QuestType.cs b/src/Models/Type/QuestType.cs new file mode 100644 index 0000000..c565d21 --- /dev/null +++ b/src/Models/Type/QuestType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum QuestType +{ + UNKNOWN = 0, + MAIN_QUEST = 1, + EVENT_QUEST = 2, + EXTRA_QUEST = 3, + BIG_HUNT_QUEST = 4, +} diff --git a/src/Models/Type/RarityType.cs b/src/Models/Type/RarityType.cs new file mode 100644 index 0000000..b5f5553 --- /dev/null +++ b/src/Models/Type/RarityType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum RarityType +{ + UNKNOWN = 0, + NORMAL = 10, + RARE = 20, + S_RARE = 30, + SS_RARE = 40, + LEGEND = 50 +} diff --git a/src/Models/Type/RecoveryPointCorrectionTargetSkillType.cs b/src/Models/Type/RecoveryPointCorrectionTargetSkillType.cs new file mode 100644 index 0000000..f09509d --- /dev/null +++ b/src/Models/Type/RecoveryPointCorrectionTargetSkillType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum RecoveryPointCorrectionTargetSkillType +{ + UNKNOWN = 0, + COSTUME_ACTIVE = 1, + WEAPON_ACTIVE = 2, + COSTUME_OR_WEAPON_ACTIVE = 3 +} diff --git a/src/Models/Type/RemoveAbnormalTargetType.cs b/src/Models/Type/RemoveAbnormalTargetType.cs new file mode 100644 index 0000000..c0cece9 --- /dev/null +++ b/src/Models/Type/RemoveAbnormalTargetType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum RemoveAbnormalTargetType +{ + UNKNOWN = 0, + NEWEST = 1, + OLDEST = 2, + RANDOM = 3 +} diff --git a/src/Models/Type/ScreenTransitionType.cs b/src/Models/Type/ScreenTransitionType.cs new file mode 100644 index 0000000..1baf281 --- /dev/null +++ b/src/Models/Type/ScreenTransitionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum ScreenTransitionType +{ + Success = 0, + Stay = 1, + FunctionTop = 2, + Title = 3, + StayAndUserAuth = 4, + None = 5, + FatalRetry = 8, + FatalNoRetry = 9 +} diff --git a/src/Models/Type/ShopExchangeType.cs b/src/Models/Type/ShopExchangeType.cs new file mode 100644 index 0000000..09835f7 --- /dev/null +++ b/src/Models/Type/ShopExchangeType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopExchangeType +{ + UNKNOWN = 0, + NO_SETTINGS = 1, + MEDAL = 2, + RARE_MEDAL = 3, + PVP = 4, + EVENT = 5, + GACHA_MEDAL = 6, + BIG_HUNT = 7, + MOM_POINT = 8 +} diff --git a/src/Models/Type/ShopGroupType.cs b/src/Models/Type/ShopGroupType.cs new file mode 100644 index 0000000..3454be3 --- /dev/null +++ b/src/Models/Type/ShopGroupType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopGroupType +{ + UNKNOWN = 0, + PREMIUM_SHOP = 1, + ITEM_SHOP = 3, + EXCHANGE_SHOP = 4, + RECOVERY_SHOP = 5 +} diff --git a/src/Models/Type/ShopItemDecorationType.cs b/src/Models/Type/ShopItemDecorationType.cs new file mode 100644 index 0000000..3768cc6 --- /dev/null +++ b/src/Models/Type/ShopItemDecorationType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopItemDecorationType +{ + UNKNOWN = 0, + DEFAULT = 1, + RAINBOW = 2 +} diff --git a/src/Models/Type/ShopPromotionType.cs b/src/Models/Type/ShopPromotionType.cs new file mode 100644 index 0000000..15c319d --- /dev/null +++ b/src/Models/Type/ShopPromotionType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopPromotionType +{ + UNKNOWN = 0, + NOTHING = 1, + PICKUP = 2, + SALE = 3, + INCREASE = 4, + DAILY_LIMITED = 5 +} diff --git a/src/Models/Type/ShopType.cs b/src/Models/Type/ShopType.cs new file mode 100644 index 0000000..03f19ae --- /dev/null +++ b/src/Models/Type/ShopType.cs @@ -0,0 +1,17 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopType +{ + UNKNOWN = 0, + GEM_SHOP = 1, + GOLD_SHOP = 2, + ITEM_SHOP = 3, + EXCHANGE_SHOP = 4, + STAMINA_RECOVERY_SHOP = 5, + BATTLE_POINT_RECOVERY_SHOP = 6, + PREMIUM_PACK_SHOP = 7, + PACK_SHOP = 8, + MISSION_SHOP = 9, + MOM_SHOP = 10, + PREMIUM_MISSION_PASS_SHOP = 11 +} diff --git a/src/Models/Type/ShopUpdatableLabelType.cs b/src/Models/Type/ShopUpdatableLabelType.cs new file mode 100644 index 0000000..0137310 --- /dev/null +++ b/src/Models/Type/ShopUpdatableLabelType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum ShopUpdatableLabelType +{ + UNKNOWN = 0, + FORBIDDEN = 1, + DAY = 2, + WEEK = 3, + MONTH = 4, +} diff --git a/src/Models/Type/SkillActType.cs b/src/Models/Type/SkillActType.cs new file mode 100644 index 0000000..46689d4 --- /dev/null +++ b/src/Models/Type/SkillActType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillActType +{ + UNKNOWN = 0, + SINGLE_ATTACK_1 = 1, + SINGLE_ATTACK_2 = 2, + SINGLE_ATTACK_3 = 3, + SINGLE_ATTACK_4 = 4, + SINGLE_ATTACK_5 = 5, + ALL_ATTACK = 6, + SPECIAL = 7, + COUNTER = 8 +} diff --git a/src/Models/Type/SkillAiUnlockConditionValueType.cs b/src/Models/Type/SkillAiUnlockConditionValueType.cs new file mode 100644 index 0000000..38a7bfe --- /dev/null +++ b/src/Models/Type/SkillAiUnlockConditionValueType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillAiUnlockConditionValueType +{ + UNKNOWN = 0, + NONE = 1, + UNLOCK_FUNCTION_TYPE = 2, + PVP_RANK = 3 +} diff --git a/src/Models/Type/SkillBehaviourActivationConditionHpRatioThresholdType.cs b/src/Models/Type/SkillBehaviourActivationConditionHpRatioThresholdType.cs new file mode 100644 index 0000000..348232e --- /dev/null +++ b/src/Models/Type/SkillBehaviourActivationConditionHpRatioThresholdType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillBehaviourActivationConditionHpRatioThresholdType +{ + UNKNOWN = 0, + GREATER = 1, + GREATER_EQUAL = 2, + LESS = 3, + LESS_EQUAL = 4 +} diff --git a/src/Models/Type/SkillBehaviourActivationConditionType.cs b/src/Models/Type/SkillBehaviourActivationConditionType.cs new file mode 100644 index 0000000..7c1d3f8 --- /dev/null +++ b/src/Models/Type/SkillBehaviourActivationConditionType.cs @@ -0,0 +1,18 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillBehaviourActivationConditionType +{ + UNKNOWN = 0, + ALWAYS = 1, + IN_SKILL_FLOW = 2, + IN_SKILL_FLOW_COUNTER = 3, + IS_SKILL_TARGET = 4, + IS_SKILL_EXECUTOR = 5, + HP_RATIO = 6, + ACTIVATION_UPPER_COUNT = 7, + WAVE_NUMBER = 8, + IS_EXECUTOR_ALIVE = 9, + ATTRIBUTE = 10, + SKILLFUL_MAIN_WEAPON_TYPE = 11, + IS_SKILL_EXECUTOR_OR_COUNTER = 12 +} diff --git a/src/Models/Type/SkillBehaviourLifetimeCalculationMethodType.cs b/src/Models/Type/SkillBehaviourLifetimeCalculationMethodType.cs new file mode 100644 index 0000000..134efc0 --- /dev/null +++ b/src/Models/Type/SkillBehaviourLifetimeCalculationMethodType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillBehaviourLifetimeCalculationMethodType +{ + UNKNOWN = 0, + FRAME_COUNT = 1, + WAVE_COUNT = 2, + ACTION_COUNT = 3, + DEFAULT_SKILL_EXECUTE_COUNT = 4, + ACTIVE_SKILL_EXECUTE_COUNT = 5, + ONESHOT = 6 +} diff --git a/src/Models/Type/SkillBehaviourType.cs b/src/Models/Type/SkillBehaviourType.cs new file mode 100644 index 0000000..96c4048 --- /dev/null +++ b/src/Models/Type/SkillBehaviourType.cs @@ -0,0 +1,38 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillBehaviourType +{ + UNKNOWN = 0, + ABNORMAL = 1, + ATTACK = 2, + BUFF = 3, + FORCE = 4, + NOTHING = 5, + RECOVERY = 6, + CHANGE_STEP = 7, + ATTRIBUTE_DAMAGE_CORRECTION = 8, + ACTIVE_SKILL_DAMAGE_CORRECTION = 9, + RECOVERY_SKILL_POWER_CORRECTION = 10, + DAMAGE_CORRECTION_HP_RATIO = 11, + ADVANCE_ACTIVE_SKILL_COOLTIME = 12, + ADVANCE_ACTIVE_SKILL_COOLTIME_IMMEDIATE = 13, + REVIVAL = 14, + DEFAULT_SKILL_LOTTERY_CORRECTION = 15, + ATTACK_HP_RATIO = 16, + ATTACK_COMBO = 17, + SHORTEN_ACTIVE_SKILL_COOLTIME = 18, + REMOVE_BUFF = 19, + DAMAGE_MULTIPLY = 20, + ATTACK_IGNORE_VITALITY = 21, + REMOVE_ABNORMAL = 22, + REMOVE_ABNORMAL_SILENT = 23, + ATTACK_FIXED_DAMAGE = 24, + ATTACK_VITALITY = 25, + HP_RATIO_DAMAGE = 26, + ATTACK_MAIN_WEAPON_ATTRIBUTE = 27, + ATTACK_CLAMP_MAX_HP = 28, + ATTACK_SKILLFUL_MAIN_WEAPON_TYPE = 29, + EXTEND_BUFF_COOLTIME = 30, + RECOVERY_POINT_CORRECTION = 31, + OVERLIMIT_DAMAGE_MULTIPLY = 32 +} diff --git a/src/Models/Type/SkillCasttimeAdvanceType.cs b/src/Models/Type/SkillCasttimeAdvanceType.cs new file mode 100644 index 0000000..992c64b --- /dev/null +++ b/src/Models/Type/SkillCasttimeAdvanceType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillCasttimeAdvanceType +{ + UNKNOWN = 0, + INCREMENT = 1, + DECREMENT = 2 +} diff --git a/src/Models/Type/SkillCasttimeBehaviourType.cs b/src/Models/Type/SkillCasttimeBehaviourType.cs new file mode 100644 index 0000000..0fbe8fd --- /dev/null +++ b/src/Models/Type/SkillCasttimeBehaviourType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillCasttimeBehaviourType +{ + UNKNOWN = 0, + FRAME_UPDATE = 1, + SKILL_DAMAGE_CONDITION = 2 +} diff --git a/src/Models/Type/SkillCategoryType.cs b/src/Models/Type/SkillCategoryType.cs new file mode 100644 index 0000000..ea5a504 --- /dev/null +++ b/src/Models/Type/SkillCategoryType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillCategoryType +{ + UNKNOWN = 0, + ACTIVE_SKILL = 1, + COUNTER_SKILL = 2, + DEFAULT_SKILL = 3, + PASSIVE_SKILL = 4, + COSTUME_ACTIVE_SKILL = 5 +} diff --git a/src/Models/Type/SkillCooltimeAdvanceType.cs b/src/Models/Type/SkillCooltimeAdvanceType.cs new file mode 100644 index 0000000..b080fd1 --- /dev/null +++ b/src/Models/Type/SkillCooltimeAdvanceType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillCooltimeAdvanceType +{ + UNKNOWN = 0, + ADD = 1, + MULTIPLY = 2 +} diff --git a/src/Models/Type/SkillCooltimeBehaviourType.cs b/src/Models/Type/SkillCooltimeBehaviourType.cs new file mode 100644 index 0000000..9546aff --- /dev/null +++ b/src/Models/Type/SkillCooltimeBehaviourType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillCooltimeBehaviourType +{ + UNKNOWN = 0, + FRAME_UPDATE = 1, + EXECUTE_DEFAULT_SKILL = 2, + EXECUTE_COMPANION_SKILL = 3, + EXECUTE_ACTIVE_SKILL = 4, + SKILL_DAMAGE = 5 +} diff --git a/src/Models/Type/SkillRemoveBuffChoosingType.cs b/src/Models/Type/SkillRemoveBuffChoosingType.cs new file mode 100644 index 0000000..fb28602 --- /dev/null +++ b/src/Models/Type/SkillRemoveBuffChoosingType.cs @@ -0,0 +1,7 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillRemoveBuffChoosingType +{ + UNKNOWN = 0, + RANDOM = 1 +} diff --git a/src/Models/Type/SkillRemoveBuffFilteringType.cs b/src/Models/Type/SkillRemoveBuffFilteringType.cs new file mode 100644 index 0000000..77f6203 --- /dev/null +++ b/src/Models/Type/SkillRemoveBuffFilteringType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum SkillRemoveBuffFilteringType +{ + UNKNOWN = 0, + NONE = 1, + STATUS_KIND = 2 +} diff --git a/src/Models/Type/SpeakerIconType.cs b/src/Models/Type/SpeakerIconType.cs new file mode 100644 index 0000000..97e3d78 --- /dev/null +++ b/src/Models/Type/SpeakerIconType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum SpeakerIconType +{ + UNKNOWN = 0, + NONE = 1, + COMMON = 2, + UNIQUE = 3 +} diff --git a/src/Models/Type/SpecialEndBattleActType.cs b/src/Models/Type/SpecialEndBattleActType.cs new file mode 100644 index 0000000..9e1cb49 --- /dev/null +++ b/src/Models/Type/SpecialEndBattleActType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum SpecialEndBattleActType +{ + UNKNOWN = 0, + ALIVE_AND_DISABLE_WEAPON = 1, + BACK_HEAVY_AND_IMPULSE = 2, + WITHOUT_DEATH_EFFECT = 3, + ALIVE_AND_DISABLE_WEAPON_IDLE = 4 +} diff --git a/src/Models/Type/StainedGlassCategoryType.cs b/src/Models/Type/StainedGlassCategoryType.cs new file mode 100644 index 0000000..539ba9e --- /dev/null +++ b/src/Models/Type/StainedGlassCategoryType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum StainedGlassCategoryType +{ + UNKNOWN = 0, + MAIN = 1, + EVENT = 2, + OTHER = 3 +} diff --git a/src/Models/Type/StainedGlassStatusUpTargetType.cs b/src/Models/Type/StainedGlassStatusUpTargetType.cs new file mode 100644 index 0000000..f9de57c --- /dev/null +++ b/src/Models/Type/StainedGlassStatusUpTargetType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum StainedGlassStatusUpTargetType +{ + UNKNOWN = 0, + CHARACTER = 1, + SKILLFUL_WEAPON = 2 +} diff --git a/src/Models/Type/StatusCalculationType.cs b/src/Models/Type/StatusCalculationType.cs new file mode 100644 index 0000000..a378865 --- /dev/null +++ b/src/Models/Type/StatusCalculationType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum StatusCalculationType +{ + UNKNOWN = 0, + ADD = 1, + MULTIPLY = 2 +} diff --git a/src/Models/Type/StatusChangeType.cs b/src/Models/Type/StatusChangeType.cs new file mode 100644 index 0000000..a9affdd --- /dev/null +++ b/src/Models/Type/StatusChangeType.cs @@ -0,0 +1,20 @@ +namespace MariesWonderland.Models.Type; + +public enum StatusChangeType +{ + UNKNOWN = 0, + AGILITY_ADD = 1, + AGILITY_MULTIPLY = 2, + ATTACK_ADD = 3, + ATTACK_MULTIPLY = 4, + CRITICAL_ATTACK_ADD = 5, + CRITICAL_ATTACK_MULTIPLY = 6, + CRITICAL_RATIO_ADD = 7, + CRITICAL_RATIO_MULTIPLY = 8, + EVASION_RATIO_ADD = 9, + EVASION_RATIO_MULTIPLY = 10, + HP_ADD = 11, + HP_MULTIPLY = 12, + VITALITY_ADD = 13, + VITALITY_MULTIPLY = 14 +} diff --git a/src/Models/Type/StatusKindType.cs b/src/Models/Type/StatusKindType.cs new file mode 100644 index 0000000..0bb8a1a --- /dev/null +++ b/src/Models/Type/StatusKindType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum StatusKindType +{ + UNKNOWN = 0, + AGILITY = 1, + ATTACK = 2, + CRITICAL_ATTACK = 3, + CRITICAL_RATIO = 4, + EVASION_RATIO = 5, + HP = 6, + VITALITY = 7 +} diff --git a/src/Models/Type/TargetUserStatusType.cs b/src/Models/Type/TargetUserStatusType.cs new file mode 100644 index 0000000..c2e9db7 --- /dev/null +++ b/src/Models/Type/TargetUserStatusType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum TargetUserStatusType +{ + UNKNOWN = 0, + ALL = 1, + COMEBACK = 2, + BEGINNER = 3, + COMEBACK_GRADE = 4 +} diff --git a/src/Models/Type/TipDisplayConditionType.cs b/src/Models/Type/TipDisplayConditionType.cs new file mode 100644 index 0000000..3f70054 --- /dev/null +++ b/src/Models/Type/TipDisplayConditionType.cs @@ -0,0 +1,21 @@ +namespace MariesWonderland.Models.Type; + +public enum TipDisplayConditionType +{ + UNKNOWN = 0, + DEFAULT = 1, + COMEBACK_DAYS = 2, + TIP_ID_DISPLAYED_ON_THE_SAME_DAY = 3, + TIP_ID_NOT_DISPLAYED_ON_THE_SAME_DAY = 4, + QUEST_CLEAR = 5, + FRIEND_COUNT = 6, + QUEST_NOT_CLEAR = 7, + TIP_ID_DISPLAYED = 8, + TIP_ID_NOT_DISPLAYED = 9, + TIP_BACKGROUND_ASSET_ID_DISPLAYED_ON_THE_SAME_DAY = 10, + TIP_BACKGROUND_ASSET_ID_NOT_DISPLAYED_ON_THE_SAME_DAY = 11, + TIP_BACKGROUND_ASSET_ID_DISPLAYED = 12, + TIP_BACKGROUND_ASSET_ID_NOT_DISPLAYED = 13, + USER_CURRENT_SEASON_ID = 14, + USER_CURRENT_ROUTE_ID = 15 +} diff --git a/src/Models/Type/TipSituationType.cs b/src/Models/Type/TipSituationType.cs new file mode 100644 index 0000000..0a46a62 --- /dev/null +++ b/src/Models/Type/TipSituationType.cs @@ -0,0 +1,15 @@ +namespace MariesWonderland.Models.Type; + +public enum TipSituationType +{ + UNKNOWN = 0, + DEFAULT = 1, + ASSET_INITIAL_DOWNLOAD = 2, + AFTER_LOSED_BATTLE = 3, + TRANSITION_BATTLE = 4, + TITLE = 5, + TRANSITION_QUEST_BY_SEASON_ID = 6, + TRANSITION_QUEST_BY_MAIN_CHAPTER_ID = 7, + TRANSITION_QUEST_BY_EVENT_CHAPTER_ID = 8, + TRANSITION_CAGE_BY_SEASON_ID = 9 +} diff --git a/src/Models/Type/TitleStillLogoType.cs b/src/Models/Type/TitleStillLogoType.cs new file mode 100644 index 0000000..765f3f5 --- /dev/null +++ b/src/Models/Type/TitleStillLogoType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum TitleStillLogoType +{ + UNKNOWN = 0, + WHITE = 1, + BLACK = 2 +} diff --git a/src/Models/Type/TransitionRouteType.cs b/src/Models/Type/TransitionRouteType.cs new file mode 100644 index 0000000..ea86e6c --- /dev/null +++ b/src/Models/Type/TransitionRouteType.cs @@ -0,0 +1,12 @@ +namespace MariesWonderland.Models.Type; + +public enum TransitionRouteType +{ + Unknown = 0, + Quest = 1, + Shop = 2, + Gacha = 3, + LoginBonus = 4, + Mission = 5, + Info = 6 +} diff --git a/src/Models/Type/TutorialType.cs b/src/Models/Type/TutorialType.cs new file mode 100644 index 0000000..1c47858 --- /dev/null +++ b/src/Models/Type/TutorialType.cs @@ -0,0 +1,106 @@ +namespace MariesWonderland.Models.Type; + +public enum TutorialType +{ + UNKNOWN = 0, + GAME_START = 1, + MENU_FIRST = 2, + MENU_SECOND = 3, + BATTLE_WEAPON_SKILL = 4, + BATTLE_COSTUME_SKILL = 5, + BLACK_BIRD = 6, + ENHANCE = 7, + COMPANION = 8, + PARTS = 9, + EXPLORE = 10, + PVP = 11, + MAIN_QUEST_HARD = 12, + MAIN_QUEST_VERY_HARD = 13, + EVENT_QUEST_FIRST = 14, + EVENT_QUEST_CHARACTER = 15, + EVENT_QUEST_MARATHON = 16, + EVENT_QUEST_HUNT = 17, + EVENT_QUEST_DUNGEON = 18, + EVENT_QUEST_DAY_OF_THE_WEEK = 19, + EVENT_QUEST_GUERRILLA = 20, + END_CONTENTS = 21, + END_CONTENTS_QUEST = 22, + EXPLORE_GAME_1 = 23, + EXPLORE_GAME_2 = 24, + PORTAL_CAGE = 25, + PORTAL_CAGE_MAIN_QUEST = 26, + CAGE = 27, + PORTAL_CAGE_DAILY_QUEST = 28, + PORTAL_CAGE_DAILY_GACHA = 29, + PORTAL_CAGE_DROP_ITEM = 30, + PORTAL_CAGE_REACHED_LAST_QUEST_SCENE = 31, + PORTAL_CAGE_CHARACTER_1 = 32, + PORTAL_CAGE_CHARACTER_2 = 33, + PORTAL_CAGE_CHARACTER_3 = 34, + PORTAL_CAGE_CHARACTER_4 = 35, + PORTAL_CAGE_CHARACTER_5 = 36, + BLACK_BIRD_CHARACTER_1 = 37, + BLACK_BIRD_CHARACTER_2 = 38, + BLACK_BIRD_CHARACTER_3 = 39, + GOHOBI = 40, + GOHOBI_DROP = 41, + BATTLE_CANCEL_ENEMY_SKILL_CAST_1 = 42, + BATTLE_CANCEL_ENEMY_SKILL_CAST_2 = 43, + LOSE_FIRST = 44, + REWARD_GACHA = 45, + BIG_WIN_BONUS_FIRST = 46, + BIG_HUNT = 47, + TRIPLE_DECK = 48, + CHARACTER_BOARD = 49, + CHARACTER_BOARD_BASIC = 50, + CHARACTER_BOARD_BIG_HUNT = 51, + WORLD_MAP = 52, + MAP_ITEM_FULL = 53, + WORLD_MAP_BLACK_BIRD = 54, + WORLD_MAP_TREASURE = 55, + BROKEN_OBELISK = 56, + LOSE_FIRST_AFTER_CHAPTER = 57, + REPLAY_FLOW_SKIP = 58, + WORLD_MAP_OUTGAME = 59, + BATTLE_CERTAIN_KILL_SKILL = 60, + SMART_PHONE_FIRST = 101, + PHOTO_FIRST = 102, + DAILY_GACHA = 103, + PORTAL_CAGE_SEASON = 104, + QUEST_SKIP = 201, + PORTAL_CAGE_CHAPTER = 202, + CHARACTER_BOARD_UNLOCK_TUTORIAL = 301, + BLACK_BIRD_SISTERS_FIRST = 401, + COSTUME_LEVEL_BONUS = 501, + WORLD_MAP_REPORT = 601, + BOSS_SPECIAL_EFFECT = 701, + EVENT_QUEST_GUERRILLA_FREE_OPEN = 801, + EXPLORE_HARD = 901, + CAGE_MEMORY = 1001, + DRESSUP_COSTUME = 1101, + COSTUME_AWAKEN = 1201, + THOUGHT_ORGANIZATION = 1202, + HIDE_OBELISK = 1301, + LIMIT_CONTENT = 1302, + FIELD_EFFECT = 1303, + LIMIT_CONTENT_CAGE = 1304, + CHARACTER_VIEWER = 1305, + RECYCLE_GACHA = 1306, + MOM_POINT = 1401, + STAINED_GLASS = 1402, + CHARACTER_REBIRTH = 1501, + WEAPON_AWAKEN = 1502, + EVENT_QUEST_LABYRINTH = 1503, + MISSION_PASS = 1701, + WEAPON_ALL_ORGANIZATION = 1702, + COSTUME_LOTTERY_EFFECT = 1801, + MAIN_QUEST_3_3_TICKET_GET_1 = 1901, + MAIN_QUEST_3_3_TICKET_GET_2 = 1902, + MAIN_QUEST_3_3_TICKET_GET_3 = 1903, + MAIN_QUEST_3_3_TICKET_GET_4 = 1904, + MAIN_QUEST_3_3_TICKET_GET_5 = 1905, + MAIN_QUEST_3_3_TICKET_CONSUME = 1906, + MAIN_QUEST_3_3_NOISE_WALL_CLEAR = 1907, + ANOTHER_ROUTE = 2001, + DELETE_COSTUME_FIO = 2101 +} diff --git a/src/Models/Type/TutorialUnlockConditionType.cs b/src/Models/Type/TutorialUnlockConditionType.cs new file mode 100644 index 0000000..604c534 --- /dev/null +++ b/src/Models/Type/TutorialUnlockConditionType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum TutorialUnlockConditionType +{ + UNKNOWN = 0, + FUNCTION_RELEASED = 1, + REACH_SPECIFIED_QUEST_SCENE = 2, + UNTIL_REACH_SPECIFIED_QUEST_SCENE = 3 +} diff --git a/src/Models/Type/UnlockConditionType.cs b/src/Models/Type/UnlockConditionType.cs new file mode 100644 index 0000000..e5f495d --- /dev/null +++ b/src/Models/Type/UnlockConditionType.cs @@ -0,0 +1,8 @@ +namespace MariesWonderland.Models.Type; + +public enum UnlockConditionType +{ + UNKNOWN = 0, + QUEST_CLEAR = 1, + REACH_SPECIFIED_CHARACTER_LEVEL = 2 +} diff --git a/src/Models/Type/ViewBuffAbnormalType.cs b/src/Models/Type/ViewBuffAbnormalType.cs new file mode 100644 index 0000000..60d2a57 --- /dev/null +++ b/src/Models/Type/ViewBuffAbnormalType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum ViewBuffAbnormalType +{ + UNKNOWN = 0, + NONE = 1, + BOTTOM_FIXED = 2, + TOP_FIXED = 3, + FOLLOW_TARGET = 4 +} diff --git a/src/Models/Type/ViewLevelTextType.cs b/src/Models/Type/ViewLevelTextType.cs new file mode 100644 index 0000000..5e3053e --- /dev/null +++ b/src/Models/Type/ViewLevelTextType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum ViewLevelTextType +{ + UNKNOWN = 0, + NOTHING = 1, + FOLLOW_TARGET = 2, + TOP_FIXED = 3 +} diff --git a/src/Models/Type/ViewNameTextType.cs b/src/Models/Type/ViewNameTextType.cs new file mode 100644 index 0000000..55ec53d --- /dev/null +++ b/src/Models/Type/ViewNameTextType.cs @@ -0,0 +1,11 @@ +namespace MariesWonderland.Models.Type; + +public enum ViewNameTextType +{ + UNKNOWN = 0, + SMALL_FIXED = 1, + MEDIUM_FIXED = 2, + LARGE_FIXED = 3, + FOLLOW_TARGET = 4, + NONE = 5 +} diff --git a/src/Models/Type/ViewSkillButtonType.cs b/src/Models/Type/ViewSkillButtonType.cs new file mode 100644 index 0000000..8bd0caa --- /dev/null +++ b/src/Models/Type/ViewSkillButtonType.cs @@ -0,0 +1,10 @@ +namespace MariesWonderland.Models.Type; + +public enum ViewSkillButtonType +{ + UNKNOWN = 0, + ZERO = 1, + ONE = 2, + TWO = 3, + LARGE = 4 +} diff --git a/src/Models/Type/WeaponStoryReleaseConditionType.cs b/src/Models/Type/WeaponStoryReleaseConditionType.cs new file mode 100644 index 0000000..fe04020 --- /dev/null +++ b/src/Models/Type/WeaponStoryReleaseConditionType.cs @@ -0,0 +1,13 @@ +namespace MariesWonderland.Models.Type; + +public enum WeaponStoryReleaseConditionType +{ + UNKNOWN = 0, + ACQUISITION = 1, + REACH_SPECIFIED_LEVEL = 2, + REACH_INITIAL_MAX_LEVEL = 3, + REACH_ONCE_EVOLVED_MAX_LEVEL = 4, + REACH_SPECIFIED_EVOLUTION_COUNT = 5, + QUEST_CLEAR = 6, + MAIN_FLOW_SCENE_PROGRESS = 7 +} diff --git a/src/Models/Type/WeaponType.cs b/src/Models/Type/WeaponType.cs new file mode 100644 index 0000000..3e6790f --- /dev/null +++ b/src/Models/Type/WeaponType.cs @@ -0,0 +1,14 @@ +namespace MariesWonderland.Models.Type; + +public enum WeaponType +{ + UNKNOWN = 0, + SWORD = 1, + SPEAR = 2, + BIG_SWORD = 3, + FIST = 4, + STAFF = 5, + GUN = 6, + COMPANION = 7, + MT_WEAPON = 8 +} diff --git a/src/Models/Type/WorldMapEnableGimmickType.cs b/src/Models/Type/WorldMapEnableGimmickType.cs new file mode 100644 index 0000000..bd0bda8 --- /dev/null +++ b/src/Models/Type/WorldMapEnableGimmickType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum WorldMapEnableGimmickType +{ + None = 0, + NotStart = 1, + InProgress = 2, + Cleared = 3 +} diff --git a/src/Models/Type/WorldMapGimmickSequenceProgressType.cs b/src/Models/Type/WorldMapGimmickSequenceProgressType.cs new file mode 100644 index 0000000..d860389 --- /dev/null +++ b/src/Models/Type/WorldMapGimmickSequenceProgressType.cs @@ -0,0 +1,9 @@ +namespace MariesWonderland.Models.Type; + +public enum WorldMapGimmickSequenceProgressType +{ + None = 0, + RequireHourOnly = 1, + StartDateTimeOnly = 2, + RequireHourAndStartDateTime = 3 +} diff --git a/src/Program.cs b/src/Program.cs index 8063653..6191889 100644 --- a/src/Program.cs +++ b/src/Program.cs @@ -1,172 +1,32 @@ -using MariesWonderland.Services; +using MariesWonderland.Extensions; using Microsoft.AspNetCore.Server.Kestrel.Core; namespace MariesWonderland; public static class Program { - // https://archive.org/download/nier_reincarnation_assets/resource_dump_android.7z - private const string AssetDatabaseBasePath = @"path\to\resource_dump_android\revisions"; - - // https://archive.org/download/nierreincarnation/Global/master_data/bin/ - private const string MasterDatabaseBasePath = @"path\to\master_data\bin"; - public static void Main(string[] args) { var builder = WebApplication.CreateBuilder(args); - // Enforce HTTP/2 - builder.WebHost.ConfigureKestrel(options => options.ListenLocalhost(7777, x => x.Protocols = HttpProtocols.Http2)); - builder.WebHost.ConfigureKestrel(options => options.ListenLocalhost(7776, x => + builder.WebHost.ConfigureKestrel(options => { - x.UseHttps(); - x.Protocols = HttpProtocols.Http2; - })); + options.ListenAnyIP(80, x => x.Protocols = HttpProtocols.Http1AndHttp2); + options.ListenAnyIP(443, x => + { + //var cert = X509CertificateLoader.LoadPkcs12FromFile(@"E:\Downloads\cert_key\cert.pfx", "yourpassword"); + //x.UseHttps(cert); + x.Protocols = HttpProtocols.Http2; + }); + }); - // Add GRPC builder.Services.AddGrpc(); + builder.Services.AddServerOptions(builder.Configuration); var app = builder.Build(); - // Add GRPC services - app.MapGrpcService(); - app.MapGrpcService(); - app.MapGrpcService(); - app.MapGrpcService(); - app.MapGrpcService(); - - // Add HTTP middleware - app.MapGet("/", () => "Marie's Wonderland is open for business :marie:"); - - // ToS. Expects the version wrapped in delimiters like "###123###". - app.MapGet("/web/static/{languagePath}/terms/termsofuse", (string languagePath) => $"Terms of Service

Terms of Service

Language: {languagePath}

Version: ###123###

"); - - // Asset Database - app.MapGet("/v2/pub/a/301/v/300116832/list/{revision}", async (string revision) => - await File.ReadAllBytesAsync(Path.Combine(AssetDatabaseBasePath, revision, "list.bin"))); - - // Master Database - app.MapMethods("/assets/release/{masterVersion}/database.bin.e", ["GET", "HEAD"], async (HttpContext ctx, string masterVersion) => - { - var filePath = Path.Combine(MasterDatabaseBasePath, $"{masterVersion}.bin.e"); - - var fileInfo = new FileInfo(filePath); - long totalLength = fileInfo.Length; - - // Advertise range support - ctx.Response.Headers.AcceptRanges = "bytes"; - - // Simple ETag using last write ticks & length (optional but useful for clients) - ctx.Response.Headers.ETag = $"\"{fileInfo.LastWriteTimeUtc.Ticks:x}-{totalLength:x}\""; - - // Handle HEAD quickly (send headers only) - bool isHead = string.Equals(ctx.Request.Method, "HEAD", StringComparison.OrdinalIgnoreCase); - - // Parse Range header if present - if (ctx.Request.Headers.TryGetValue("Range", out var rangeHeader)) - { - // Expect single range of form: bytes=start-end - var raw = rangeHeader.ToString(); - if (!raw.StartsWith("bytes=", StringComparison.OrdinalIgnoreCase)) - { - // Malformed range; respond with 416 - ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; - ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; - return; - } - - var rangePart = raw["bytes=".Length..].Trim(); - var parts = rangePart.Split('-', 2); - if (parts.Length != 2) - { - ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; - ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; - return; - } - - bool startParsed = long.TryParse(parts[0], out long start); - bool endParsed = long.TryParse(parts[1], out long end); - - if (!startParsed && endParsed) - { - // suffix range: last 'end' bytes - long suffixLength = end; - if (suffixLength <= 0) - { - ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; - ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; - return; - } - start = Math.Max(0, totalLength - suffixLength); - end = totalLength - 1; - } - else if (startParsed && !endParsed) - { - // range from start to end of file - end = totalLength - 1; - } - else if (!startParsed && !endParsed) - { - ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; - ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; - return; - } - - // Validate - if (start < 0 || end < start || start >= totalLength) - { - ctx.Response.StatusCode = StatusCodes.Status416RangeNotSatisfiable; - ctx.Response.Headers.ContentRange = $"bytes */{totalLength}"; - return; - } - - long length = end - start + 1; - - ctx.Response.StatusCode = StatusCodes.Status206PartialContent; - ctx.Response.Headers.ContentRange = $"bytes {start}-{end}/{totalLength}"; - ctx.Response.ContentType = "application/octet-stream"; - ctx.Response.ContentLength = length; - - if (isHead) - { - return; - } - - // Stream the requested range - await using var fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); - fs.Seek(start, SeekOrigin.Begin); - - var buffer = new byte[64 * 1024]; - long remaining = length; - while (remaining > 0) - { - int toRead = (int)Math.Min(buffer.Length, remaining); - int read = await fs.ReadAsync(buffer, 0, toRead); - if (read == 0) break; - await ctx.Response.Body.WriteAsync(buffer.AsMemory(0, read)); - remaining -= read; - } - - return; - } - - // No Range header: return full file - ctx.Response.StatusCode = StatusCodes.Status200OK; - ctx.Response.ContentType = "application/octet-stream"; - ctx.Response.ContentLength = totalLength; - - if (isHead) - { - return; - } - - // Stream the whole file - await using var fullFs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); - await fullFs.CopyToAsync(ctx.Response.Body); - }); - - // Catch all - app.MapMethods("/{**catchAll}", ["GET", "POST", "PUT", "DELETE", "PATCH",], (string catchAll) => $"You requested: {catchAll}"); + app.MapGrpcServices(); + app.MapHttpApis(); app.Run(); } diff --git a/src/Services/BannerService.cs b/src/Services/BannerService.cs new file mode 100644 index 0000000..da804d5 --- /dev/null +++ b/src/Services/BannerService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Banner; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class BannerService : MariesWonderland.Proto.Banner.BannerService.BannerServiceBase +{ + public override Task GetMamaBanner(GetMamaBannerRequest request, ServerCallContext context) + { + return Task.FromResult(new GetMamaBannerResponse()); + } +} diff --git a/src/Services/BattleService.cs b/src/Services/BattleService.cs new file mode 100644 index 0000000..8868f94 --- /dev/null +++ b/src/Services/BattleService.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Proto.Battle; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class BattleService : MariesWonderland.Proto.Battle.BattleService.BattleServiceBase +{ + public override Task StartWave(StartWaveRequest request, ServerCallContext context) + { + return Task.FromResult(new StartWaveResponse()); + } + + public override Task FinishWave(FinishWaveRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishWaveResponse()); + } +} diff --git a/src/Services/BigHuntService.cs b/src/Services/BigHuntService.cs new file mode 100644 index 0000000..c480a4e --- /dev/null +++ b/src/Services/BigHuntService.cs @@ -0,0 +1,43 @@ +using MariesWonderland.Proto.BigHunt; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class BigHuntService : MariesWonderland.Proto.BigHunt.BighuntService.BighuntServiceBase +{ + public override Task StartBigHuntQuest(StartBigHuntQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new StartBigHuntQuestResponse()); + } + + public override Task UpdateBigHuntQuestSceneProgress(UpdateBigHuntQuestSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateBigHuntQuestSceneProgressResponse()); + } + + public override Task FinishBigHuntQuest(FinishBigHuntQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishBigHuntQuestResponse()); + } + + public override Task RestartBigHuntQuest(RestartBigHuntQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new RestartBigHuntQuestResponse()); + } + + public override Task SkipBigHuntQuest(SkipBigHuntQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new SkipBigHuntQuestResponse()); + } + + public override Task SaveBigHuntBattleInfo(SaveBigHuntBattleInfoRequest request, ServerCallContext context) + { + return Task.FromResult(new SaveBigHuntBattleInfoResponse()); + } + + public override Task GetBigHuntTopData(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetBigHuntTopDataResponse()); + } +} diff --git a/src/Services/CageOrnamentService.cs b/src/Services/CageOrnamentService.cs new file mode 100644 index 0000000..d7041ba --- /dev/null +++ b/src/Services/CageOrnamentService.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Proto.CageOrnament; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CageOrnamentService : MariesWonderland.Proto.CageOrnament.CageornamentService.CageornamentServiceBase +{ + public override Task ReceiveReward(ReceiveRewardRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveRewardResponse()); + } + + public override Task RecordAccess(RecordAccessRequest request, ServerCallContext context) + { + return Task.FromResult(new RecordAccessResponse()); + } +} diff --git a/src/Services/CharacterBoardService.cs b/src/Services/CharacterBoardService.cs new file mode 100644 index 0000000..c201fb3 --- /dev/null +++ b/src/Services/CharacterBoardService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.CharacterBoard; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CharacterBoardService : MariesWonderland.Proto.CharacterBoard.CharacterboardService.CharacterboardServiceBase +{ + public override Task ReleasePanel(ReleasePanelRequest request, ServerCallContext context) + { + return Task.FromResult(new ReleasePanelResponse()); + } +} diff --git a/src/Services/CharacterService.cs b/src/Services/CharacterService.cs new file mode 100644 index 0000000..a56a7d7 --- /dev/null +++ b/src/Services/CharacterService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Character; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CharacterService : MariesWonderland.Proto.Character.CharacterService.CharacterServiceBase +{ + public override Task Rebirth(RebirthRequest request, ServerCallContext context) + { + return Task.FromResult(new RebirthResponse()); + } +} diff --git a/src/Services/CharacterViewerService.cs b/src/Services/CharacterViewerService.cs new file mode 100644 index 0000000..a686764 --- /dev/null +++ b/src/Services/CharacterViewerService.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Proto.CharacterViewer; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CharacterViewerService : MariesWonderland.Proto.CharacterViewer.CharacterviewerService.CharacterviewerServiceBase +{ + public override Task CharacterViewerTop(Empty request, ServerCallContext context) + { + return Task.FromResult(new CharacterViewerTopResponse()); + } +} diff --git a/src/Services/CompanionService.cs b/src/Services/CompanionService.cs new file mode 100644 index 0000000..6db6935 --- /dev/null +++ b/src/Services/CompanionService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Companion; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CompanionService : MariesWonderland.Proto.Companion.CompanionService.CompanionServiceBase +{ + public override Task Enhance(EnhanceRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceResponse()); + } +} diff --git a/src/Services/ConfigService.cs b/src/Services/ConfigService.cs index 4c41326..1d925e4 100644 --- a/src/Services/ConfigService.cs +++ b/src/Services/ConfigService.cs @@ -1,10 +1,10 @@ -using Art.Framework.ApiNetwork.Grpc.Api.Config; +using MariesWonderland.Proto.Config; using Google.Protobuf.WellKnownTypes; using Grpc.Core; namespace MariesWonderland.Services; -public class ConfigService : Art.Framework.ApiNetwork.Grpc.Api.Config.ConfigService.ConfigServiceBase +public class ConfigService : MariesWonderland.Proto.Config.ConfigService.ConfigServiceBase { public override Task GetReviewServerConfig(Empty request, ServerCallContext context) { diff --git a/src/Services/ConsumableItemService.cs b/src/Services/ConsumableItemService.cs new file mode 100644 index 0000000..d0ddef9 --- /dev/null +++ b/src/Services/ConsumableItemService.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Proto.ConsumableItem; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class ConsumableItemService : MariesWonderland.Proto.ConsumableItem.ConsumableitemService.ConsumableitemServiceBase +{ + public override Task UseEffectItem(UseEffectItemRequest request, ServerCallContext context) + { + return Task.FromResult(new UseEffectItemResponse()); + } + + public override Task Sell(SellRequest request, ServerCallContext context) + { + return Task.FromResult(new SellResponse()); + } +} diff --git a/src/Services/ContentsStoryService.cs b/src/Services/ContentsStoryService.cs new file mode 100644 index 0000000..e94b145 --- /dev/null +++ b/src/Services/ContentsStoryService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.ContentsStory; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class ContentsStoryService : MariesWonderland.Proto.ContentsStory.ContentsstoryService.ContentsstoryServiceBase +{ + public override Task RegisterPlayed(RegisterPlayedRequest request, ServerCallContext context) + { + return Task.FromResult(new RegisterPlayedResponse()); + } +} diff --git a/src/Services/CostumeService.cs b/src/Services/CostumeService.cs new file mode 100644 index 0000000..6745df5 --- /dev/null +++ b/src/Services/CostumeService.cs @@ -0,0 +1,47 @@ +using MariesWonderland.Proto.Costume; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class CostumeService : MariesWonderland.Proto.Costume.CostumeService.CostumeServiceBase +{ + public override Task Enhance(EnhanceRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceResponse()); + } + + public override Task LimitBreak(LimitBreakRequest request, ServerCallContext context) + { + return Task.FromResult(new LimitBreakResponse()); + } + + public override Task Awaken(AwakenRequest request, ServerCallContext context) + { + return Task.FromResult(new AwakenResponse()); + } + + public override Task EnhanceActiveSkill(EnhanceActiveSkillRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceActiveSkillResponse()); + } + + public override Task RegisterLevelBonusConfirmed(RegisterLevelBonusConfirmedRequest request, ServerCallContext context) + { + return Task.FromResult(new RegisterLevelBonusConfirmedResponse()); + } + + public override Task UnlockLotteryEffectSlot(UnlockLotteryEffectSlotRequest request, ServerCallContext context) + { + return Task.FromResult(new UnlockLotteryEffectSlotResponse()); + } + + public override Task DrawLotteryEffect(DrawLotteryEffectRequest request, ServerCallContext context) + { + return Task.FromResult(new DrawLotteryEffectResponse()); + } + + public override Task ConfirmLotteryEffect(ConfirmLotteryEffectRequest request, ServerCallContext context) + { + return Task.FromResult(new ConfirmLotteryEffectResponse()); + } +} diff --git a/src/Services/DataService.cs b/src/Services/DataService.cs index 622ee43..7c79174 100644 --- a/src/Services/DataService.cs +++ b/src/Services/DataService.cs @@ -1,22 +1,27 @@ -using Art.Framework.ApiNetwork.Grpc.Api.Data; +using MariesWonderland.Configuration; +using MariesWonderland.Proto.Data; using Google.Protobuf.WellKnownTypes; using Grpc.Core; +using Microsoft.Extensions.Options; namespace MariesWonderland.Services; -public class DataService : Art.Framework.ApiNetwork.Grpc.Api.Data.DataService.DataServiceBase +public class DataService : MariesWonderland.Proto.Data.DataService.DataServiceBase { - private const string LatestMasterDataVersion = "20240404193219"; - private const string UserDataBasePath = @"path\to\user\data"; - + private readonly DataOptions _data; private const string TablePrefix = "Entity"; private const string TableSuffix = "Table"; + public DataService(IOptions options) + { + _data = options.Value.Data; + } + public override Task GetLatestMasterDataVersion(Empty request, ServerCallContext context) { return Task.FromResult(new MasterDataGetLatestVersionResponse { - LatestMasterDataVersion = LatestMasterDataVersion + LatestMasterDataVersion = _data.LatestMasterDataVersion }); } @@ -25,7 +30,7 @@ public class DataService : Art.Framework.ApiNetwork.Grpc.Api.Data.DataService.Da UserDataGetNameResponseV2 response = new(); TableNameList tableNameList = new(); var names = Directory - .EnumerateFiles(UserDataBasePath, "*.json") + .EnumerateFiles(_data.UserDataBasePath, "*.json") .Select(path => { var name = Path.GetFileNameWithoutExtension(path); // e.g. "EntityIUserTable" diff --git a/src/Services/DeckService.cs b/src/Services/DeckService.cs new file mode 100644 index 0000000..c28de13 --- /dev/null +++ b/src/Services/DeckService.cs @@ -0,0 +1,57 @@ +using MariesWonderland.Proto.Deck; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class DeckService : MariesWonderland.Proto.Deck.DeckService.DeckServiceBase +{ + public override Task UpdateName(UpdateNameRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateNameResponse()); + } + + public override Task ReplaceDeck(ReplaceDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new ReplaceDeckResponse()); + } + + public override Task SetPvpDefenseDeck(SetPvpDefenseDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new SetPvpDefenseDeckResponse()); + } + + public override Task CopyDeck(CopyDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new CopyDeckResponse()); + } + + public override Task RemoveDeck(RemoveDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new RemoveDeckResponse()); + } + + public override Task RefreshDeckPower(RefreshDeckPowerRequest request, ServerCallContext context) + { + return Task.FromResult(new RefreshDeckPowerResponse()); + } + + public override Task UpdateTripleDeckName(UpdateTripleDeckNameRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateTripleDeckNameResponse()); + } + + public override Task ReplaceTripleDeck(ReplaceTripleDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new ReplaceTripleDeckResponse()); + } + + public override Task ReplaceMultiDeck(ReplaceMultiDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new ReplaceMultiDeckResponse()); + } + + public override Task RefreshMultiDeckPower(RefreshMultiDeckPowerRequest request, ServerCallContext context) + { + return Task.FromResult(new RefreshMultiDeckPowerResponse()); + } +} diff --git a/src/Services/DokanService.cs b/src/Services/DokanService.cs new file mode 100644 index 0000000..4d78060 --- /dev/null +++ b/src/Services/DokanService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Dokan; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class DokanService : MariesWonderland.Proto.Dokan.DokanService.DokanServiceBase +{ + public override Task RegisterDokanConfirmed(RegisterDokanConfirmedRequest request, ServerCallContext context) + { + return Task.FromResult(new RegisterDokanConfirmedResponse()); + } +} diff --git a/src/Services/ExploreService.cs b/src/Services/ExploreService.cs new file mode 100644 index 0000000..86ec236 --- /dev/null +++ b/src/Services/ExploreService.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Proto.Explore; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class ExploreService : MariesWonderland.Proto.Explore.ExploreService.ExploreServiceBase +{ + public override Task StartExplore(StartExploreRequest request, ServerCallContext context) + { + return Task.FromResult(new StartExploreResponse()); + } + + public override Task FinishExplore(FinishExploreRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishExploreResponse()); + } + + public override Task RetireExplore(RetireExploreRequest request, ServerCallContext context) + { + return Task.FromResult(new RetireExploreResponse()); + } +} diff --git a/src/Services/FriendService.cs b/src/Services/FriendService.cs new file mode 100644 index 0000000..7105415 --- /dev/null +++ b/src/Services/FriendService.cs @@ -0,0 +1,68 @@ +using MariesWonderland.Proto.Friend; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class FriendService : MariesWonderland.Proto.Friend.FriendService.FriendServiceBase +{ + public override Task GetUser(GetUserRequest request, ServerCallContext context) + { + return Task.FromResult(new GetUserResponse()); + } + + public override Task SearchRecommendedUsers(Empty request, ServerCallContext context) + { + return Task.FromResult(new SearchRecommendedUsersResponse()); + } + + public override Task GetFriendList(GetFriendListRequest request, ServerCallContext context) + { + return Task.FromResult(new GetFriendListResponse()); + } + + public override Task GetFriendRequestList(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetFriendRequestListResponse()); + } + + public override Task SendFriendRequest(SendFriendRequestRequest request, ServerCallContext context) + { + return Task.FromResult(new SendFriendRequestResponse()); + } + + public override Task AcceptFriendRequest(AcceptFriendRequestRequest request, ServerCallContext context) + { + return Task.FromResult(new AcceptFriendRequestResponse()); + } + + public override Task DeclineFriendRequest(DeclineFriendRequestRequest request, ServerCallContext context) + { + return Task.FromResult(new DeclineFriendRequestResponse()); + } + + public override Task DeleteFriend(DeleteFriendRequest request, ServerCallContext context) + { + return Task.FromResult(new DeleteFriendResponse()); + } + + public override Task CheerFriend(CheerFriendRequest request, ServerCallContext context) + { + return Task.FromResult(new CheerFriendResponse()); + } + + public override Task BulkCheerFriend(Empty request, ServerCallContext context) + { + return Task.FromResult(new BulkCheerFriendResponse()); + } + + public override Task ReceiveCheer(ReceiveCheerRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveCheerResponse()); + } + + public override Task BulkReceiveCheer(Empty request, ServerCallContext context) + { + return Task.FromResult(new BulkReceiveCheerResponse()); + } +} diff --git a/src/Services/GachaService.cs b/src/Services/GachaService.cs new file mode 100644 index 0000000..d338889 --- /dev/null +++ b/src/Services/GachaService.cs @@ -0,0 +1,38 @@ +using MariesWonderland.Proto.Gacha; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class GachaService : MariesWonderland.Proto.Gacha.GachaService.GachaServiceBase +{ + public override Task GetGachaList(GetGachaListRequest request, ServerCallContext context) + { + return Task.FromResult(new GetGachaListResponse()); + } + + public override Task GetGacha(GetGachaRequest request, ServerCallContext context) + { + return Task.FromResult(new GetGachaResponse()); + } + + public override Task Draw(DrawRequest request, ServerCallContext context) + { + return Task.FromResult(new DrawResponse()); + } + + public override Task ResetBoxGacha(ResetBoxGachaRequest request, ServerCallContext context) + { + return Task.FromResult(new ResetBoxGachaResponse()); + } + + public override Task GetRewardGacha(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetRewardGachaResponse()); + } + + public override Task RewardDraw(RewardDrawRequest request, ServerCallContext context) + { + return Task.FromResult(new RewardDrawResponse()); + } +} diff --git a/src/Services/GameplayService.cs b/src/Services/GameplayService.cs index 2d96197..ea75f4c 100644 --- a/src/Services/GameplayService.cs +++ b/src/Services/GameplayService.cs @@ -1,9 +1,9 @@ -using Art.Framework.ApiNetwork.Grpc.Api.GamePlay; +using MariesWonderland.Proto.GamePlay; using Grpc.Core; namespace MariesWonderland.Services; -public class GameplayService : Art.Framework.ApiNetwork.Grpc.Api.GamePlay.GameplayService.GameplayServiceBase +public class GameplayService : MariesWonderland.Proto.GamePlay.GameplayService.GameplayServiceBase { public override Task CheckBeforeGamePlay(CheckBeforeGamePlayRequest request, ServerCallContext context) { diff --git a/src/Services/GiftService.cs b/src/Services/GiftService.cs new file mode 100644 index 0000000..aebc536 --- /dev/null +++ b/src/Services/GiftService.cs @@ -0,0 +1,23 @@ +using MariesWonderland.Proto.Gift; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class GiftService : MariesWonderland.Proto.Gift.GiftService.GiftServiceBase +{ + public override Task ReceiveGift(ReceiveGiftRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveGiftResponse()); + } + + public override Task GetGiftList(GetGiftListRequest request, ServerCallContext context) + { + return Task.FromResult(new GetGiftListResponse()); + } + + public override Task GetGiftReceiveHistoryList(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetGiftReceiveHistoryListResponse()); + } +} diff --git a/src/Services/GimmickService.cs b/src/Services/GimmickService.cs new file mode 100644 index 0000000..b2b3118 --- /dev/null +++ b/src/Services/GimmickService.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Proto.Gimmick; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class GimmickService : MariesWonderland.Proto.Gimmick.GimmickService.GimmickServiceBase +{ + public override Task UpdateSequence(UpdateSequenceRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateSequenceResponse()); + } + + public override Task UpdateGimmickProgress(UpdateGimmickProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateGimmickProgressResponse()); + } + + public override Task InitSequenceSchedule(Empty request, ServerCallContext context) + { + return Task.FromResult(new InitSequenceScheduleResponse()); + } + + public override Task Unlock(UnlockRequest request, ServerCallContext context) + { + return Task.FromResult(new UnlockResponse()); + } +} diff --git a/src/Services/GreeterService.cs b/src/Services/GreeterService.cs deleted file mode 100644 index fd255af..0000000 --- a/src/Services/GreeterService.cs +++ /dev/null @@ -1,17 +0,0 @@ -using Grpc.Core; - -namespace MariesWonderland.Services; - -/// -/// Dummy service for testing -/// -public class GreeterService : Greeter.GreeterBase -{ - public override Task SayHello(HelloRequest request, ServerCallContext context) - { - return Task.FromResult(new HelloReply - { - Message = "Hello " + request.Name - }); - } -} diff --git a/src/Services/IndividualPopService.cs b/src/Services/IndividualPopService.cs new file mode 100644 index 0000000..22e457e --- /dev/null +++ b/src/Services/IndividualPopService.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Proto.IndividualPop; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class IndividualPopService : MariesWonderland.Proto.IndividualPop.IndividualpopService.IndividualpopServiceBase +{ + public override Task GetUnreadPop(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetUnreadPopResponse()); + } +} diff --git a/src/Services/LabyrinthService.cs b/src/Services/LabyrinthService.cs new file mode 100644 index 0000000..aa45a85 --- /dev/null +++ b/src/Services/LabyrinthService.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Proto.Labyrinth; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class LabyrinthService : MariesWonderland.Proto.Labyrinth.LabyrinthService.LabyrinthServiceBase +{ + public override Task UpdateSeasonData(UpdateSeasonDataRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateSeasonDataResponse()); + } + + public override Task ReceiveStageClearReward(ReceiveStageClearRewardRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveStageClearRewardResponse()); + } + + public override Task ReceiveStageAccumulationReward(ReceiveStageAccumulationRewardRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveStageAccumulationRewardResponse()); + } +} diff --git a/src/Services/LoginBonusService.cs b/src/Services/LoginBonusService.cs new file mode 100644 index 0000000..0f506d6 --- /dev/null +++ b/src/Services/LoginBonusService.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Proto.LoginBonus; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class LoginBonusService : MariesWonderland.Proto.LoginBonus.LoginbonusService.LoginbonusServiceBase +{ + public override Task ReceiveStamp(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceiveStampResponse()); + } +} diff --git a/src/Services/MaterialService.cs b/src/Services/MaterialService.cs new file mode 100644 index 0000000..37f95c3 --- /dev/null +++ b/src/Services/MaterialService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Material; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class MaterialService : MariesWonderland.Proto.Material.MaterialService.MaterialServiceBase +{ + public override Task Sell(SellRequest request, ServerCallContext context) + { + return Task.FromResult(new SellResponse()); + } +} diff --git a/src/Services/MissionService.cs b/src/Services/MissionService.cs new file mode 100644 index 0000000..17a6f60 --- /dev/null +++ b/src/Services/MissionService.cs @@ -0,0 +1,22 @@ +using MariesWonderland.Proto.Mission; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class MissionService : MariesWonderland.Proto.Mission.MissionService.MissionServiceBase +{ + public override Task ReceiveMissionRewardsById(ReceiveMissionRewardsByIdRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveMissionRewardsResponse()); + } + + public override Task UpdateMissionProgress(UpdateMissionProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateMissionProgressResponse()); + } + + public override Task ReceiveMissionPassRewards(ReceiveMissionPassRewardsRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveMissionPassRewardsResponse()); + } +} diff --git a/src/Services/MovieService.cs b/src/Services/MovieService.cs new file mode 100644 index 0000000..0b26aeb --- /dev/null +++ b/src/Services/MovieService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Movie; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class MovieService : MariesWonderland.Proto.Movie.MovieService.MovieServiceBase +{ + public override Task SaveViewedMovie(SaveViewedMovieRequest request, ServerCallContext context) + { + return Task.FromResult(new SaveViewedMovieResponse()); + } +} diff --git a/src/Services/NaviCutInService.cs b/src/Services/NaviCutInService.cs new file mode 100644 index 0000000..e1414e4 --- /dev/null +++ b/src/Services/NaviCutInService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.NaviCutIn; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class NaviCutInService : MariesWonderland.Proto.NaviCutIn.NavicutinService.NavicutinServiceBase +{ + public override Task RegisterPlayed(RegisterPlayedRequest request, ServerCallContext context) + { + return Task.FromResult(new RegisterPlayedResponse()); + } +} diff --git a/src/Services/NotificationService.cs b/src/Services/NotificationService.cs new file mode 100644 index 0000000..11c71f6 --- /dev/null +++ b/src/Services/NotificationService.cs @@ -0,0 +1,13 @@ +using MariesWonderland.Proto.Notification; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class NotificationService : MariesWonderland.Proto.Notification.NotificationService.NotificationServiceBase +{ + public override Task GetHeaderNotification(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetHeaderNotificationResponse()); + } +} diff --git a/src/Services/OmikujiService.cs b/src/Services/OmikujiService.cs new file mode 100644 index 0000000..efae1da --- /dev/null +++ b/src/Services/OmikujiService.cs @@ -0,0 +1,12 @@ +using MariesWonderland.Proto.Omikuji; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class OmikujiService : MariesWonderland.Proto.Omikuji.OmikujiService.OmikujiServiceBase +{ + public override Task OmikujiDraw(OmikujiDrawRequest request, ServerCallContext context) + { + return Task.FromResult(new OmikujiDrawResponse()); + } +} diff --git a/src/Services/PartsService.cs b/src/Services/PartsService.cs new file mode 100644 index 0000000..9b5555e --- /dev/null +++ b/src/Services/PartsService.cs @@ -0,0 +1,57 @@ +using MariesWonderland.Proto.Parts; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class PartsService : MariesWonderland.Proto.Parts.PartsService.PartsServiceBase +{ + public override Task Sell(SellRequest request, ServerCallContext context) + { + return Task.FromResult(new SellResponse()); + } + + public override Task Protect(ProtectRequest request, ServerCallContext context) + { + return Task.FromResult(new ProtectResponse()); + } + + public override Task Unprotect(UnprotectRequest request, ServerCallContext context) + { + return Task.FromResult(new UnprotectResponse()); + } + + public override Task Enhance(EnhanceRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceResponse()); + } + + public override Task UpdatePresetName(UpdatePresetNameRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdatePresetNameResponse()); + } + + public override Task UpdatePresetTagNumber(UpdatePresetTagNumberRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdatePresetTagNumberResponse()); + } + + public override Task UpdatePresetTagName(UpdatePresetTagNameRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdatePresetTagNameResponse()); + } + + public override Task ReplacePreset(ReplacePresetRequest request, ServerCallContext context) + { + return Task.FromResult(new ReplacePresetResponse()); + } + + public override Task CopyPreset(CopyPresetRequest request, ServerCallContext context) + { + return Task.FromResult(new CopyPresetResponse()); + } + + public override Task RemovePreset(RemovePresetRequest request, ServerCallContext context) + { + return Task.FromResult(new RemovePresetResponse()); + } +} diff --git a/src/Services/PortalCageService.cs b/src/Services/PortalCageService.cs new file mode 100644 index 0000000..9e98335 --- /dev/null +++ b/src/Services/PortalCageService.cs @@ -0,0 +1,18 @@ +using MariesWonderland.Proto.PortalCage; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class PortalCageService : MariesWonderland.Proto.PortalCage.PortalcageService.PortalcageServiceBase +{ + public override Task UpdatePortalCageSceneProgress(UpdatePortalCageSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdatePortalCageSceneProgressResponse()); + } + + public override Task GetDropItem(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetDropItemResponse()); + } +} diff --git a/src/Services/PvpService.cs b/src/Services/PvpService.cs new file mode 100644 index 0000000..c49f058 --- /dev/null +++ b/src/Services/PvpService.cs @@ -0,0 +1,53 @@ +using MariesWonderland.Proto.Pvp; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class PvpService : MariesWonderland.Proto.Pvp.PvpService.PvpServiceBase +{ + public override Task GetTopData(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetTopDataResponse()); + } + + public override Task GetMatchingList(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetMatchingListResponse()); + } + + public override Task UpdateMatchingList(Empty request, ServerCallContext context) + { + return Task.FromResult(new UpdateMatchingListResponse()); + } + + public override Task StartBattle(StartBattleRequest request, ServerCallContext context) + { + return Task.FromResult(new StartBattleResponse()); + } + + public override Task FinishBattle(FinishBattleRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishBattleResponse()); + } + + public override Task GetRanking(GetRankingRequest request, ServerCallContext context) + { + return Task.FromResult(new GetRankingResponse()); + } + + public override Task GetSeasonResult(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetSeasonResultResponse()); + } + + public override Task GetAttackLogList(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetAttackLogListResponse()); + } + + public override Task GetDefenseLogList(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetDefenseLogListResponse()); + } +} diff --git a/src/Services/QuestService.cs b/src/Services/QuestService.cs new file mode 100644 index 0000000..895fa72 --- /dev/null +++ b/src/Services/QuestService.cs @@ -0,0 +1,128 @@ +using MariesWonderland.Proto.Quest; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class QuestService : MariesWonderland.Proto.Quest.QuestService.QuestServiceBase +{ + public override Task UpdateMainFlowSceneProgress(UpdateMainFlowSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateMainFlowSceneProgressResponse()); + } + + public override Task UpdateReplayFlowSceneProgress(UpdateReplayFlowSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateReplayFlowSceneProgressResponse()); + } + + public override Task UpdateMainQuestSceneProgress(UpdateMainQuestSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateMainQuestSceneProgressResponse()); + } + + public override Task UpdateExtraQuestSceneProgress(UpdateExtraQuestSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateExtraQuestSceneProgressResponse()); + } + + public override Task UpdateEventQuestSceneProgress(UpdateEventQuestSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateEventQuestSceneProgressResponse()); + } + + public override Task StartMainQuest(StartMainQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new StartMainQuestResponse()); + } + + public override Task RestartMainQuest(RestartMainQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new RestartMainQuestResponse()); + } + + public override Task FinishMainQuest(FinishMainQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishMainQuestResponse()); + } + + public override Task StartExtraQuest(StartExtraQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new StartExtraQuestResponse()); + } + + public override Task RestartExtraQuest(RestartExtraQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new RestartExtraQuestResponse()); + } + + public override Task FinishExtraQuest(FinishExtraQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishExtraQuestResponse()); + } + + public override Task StartEventQuest(StartEventQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new StartEventQuestResponse()); + } + + public override Task RestartEventQuest(RestartEventQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new RestartEventQuestResponse()); + } + + public override Task FinishEventQuest(FinishEventQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new FinishEventQuestResponse()); + } + + public override Task FinishAutoOrbit(Empty request, ServerCallContext context) + { + return Task.FromResult(new FinishAutoOrbitResponse()); + } + + public override Task SetRoute(SetRouteRequest request, ServerCallContext context) + { + return Task.FromResult(new SetRouteResponse()); + } + + public override Task SetQuestSceneChoice(SetQuestSceneChoiceRequest request, ServerCallContext context) + { + return Task.FromResult(new SetQuestSceneChoiceResponse()); + } + + public override Task ReceiveTowerAccumulationReward(ReceiveTowerAccumulationRewardRequest request, ServerCallContext context) + { + return Task.FromResult(new ReceiveTowerAccumulationRewardResponse()); + } + + public override Task SkipQuest(SkipQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new SkipQuestResponse()); + } + + public override Task SkipQuestBulk(SkipQuestBulkRequest request, ServerCallContext context) + { + return Task.FromResult(new SkipQuestBulkResponse()); + } + + public override Task SetAutoSaleSetting(SetAutoSaleSettingRequest request, ServerCallContext context) + { + return Task.FromResult(new SetAutoSaleSettingResponse()); + } + + public override Task StartGuerrillaFreeOpen(Empty request, ServerCallContext context) + { + return Task.FromResult(new StartGuerrillaFreeOpenResponse()); + } + + public override Task ResetLimitContentQuestProgress(ResetLimitContentQuestProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new ResetLimitContentQuestProgressResponse()); + } + + public override Task ReceiveDailyQuestGroupCompleteReward(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceiveDailyQuestGroupCompleteRewardResponse()); + } +} diff --git a/src/Services/RewardService.cs b/src/Services/RewardService.cs new file mode 100644 index 0000000..4a035ee --- /dev/null +++ b/src/Services/RewardService.cs @@ -0,0 +1,28 @@ +using MariesWonderland.Proto.Reward; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class RewardService : MariesWonderland.Proto.Reward.RewardService.RewardServiceBase +{ + public override Task ReceivePvpReward(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceivePvpRewardResponse()); + } + + public override Task ReceiveBigHuntReward(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceiveBigHuntRewardResponse()); + } + + public override Task ReceiveLabyrinthSeasonReward(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceiveLabyrinthSeasonRewardResponse()); + } + + public override Task ReceiveMissionPassRemainingReward(Empty request, ServerCallContext context) + { + return Task.FromResult(new ReceiveMissionPassRemainingRewardResponse()); + } +} diff --git a/src/Services/ShopService.cs b/src/Services/ShopService.cs new file mode 100644 index 0000000..c6718c2 --- /dev/null +++ b/src/Services/ShopService.cs @@ -0,0 +1,33 @@ +using MariesWonderland.Proto.Shop; +using Google.Protobuf.WellKnownTypes; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class ShopService : MariesWonderland.Proto.Shop.ShopService.ShopServiceBase +{ + public override Task Buy(BuyRequest request, ServerCallContext context) + { + return Task.FromResult(new BuyResponse()); + } + + public override Task RefreshUserData(RefreshRequest request, ServerCallContext context) + { + return Task.FromResult(new RefreshResponse()); + } + + public override Task GetCesaLimit(Empty request, ServerCallContext context) + { + return Task.FromResult(new GetCesaLimitResponse()); + } + + public override Task CreatePurchaseTransaction(CreatePurchaseTransactionRequest request, ServerCallContext context) + { + return Task.FromResult(new CreatePurchaseTransactionResponse()); + } + + public override Task PurchaseGooglePlayStoreProduct(PurchaseGooglePlayStoreProductRequest request, ServerCallContext context) + { + return Task.FromResult(new PurchaseGooglePlayStoreProductResponse()); + } +} diff --git a/src/Services/SideStoryQuestService.cs b/src/Services/SideStoryQuestService.cs new file mode 100644 index 0000000..24d9526 --- /dev/null +++ b/src/Services/SideStoryQuestService.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Proto.SideStoryQuest; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class SideStoryQuestService : MariesWonderland.Proto.SideStoryQuest.SidestoryquestService.SidestoryquestServiceBase +{ + public override Task MoveSideStoryQuestProgress(MoveSideStoryQuestRequest request, ServerCallContext context) + { + return Task.FromResult(new MoveSideStoryQuestResponse()); + } + + public override Task UpdateSideStoryQuestSceneProgress(UpdateSideStoryQuestSceneProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new UpdateSideStoryQuestSceneProgressResponse()); + } +} diff --git a/src/Services/TutorialService.cs b/src/Services/TutorialService.cs new file mode 100644 index 0000000..143b5b6 --- /dev/null +++ b/src/Services/TutorialService.cs @@ -0,0 +1,17 @@ +using MariesWonderland.Proto.Tutorial; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class TutorialService : MariesWonderland.Proto.Tutorial.TutorialService.TutorialServiceBase +{ + public override Task SetTutorialProgress(SetTutorialProgressRequest request, ServerCallContext context) + { + return Task.FromResult(new SetTutorialProgressResponse()); + } + + public override Task SetTutorialProgressAndReplaceDeck(SetTutorialProgressAndReplaceDeckRequest request, ServerCallContext context) + { + return Task.FromResult(new SetTutorialProgressAndReplaceDeckResponse()); + } +} diff --git a/src/Services/UserService.cs b/src/Services/UserService.cs index fa1e0b6..a0f11ed 100644 --- a/src/Services/UserService.cs +++ b/src/Services/UserService.cs @@ -1,10 +1,10 @@ -using Art.Framework.ApiNetwork.Grpc.Api.User; +using MariesWonderland.Proto.User; using Google.Protobuf.WellKnownTypes; using Grpc.Core; namespace MariesWonderland.Services; -public class UserService : Art.Framework.ApiNetwork.Grpc.Api.User.UserService.UserServiceBase +public class UserService : MariesWonderland.Proto.User.UserService.UserServiceBase { public override Task GetAndroidArgs(GetAndroidArgsRequest request, ServerCallContext context) { diff --git a/src/Services/WeaponService.cs b/src/Services/WeaponService.cs new file mode 100644 index 0000000..e327db4 --- /dev/null +++ b/src/Services/WeaponService.cs @@ -0,0 +1,62 @@ +using MariesWonderland.Proto.Weapon; +using Grpc.Core; + +namespace MariesWonderland.Services; + +public class WeaponService : MariesWonderland.Proto.Weapon.WeaponService.WeaponServiceBase +{ + public override Task Sell(SellRequest request, ServerCallContext context) + { + return Task.FromResult(new SellResponse()); + } + + public override Task Protect(ProtectRequest request, ServerCallContext context) + { + return Task.FromResult(new ProtectResponse()); + } + + public override Task Unprotect(UnprotectRequest request, ServerCallContext context) + { + return Task.FromResult(new UnprotectResponse()); + } + + public override Task EnhanceByWeapon(EnhanceByWeaponRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceByWeaponResponse()); + } + + public override Task EnhanceByMaterial(EnhanceByMaterialRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceByMaterialResponse()); + } + + public override Task EnhanceSkill(EnhanceSkillRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceSkillResponse()); + } + + public override Task EnhanceAbility(EnhanceAbilityRequest request, ServerCallContext context) + { + return Task.FromResult(new EnhanceAbilityResponse()); + } + + public override Task LimitBreakByWeapon(LimitBreakByWeaponRequest request, ServerCallContext context) + { + return Task.FromResult(new LimitBreakByWeaponResponse()); + } + + public override Task LimitBreakByMaterial(LimitBreakByMaterialRequest request, ServerCallContext context) + { + return Task.FromResult(new LimitBreakByMaterialResponse()); + } + + public override Task Evolve(EvolveRequest request, ServerCallContext context) + { + return Task.FromResult(new EvolveResponse()); + } + + public override Task Awaken(AwakenRequest request, ServerCallContext context) + { + return Task.FromResult(new AwakenResponse()); + } +} diff --git a/src/appsettings.Development.json b/src/appsettings.Development.json index 0c208ae..e68c17e 100644 --- a/src/appsettings.Development.json +++ b/src/appsettings.Development.json @@ -4,5 +4,15 @@ "Default": "Information", "Microsoft.AspNetCore": "Warning" } + }, + "Server": { + "Paths": { + "AssetDatabase": "", + "MasterDatabase": "" + }, + "Data": { + "LatestMasterDataVersion": "20240404193219", + "UserDataBasePath": "" + } } } diff --git a/src/appsettings.json b/src/appsettings.json index e939636..5a6fccd 100644 --- a/src/appsettings.json +++ b/src/appsettings.json @@ -12,5 +12,15 @@ "EndpointDefaults": { "Protocols": "Http2" } + }, + "Server": { + "Paths": { + "AssetDatabase": "", + "MasterDatabase": "" + }, + "Data": { + "LatestMasterDataVersion": "", + "UserDataBasePath": "" + } } } diff --git a/src/proto/banner.proto b/src/proto/banner.proto index a338d60..0728009 100644 --- a/src/proto/banner.proto +++ b/src/proto/banner.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Banner"; +option csharp_namespace = "MariesWonderland.Proto.Banner"; import "proto/mission.proto"; import "proto/data.proto"; diff --git a/src/proto/battle.proto b/src/proto/battle.proto index cf86a30..5f35b40 100644 --- a/src/proto/battle.proto +++ b/src/proto/battle.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Battle"; +option csharp_namespace = "MariesWonderland.Proto.Battle"; import "proto/data.proto"; diff --git a/src/proto/bighunt.proto b/src/proto/bighunt.proto index 537ee75..1533b55 100644 --- a/src/proto/bighunt.proto +++ b/src/proto/bighunt.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.BigHunt"; +option csharp_namespace = "MariesWonderland.Proto.BigHunt"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/cageornament.proto b/src/proto/cageornament.proto index 659f254..a58bcf2 100644 --- a/src/proto/cageornament.proto +++ b/src/proto/cageornament.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.CageOrnament"; +option csharp_namespace = "MariesWonderland.Proto.CageOrnament"; import "proto/data.proto"; diff --git a/src/proto/character.proto b/src/proto/character.proto index 8c2bb47..33b529b 100644 --- a/src/proto/character.proto +++ b/src/proto/character.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Character"; +option csharp_namespace = "MariesWonderland.Proto.Character"; import "proto/data.proto"; diff --git a/src/proto/characterboard.proto b/src/proto/characterboard.proto index 2de1af6..91ce024 100644 --- a/src/proto/characterboard.proto +++ b/src/proto/characterboard.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.CharacterBoard"; +option csharp_namespace = "MariesWonderland.Proto.CharacterBoard"; import "proto/data.proto"; diff --git a/src/proto/characterviewer.proto b/src/proto/characterviewer.proto index 679884a..f1b2694 100644 --- a/src/proto/characterviewer.proto +++ b/src/proto/characterviewer.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.CharacterViewer"; +option csharp_namespace = "MariesWonderland.Proto.CharacterViewer"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/companion.proto b/src/proto/companion.proto index 3501425..5449418 100644 --- a/src/proto/companion.proto +++ b/src/proto/companion.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Companion"; +option csharp_namespace = "MariesWonderland.Proto.Companion"; import "proto/data.proto"; diff --git a/src/proto/config.proto b/src/proto/config.proto index 027701f..11d6416 100644 --- a/src/proto/config.proto +++ b/src/proto/config.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Config"; +option csharp_namespace = "MariesWonderland.Proto.Config"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/consumableitem.proto b/src/proto/consumableitem.proto index 6484dfc..5ec655b 100644 --- a/src/proto/consumableitem.proto +++ b/src/proto/consumableitem.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.ConsumableItem"; +option csharp_namespace = "MariesWonderland.Proto.ConsumableItem"; import "proto/data.proto"; diff --git a/src/proto/contentsstory.proto b/src/proto/contentsstory.proto index 08e4f65..010e2e3 100644 --- a/src/proto/contentsstory.proto +++ b/src/proto/contentsstory.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.ContentsStory"; +option csharp_namespace = "MariesWonderland.Proto.ContentsStory"; import "proto/data.proto"; diff --git a/src/proto/costume.proto b/src/proto/costume.proto index 4459d22..65986c3 100644 --- a/src/proto/costume.proto +++ b/src/proto/costume.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Costume"; +option csharp_namespace = "MariesWonderland.Proto.Costume"; import "proto/data.proto"; diff --git a/src/proto/data.proto b/src/proto/data.proto index 29e14b7..2ebde66 100644 --- a/src/proto/data.proto +++ b/src/proto/data.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Data"; +option csharp_namespace = "MariesWonderland.Proto.Data"; import "google/protobuf/empty.proto"; diff --git a/src/proto/deck.proto b/src/proto/deck.proto index 91a9f95..f893a87 100644 --- a/src/proto/deck.proto +++ b/src/proto/deck.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Deck"; +option csharp_namespace = "MariesWonderland.Proto.Deck"; import "proto/data.proto"; diff --git a/src/proto/dokan.proto b/src/proto/dokan.proto index b407bb2..e4bf3f6 100644 --- a/src/proto/dokan.proto +++ b/src/proto/dokan.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Dokan"; +option csharp_namespace = "MariesWonderland.Proto.Dokan"; import "proto/data.proto"; diff --git a/src/proto/explore.proto b/src/proto/explore.proto index 54b6c8c..b2706da 100644 --- a/src/proto/explore.proto +++ b/src/proto/explore.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Explore"; +option csharp_namespace = "MariesWonderland.Proto.Explore"; import "proto/data.proto"; diff --git a/src/proto/friend.proto b/src/proto/friend.proto index 0f44234..91f6d21 100644 --- a/src/proto/friend.proto +++ b/src/proto/friend.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Friend"; +option csharp_namespace = "MariesWonderland.Proto.Friend"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/gacha.proto b/src/proto/gacha.proto index f5042f5..8c03d39 100644 --- a/src/proto/gacha.proto +++ b/src/proto/gacha.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Gacha"; +option csharp_namespace = "MariesWonderland.Proto.Gacha"; import "google/protobuf/empty.proto"; import "google/protobuf/timestamp.proto"; diff --git a/src/proto/gameplay.proto b/src/proto/gameplay.proto index fd27ce5..383834f 100644 --- a/src/proto/gameplay.proto +++ b/src/proto/gameplay.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.GamePlay"; +option csharp_namespace = "MariesWonderland.Proto.GamePlay"; import "proto/gacha.proto"; import "proto/data.proto"; diff --git a/src/proto/gift.proto b/src/proto/gift.proto index 819e462..df740ef 100644 --- a/src/proto/gift.proto +++ b/src/proto/gift.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Gift"; +option csharp_namespace = "MariesWonderland.Proto.Gift"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/gimmick.proto b/src/proto/gimmick.proto index 28432c0..4424db2 100644 --- a/src/proto/gimmick.proto +++ b/src/proto/gimmick.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Gimmick"; +option csharp_namespace = "MariesWonderland.Proto.Gimmick"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/greet.proto b/src/proto/greet.proto deleted file mode 100644 index 153b666..0000000 --- a/src/proto/greet.proto +++ /dev/null @@ -1,21 +0,0 @@ -syntax = "proto3"; - -option csharp_namespace = "MariesWonderland"; - -package greet; - -// The greeting service definition. -service Greeter { - // Sends a greeting - rpc SayHello (HelloRequest) returns (HelloReply); -} - -// The request message containing the user's name. -message HelloRequest { - string name = 1; -} - -// The response message containing the greetings. -message HelloReply { - string message = 1; -} diff --git a/src/proto/individualpop.proto b/src/proto/individualpop.proto index d5d9a78..5c9c5b1 100644 --- a/src/proto/individualpop.proto +++ b/src/proto/individualpop.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.IndividualPop"; +option csharp_namespace = "MariesWonderland.Proto.IndividualPop"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/labyrinth.proto b/src/proto/labyrinth.proto index 6b25ecc..2d51223 100644 --- a/src/proto/labyrinth.proto +++ b/src/proto/labyrinth.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Labyrinth"; +option csharp_namespace = "MariesWonderland.Proto.Labyrinth"; import "proto/data.proto"; diff --git a/src/proto/loginbonus.proto b/src/proto/loginbonus.proto index ee19b76..c5be24c 100644 --- a/src/proto/loginbonus.proto +++ b/src/proto/loginbonus.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.LoginBonus"; +option csharp_namespace = "MariesWonderland.Proto.LoginBonus"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/material.proto b/src/proto/material.proto index 5db73bb..e6eb4dc 100644 --- a/src/proto/material.proto +++ b/src/proto/material.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Material"; +option csharp_namespace = "MariesWonderland.Proto.Material"; import "proto/data.proto"; diff --git a/src/proto/mission.proto b/src/proto/mission.proto index b2b133f..8054aef 100644 --- a/src/proto/mission.proto +++ b/src/proto/mission.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Mission"; +option csharp_namespace = "MariesWonderland.Proto.Mission"; import "proto/data.proto"; diff --git a/src/proto/movie.proto b/src/proto/movie.proto index 20eb697..0b0ba83 100644 --- a/src/proto/movie.proto +++ b/src/proto/movie.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Movie"; +option csharp_namespace = "MariesWonderland.Proto.Movie"; import "proto/data.proto"; diff --git a/src/proto/navicutin.proto b/src/proto/navicutin.proto index 88583ed..1793d70 100644 --- a/src/proto/navicutin.proto +++ b/src/proto/navicutin.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.NaviCutIn"; +option csharp_namespace = "MariesWonderland.Proto.NaviCutIn"; import "proto/data.proto"; diff --git a/src/proto/notification.proto b/src/proto/notification.proto index e4d9906..1b89af5 100644 --- a/src/proto/notification.proto +++ b/src/proto/notification.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Notification"; +option csharp_namespace = "MariesWonderland.Proto.Notification"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/omikuji.proto b/src/proto/omikuji.proto index 04509af..7e704fa 100644 --- a/src/proto/omikuji.proto +++ b/src/proto/omikuji.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Omikuji"; +option csharp_namespace = "MariesWonderland.Proto.Omikuji"; import "proto/data.proto"; diff --git a/src/proto/parts.proto b/src/proto/parts.proto index dd10409..2f21bf8 100644 --- a/src/proto/parts.proto +++ b/src/proto/parts.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Parts"; +option csharp_namespace = "MariesWonderland.Proto.Parts"; import "proto/data.proto"; diff --git a/src/proto/portalcage.proto b/src/proto/portalcage.proto index 186ae13..c263ef5 100644 --- a/src/proto/portalcage.proto +++ b/src/proto/portalcage.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.PortalCage"; +option csharp_namespace = "MariesWonderland.Proto.PortalCage"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/pvp.proto b/src/proto/pvp.proto index 95aab18..43bbda6 100644 --- a/src/proto/pvp.proto +++ b/src/proto/pvp.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Pvp"; +option csharp_namespace = "MariesWonderland.Proto.Pvp"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/quest.proto b/src/proto/quest.proto index fba8f7b..4527a6c 100644 --- a/src/proto/quest.proto +++ b/src/proto/quest.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Quest"; +option csharp_namespace = "MariesWonderland.Proto.Quest"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/reward.proto b/src/proto/reward.proto index 7c83961..762db9d 100644 --- a/src/proto/reward.proto +++ b/src/proto/reward.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Reward"; +option csharp_namespace = "MariesWonderland.Proto.Reward"; import "google/protobuf/empty.proto"; import "proto/pvp.proto"; diff --git a/src/proto/shop.proto b/src/proto/shop.proto index 53eceb8..f6e92af 100644 --- a/src/proto/shop.proto +++ b/src/proto/shop.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Shop"; +option csharp_namespace = "MariesWonderland.Proto.Shop"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/sidestoryquest.proto b/src/proto/sidestoryquest.proto index 48dcb12..bcbf0a3 100644 --- a/src/proto/sidestoryquest.proto +++ b/src/proto/sidestoryquest.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.SideStoryQuest"; +option csharp_namespace = "MariesWonderland.Proto.SideStoryQuest"; import "proto/data.proto"; diff --git a/src/proto/tutorial.proto b/src/proto/tutorial.proto index 0183a21..940ba37 100644 --- a/src/proto/tutorial.proto +++ b/src/proto/tutorial.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Tutorial"; +option csharp_namespace = "MariesWonderland.Proto.Tutorial"; import "proto/data.proto"; import "proto/deck.proto"; diff --git a/src/proto/user.proto b/src/proto/user.proto index f7655e4..5020f9e 100644 --- a/src/proto/user.proto +++ b/src/proto/user.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.User"; +option csharp_namespace = "MariesWonderland.Proto.User"; import "google/protobuf/empty.proto"; import "proto/data.proto"; diff --git a/src/proto/weapon.proto b/src/proto/weapon.proto index 0c0c60d..a0f2489 100644 --- a/src/proto/weapon.proto +++ b/src/proto/weapon.proto @@ -1,6 +1,6 @@ syntax = "proto3"; -option csharp_namespace = "Art.Framework.ApiNetwork.Grpc.Api.Weapon"; +option csharp_namespace = "MariesWonderland.Proto.Weapon"; import "proto/data.proto";