public async Task ScratchoffCasino() { var handler = new UserAccounts(); if (handler.GetUserAccount(Context.User.Id).Balance < 100) { await Context.Channel.SendMessageAsync("", false, Utilities.SendEmbedMessage("◆ You can't afford purchasing a scratch off ticket.", Utilities.Colors.Red)); return; } handler.TakeUserAccountBalance(Context.User.Id, 100); var result = GetResult(); var embed = new EmbedBuilder() { Color = new Color(255, 255, 255), Author = new EmbedAuthorBuilder() { IconUrl = Context.User.GetAvatarUrl(), Name = Context.User.ToString() }, Title = result.IsWin ? $"You bought a scratch off ticket and won ${result.Amount}!" : "You bought a scratch off ticket and lost. Better luck next time!", ImageUrl = result.Url, }; if (result.Amount > 0) { handler.AddUserAccountBalance(Context.User.Id, result.Amount); } await Context.Channel.SendMessageAsync("", false, embed.Build()); }
public async Task AddUserBalance(SocketGuildUser user, int amount = 0) { if (user is null || amount > int.MaxValue || amount < 1 || !Utilities.UserHasPermission(Context.User as SocketGuildUser, GuildPermission.Administrator)) { return; } var handler = new UserAccounts(); handler.AddUserAccountBalance(user.Id, amount); await Context.Channel.SendMessageAsync($"Added ${Convert.ToDecimal(amount).ToString("#,##0.00")} to **{user.Username}**."); }
public async Task PayUser(SocketGuildUser user, double amount) { var handler = new UserAccounts(); if (handler.GetUserAccount(Context.User.Id) is null || handler.GetUserAccount(user.Id) is null || handler.GetUserAccount(Context.User.Id).Balance < amount || amount < 1) { await Context.Channel.SendMessageAsync("", false, Utilities.SendEmbedMessage("◆ Could not pay this user.", Utilities.Colors.Red)); return; } handler.TakeUserAccountBalance(Context.User.Id, amount); handler.AddUserAccountBalance(user.Id, amount); await Context.Channel.SendMessageAsync("", false, Utilities.SendEmbedMessage($"◆ You paid **{user.Username}** ${amount}.", Utilities.Colors.Green)); }