示例#1
0
文件: tilesFront.c 项目: jjssvv/TPE
void
analizarOpcion(int opcion, tJuego * juego)
{
	switch (opcion)
	{
		case JUEGO_NUEVO:
			pedirDimensiones(juego);
			pedirNiveles(juego);
			juegoNuevo(juego);
			break;
		case JUEGO_BITACORA:
			juegoBitacora();
			break;
		case RECUPERAR:
			recuperar();
			break;
		case TERMINAR:
			// Permite continuar el programa para finalizar
			break;
		default:
			printf("Opcion invalida\n");
			break;
	}
}
示例#2
0
/* main crea la partida según las especificaciones del usuario 
** y llama a jugar con dicha partida. */
int main(void){
	
	int opcion;
	int modo;
	tPartida partida;
	char nombre[MAX_NOM];	
	tFlag ganador;
	int filas, columnas;
	
	printf("\n\t\t=*=*=*=*=*=*=*=*=*==FANORONA==*=*=*=*=*=*=*=*=*=*=");
	printf("\n\t\t=*=*=*=*=*=*=*=*=FUTURAMA EDITION=*=*=*=*=*=*=*=*=\n\n");

	printf("\n\t\t=*=*=*=*=*=*=*==NOTAS SOBRE EL JUEGO=*=*=*=*=*=*=*=\n");
	printf("\n\t\t\t\tLa captura es obligatoria\n");
	printf("\n\t\tLas casillas fuertes se marcan con letras mayusculas\n");
	printf("\t\ty las debiles oon minuscula");
	printf("\n\n\t\tEl formato de movida es \"M [Fo,Co][Fd,Cd][w]\", o bien\n");
	printf("\t\t\"M [Fo,Co][Fd,Cd][a]\", siendo Fo,Co Fd,Cd las coordenadas\n");
	printf("\t\tde origen y destino, y w/a el tipo de movida (WITHDRAWAL \n");
	printf("\t\t o APPROACH)\n\n");
	printf("\t\t=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=\n\n");
	printf("\tElija una opcion:\n\n");
	printf("\t\t1. Juego nuevo: vs PC\n");
	printf("\t\t2. Juego nuevo: dos jugadores\n");
	printf("\t\t3. Cargar partida de archivo\n");
	printf("\t\t4. Salir\n\n");
	do{
		opcion=getint("Ingrese un numero de opcion > "); 
	}while(opcion<1 || opcion>4);

	if(opcion == 1 || opcion == 2){
		modo = opcion == 1 ? PVE : PVP; /* 1 es juego contra la computadora, 2 es dos jugadores*/	
		pedirDimensiones(&filas, &columnas);
		partida=generarPartida(filas,columnas, modo);
	
		if(partida == NULL){
			imprimirError(ERR_MEM_COMPU);
			return 1;
		}
	}
	else if(opcion == 3){
		/*Cargar partida*/
		printf("Ingrese el nombre del archivo:\n > ");
		leerLinea(nombre, MAX_NOM);
		partida=cargarPartida(nombre); /*modo cambia al correspondiente (0 o 1)*/
	        if(partida == NULL){
			printf("\nError al intentar abrir el archivo \"%s\". Abortando...\n\n", nombre);
			return 1;
		}
		printf("\nMODO DE JUEGO: %s\n", modoJuego(partida)?"DOS JUGADORES":"JUGADOR VS COMPUTADORA");
		printf("TURNO DEL JUGADOR %s\n", jugadorActual(partida)?"NEGRO":"BLANCO");
		printf("DIMENSIONES DEL TABLERO: %dx%d\n\n", numFilas(partida),numCols(partida));
	}
			
	else{
		/* Salir */
		printf("\n\t\t¡Adios!\n\n");
		return 0;
	}


	ganador = jugar(partida);		

	switch(ganador) {
		case GANADOR_BLANCO: printf("\a\n\n\t===========GANADOR: BLANCO==========\n\n"); break;
		case EMPATE: printf("\a\n\n\t===========EMPATE===========\n\n"); break;
		case GANADOR_NEGRO: printf("\a\n\n\t==========GANADOR: NEGRO===========\n\n"); break;
	}
	eliminarPartida(partida);
	return 0;

}
示例#3
0
int main(void){
	
	enum tOpcion opcion;
	int modo;
	tTablero tablero;
	int jugador;
	char nombre[MAX_NOM];	
	tFlag ganador;
	
	srand(time(0));

	printf("\n\t\t=*=*=*=*=*=*=*=*=*==FANORONA==*=*=*=*=*=*=*=*=*=*=");
	printf("\n\t\t=*=*=*=*=*=*=*=*=FUTURAMA EDITION=*=*=*=*=*=*=*=*=\n\n");

	printf("\n\t\t=*=*=*=*=*=*=*=*=REGLAS DE JUEGO==*=*=*=*=*=*=*=*=\n");
	printf("\n\t\t    Hay bastantes reglas, Wikipedialo, ni idea\n\t\t    Ah, salvo que hay que capturar si o si\n\n");
	printf("\t\t=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=\n\n");
	printf("\tElija una opcion:\n\n");
	printf("\t\t1. Juego nuevo: vs PC\n");
	printf("\t\t2. Juego nuevo: dos jugadores \n");
	printf("\t\t3. Cargar partida de archivo\n");
	printf("\t\t4. Salir\n\n");
	do{
		opcion=getint("Ingrese un numero de opcion > ") - 1; 
	}while(opcion<0 || opcion>3);

	if(opcion == PVP || opcion == PVE){
		modo = opcion; /* )1 para dos jugadores, 0 para juego contra la computadora*/	
		jugador=BLANCO;
		pedirDimensiones(&tablero);
		tablero=generarTablero(tablero.filas,tablero.cols);

	}
	else if(opcion == CARGAR){
		printf("Ingrese el nombre del archivo:\n  > ");
		getlinea(nombre, MAX_NOM);
		tablero=cargarPartida(&modo, &jugador, nombre); /*modo cambia al correspondiente (0 o 1)*/
	        if(tablero.matriz == NULL){
			printf("\nError al intentar abrir el archivo \"%s\". Abortando...\n\n", nombre);
			return 1;
		}
		printf("\nMODO DE JUEGO: %s\n", modo?"DOS JUGADORES":"JUGADOR VS COMPUTADORA");
		printf("TURNO DEL JUGARDOR %s\n", jugador?"NEGRO":"BLANCO");
		printf("DIMENSIONES DEL TABLERO: %dx%d\n\n",tablero.filas,tablero.cols);
	}
			
	else{
		printf("\n\t\t¡Adios!\n\n");
		return 0;
	}


	ganador = jugar2(tablero, modo, jugador);		

	switch(ganador) {
		case GANADOR_BLANCO: printf("GANA BLANCO\n\n"); break;
		case EMPATE: printf("EMPATE\n\n"); break;
		case GANADOR_NEGRO: printf("GANA NEGRO\n\n"); break;
	}

	printf("\n\t\tAdios!\n\n");
	return 0;

}