Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <time.h>
- class Building;
- class Player
- {
- protected:
- int iWood;
- int iGold;
- int iStone;
- int iNumOfPosGM;
- int iNumOfPosSM;
- char cChoice;
- int* gM;
- int* sM;
- int* cHu;
- public:
- Player(int d = 1000, int z = 10, int k = 1000, int kZ = 0, int iMKZ = 0, int iMK = 3, int ch = '0')
- {
- iWood = d;
- iGold = z;
- iStone = k;
- iNumOfPosGM = iMKZ;
- iNumOfPosSM = iMK;
- cChoice = ch;
- }
- void showMenu()
- {
- std::cout << "1. Odkryj nowe tereny" << std::endl;
- std::cout << "2. Wybuduj kopalnie zlota" << std::endl;
- std::cout << "3. Wybuduj kopalnie kamienia" << std::endl;
- std::cout << "4. Wybuduj chate drwala" << std::endl;
- std::cout << "5. Ulepsz kopalnie zlota" << std::endl;
- std::cout << "6. Ulepsz kopalnie kamienia" << std::endl;
- std::cout << "7. Ulepsz chate drwala" << std::endl;
- }
- void showResult()
- {
- std::cout << "Masz " << iGold << " zlota," << iWood << " drewna i " << iStone << " kamienia.";
- }
- void askForDec(Building b)
- {
- std::cin >> choice;
- switch(choice)
- {
- case '2':
- {
- //TODO: Kod odpowiedzialny za stworzenie nowej kopalni zlota
- }
- case '3':
- {
- //TODO: Kod odpowiedzialny za stworzenie nowej kopalni kamienia
- }
- case '4':
- {
- //TODO: Kod odpowiedzialny za stworzenie nowej chaty drwala
- }
- case '5':
- {
- b -> GoldMine.lvl++;
- }
- case '6':
- {
- b -> StoneMine.lvl++;
- }
- case '7':
- {
- b -> ChopperHut.lvl++;
- }
- default:
- {
- exit(0);
- }
- }
- };
- class Building :public Player
- {
- protected:
- float fEffeciency;
- int iLvl;
- float fModifier;
- public:
- Building(float e = 1, int l = 1, float m = 0)
- {
- fEffeciency = e;
- iLvl = l;
- fModifier = m;
- }
- virtual void get() = 0;
- };
- class GoldMine :public Building
- {
- public:
- void get()
- {
- fModifier = ( ( std::rand()*125 ) +25 ) / 100;
- Player::iGold += fEffeciency * fModifier;
- }
- };
- class StoneMine :public Building
- {
- public:
- void get()
- {
- fModifier = ( ( std::rand()*125 ) +25 ) / 100;
- Player::iStone += fEffeciency * fModifier;
- }
- };
- class ChopperHut :public Building
- {
- public:
- void get()
- {
- fModifier = ( ( std::rand()*125 ) +25 ) / 100;
- Player::iWood += fEffeciency*fModifier;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement