Advertisement
Guest User

poranacsa

a guest
Mar 23rd, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.39 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. using namespace std;
  5.  
  6. class Uzytkownik {
  7.     string login;
  8.     string email;
  9.     bool isPremium;
  10.  
  11. public:
  12.     Uzytkownik(string def_login = "default", string def_email = "example@gmail.com", bool def_isPremium = false) {
  13.         login = def_login; email = def_email; isPremium = def_isPremium;
  14.     };
  15.  
  16. };
  17.  
  18. class Postac : public Uzytkownik {
  19.     friend class Menu;
  20.  
  21.     string klasa;
  22.     int poziom;
  23.    
  24.     double zdrowie;
  25.     double mana;
  26.     double atak;
  27.     double obrona;
  28.  
  29. public:
  30.     //JAK SIE UZYWA LISTY INICJALIZACYJNEJ ???????????
  31.     Postac(string def_login = "default", string def_email= "example@gmail.com", bool def_isPremium = false, string def_klasa = "Wojownik", int def_poziom = 1, double def_zdrowie = 200, double def_mana = 100, double def_atak = 50, double def_obrona = 25) {
  32.         Uzytkownik(def_login, def_email, def_isPremium); klasa = def_klasa; poziom = def_poziom; zdrowie = def_zdrowie; mana = def_mana; atak = def_atak; obrona = def_obrona;
  33.     }
  34.     void wyswietl_konto();
  35. };
  36.  
  37. class Menu {
  38. public:
  39.     Menu(int def_wybor = 1) {
  40.         wybor = def_wybor;
  41.     }
  42.  
  43.     int wybor;
  44.  
  45.     void wyswietl_menu();
  46.     void wykonaj(int wybor, vector<Postac>& gracze);
  47. };
  48.  
  49. int main() {
  50.     /* WCZYTYWANIE DANYCH Z PLIKU */
  51.  
  52.     /* SORTOWANIE DANYCH ??? */
  53.  
  54.     /* LOGOWANIE DLA ADMINISTRATORA, TRZY PROBY */
  55.  
  56.     vector <Postac> gracze;
  57.     gracze.push_back(Postac());
  58.     gracze.push_back(Postac());
  59.     gracze.push_back(Postac());
  60.     gracze.push_back(Postac()); //zamiast wczytywania z pliku na razie niech bedzie tak
  61.  
  62.     Menu menu;
  63.    
  64.     while (menu.wybor != 5)
  65.     {
  66.         menu.wyswietl_menu();
  67.         menu.wykonaj(menu.wybor, gracze);
  68.     }
  69.  
  70.  
  71.     return 0;
  72. }
  73.  
  74. void Menu::wyswietl_menu() {
  75.     //tutaj wyswietl menu
  76.     cout << "HALO 123 tutaj wyswietlam menu";
  77.     cin >> wybor;
  78. }
  79.  
  80. void Menu::wykonaj(int wybor, vector<Postac>& gracze) {
  81.     switch (wybor) {
  82.     case 1: //LISTA AKTYWNYCH KONT
  83.     {
  84.         cout << "Lista aktywnych kont: " << endl;
  85.         for (vector<Postac>::size_type i = 0; i < gracze.size(); i++)
  86.         {
  87.             gracze[i].wyswietl_konto();
  88.         }
  89.         break;
  90.     }
  91.     case 2: //STWORZ NOWE KONTO
  92.     {
  93.         string temp_login, temp_email, temp_klasa;
  94.         int temp_poziom;
  95.         double temp_zdrowie, temp_mana, temp_atak, temp_obrona;
  96.         bool temp_isPremium;
  97.  
  98.         cout << "~ Witaj w kreatorze konta, podaj nastepujace dane ~ " << endl;
  99.         cout << "Podaj login: "; cin >> temp_login;
  100.         cout << "Podaj email: "; cin >> temp_email;
  101.         cout << "Czy uzytkownik ma konto premium (1 - tak/0 - nie): "; cin >> temp_isPremium;
  102.         cout << "Podaj klase postaci: "; cin >> temp_klasa;
  103.         cout << "Podaj poziom uzytkownika: "; cin >> temp_poziom;
  104.         cout << "Podaj ilosc punktow zdrowia: "; cin >> temp_zdrowie;
  105.         cout << "Podaj ilosc punktow many: "; cin >> temp_mana;
  106.         cout << "Podaj ilosc punktow ataku: "; cin >> temp_atak;
  107.         cout << "Podaj ilosc punktow obrony: "; cin >> temp_obrona;
  108.         gracze.push_back(Postac(temp_login, temp_email, temp_isPremium, temp_klasa, temp_poziom, temp_zdrowie, temp_mana, temp_atak, temp_obrona));
  109.  
  110.         break;
  111.     }
  112.     case 3: //USUN KONTO
  113.     {
  114.        
  115.         break;
  116.     }
  117.     case 4: //POROWNAJ DWIE POSTACIE
  118.     {
  119.  
  120.         break;
  121.     }
  122.     case 5: //ZAPISZ DO PLIKU I WYJDZ Z PROGRAMU
  123.     {
  124.  
  125.         break;
  126.     }
  127.  
  128.     default: //ZLA OPCJA WPISZ JESZCZE RAZ
  129.        
  130.         break;
  131.     }
  132. }
  133.  
  134. void Postac::wyswietl_konto() {
  135.     cout << klasa << endl;
  136.     cout << poziom << endl;
  137.     cout << zdrowie << endl;
  138.     cout << mana << endl;
  139.     cout << atak << endl;
  140.     cout << obrona << endl;
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement