public async Task NinjaShow(SocketUser user) { try { await ReplyAsync("", false, NinjaProfile.GetOrCreate(user.Id).CreateEmbed(Context.Client)); } catch (Exception e) { await ReplyAsync(e.Message + "\n```\n" + e.StackTrace + "\n```"); } }
public async Task NinjaNoPrestige(SocketUser user, int exp) { if (!Context.User.IsAdmin()) { await ReplyAsync("Sorry, only admins can use this command."); return; } NinjaProfile.GetOrCreate(user.Id).Tokens = 0; }
public async Task NinjaGive(SocketUser user, int exp) { if (!Context.User.IsAdmin()) { await ReplyAsync("Sorry, only admins can use this command."); return; } NinjaProfile.GetOrCreate(user.Id)?.GiveExp(exp); }
public NinjaGame(ulong challenger, ulong defender, IMessageChannel responseChannel) { Response = responseChannel; Challenger = NinjaProfile.Profiles[challenger]; Defender = NinjaProfile.Profiles[defender]; Challenger.CurrentHP = (int)(Challenger.CurrentHP * 1 - Defender.Skills.CheckForLevel(2) * 0.05); Defender.CurrentHP = (int)(Defender.CurrentHP * 1 - Challenger.Skills.CheckForLevel(2) * 0.05); Display = new NinjaDisplay(Response, Challenger.UserId, Defender.UserId, Defender.ChallengeMessage); Challenger.Game = this; Defender.Game = this; }
public async Task NinjaPrestige() { var profile = NinjaProfile.GetOrCreate(Context.User.Id); var result = profile.Prestige(); if (result == 0) { await ReplyAsync("Pfft... level up a bit!"); } else { await ReplyAsync("You have obtained " + result + " prestige token(s)! " + "You feel like you are able to learn faster now..."); } }
public async Task Ninja(SocketUser user) { ulong challenger = Context.User.Id, defender = user.Id; if (challenger == defender) { await ReplyAsync("Hey... you can't challenge yourself!"); } else if (NinjaProfile.GetOrCreate(challenger).Game != null || NinjaProfile.GetOrCreate(defender).Game != null) { await ReplyAsync("One of you are still engaged in combat. Wait for your next chance to attack!"); } else { NinjaGame.Games.Add(new NinjaGame(challenger, defender, Context.Channel)); } }
public NinjaProfile CreateProfile() { var profile = new NinjaProfile(UserId) { MaxHP = MaxHP, CurrentHP = CurrentHP, MaxStamina = MaxStamina, CurrentStamina = MaxStamina, HitMinimum = HitMinimum, HitMaximum = HitMaximum, Speed = Speed, ExpLevel = ExpLevel, Level = NinjaLevel.Levels[LevelIndex], ChallengeMessage = ChallengeMessage }; foreach (var save in Skills) { profile.Skills.Add(save.CreateSkill()); } return(profile); }
public async Task NinjaChangeMessage([Remainder] string message) { NinjaProfile.GetOrCreate(Context.User.Id).ChallengeMessage = message; await ReplyAsync("Your challenge message has been changed!"); }