it is just that i have this source code for a game with menu, but when i run it it does not work, if i run the game separated from the menu it works, when i run the menu alone it also works fine, but when i run them togheter it does not.
#include <cstdlib>
#include <iostream>
#include <windows.h>
#include <stdio.h>
bool salida= false;
using namespace std;
char square[10] = {'o','1','2','3','4','5','6','7','8','9'};
int checkwin();
void board();
int player = 1,i,choice;
char mark;
int opcion=0,x=0;
void board();
bool menu=false;
int main()
{
while( menu==false)
{
printf(" BIENVENIDOS AL GATO-LOKO\n");
printf("1 ... Jugar 'gato' nivel luz .\n");
printf("2 ... Jugar 'gato' nivel karen.\n");
printf("3 ... Creditos \n");
printf("4 ... Salir \n");
scanf("%d",& opcion);
switch(opcion)
{
case 1:
{
printf(" el juego comenzara en \n");
printf("\n\t\t\t3\n\n");
Sleep (500);
printf("\n\t\t\t2\n\n");
Sleep (500);
printf("\n\t\t\t1\n\n");
Sleep (500);
printf("\t\1");
Sleep(700);
printf("\t\2");
Sleep(700);
printf("\t\3");
Sleep(700);
printf("\t\4");
Sleep(700);
printf("\t\5");
Sleep(700);
printf("\t\6");
Sleep(700);
system("cls");
printf("GATO-LOKO");
do
{
board();
player=(player%2)?1:2;
printf("jugador , introduce numero", player );
cin >> choice;
mark=(player == 1) ? 'X' : 'O';
if (choice == 1 && square[1] == '1')
square[1] = mark;
else if (choice == 2 && square[2] == '2')
square[2] = mark;
else if (choice == 3 && square[3] == '3')
square[3] = mark;
else if (choice == 4 && square[4] == '4')
square[4] = mark;
else if (choice == 5 && square[5] == '5')
square[5] = mark;
else if (choice == 6 && square[6] == '6')
square[6] = mark;
else if (choice == 7 && square[7] == '7')
square[7] = mark;
else if (choice == 8 && square[8] == '8')
square[8] = mark;
else if (choice == 9 && square[9] == '9')
square[9] = mark;
else
{
cout<<"movimiento no valido ";
player--;
cin.ignore();
cin.get();
}
i=checkwin();
player++;
}while(i==-1);
board();
if(i==1)
printf("ajugador gano",player);
else
cout<<"==>\aempate";
cin.ignore();
cin.get();
return 0;
}
{
if (square[1] == square[2] && square[2] == square[3])
return 1;
else if (square[4] == square[5] && square[5] == square[6])
return 1;
else if (square[7] == square[8] && square[8] == square[9])
return 1;
else if (square[1] == square[4] && square[4] == square[7])
return 1;
else if (square[2] == square[5] && square[5] == square[8])
return 1;
else if (square[3] == square[6] && square[6] == square[9])
return 1;
else if (square[1] == square[5] && square[5] == square[9])
return 1;
else if (square[3] == square[5] && square[5] == square[7])
return 1;
else if (square[1] != '1' && square[2] != '2' && square[3] != '3'
&& square[4] != '4' && square[5] != '5' && square[6] != '6'
&& square[7] != '7' && square[8] != '8' && square[9] != '9')
return 0;
else
return -1;
}
{
system("cls");
cout << "\n\n\tGATO LOKO\n\n";
cout << "JUGADOR 1 (X) - JUAGADOR 2 (O)" << endl << endl;
cout << endl;
cout << " | | " << endl;
cout << " " << square[1] << " | " << square[2] << " | " << square[3] << endl;
cout << "_____|_____|_____" << endl;
cout << " | | " << endl;
cout << " " << square[4] << " | " << square[5] << " | " << square[6] << endl;
cout << "_____|_____|_____" << endl;
cout << " | | " << endl;
cout << " " << square[7] << " | " << square[8] << " | " << square[9] << endl;
cout << " | | " << endl << endl;
}
break;
}
break;
case 2:
{
printf(" el juego comenzara en \n");
printf("\n\t\t\t3\n\n");
Sleep (500);
printf("\n\t\t\t2\n\n");
Sleep (500);
printf("\n\t\t\t1\n\n");
Sleep (500);
system("cls");
printf("GATO-LOKO");
printf("\t\1");
Sleep(700);
printf("\t\2");
Sleep(700);
printf("\t\3");
Sleep(700);
printf("\t\4");
Sleep(700);
printf("\t\5");
Sleep(700);
printf("\t\6\n\n\n");
Sleep(700);
}
break;
case 3:
{
printf(" \n\t\t efectos especiales: LUZ, KARREN, JUAN \n");
Sleep(300);
system("cls");
}
break;
case 4:
{
printf("bye bye");
int player = 1,i,choice;
char mark;
do
{
board();
player=(player%2)?1:2;
printf("jugador , introduce numero", player );
cin >> choice;
mark=(player == 1) ? 'X' : 'O';
if (choice == 1 && square[1] == '1')
square[1] = mark;
else if (choice == 2 && square[2] == '2')
square[2] = mark;
else if (choice == 3 && square[3] == '3')
square[3] = mark;
else if (choice == 4 && square[4] == '4')
square[4] = mark;
else if (choice == 5 && square[5] == '5')
square[5] = mark;
else if (choice == 6 && square[6] == '6')
square[6] = mark;
else if (choice == 7 && square[7] == '7')
square[7] = mark;
else if (choice == 8 && square[8] == '8')
square[8] = mark;
else if (choice == 9 && square[9] == '9')
square[9] = mark;
else
{
cout<<"movimiento no valido ";
player--;
cin.ignore();
cin.get();
}
i=checkwin();
player++;
}while(i==-1);
board();
if(i==1)
printf("ajugador gano",player);
else
cout<<"==>\aempate";
cin.ignore();
cin.get();
return 0;
}
{
if (square[1] == square[2] && square[2] == square[3])
return 1;
else if (square[4] == square[5] && square[5] == square[6])
return 1;
else if (square[7] == square[8] && square[8] == square[9])
return 1;
else if (square[1] == square[4] && square[4] == square[7])
return 1;
else if (square[2] == square[5] && square[5] == square[8])
return 1;
else if (square[3] == square[6] && square[6] == square[9])
return 1;
else if (square[1] == square[5] && square[5] == square[9])
return 1;
else if (square[3] == square[5] && square[5] == square[7])
return 1;
else if (square[1] != '1' && square[2] != '2' && square[3] != '3'
&& square[4] != '4' && square[5] != '5' && square[6] != '6'
&& square[7] != '7' && square[8] != '8' && square[9] != '9')
return 0;
else
return -1;
}
{
system("cls");
cout << "\n\n\tGATO LOKO\n\n";
cout << "JUGADOR 1 (X) - JUAGADOR 2 (O)" << endl << endl;
cout << endl;
cout << " | | " << endl;
cout << " " << square[1] << " | " << square[2] << " | " << square[3] << endl;
cout << "_____|_____|_____" << endl;
cout << " | | " << endl;
cout << " " << square[4] << " | " << square[5] << " | " << square[6] << endl;
cout << "_____|_____|_____" << endl;
cout << " | | " << endl;
cout << " " << square[7] << " | " << square[8] << " | " << square[9] << endl;
cout << " | | " << endl << endl;
}
salida=true;
}
break;
default:
{
system ("cls");
printf("Opcion incorrecta intentar de nuevo...\n");
system("PAUSE");
}
}