private NowCharacter ResetCharacter(NowCharacter character) { character.Level = 1; character.Class = GetClass(); character.Strength = GetStat(); character.Dexterity = GetStat(); character.Constitution = GetStat(); character.Intelligence = GetStat(); character.Wisdom = GetStat(); character.Charisma = GetStat(); return(character); }
public void Process(SlashCommandPayload command) { var character = new NowCharacter(); var reply = new SlashCommandReply(); var action = GetAction(command.text); switch (action) { case NowActions.Checkin: reply.text = GenerateCheckin(); reply.response_type = "in_channel"; break; case NowActions.CreateCharacter: character = GetCharacter(command.team_domain, command.user_name); reply.text = String.Format("Behold {0}, a powerful {1} (Level {2}).\nStr: {3}, Dex: {4}, Con: {5}, Int: {6}, Wis: {7}, Cha: {8}", character.Name, character.Class, character.Level, character.Strength, character.Dexterity, character.Constitution, character.Intelligence, character.Wisdom, character.Charisma); reply.response_type = "in_channel"; break; case NowActions.RerollCharacter: character = RerollCharacter(command.team_domain, command.user_name); reply.text = String.Format("{0} has rerolled {1} and returned to level {2}.\nStr: {3}, Dex: {4}, Con: {5}, Int: {6}, Wis: {7}, Cha: {8}", character.Name, character.Class, character.Level, character.Strength, character.Dexterity, character.Constitution, character.Intelligence, character.Wisdom, character.Charisma); reply.response_type = "in_channel"; break; case NowActions.Help: reply.text = "/rpg..... Create or show off your character\n/rpg reroll..... Reset your character, class, stats and level\n/rpg leaderboard..... List top 10 characters on your server\n/rpg fight {name}..... Fight your character against {name}\n/rpg help..... Show this list of commands"; reply.response_type = "ephemeral"; break; case NowActions.Leaderboard: reply.text = GetLeaderboard(command.team_domain); reply.response_type = "ephemeral"; break; case NowActions.Fight: character = GetCharacter(command.team_domain, command.user_name); reply.text = Fight(command.team_domain, character.Name, command.text); reply.response_type = reply.text == "Opponent not found." ? "ephemeral" : "in_channel"; break; case NowActions.Error: default: reply.text = "Error in command string."; reply.response_type = "ephemeral"; break; } SendPost(reply, command.response_url); }
private NowCharacter CreateCharacter(string team, string name) { var character = new NowCharacter() { Id = team + name, Name = name, Class = GetClass(), Level = 1, Strength = GetStat(), Dexterity = GetStat(), Constitution = GetStat(), Intelligence = GetStat(), Wisdom = GetStat(), Charisma = GetStat() }; _mongo.Save <NowCharacter>(character); return(character); }