
Well, you can choose between 3 difficulty levels ,and have to kill a monster which, depending oon the difficulty level, has 100, 200 or 300 HP.
Works perfectly fine^^
#include <iostream> #include <conio.h> #include <windows.h> #include <ctime> #include <string> using namespace std; int UserChoice; int BeastDamage; string Player; int Difficulty; int main () { cout << "Hallo. \n Wie heisst du? \n"; cin >> Player; cout << "\n Waehle bitte einen schwierigkeits grad \n"; cout << "1 fuer Leicht (Gegner hat 100 Lebenspunkte) \n 2 fuer Mittel (Gegner hat 200 Lebenspunkte) \n 3 fuer Schwer (Gegner hat 300 Lebenspunkte) \n"; cin >> Difficulty; getch(); if ( !(cin >> Difficulty) || (Difficulty != 1 && Difficulty != 2 && Difficulty != 3)) { cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), '\n'); cout << "Bitte 1 fuer Leicht, 2 fuer Mittel, oder 3 fuer Schwer eingeben! \n"; } int InitHealth = 100; int BeastHealth = 100 * Difficulty; while (BeastHealth > 0 && (Difficulty == 1 || Difficulty == 2 || Difficulty == 3 )) { cout << "Du wirst von einem Monster angegriffen! \n"; cout << "Was wirst du tun? Gib 1 ein um anzugreifen oder 2 um dich zu heilen \n"; cin >> UserChoice; cout << "Du hast " << InitHealth << " Lebenspunkte \n"; getch(); switch(UserChoice) { case 1: { int DamageDone = rand()%30; cout << "Du hast dem Monster " << DamageDone << " Lebenspunkte Abgezogen \n"; BeastHealth = BeastHealth - DamageDone; if (BeastHealth < 30) { int BeastHealed = rand()%30; BeastHealth = BeastHealth + BeastHealed; cout << "Das monster hat " << BeastHealed << " Regeneriert! \n"; } else if (BeastHealth > 30) { BeastDamage = rand()%25; InitHealth = InitHealth - BeastDamage; cout << "Das monster hat dir " << BeastDamage << " Lebenspunkte abgezogen! \n Du hast noch " << InitHealth << " Lebenspunkte \n"; } cout << "Das Monster hat noch " << BeastHealth << " Lebenspunkte \n"; if (BeastHealth < 1) { cout << "Gute arbeit, du hast Gewonnen!"; } else if (InitHealth < 1) { cout << "Das Monster hat dich getötet!"; } } break; case 2: { int Healed = rand()%30; if (BeastHealth < 30) { int BeastHealed = rand()%30; BeastHealth = BeastHealth + BeastHealed; cout << "Das monster hat " << BeastHealed << " Regeneriert! \n"; } else if (BeastHealth > 30) { BeastDamage = rand()%25; InitHealth = InitHealth - BeastDamage; cout << "Das monster hat dir " << BeastDamage << " Lebenspunkte abgezogen! \n Du hast noch " << InitHealth << " Lebenspunkte \n"; } InitHealth = InitHealth + Healed; cout << "Du hast " << Healed << " Lebenspunkter regeneriert. Du hast nun " << InitHealth << " Lebenspunkte \n \n"; } if (BeastHealth < 1) { cout << "Gute arbeit, du hast Gewonnen!"; } else if (InitHealth < 1) { cout << "Das Monster hat dich getötet!"; } if ( !(cin >> UserChoice) || (UserChoice != 1 && UserChoice != 2)) { cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), '\n'); cout << "Bitte 1 zum Angreifen oder 2 zum Heilen eingeben! \n"; } } } getch(); return 0; }
Whoops...that was the old code, updated.
Attached File(s)
-
monsterj_ger_2.0.rar (104.67K)
Number of downloads: 4
Edited by Master_Chief, 06 April 2008 - 10:36.