private Task Client_UserBanned(SocketUser arg1, SocketGuild arg2) { Program.LogConsole("ADMINISTRATION", ConsoleColor.Red, $"User {arg1.Username} has been banned."); UserDataService.On_UserLeft(arg1 as SocketGuildUser); return(Task.CompletedTask); }
private Task OnVoiceStateUpdated(SocketUser arg1, SocketVoiceState arg2, SocketVoiceState arg3) { if (!UserDataService.HasGottenFirstConnectionToVoiceOfDay(arg1) && arg3.VoiceChannel != null && arg3.VoiceChannel.Id != 601175267817291822) { UserDataService.GrantExp(20, arg1, false, true); UserDataService.GrantDrak(5, arg1); } return(Task.CompletedTask); }
private void On_MidnightTimer(object sender, ElapsedEventArgs e) { UserDataService.On_MidnightTimer(); UserDataService.BackupUserData(); GiveAwayService.BackupGiveAways(); CleanBackups(); midnightTimer = new Timer((DateTime.Today.AddDays(1) - DateTime.Now).TotalMilliseconds); midnightTimer.AutoReset = false; midnightTimer.Elapsed += On_MidnightTimer; }
public Task Client_Ready() { var wowService = _serviceProvider.GetRequiredService <WoWService>(); var userDataService = _serviceProvider.GetRequiredService <UserDataService>(); UserDataService.LoadUserData(); userDataService.InitializeRanks(_client); wowService.Initialize(); GiveAwayService.LoadGiveAways(); return(Task.CompletedTask); }
public async Task Start() { client = new DiscordSocketClient(); commandService = new CommandService(); IServiceCollection services = new ServiceCollection() .AddSingleton <WoWService>() .AddSingleton <UserDataService>() .AddSingleton <GiveAwayService>() .AddSingleton(commandService) .AddSingleton(client); serviceProvider = services.BuildServiceProvider(); commandHandler = new CommandHandler(client, commandService, serviceProvider); eventHandler = new EventHandler(client, serviceProvider); string AuthToken = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "authkey.secret"); await client.LoginAsync(TokenType.Bot, AuthToken, true); await client.StartAsync(); await client.SetGameAsync("Aequinoctium"); while (true) { string command = Console.ReadLine(); switch (command.ToLower()) { case "backup": UserDataService.BackupUserData(); GiveAwayService.BackupGiveAways(); break; case "save": UserDataService.SaveUserData(); GiveAwayService.SaveGiveAways(); break; case "load": UserDataService.LoadUserData(); GiveAwayService.LoadGiveAways(); break; case "stop": UserDataService.SaveUserData(); GiveAwayService.SaveGiveAways(); return; } } }
private void OnVoiceRewardTimer_Elapse(object sender, ElapsedEventArgs e) { Program.LogConsole("VoiceRewardTimer", ConsoleColor.Magenta, $"Elapsed -- {DateTime.Now}"); foreach (IGuildUser user in Program.guild.Users) { if (user.VoiceChannel != null && user.VoiceChannel.Id != 601175267817291822) { UserDataService.GrantExp(2, user, false, false); UserDataService.GrantDrak(0.5f, user, true); } } }
public Task Client_UserJoined(SocketGuildUser user) { if (user.Nickname != null) { Program.LogConsole("JOINLEAVEHANDLE", ConsoleColor.Cyan, $"User: {user.Nickname} has joined the Server."); } else { Program.LogConsole("JOINLEAVEHANDLE", ConsoleColor.Cyan, $"User: {user.Username} has joined the Server."); } UserDataService.On_UserJoined(user); return(Task.CompletedTask); }
public static void BuyTickets(ICommandContext context, int id, int amountToBuy) { GiveAway giveAway = GiveAways[id - 1]; switch (giveAway.state) { case GiveAwayState.Cancelled: context.Channel.SendMessageAsync("Sorry, That giveaway is cancelled! You cannot buy tickets."); return; case GiveAwayState.Ended: context.Channel.SendMessageAsync("Sorry, That giveaway has aleady ended! You cannot buy tickets."); return; case GiveAwayState.Pending: context.Channel.SendMessageAsync("Sorry, That giveaway has not yet started and is in pending status! You cannot buy tickets yet. Wait untill the status is `open`."); return; } UserDataSet userDataSet = UserDataService.UserData.FirstOrDefault(x => x.userID == context.User.Id); if (userDataSet.drak - (amountToBuy * giveAway.ticketEntryCost) < 0) { context.Channel.SendMessageAsync("Sorry, you don't have enough Draks to complete this purchase."); return; } if (giveAway.tickets.Exists(x => x.userDataSet.userID == userDataSet.userID)) { userDataSet.drak -= giveAway.ticketEntryCost * amountToBuy; TicketData ticketData = giveAway.tickets.FirstOrDefault(x => x.userDataSet.userID == userDataSet.userID); ticketData.userDataSet = userDataSet; ticketData.ticketAmount += amountToBuy; context.Channel.SendMessageAsync("Tickets have been successfully bought!"); } else { userDataSet.drak -= giveAway.ticketEntryCost * amountToBuy; TicketData ticketData = new TicketData(); ticketData.userDataSet = userDataSet; ticketData.ticketAmount += amountToBuy; giveAway.tickets.Add(ticketData); context.Channel.SendMessageAsync("Tickets have been successfully bought!"); } UserDataService.SaveUserData(); SaveGiveAways(); UpdateGiveAwayMessage(giveAway); }
private Task Client_MessageReceived(SocketMessage arg) { if (arg.Channel as IDMChannel != null && arg.Author.IsBot == false) { Program.LogConsole("MESSAGELOG", ConsoleColor.Yellow, "Messaged by user: "******" \n" + "Message: \n" + arg.Content); } else { if (!UserDataService.HasGottenFirstMessageOfTheDay(arg.Author)) { UserDataService.GrantExp(15, arg.Author, true); UserDataService.GrantDrak(2.5f, arg.Author); } } return(Task.CompletedTask); }
public async Task SetMain([Summary("CharacterName")] string characterName) { await UserDataService.SetMain(characterName, Context); }
public async Task GiftDrak([Summary("CharacterName")] IGuildUser user, [Summary("Amount of Drak")] float Amount) { await UserDataService.GiftDrak(user, Amount, Context); }
public async Task Inspect([Summary("User")] IGuildUser user) { await UserDataService.InspectUser(Context, true, user, null, null); }
public async Task GrantDrak([Summary("UserToGrant")] IUser user, [Summary("AmountToGrant")] float Amount) { UserDataService.GrantDrak(Amount, user); }
public async Task Sync() { await UserDataService.SyncChar(Context); }
public async Task ViewProfile([Summary("WhatUserToView")] IUser user) { await UserDataService.ViewProfile(user as IGuildUser, Context); }
public async Task CreateLeaderboard() { await UserDataService.CreateLeaderboard(); }
public async Task DenyLink([Summary("UserToReset")] IUser user, [Summary("CharacterName")] string charactername) { await UserDataService.DenyCharacterLink(user, charactername, Context); }
public async Task ConfirmLink([Summary("UserToConfirm")] IUser user, [Summary("CharacterName")] string charactername) { await UserDataService.ConfirmCharacterLink(user, charactername, Context); }
public async Task LinkCharacter([Summary("CharacterName")] string characterName, [Summary("CharacterRealm")] string realmName = "Silvermoon") { await UserDataService.LinkCharacter(characterName, realmName, Context); }
public async Task Inspect([Summary("CharacterName")] string characterName, [Summary("CharacterRealm")] string realmName = "Silvermoon") { await UserDataService.InspectUser(Context, false, null, characterName, realmName); }
public async Task ViewProfile() { await UserDataService.ViewProfile(Context.User as IGuildUser, Context); }
public async Task GrantXP([Summary("UserToGrant")] IUser user, [Summary("AmountToGrant")] float Amount) { UserDataService.GrantExp(Amount, user, false); }