1
0
Fork 0
forked from aly/qstbak

muffin v7.5.0

This commit is contained in:
alydev 2026-05-01 05:17:35 +10:00
parent afafd5e377
commit a6481e7b9a
67 changed files with 4281 additions and 2372 deletions

View file

@ -25,9 +25,9 @@ internal sealed class TerritoryData
private readonly ImmutableDictionary<uint, string> _territoryNames;
private readonly ImmutableHashSet<ushort> _territoriesWithMount;
private readonly ImmutableHashSet<uint> _territoriesWithMount;
private readonly ImmutableDictionary<ushort, uint> _dutyTerritories;
private readonly ImmutableDictionary<uint, uint> _dutyTerritories;
private readonly ImmutableDictionary<uint, string> _instanceNames;
@ -50,10 +50,10 @@ internal sealed class TerritoryData
select x).ToImmutableDictionary(x => x.RowId, x => x.Name);
_territoriesWithMount = (from x in dataManager.GetExcelSheet<TerritoryType>()
where x.RowId != 0 && x.Mount
select (ushort)x.RowId).ToImmutableHashSet();
select x.RowId).ToImmutableHashSet();
_dutyTerritories = (from x in dataManager.GetExcelSheet<TerritoryType>()
where x.RowId != 0 && x.ContentFinderCondition.RowId != 0
select x).ToImmutableDictionary((TerritoryType x) => (ushort)x.RowId, (TerritoryType x) => x.ContentFinderCondition.Value.ContentType.RowId);
select x).ToImmutableDictionary((TerritoryType x) => x.RowId, (TerritoryType x) => x.ContentFinderCondition.Value.ContentType.RowId);
_instanceNames = (from x in dataManager.GetExcelSheet<ContentFinderCondition>()
where x.RowId != 0 && x.Content.RowId != 0 && x.ContentLinkType == 1 && x.ContentType.RowId != 6
select x).ToImmutableDictionary((ContentFinderCondition x) => x.Content.RowId, (ContentFinderCondition x) => x.Name.ToDalamudString().ToString());
@ -78,12 +78,12 @@ internal sealed class TerritoryData
select (QuestId: x.QuestId, Index: x.Index, CfcId: LookupContentFinderConditionForQuestBattle(dataManager, x.QuestBattleId))).ToImmutableDictionary<(ElementId, byte, uint), (ElementId, byte), uint>(((ElementId QuestId, byte Index, uint CfcId) x) => (QuestId: x.QuestId, Index: x.Index), ((ElementId QuestId, byte Index, uint CfcId) x) => x.CfcId);
}
public string? GetName(ushort territoryId)
public string? GetName(uint territoryId)
{
return _territoryNames.GetValueOrDefault(territoryId);
}
public string GetNameAndId(ushort territoryId)
public string GetNameAndId(uint territoryId)
{
string name = GetName(territoryId);
if (name != null)
@ -99,17 +99,17 @@ internal sealed class TerritoryData
return territoryId.ToString(CultureInfo.InvariantCulture);
}
public bool CanUseMount(ushort territoryId)
public bool CanUseMount(uint territoryId)
{
return _territoriesWithMount.Contains(territoryId);
}
public bool IsDutyInstance(ushort territoryId)
public bool IsDutyInstance(uint territoryId)
{
return _dutyTerritories.ContainsKey(territoryId);
}
public bool IsQuestBattleInstance(ushort territoryId)
public bool IsQuestBattleInstance(uint territoryId)
{
if (_dutyTerritories.TryGetValue(territoryId, out var value))
{
@ -118,7 +118,7 @@ internal sealed class TerritoryData
return false;
}
public string? GetInstanceName(ushort instanceId)
public string? GetInstanceName(uint instanceId)
{
return _instanceNames.GetValueOrDefault(instanceId);
}
@ -143,7 +143,7 @@ internal sealed class TerritoryData
return false;
}
public bool TryGetContentFinderConditionIdForTerritory(ushort territoryId, out uint cfcId)
public bool TryGetContentFinderConditionIdForTerritory(uint territoryId, out uint cfcId)
{
return _territoryToContentFinderCondition.TryGetValue(territoryId, out cfcId);
}
@ -187,6 +187,6 @@ internal sealed class TerritoryData
{
return dataManager.GetExcelSheet<InstanceContent>().GetRow(questBattleId).ContentFinderCondition.RowId;
}
return dataManager.GetExcelSheet<QuestBattleResident>().GetRow(questBattleId).Unknown0;
return dataManager.GetExcelSheet<QuestBattleResident>().GetRow(questBattleId).SoloDuty.RowId;
}
}