#include "Person.h" #include "Forest.h" #include "WeaponStore.h" #include "ShootGun.h" #include "Winchester.h" #include "Elkbouncer.h" #include "HuntingSchool.h" #include "Bird.h" #include "Elk.h" #include "Hare.h" #include int main() { //Slumpa fram en start srand ( time(NULL) ); using std::cout; using std::string; string in; //Sätter upp lite omgivningar cout << "--- Sätter upp miljöer ---\n\n"; Forest * skogen = Forest::getInstance(); HuntingSchool * KAU = HuntingSchool::getInstance(); WeaponStore vapenForAlla; //Skapar några djur cout << "--- Skapar några djur ---\n\n"; Elk alg1; Elk alg2; Bird pippi1; Bird pippi2; Hare hare1; Hare hare2; //Ny person till spelet cout << "--- Skapar en en ny person - Hunter ---\n\n"; Person Hunter("Hunter", skogen); cout << "--- Scenario Köp vapen (utan licens) ---\n\n"; cout << "*** Hunter går til vapenaffären vapenForAlla\n\n"; Hunter.go(&vapenForAlla); //Om vi har licens från takeExam kommer det här lyxkas cout << "*** Hunter vill nu köpa vapen\n\n"; Hunter.buyWeapon("ShootGun"); Hunter.buyWeapon("ShootGun"); Hunter.buyWeapon("ElkBouncer"); Hunter.buyWeapon("Winchester"); cout << "--- Slut Scenario Köp vapen (utan licens) ---\n\n\n"; cout << "** Tryck på ENTER för att fortsätta\n"; in = getchar(); cout << "--- Scenario skaffa licens --- \n\n"; cout << "*** Hunter går till HuntingSchool KAU\n\n"; Hunter.go(KAU); cout << "*** Hunter försöker ta en examn, detta kan lyckas till 50%\n\n"; Hunter.takeExam(); cout << "--- Slut Scenario skaffa licens ---\n\n\n"; cout << "** Tryck på ENTER för att fortsätta\n"; in = getchar(); while(!Hunter.isHunter()) { cout << "Försöker fuska till sig en jägarlicens genom att göra provet upprepade gånger\n\n"; Hunter.takeExam(); } cout << "--- Scenario Köp vapen (med licens) ---\n\n"; cout << "*** Hunter går til vapenaffären vapenForAlla\n\n"; Hunter.go(&vapenForAlla); //Om vi har licens från takeExam kommer det här lyxkas cout << "*** Hunter vill nu köpa vapen\n\n"; Hunter.buyWeapon("ShootGun"); Hunter.buyWeapon("ShootGun"); Hunter.buyWeapon("ElkBouncer"); Hunter.buyWeapon("Winchester"); cout << "--- Slut Scenario Köp vapen (med licens) ---\n\n\n"; cout << "** Tryck på ENTER för att fortsätta\n"; in = getchar(); cout << "--- Scenario Döda djur ---\n\n"; //Nu går vi till skogen så vi kan skjuta lite djur cout << "*** Hunter går till skogen\n\n"; Hunter.go(skogen); cout << "*** Väljer vapen ElkBouncer\n"; Hunter.selectWeapon("ElkBouncer"); cout << "*** * Siktar på djuret alg1\n"; Hunter.aim(&alg1); cout << "*** * Skjuter på djuret\n>"; Hunter.shoot(); cout << "*** Väljer vapen ShootGun\n"; Hunter.selectWeapon("ShootGun"); cout << "*** * Siktar på djuret pippi1\n"; Hunter.aim(&pippi1); cout << "*** * Skjuter på djuret\n>"; Hunter.shoot(); cout << "*** Väljer vapen Winchester\n"; Hunter.selectWeapon("Winchester"); cout << "*** * Siktar på djuret hare1\n"; Hunter.aim(&hare1); cout << "*** * Skjuter på djuret\n>"; Hunter.shoot(); cout << "--- Slut Scenario Döda djur ---\n\n\n"; cout << "** Tryck på ENTER för att fortsätta\n"; in = getchar(); cout << "--- Scenario Skjuta på redan dött djur --- \n\n"; //Vi försöker döda ett djur som redan är dött, det är inte så bra! //Dock måste vi ju träffa för att de ska bli fel cout << "*** Avliva pippi2 manuellt \n"; if(!pippi2.isDead()) pippi2.putToDeath(); cout << "*** Väljer vapen ShootGun\n"; Hunter.selectWeapon("ShootGun"); cout << "*** * Siktar på djuret pippi2\n"; Hunter.aim(&pippi2); cout << "*** * Skjuter på djuret\n>"; Hunter.shoot(); cout << "--- Slut Scenario Skjuta på redan dött djur ---\n\n\n"; cout << "** Tryck på ENTER för att fortsätta\n"; in = getchar(); //Skaffa ny licens if(!Hunter.isHunter()) cout << "*** Få tillbaka den förlorade licensen från förra scenariot\n\n"; while(!Hunter.isHunter()) { cout << "Försöker fuska till sig en jägarlicens genom att göra provet upprepade gånger\n\n"; Hunter.go(KAU); Hunter.takeExam(); if(Hunter.isHunter()) { cout << "*** Hunter går til vapenaffären vapenForAlla för att åter få vapen\n\n"; Hunter.go(&vapenForAlla); cout << "*** Hunter vill nu köpa vapen\n\n"; Hunter.buyWeapon("ShootGun"); Hunter.buyWeapon("ElkBouncer"); Hunter.buyWeapon("Winchester"); } } cout << "--- Scenario Skjuta på djur med felaktigt vapen ---\n\n"; cout << "*** Hunter går till skogen\n\n"; Hunter.go(skogen); cout << "*** Väljer vapen Winchester\n"; Hunter.selectWeapon("Winchester"); cout << "*** * Siktar på djuret alg2\n"; Hunter.aim(&alg2); cout << "*** * Skjuter på djuret\n>"; Hunter.shoot(); cout << "--- Slut Scenario Skjuta på djur med felaktigt vapen ---\n\n"; cout << "** Tryck på ENTER för att avsluta\n"; in = getchar(); return 0; }