From ea69de65854d5182d3a648c0fae8bb088f95dd9b Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 29 Sep 2026 04:46:32 +0000 Subject: [PATCH] Fix the Dapr guild server build after the role assign change c51d62bd added a masterTotalLevel parameter to IGuildServer.ChangeGuildMemberPositionByNameAsync, for the battle master limit. The real implementation and its caller were updated, but the two Dapr projects were not, so MUnique.OpenMU.ServerClients no longer implements the interface: src/Dapr/ServerClients/GuildServer.cs(15,28): error CS0535: 'GuildServer' does not implement interface member 'IGuildServer.ChangeGuildMemberPositionByNameAsync(uint, string, GuildPosition, int)' The .NET Core workflow only publishes src/Startup, which doesn't reference the Dapr projects, so it stayed green while the solution build has been failing. The parameter is now carried through the Dapr path as well: the arguments record gained the field, the client forwards it, and the host controller passes it on to the guild server. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01UYEj5xw6iAJKEoDX3hyMZh --- src/Dapr/GuildServer.Host/GuildServerController.cs | 2 +- .../ServerClients/GuildMemberRoleChangeByNameArguments.cs | 2 +- src/Dapr/ServerClients/GuildServer.cs | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Dapr/GuildServer.Host/GuildServerController.cs b/src/Dapr/GuildServer.Host/GuildServerController.cs index 7254e1e63..c5d1b808c 100644 --- a/src/Dapr/GuildServer.Host/GuildServerController.cs +++ b/src/Dapr/GuildServer.Host/GuildServerController.cs @@ -170,7 +170,7 @@ public ValueTask ChangeGuildMemberPositionAsync([FromBody] GuildMemberRoleChange [HttpPost(nameof(IGuildServer.ChangeGuildMemberPositionByNameAsync))] public ValueTask ChangeGuildMemberPositionByNameAsync([FromBody] GuildMemberRoleChangeByNameArguments data) { - return this._guildServer.ChangeGuildMemberPositionByNameAsync(data.GuildId, data.CharacterName, data.NewRole); + return this._guildServer.ChangeGuildMemberPositionByNameAsync(data.GuildId, data.CharacterName, data.NewRole, data.MasterTotalLevel); } /// diff --git a/src/Dapr/ServerClients/GuildMemberRoleChangeByNameArguments.cs b/src/Dapr/ServerClients/GuildMemberRoleChangeByNameArguments.cs index 259debd99..6867bbcab 100644 --- a/src/Dapr/ServerClients/GuildMemberRoleChangeByNameArguments.cs +++ b/src/Dapr/ServerClients/GuildMemberRoleChangeByNameArguments.cs @@ -9,4 +9,4 @@ namespace MUnique.OpenMU.ServerClients; /// /// Arguments for a guild member role change by character name. /// -public record GuildMemberRoleChangeByNameArguments(uint GuildId, string CharacterName, GuildPosition NewRole); +public record GuildMemberRoleChangeByNameArguments(uint GuildId, string CharacterName, GuildPosition NewRole, int MasterTotalLevel); diff --git a/src/Dapr/ServerClients/GuildServer.cs b/src/Dapr/ServerClients/GuildServer.cs index 60f57957b..bd0921382 100644 --- a/src/Dapr/ServerClients/GuildServer.cs +++ b/src/Dapr/ServerClients/GuildServer.cs @@ -202,11 +202,11 @@ public async ValueTask ChangeGuildMemberPositionAsync(uint guildId, Guid charact } /// - public async ValueTask ChangeGuildMemberPositionByNameAsync(uint guildId, string characterName, GuildPosition role) + public async ValueTask ChangeGuildMemberPositionByNameAsync(uint guildId, string characterName, GuildPosition role, int masterTotalLevel) { try { - return await this._daprClient.InvokeMethodAsync(this._targetAppId, nameof(this.ChangeGuildMemberPositionByNameAsync), new GuildMemberRoleChangeByNameArguments(guildId, characterName, role)).ConfigureAwait(false); + return await this._daprClient.InvokeMethodAsync(this._targetAppId, nameof(this.ChangeGuildMemberPositionByNameAsync), new GuildMemberRoleChangeByNameArguments(guildId, characterName, role, masterTotalLevel)).ConfigureAwait(false); } catch (Exception ex) {