#include <iostream>
#include <vector>
#include <string>
#include <time.h>
#include<stdlib.h>
using namespace std;


string pick_city(vector<string>a,unsigned int x);
string set_answer(unsigned int x);
char input() ;
void chek_for_letter(string city,string &answer,char letter,int &mis);//problem so 4tiov parametar
void playGame();

int main() {

    playGame();

    return 0;
}
string pick_city(vector<string>a, unsigned int x){
    return a[x];

}
string set_answer(unsigned int x){
    string answer;
    for(unsigned int i=0;i<x;i++){
        answer+="_";

    }
    return answer;
}
char input(){
    char input;bool ok=true;
    cout<<"\nEnter  lower case letter :";
    while(ok){
        cin>>input;
        if(input>='a'&&input<='z'){
            return input;
            ok=false;
        }else
            cout<<"Bad input please try again :";
    }

}


void chek_for_letter(string city,string &answer,char letter,int &mis){

    int matches = 0;
    for(unsigned int i=0;i<city.size();i++){
        if(letter==city[i]){
            answer[i]=city[i];
            matches++;
        }
    }

    cout<<answer;
    if (matches == 0) {
        mis--;
    }
}


void playGame(){    vector<string>easyCity={"london","berlin","paris","madrid","stockholm","viena","prague","amsterdam","copenhagen","oslo"};
    vector<string>mediumCity={"zagreb","belgrade","skopje","bucharest","bratislava","ljubljana","athina","budapest","sarajevo","sofia"};
    vector<string>hardCity={"nicosia","managua","cardiff","nairobi","stanley","palikir","tallinn","rangoon","kampala","honiara"};
    string city;string answer;

    srand(time(NULL));
    cout<<"Welcome to my simple hangman game.\nGuess the hidden city but first choose mod \n( easy-1  medium-2  hard-3 )\n";
    int mod; bool chekmod=true;
    while(chekmod){
        cin>>mod;
        if (mod==1||mod==2||mod==3){chekmod=false;}else{cout<<"( easy-1  medium-2  hard-3 )\n ";}
        switch(mod){
            case 1:{bool play_game=true;int mistake =7;

                unsigned int randomWord=rand()%easyCity.size();
                cout<<"You are playing now on easy mod \n";
                city= pick_city(easyCity,randomWord);
                answer=set_answer(city.size());
                cout<<answer<<endl;
                while(mistake>0 ){
                    char inp=input();
                    chek_for_letter(city,answer,inp,mistake);

                    cout << "MISTAKE: " << mistake << endl;
                }

                break;}
            case 2:
                cout<<"You are playing now on medium mod \n";
                break;
            case 3:
                cout<<"You are playing now on hard mod \n";
                break;
            default:
                cout<<"i don't think this will happen";
                break;



        }

    }
}