Character episode chapters are now playable.

This commit is contained in:
Kei-Luna
2026-05-19 16:57:22 +09:00
parent 1938095ea5
commit 9a9ae13da0
4 changed files with 24 additions and 1 deletions

View File

@@ -0,0 +1,14 @@
namespace MikuSB.Data.Excel;
[ResourceEntity("challenge/role/level.json")]
public class RoleLevelExcel : ExcelResource
{
public uint ID { get; set; }
public override uint GetId() => ID;
public override void Loaded()
{
GameData.RoleLevelData[ID] = this;
}
}

View File

@@ -13,6 +13,7 @@ public static class GameData
public static Dictionary<int, BreakLevelLimitExcel> BreakLevelLimitData { get; private set; } = []; public static Dictionary<int, BreakLevelLimitExcel> BreakLevelLimitData { get; private set; } = [];
public static Dictionary<int, RecycleExcel> RecycleData { get; private set; } = []; public static Dictionary<int, RecycleExcel> RecycleData { get; private set; } = [];
public static Dictionary<uint, ChapterLevelExcel> ChapterLevelData { get; private set; } = []; public static Dictionary<uint, ChapterLevelExcel> ChapterLevelData { get; private set; } = [];
public static Dictionary<uint, RoleLevelExcel> RoleLevelData { get; private set; } = [];
public static Dictionary<uint, ArItemExcel> ArItemData { get; private set; } = []; public static Dictionary<uint, ArItemExcel> ArItemData { get; private set; } = [];
public static Dictionary<uint, ManifestationExcel> ManifestationData { get; private set; } = []; public static Dictionary<uint, ManifestationExcel> ManifestationData { get; private set; } = [];
public static Dictionary<uint, Rogue3DDifficultExcel> Rogue3DDifficultData { get; private set; } = []; public static Dictionary<uint, Rogue3DDifficultExcel> Rogue3DDifficultData { get; private set; } = [];

View File

@@ -425,6 +425,14 @@ public class PlayerInstance(PlayerGameData data)
yield return (22, levelId, 1_700_000_000); yield return (22, levelId, 1_700_000_000);
} }
// Role fragment chapters use Condition.PRE_LEVEL against Launch.GPASSID as well.
// Mark every role level as cleared so character-specific stages beyond the first one unlock.
foreach (var levelId in GameData.RoleLevelData.Keys)
{
yield return (21, levelId, 7);
yield return (22, levelId, 1_700_000_000);
}
foreach (var guide in GameData.GuideData.Values) foreach (var guide in GameData.GuideData.Values)
{ {
yield return (4, guide.ID, 999); yield return (4, guide.ID, 999);

View File

@@ -1 +1 @@
v=3.5 v=3.6