protected override object GetParameter(IPacket <string> packet, ParameterReflector reflector, IPlayer player) { if (reflector.ParameterType == typeof(IPlayer)) { return(player); } if (reflector.ParameterType == typeof(string)) { return(packet.Data); } if (!string.IsNullOrWhiteSpace(packet.Data)) { return(JsonSerializer.Deserialize(packet.Data, reflector.ParameterType)); } logger.LogWarning($"Command:{packet.Command} invoke invaild parameter:{reflector.ParameterType}"); return(default);
protected abstract object GetParameter(IPacket <TData> packet, ParameterReflector reflector, IPlayer player);