public static void OnBotVarUpdatedGuild(ulong guildId, BotVar botVar) { if (botVar.TryConvert(out EventLoggerSettings newSettings)) { GuildEventLoggerSettings[guildId] = newSettings; } }
private static void OnBotVarUpdated(BotVar botvar) { if (!string.IsNullOrWhiteSpace(botvar.String)) { storedMessagePrefix = botvar.String; } }
private void OnBotVarUpdate(ulong guildId, BotVar var) { if (var.IsString && !string.IsNullOrEmpty(var.String)) { Prefix = var.String; } }
private static void OnBotVarUpdated(ulong guildid, BotVar var) { if (var.Identifier == "defaultguildchannelmeta" && var.TryConvert(out GuildChannelMeta newGuildDefault)) { guildDefaults[guildid] = newGuildDefault; } }
private void OnBotVarUpdate(BotVar var) { if (var.IsString && !string.IsNullOrEmpty(var.String)) { prefix = var.String; } }
internal static void LoadSettings(ulong guildId, BotVar var) { if (var.IsGeneric) { JSONContainer json = var.Generic; if (json.TryGetField(JSON_ENABLEDEBUG, out JSONContainer debugSettings)) { if (debugSettings.IsArray) { for (int i = 0; i < debugSettings.Array.Count && i < debugLogging.Length; i++) { debugLogging[i] = debugSettings.Array[i].Boolean; } } } json.TryGetField(JSON_MODERATORROLE, out AdminRole); json.TryGetField(JSON_WELCOMINGMESSAGE, out welcomingMessage, welcomingMessage); json.TryGetField(JSON_MUTEROLE, out MuteRole); if (json.TryGetField(JSON_CHANNELINFOS, out JSONContainer guildChannelInfoContainer)) { GuildChannelHelper.FromJSON(guildChannelInfoContainer); } if (json.TryGetArrayField(JSON_AUTOASSIGNROLEIDS, out JSONContainer autoAssignRoles)) { foreach (JSONField idField in autoAssignRoles.Array) { if (idField.IsNumber && !idField.IsFloat && !idField.IsSigned) { EventLogger.AutoAssignRoleIds.Add(idField.Unsigned_Int64); } } } } }
private static void SetupBotVarDefaults() { BotVar defaultColor = new BotVar("embedcolor", new ColorBotVar(new Color(255, 255, 255))); BotVarCollection.SetDefault(defaultColor); BotVarManager.GlobalBotVars.SubscribeToBotVarUpdateEvent(OnBotVarUpdated, "botadmins", "embedcolor"); MessageHandler.SetupBotVarSubscription(); ExceptionHandler.SetupBotVar(); OnBotVarDefaultSetup?.Invoke(); }
private static void OnBotVarUpdated(ulong guildId, BotVar var) { if (var.IsString) { if (var.Identifier == "inara_appname") { inara_appname = var.String; } else if (var.Identifier == "inara_apikey") { inara_apikey = var.String; } } }
private static void OnBotVarUpdated(ulong guildId, BotVar var) { switch (var.Identifier) { case "botadmins": if (var.TryConvert(out ULongHashsetBotVar newBotAdmins)) { botAdmins = newBotAdmins; } break; case "embedcolor": if (var.TryConvert(out ColorBotVar color)) { EmbedColor = color.C; } break; } }
private static void OnBotVarsUpdated(BotVar var) { if (var.IsUnsignedInt64) { switch (var.Identifier) { case "exceptionhandler.guildid": GuildId = var.UInt64; break; case "exceptionhandler.roleid": RoleId = var.UInt64; break; case "exceptionhandler.channelid": ChannelId = var.UInt64; break; } } }
protected override Task <ArgumentParseResult> ParseArguments(IDMCommandContext context) { if (context.Arguments.TotalCount == 0) { mode = CommandMode.listall; return(Task.FromResult(ArgumentParseResult.DefaultNoArguments)); } if (context.Arguments.First.ToLower() == "save") { mode = CommandMode.save; return(Task.FromResult(ArgumentParseResult.SuccessfullParse)); } BotVarId = context.Arguments.First; BotVarManager.TryGetBotVar(BotVarId, out BotVar); if (context.Arguments.TotalCount == 1) { mode = CommandMode.get; if (BotVar.IsDefined) { return(Task.FromResult(ArgumentParseResult.SuccessfullParse)); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[0], $"Couldn't locate a config variable named `{BotVarId}`!"))); } } else { mode = CommandMode.set; } context.Arguments.Index++; if (context.Arguments.First.ToLower() == "delete") { mode = CommandMode.delete; if (!BotVar.IsDefined) { return(Task.FromResult(new ArgumentParseResult(Arguments[0], $"Couldn't locate a config variable named `{BotVarId}`!"))); } else { return(Task.FromResult(ArgumentParseResult.SuccessfullParse)); } } if (context.Arguments.TotalCount == 2) { return(Task.FromResult(new ArgumentParseResult(Arguments[2], "Cannot assign an empty value!"))); } if (!Enum.TryParse(context.Arguments.First, true, out assignType)) { return(Task.FromResult(new ArgumentParseResult(Arguments[1]))); } if (assignType == BotVarType.Undefined) { return(Task.FromResult(new ArgumentParseResult(Arguments[1]))); } context.Arguments.Index++; value = context.Arguments.First; switch (assignType) { case BotVarType.UInt64: if (ulong.TryParse(value, out ulong uint64Val)) { BotVar = new BotVar(BotVarId, uint64Val); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[2]))); } break; case BotVarType.Int64: if (long.TryParse(value, out long int64Val)) { BotVar = new BotVar(BotVarId, int64Val); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[2]))); } break; case BotVarType.Float64: if (double.TryParse(value, out double float64Val)) { BotVar = new BotVar(BotVarId, float64Val); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[2]))); } break; case BotVarType.String: BotVar = new BotVar(BotVarId, value); break; case BotVarType.Bool: if (bool.TryParse(value, out bool boolVal)) { BotVar = new BotVar(BotVarId, boolVal); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[2]))); } break; case BotVarType.Generic: if (JSONContainer.TryParse(value, out JSONContainer json, out string error)) { BotVar = new BotVar(BotVarId, json); } else { return(Task.FromResult(new ArgumentParseResult(Arguments[2], error))); } break;