Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // vikingen.cpp : Defines the entry point for the console application
- #include <iostream>
- #include <vector>
- #include <string>
- #include <iomanip>
- #include <algorithm>
- #include <random>
- using namespace std;
- // Vikingkrijgers
- class Viking {
- public:
- //Attributen
- string naam;
- int kracht, verdediging;
- //Constructor
- Viking(string x) {
- naam = x;
- kracht = ((rand() % 10) + 1);
- verdediging = ((rand() % 10) + 1);
- }
- //Getters
- string getNaam() const { return naam; }
- int getKracht() const { return kracht; }
- int getVerdediging() const { return verdediging; }
- };
- int main()
- {
- srand(time(NULL));
- string vikings[] = { "IGOR","BERTA","GUDRUN","RANVIG","TORGAL","EINAR","BRANDT","ARVID","BJORN","AKE" };
- vector<string> vikingVector;
- for (int x = 0; x < (sizeof(vikings) / sizeof(*vikings)); x++) {
- vikingVector.push_back(vikings[x]);
- }
- // Neemt 10 random namen uit vikings[] en maakt een deck van 10 kaarten aan.
- vector<Viking> deck;
- for (int i = 0; i < 10; i++) {
- int rng = rand() % (10 - i);
- Viking viking1(vikingVector[rng]);
- deck.push_back(viking1);
- vikingVector.erase(vikingVector.begin() + rng);
- }
- auto engine = default_random_engine{};
- shuffle(begin(deck), end(deck), engine);
- // Maakt jouw hand aan adhv 5 kaarten uit deck.
- // Vector deck wordt het hand van de computer.
- vector<Viking> hand;
- for (int i = 0; i < 5; i++) {
- int rng = rand() % (10 - i);
- hand.push_back(deck[rng]);
- deck.erase(deck.begin() + rng);
- }
- cout << "Welkom bij Lucas zijn VIKINGEN programma! Jouw vikingen zijn:\n";
- for (int i = 0; i < 5; i++) {
- cout << hand[i].getNaam() << "\t\tkracht=" << hand[i].getKracht() << ",\tverdediging=" << hand[i].getVerdediging() << "\n";
- }
- cout << "\n";
- for (int i = 0; i < 5; i++) {
- string input;
- cout << "ruil je " << hand[i].getNaam() << " voor " << deck[i].getNaam() << "(ja/nee)? ";
- cin >> input;
- if (input == "ja") {
- Viking temp = hand[i];
- hand[i] = deck[i];
- deck[i] = temp;
- }
- }
- int hand1atk = 0, hand2atk = 0, hand1def = 0, hand2def = 0;
- for (int i = 0; i < 5; i++) {
- hand1atk += hand[i].getKracht();
- hand2atk += deck[i].getKracht();
- hand1def += hand[i].getVerdediging();
- hand2def += deck[i].getVerdediging();
- }
- cout << "\nJouw vikingen zijn:\n";
- for (int i = 0; i < 5; i++) {
- cout << hand[i].getNaam() << "\t\tkracht=" << hand[i].getKracht() << ",\tverdediging=" << hand[i].getVerdediging() << "\n";
- }
- cout << "\nJouw totale aanvalskracht is " << hand1atk << "\n";
- cout << "Jouw totale verdedigingskracht is " << hand1def << "\n";
- cout << "De computer heeft een totale aanvalskracht van " << hand2atk << "\n";
- cout << "De computer heeft een totale verdedigingskracht van " << hand2def << "\n";
- if (hand1def > hand2atk && hand1atk >= hand2def) {
- cout << "JIJ WINT!!!\n";
- }
- else {
- cout << "Computer wint.\n\n";
- }
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement