diff --git a/GameServer/Controllers/RoleController.cs b/GameServer/Controllers/RoleController.cs index 3c28fe4..81fcf6c 100644 --- a/GameServer/Controllers/RoleController.cs +++ b/GameServer/Controllers/RoleController.cs @@ -57,33 +57,30 @@ internal class RoleController : Controller [NetEvent(MessageId.ResonantChainUnlockRequest)] public RpcResult OnResonantChainUnlockRequest(ResonantChainUnlockRequest request, ModelManager modelManager, ConfigManager configManager) { - roleInfo _roleInfo = modelManager.Roles.Roles.Find(r => r.RoleId == request.RoleId)!; - - if (_roleInfo != null) + roleInfo? role = modelManager.Roles.Roles.Find(r => r.RoleId == request.RoleId)!; + + if (role != null) { RoleInfoConfig roleConfig = configManager.GetConfig(request.RoleId)!; - - if (roleConfig != null) + + int resonantChainGroupId = roleConfig.ResonantChainGroupId; + + // Todo: add buff by _resonantChainGroupId + + int curr = role.ResonantChainGroupIndex; + int next = Math.Min(curr + 1, 6); + role.ResonantChainGroupIndex = next; + + return Response(MessageId.ResonantChainUnlockResponse, new ResonantChainUnlockResponse { - int _resonantChainGroupId = roleConfig.ResonantChainGroupId; - - // Todo: add buff by _resonantChainGroupId - - int _curr = _roleInfo.ResonantChainGroupIndex; - int _next = Math.Min(_curr + 1, 6); - _roleInfo.ResonantChainGroupIndex = _next; - - return Response(MessageId.ResonantChainUnlockResponse, new ResonantChainUnlockResponse - { - RoleId = request.RoleId, - ResonantChainGroupIndex = _next - }); - } + RoleId = request.RoleId, + ResonantChainGroupIndex = next + }); } - + return Response(MessageId.ResonantChainUnlockResponse, new ResonantChainUnlockResponse { - RoleId = request.RoleId, + ErrCode = (int)ErrorCode.ErrRoleResonNotActive }); }