#include<iostream>
#include<ctime>
#include<string>
using std::cout;
using std::cin;
using std::string;
using std::system;
using std::srand;
using std::rand;
string NyttSpel();
int Level1(string &sName, int &iHp, int &iDmg_min, int &iDmg_max);
int Level1(string &sName, int &iHp, int &iDmg_min, int &iDmg_max)
{
bool bGoLevel1= true;
string sCmd;
int iCurrentHp = iHp;
int iEType;
int iEHp;
int iEDmg_min;
int iEDmg_max;
string sEName;
while (bGoLevel1)
{
srand(time(0));
system("cls");
cout << "Bana 1nMeny:n-----n[H]itta fiende att slåss medn[A]vsluta speletnVal:n";
cin >> sCmd;
if (sCmd == "h" || sCmd == "H")
{
iEType = rand() / (RAND_MAX / 3+1) + 1;
if (iEType == 1)
{
sEName = "Giftfluga";
iEHp = 4;
iEDmg_min = 2;
iEDmg_max = 3;
}
else if (iEType == 2)
{
sEName = "huggorm";
iEHp = 5;
iEDmg_min = 1;
iEDmg_max =2;
}
else if (iEType == 3)
{
sEName = "Råtta";
iEHp = 3;
iEDmg_min = 1;
iEDmg_max = 2;
}
while (true)
{
cout
<< "nSlåss mot fiende:n------------------nDu möter en " << sEName << "!n"
<< "Fiendens liv: " << iEHp << "n"
<< "Dina liv: " << iCurrentHp << "n"
<< "Meny:n-----nSlå i [m]agennSlå i [f]otennSlå i [h]uvudetnVal:n";
cin >> sCmd;
if (sCmd == "m" ||sCmd == "M")
{
if (iEType == 3)
iEHp+=2;
else if (iEType == 2)
iEHp-=2;
}
else if (sCmd == "f" || sCmd == "F")
{
if (iEType == 1)
iEHp+=1;
else if (iEType == 3)
iHp-=1;
}
else if (sCmd == "h" || sCmd == "H")
{
if (iEType == 2)
iEHp+=1;
else if (iEType == 1)
iEHp-=1;
}
iEHp -= rand() / (RAND_MAX / iDmg_max + 1) + iDmg_min;
if (iEHp <=0)
{
cout << "Du dödade monstret, bra gjort!n";
iCurrentHp = iHp;
break;
}
else
{
iCurrentHp -= rand() / (RAND_MAX / iEDmg_max + 1) + iEDmg_min;
if (iCurrentHp <=0)
{
bGoLevel1 = false;
break;
}
}
}
}
else if (sCmd =="a" || sCmd == "A")
{
return 3;
}
}
return 2;
}
string NyttSpel()
{
string sTmpName;
system("cls");
cout << "Välkomen till spelet-som-jag-rippade-från-blinkenlights!!nSkriv in ditt namn så kan du börja: ";
cin >> sTmpName;
return sTmpName;
}
int main()
{
string sCmd;
string sName;
bool bGo= true;
int iTmp;
int iHp = 10;
int iDmg_min = 2;
int iDmg_max = 5;
while (bGo)
{
cout
<<"###################################################n"
<<"# #n"
<<"# Spelet som jag rippade från blinkenlights v1.0 #n"
<<"# #n"
<<"###################################################n"
<<"Huvud meny:n-----------n[N]ytt speln[A]vslutanVal:";
cin >> sCmd;
if (sCmd == "n" || sCmd == "N")
{
sName = NyttSpel();
iTmp = Level1(sName, iHp, iDmg_min, iDmg_max);
if (iTmp == 3)
bGo = false;
if (iTmp == 2)
cout << "Du dog!";
}
else if (sCmd == "a" || sCmd == "A")
{
break;
}
}
return 0;
}