public string GetAnswerFromQuestion(Enigma enigma) { Utils.SlowConsoleWriter(" Le Boss vous pose cette colle : " + enigma.Question); Utils.SlowConsoleWriter("\n 0 : " + enigma.AnswerA + " \n 1 : " + enigma.AnswerB + "\n"); string Response = Console.ReadLine(); return(Response); }
public void StartBossTurn(Player player, Monster monster, Enigma enigma) { // get boss questions double attackForce; double evasionForce; attackForce = player.Item.BaseAttack; evasionForce = monster.Evasion; var resultFromRollDice = Randoming.RollDices(attackForce, evasionForce); var param = new { attack = 0, evasion = 1 }; Utils.SlowConsoleWriter(resultFromRollDice[param.attack] + " / " + resultFromRollDice[param.evasion]); double damageDeal; // begin interactive phase var Response = GetAnswerFromQuestion(enigma); while (Response != "0" && Response != "1") { Utils.SlowConsoleWriter(" Veuillez entrer une réponse valide ! "); Response = GetAnswerFromQuestion(enigma); } ; if (Response == "0") { Response = enigma.AnswerA; } else { Response = enigma.AnswerB; } if (Response == enigma.Answer) { damageDeal = (resultFromRollDice[param.attack] - (resultFromRollDice[param.attack] * (resultFromRollDice[param.evasion] == 0 ? (1 / 100) : (resultFromRollDice[param.evasion] / 100)))) * 2; Utils.SlowConsoleWriter("Bonne réponse ! Vous attaquez avec un bonus ! "); Utils.SlowConsoleWriter("Vous infligez " + damageDeal + " de dégat !"); monster.Health -= (damageDeal); Utils.SlowConsoleWriter("Il lui reste : " + monster.Health + "hp"); } else { damageDeal = (resultFromRollDice[param.attack] - (resultFromRollDice[param.attack] * (resultFromRollDice[param.evasion] == 0 ? (1 / 100) : (resultFromRollDice[param.evasion] / 100)))) * 0.2; Utils.SlowConsoleWriter("Mauvaise réponse ! Vous attaquez avec un malus !"); Utils.SlowConsoleWriter("Vous infligez " + damageDeal + " de dégat !"); monster.Health -= (damageDeal); Utils.SlowConsoleWriter("Il lui reste : " + monster.Health + "hp"); } }
public void StartGame() { var item = new ItemRepository(); var items = item.GetItems(); var lootphase = new Lootphase(); Console.WriteLine("Heuh j'ai affaire à qui la ?? (Entrez votre nom) :"); var playerName = Console.ReadLine(); var dialogue = new DialogueRepository(); dialogue.ShowDialogue("Intro", dialogue.GetDialogue(), Utils.random); var playerItem = lootphase.DroppedItems(items, Utils.random); var player = new Player(0, playerName, Utils.random.Next(25, 100), playerItem.IdItem, playerItem, Utils.random.Next(5, 25)); var monster = new MonsterRepository(); var monsters = monster.GetMonsters(); var stage = new Stage(); var dialogues = dialogue.GetDialogue(); var resultstage = stage.StartStage(player, monsters, monster, items, dialogues); if (resultstage == true) { int i = 0; do { resultstage = stage.StartStage(player, monsters, monster, items, dialogues); i++; }while (resultstage == true && i < 4); if (resultstage == true) { var bossbattle = new BossBattle(); var enigma = new EnigmaRepository(); var ramdomEnigma = new Enigma(); bool bossbatlleresult = bossbattle.BossBattleResult(player, monster.MonsterChoosen(monsters, Utils.random), enigma.GetEnigma()); } } else { Console.WriteLine("Vous avez perdu !"); } }