diff --git a/Capability/GameFrameX.Capability.Online.Competition/OnlineCompetitionCapabilityModule.cs b/Capability/GameFrameX.Capability.Online.Competition/OnlineCompetitionCapabilityModule.cs
index fe5691b81..0e27c8809 100644
--- a/Capability/GameFrameX.Capability.Online.Competition/OnlineCompetitionCapabilityModule.cs
+++ b/Capability/GameFrameX.Capability.Online.Competition/OnlineCompetitionCapabilityModule.cs
@@ -71,8 +71,8 @@ public sealed class OnlineCompetitionCapabilityModule : ICapabilityModule, IAdmi
null,
new[]
{
- new CapabilityOptionalDependency("online-assets", Localization.Keys.Capability.Online.Competition.OptionalAssetsAbsent),
- new CapabilityOptionalDependency("online-match", Localization.Keys.Capability.Online.Competition.OptionalMatchAbsent),
+ new CapabilityOptionalDependency("online-assets", Localization.Keys.Capability.OnlineModule.Competition.OptionalAssetsAbsent),
+ new CapabilityOptionalDependency("online-match", Localization.Keys.Capability.OnlineModule.Competition.OptionalMatchAbsent),
},
typeof(OnlineCompetitionOptions));
diff --git a/Capability/GameFrameX.Capability.Online.Match/OnlineMatchCapabilityModule.cs b/Capability/GameFrameX.Capability.Online.Match/OnlineMatchCapabilityModule.cs
index ff20562e7..21c7f2b73 100644
--- a/Capability/GameFrameX.Capability.Online.Match/OnlineMatchCapabilityModule.cs
+++ b/Capability/GameFrameX.Capability.Online.Match/OnlineMatchCapabilityModule.cs
@@ -75,8 +75,8 @@ public sealed class OnlineMatchCapabilityModule : ICapabilityModule, IAdminActio
null,
new[]
{
- new CapabilityOptionalDependency("online-assets", Keys.Capability.Online.Match.OptionalAssetsAbsent),
- new CapabilityOptionalDependency("online-matchmaking", Keys.Capability.Online.Match.OptionalMatchmakingAbsent),
+ new CapabilityOptionalDependency("online-assets", Keys.Capability.OnlineModule.Match.OptionalAssetsAbsent),
+ new CapabilityOptionalDependency("online-matchmaking", Keys.Capability.OnlineModule.Match.OptionalMatchmakingAbsent),
},
typeof(OnlineMatchOptions));
diff --git a/Capability/GameFrameX.Capability.Online.Operations/OnlineOperationsCapabilityModule.cs b/Capability/GameFrameX.Capability.Online.Operations/OnlineOperationsCapabilityModule.cs
index cb82c243f..e45c93217 100644
--- a/Capability/GameFrameX.Capability.Online.Operations/OnlineOperationsCapabilityModule.cs
+++ b/Capability/GameFrameX.Capability.Online.Operations/OnlineOperationsCapabilityModule.cs
@@ -83,10 +83,10 @@ public sealed class OnlineOperationsCapabilityModule : ICapabilityModule, IAdmin
new[] { "online-foundation" },
new[]
{
- new CapabilityOptionalDependency("online-assets", Localization.Keys.Capability.Online.Operations.OptionalAssetsAbsent),
- new CapabilityOptionalDependency("online-social", Localization.Keys.Capability.Online.Operations.OptionalSocialAbsent),
- new CapabilityOptionalDependency("online-match", Localization.Keys.Capability.Online.Operations.OptionalMatchAbsent),
- new CapabilityOptionalDependency("online-matchmaking", Localization.Keys.Capability.Online.Operations.OptionalMatchmakingAbsent),
+ new CapabilityOptionalDependency("online-assets", Localization.Keys.Capability.OnlineModule.Operations.OptionalAssetsAbsent),
+ new CapabilityOptionalDependency("online-social", Localization.Keys.Capability.OnlineModule.Operations.OptionalSocialAbsent),
+ new CapabilityOptionalDependency("online-match", Localization.Keys.Capability.OnlineModule.Operations.OptionalMatchAbsent),
+ new CapabilityOptionalDependency("online-matchmaking", Localization.Keys.Capability.OnlineModule.Operations.OptionalMatchmakingAbsent),
},
typeof(OnlineOperationsOptions));
diff --git a/GameFrameX.Localization/Keys.Capability.cs b/GameFrameX.Localization/Keys.Capability.cs
index 437d15ed6..bc3646a77 100644
--- a/GameFrameX.Localization/Keys.Capability.cs
+++ b/GameFrameX.Localization/Keys.Capability.cs
@@ -654,7 +654,7 @@ public static class Assembly
///
/// Online 能力族相关消息
///
- public static class Online
+ public static class OnlineModule
{
///
/// online-match(对局)能力相关消息
diff --git a/Tests/GameFrameX.Tests/Online/CapabilityDependencyCheckTests.cs b/Tests/GameFrameX.Tests/Online/CapabilityDependencyCheckTests.cs
index 319e59c19..9f79353d7 100644
--- a/Tests/GameFrameX.Tests/Online/CapabilityDependencyCheckTests.cs
+++ b/Tests/GameFrameX.Tests/Online/CapabilityDependencyCheckTests.cs
@@ -183,7 +183,7 @@ public async Task Compose_MissingOptionalDependency_AssemblesAndDisclosesAbsentF
CapabilityRuntime runtime = null;
try
{
- var featureKey = LocalizationKeys.Capability.Online.Match.OptionalAssetsAbsent;
+ var featureKey = LocalizationKeys.Capability.OnlineModule.Match.OptionalAssetsAbsent;
var registerInvoked = false;
MechanismScenario.First.Optional = new[] { new CapabilityOptionalDependency("ghost-optional", featureKey), };
MechanismScenario.First.Register = context => registerInvoked = true;
@@ -231,7 +231,7 @@ public async Task Compose_OptionalAbsenceReasons_DistinguishEnableListDisableLis
CapabilityRuntime runtime = null;
try
{
- var featureKey = LocalizationKeys.Capability.Online.Match.OptionalAssetsAbsent;
+ var featureKey = LocalizationKeys.Capability.OnlineModule.Match.OptionalAssetsAbsent;
MechanismScenario.First.Optional = new[]
{
new CapabilityOptionalDependency("mech-second", featureKey),
diff --git a/Tests/GameFrameX.Tests/Online/CapabilityServiceSharingTests.cs b/Tests/GameFrameX.Tests/Online/CapabilityServiceSharingTests.cs
index 8201268f1..c5dd51376 100644
--- a/Tests/GameFrameX.Tests/Online/CapabilityServiceSharingTests.cs
+++ b/Tests/GameFrameX.Tests/Online/CapabilityServiceSharingTests.cs
@@ -453,7 +453,7 @@ public async Task GetOptionalService_DeclaredOptionalDependencyAbsent_ReturnsNul
{
var registerResolved = new SignalService { Marker = "sentinel", };
var activateResolved = new SignalService { Marker = "sentinel", };
- MechanismScenario.First.Optional = new[] { new CapabilityOptionalDependency("mech-second", GameFrameX.Localization.Keys.Capability.Online.Match.OptionalAssetsAbsent), };
+ MechanismScenario.First.Optional = new[] { new CapabilityOptionalDependency("mech-second", GameFrameX.Localization.Keys.Capability.OnlineModule.Match.OptionalAssetsAbsent), };
MechanismScenario.First.Register = context => registerResolved = context.GetOptionalService();
MechanismScenario.First.Activate = (context, cancellationToken) =>
{
@@ -488,7 +488,7 @@ public async Task GetOptionalService_NoAbsentOptionalDependency_FailsFast()
CapabilityRuntime runtime = null;
try
{
- MechanismScenario.First.Optional = new[] { new CapabilityOptionalDependency("mech-second", GameFrameX.Localization.Keys.Capability.Online.Match.OptionalAssetsAbsent), };
+ MechanismScenario.First.Optional = new[] { new CapabilityOptionalDependency("mech-second", GameFrameX.Localization.Keys.Capability.OnlineModule.Match.OptionalAssetsAbsent), };
MechanismScenario.First.Register = context => context.GetOptionalService();
var registerError = Assert.Throws(() => Compose(CreateOptions("mech-first", "mech-second")));
diff --git a/Tests/GameFrameX.Tests/Online/OnlineCapabilityComposeTests.cs b/Tests/GameFrameX.Tests/Online/OnlineCapabilityComposeTests.cs
index 2769d9d1a..d6b421d1e 100644
--- a/Tests/GameFrameX.Tests/Online/OnlineCapabilityComposeTests.cs
+++ b/Tests/GameFrameX.Tests/Online/OnlineCapabilityComposeTests.cs
@@ -745,8 +745,8 @@ await OnlineCapabilityTestHarness.WithRuntimeAsync(async runtime =>
}
Assert.Equal(2, match.AbsentFeatures.Count);
- Assert.Contains(LocalizationService.GetString(GameFrameX.Localization.Keys.Capability.Online.Match.OptionalAssetsAbsent), match.AbsentFeatures);
- Assert.Contains(LocalizationService.GetString(GameFrameX.Localization.Keys.Capability.Online.Match.OptionalMatchmakingAbsent), match.AbsentFeatures);
+ Assert.Contains(LocalizationService.GetString(GameFrameX.Localization.Keys.Capability.OnlineModule.Match.OptionalAssetsAbsent), match.AbsentFeatures);
+ Assert.Contains(LocalizationService.GetString(GameFrameX.Localization.Keys.Capability.OnlineModule.Match.OptionalMatchmakingAbsent), match.AbsentFeatures);
Assert.Contains(runtime.Host.Modules, module => module.Manifest.Id == "online-match");
await runtime.Host.StartAsync();