public List <RpsPlayerStatsDataModel> SetPlayerStats(RpsGameObject concludedGame) { var listStats = new List <RpsPlayerStatsDataModel>(); var p1 = new RpsPlayerStatsDataModel { Stats = new RpsPlayerStatsDataModel.PlayerStats() }; var p2 = new RpsPlayerStatsDataModel { Stats = new RpsPlayerStatsDataModel.PlayerStats() }; p1 = SetPlayerInfo(concludedGame.POne, p1); p1 = SetPlayerStatChoices(concludedGame.POne, p1); if (!SetDraw(concludedGame)) { p1 = SetWinLoss(concludedGame.POne, p1); p2 = SetWinLoss(concludedGame.PTwo, p2); } else { p1.Stats.NumberDraws += 1; p2.Stats.NumberDraws += 1; } p2 = SetPlayerInfo(concludedGame.PTwo, p2); p2 = SetPlayerStatChoices(concludedGame.PTwo, p2); listStats.Add(p1); listStats.Add(p2); return(listStats); }
public RpsPlayerStatsDataModel ConvertToPlayerStatModel(RpsPlayerGameObject GameObj) { var stats = new RpsPlayerStatsDataModel { DiscordId = GameObj.User.Id, Name = GameObj.User.Username }; return(stats); }
private static RpsPlayerStatsDataModel UpdateStatsJson(RpsPlayerStatsDataModel InfoFromFile, RpsPlayerStatsDataModel NewInfo) { InfoFromFile.Name = NewInfo.Name; InfoFromFile.Stats.NumberLosses += NewInfo.Stats.NumberLosses; InfoFromFile.Stats.NumberPaper += NewInfo.Stats.NumberPaper; InfoFromFile.Stats.NumberRocks += NewInfo.Stats.NumberRocks; InfoFromFile.Stats.NumberScissors += NewInfo.Stats.NumberScissors; InfoFromFile.Stats.NumberWins += NewInfo.Stats.NumberWins; InfoFromFile.Stats.NumberDraws += NewInfo.Stats.NumberDraws; return(InfoFromFile); }
public static EmbedBuilder RpsPlayerStats(RpsPlayerStatsDataModel stats, IUser user) { var rpsBuilder = new EmbedBuilder { Title = "Rock Paper Scissors Stats!", Description = $"{user.Username}, {BuildCustomMessage(stats)}" }; rpsBuilder.AddField("Wins: ", $"{stats.Stats.NumberWins}", true); rpsBuilder.AddField("Losses: ", $"{stats.Stats.NumberLosses}", true); rpsBuilder.AddField("Draws: ", $"{stats.Stats.NumberDraws}", true); rpsBuilder.AddField("Rocks: ", $"{stats.Stats.NumberRocks}", true); rpsBuilder.AddField("Paper: ", $"{stats.Stats.NumberPaper}", true); rpsBuilder.AddField("Scissors: ", $"{stats.Stats.NumberScissors}", true); rpsBuilder.WithColor(4124426); rpsBuilder.WithFooter("Contact Coaction#5994 for any issues. This is a work in progress."); return(rpsBuilder); }
private static string BuildCustomMessage(RpsPlayerStatsDataModel stats) { var rocks = stats.Stats.NumberRocks; var paper = stats.Stats.NumberPaper; var scissors = stats.Stats.NumberScissors; if (rocks > paper && rocks > scissors) { return("stop throwing so many rocks! You'll hurt your wenis."); } if (paper > rocks && paper > scissors) { return("you can make a lot of airplanes with that paper usage!"); } if (scissors > paper && scissors > rocks) { return("sever run with so many scissors!"); } if (rocks == 0 && scissors == 0 && paper == 0) { return("I've discovered your stats.. or lack there of!"); } return("I've discovered your stats!"); }
private static RpsPlayerStatsDataModel SetWinLoss(RpsPlayerGameObject player, RpsPlayerStatsDataModel stats) { if (player.IsWinner) { stats.Stats.NumberWins += 1; } else { stats.Stats.NumberLosses += 1; } return(stats); }
private static RpsPlayerStatsDataModel SetPlayerInfo(RpsPlayerGameObject player, RpsPlayerStatsDataModel stats) { stats.DiscordId = player.User.Id; stats.Name = player.User.Username; return(stats); }
private static RpsPlayerStatsDataModel SetPlayerStatChoices(RpsPlayerGameObject player, RpsPlayerStatsDataModel stats) { switch (player.Choice) { case "!scissors": stats.Stats.NumberScissors += 1; return(stats); case "!paper": stats.Stats.NumberPaper += 1; return(stats); case "!rock": stats.Stats.NumberRocks += 1; return(stats); default: return(stats); } }