vale, he borrado todas y ahora estoy instalando.
Gracias!!
Gracias!!
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 63
void mostrarayuda();
void tirardado(int *jugador1,int *jugador2,int *turno);
void jugar(int *ganador);
void oca_jugador1(int *jugador1,int *tablero,int *turno,int *flag);
void oca_jugador2(int *jugador2,int *tablero,int *turno,int *flag);
void puente(int *jugador1,int *jugador2,int *tablero,int *turno);
void muerte(int *jugador1,int *jugador2,int *tablero,int *turno);
//void posada(int *tablero,int *flag);
void dados(int *jugador1,int *jugador2,int *tablero,int *turno);
void laberinto(int *jugador1,int *jugador2,int *tablero,int *turno);
///Turno == 0 ---Jugador 1
///Turno == 1 ---Jugador 2
void main(){
printf(" ::: ::: :::::::: :::::::: ::: \n");
printf(":+: :+: :+: :+: :+: :+: :+: :+: :+:\n");
printf("+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+\n");
printf("+#+ +#++:++#++: +#+ +:+ +#+ +#++:++#++:\n");
printf("+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ \n");
printf("#+# #+# #+# #+# #+# #+# #+# #+# #+# \n");
printf("########## ### ### ######## ######## ### ###\n\n\n");
int opcion;
int ganador=0;
do {
system("color 0""A");
printf("1.- Mostrar ajuda\n");
printf("2.- Jugar\n");
printf("0.- Salir\n");
printf("\nTria una opcion: ");
fflush(stdin);
scanf("%d", &opcion);
switch (opcio) {
case 1:mostrarayuda();
break;
case 2:jugar(&ganador);
fflush(stdin);
break;
case 0:
default :;
}
} while (opcion != 0);
}
void mostrarayuda()
{
printf("El juego de la oca es un juego de mesa para dos o más jugadores. Cada jugador avanza su ficha por un tablero\n");
printf("en forma de espiral con 63 casillas con dibujos. Dependiendo de la casilla en la que se caiga, se puede avanzar o \n");
printf("por el contrario retroceder, y en algunas de ellas está indicado un castigo. En su turno cada jugador tira un dado \n");
printf("que le indican el número de casillas que debe avanzar. Gana el \n");
printf("juego el primer jugador que llega a la casilla 63, el jardin de la oca.\n");
system("pause");
system("cls");
}
void tirardado(int *jugador1,int *jugador2,int *turno)
{
int dado;
srand(time(NULL));
dado=rand()%6+1;
if(*turno==0)
{
system("color 0""E");
printf("Turno jugador 1\n");
system("pause");
printf("\nResultado de dado: %d\n",dado);
*jugador1=*jugador1+dado;
//*jugador1=5;
printf("posicion vector 1-[%d]",*jugador1);
}
else if(*turno==1)
{
system("color 0""B");
printf("Turno jugador 2\n");
system("pause");
printf("\nResultado de dado: %d\n",dado);
*jugador2=*jugador2+dado;
//*jugador2=63;
printf("posicion vector 2-[%d]",*jugador2);
}
}
void jugar(int *ganador)
{
int i;
int flag=0;
int flag2=0;
int tablero[N];
int jugador1=0,jugador2=0,turno=0;
while(*ganador !=1 && *ganador !=2)
{
tirardado(&jugador1,&jugador2,&turno);
int i;
for(i=0;i<N;i++)
{
tablero[i]=0;
}
printf("\n");
tablero[jugador1]=1;
tablero[jugador2]=2;
for(i=0;i<N;i++)
{
printf("[%d]",tablero[i]);
}
printf("\n");
system("pause");
system("cls");
if(jugador1>=63)
{
*ganador=1;
printf("Jugador 1 Ha ganado!!!Enhorabuena!!!\n");
}
else if(jugador2>=63)
{
*ganador=2;
printf("Jugador 2 Ha ganado!!!Enhorabuena!!!\n");
}
flag=0;
flag2=0;
if(turno==0)
{
oca_jugador1(&jugador1,tablero,&turno,&flag);
puente(&jugador1,&jugador2,tablero,&turno);
printf("turno %d\n",turno);
//posada(tablero,&flag2);
dados(&jugador1,&jugador2,tablero,&turno);
printf("turno %d\n",turno);
laberinto(&jugador1,&jugador2,tablero,&turno);
printf("turno %d\n",turno);
muerte(&jugador1,&jugador2,tablero,&turno);
printf("turno %d\n",turno);
printf("valor de flag: %d\n",flag);
if(flag==1)
{
turno=0;
}
else
{
turno=1;
}
}
else if(turno==1)
{
oca_jugador2(&jugador2,tablero,&turno,&flag);
puente(&jugador1,&jugador2,tablero,&turno);
//posada(tablero,&flag2);
dados(&jugador1,&jugador2,tablero,&turno);
laberinto(&jugador1,&jugador2,tablero,&turno);
muerte(&jugador1,&jugador2,tablero,&turno);
if (flag==1)
{
turno=1;
}
else
{
turno=0;
}
}
/* if(flag2==1)///flag2 == 1 jugador 1 ha caido en la posada
{
//printf("%d",turno);
printf("Entra flag2 jug1\n");
for(i=0;i<1;i++)
{
turno=0;
tirardado(&jugador1,&jugador2,&turno);
tablero[jugador2]=2;
}
turno=0;
//printf("flag %d turno pasa %d",flag,turno);
}
if(flag2==2)
{
printf("Entra flag2 jug2\n");
for(i=0;i<1;i++)
{
turno=0;
tirardado(&jugador1,&jugador2,&turno);
tablero[jugador1]=1;
}
flag2=0;
turno=0;
//printf("flag %d turno pasa %d",flag,turno);
}
*/
}
}
void oca_jugador1(int *jugador1,int *tablero,int *turno,int *flag)
{
if(tablero[5]==1 || tablero[14]==1 || tablero[23]==1 || tablero[32]==1 || tablero[41]==1 || tablero[50]==1)
{
printf("******Jugador 1 -- De oca a oca y tiro por que me toca\n******");
*jugador1=*jugador1+4;
*flag=1;
}
else if(tablero[9]==1 || tablero[18]==1 || tablero[27]==1 || tablero[36]==1|| tablero[45]==1 || tablero[54]==1)
{
printf("*****Jugador 1 -- De oca a oca y tiro por que me toca********\n");
*jugador1=*jugador1+5;
*flag=1;
}
}
void oca_jugador2(int *jugador2,int *tablero,int *turno,int *flag)
{
if(tablero[5]==2 || tablero[14]==2 || tablero[23]==2 || tablero[32]==2 || tablero[41]==2 || tablero[50]==2)
{
printf("******Jugador 2 -- De oca a oca y tiro por que me toca*******\n");
*jugador2=*jugador2+4;
*flag=1;
}
else if(tablero[9]==2 || tablero[18]==2 || tablero[27]==2 || tablero[36]==2|| tablero[45]==2 || tablero[54]==2)
{
printf("*******Jugador 2 -- De oca a oca y tiro por que me toca*******\n");
*jugador2=*jugador2+5;
*flag=1;
}
}
void muerte(int *jugador1,int *jugador2,int *tablero,int *turno)
{
if(*turno==0)
{
if(tablero[58]==1)
{
system("color 0""4");
printf("****Has caido en la casilla de la muerte,vuelves a la primera casilla!!!!****");
*jugador1=0;
tablero[*jugador1]=1;
*turno=1;
printf("jugador 1: %d",*jugador1);
}
}
else if(*turno==1)
{
if(tablero[58]==2)
{
system("color 0""4");
printf("****Has caido en la casilla de la muerte,vuelves a la primera casilla!!!!****");
*jugador2=0;
tablero[*jugador2]=1;
*turno=0;
}
}
}
void dados(int *jugador1,int *jugador2,int *tablero,int *turno)
{
if(*turno==0)
{
if(tablero[26]==1)
{
printf("****Jugador 1:De dado a dado y tiro y tiro porque me ha tocado****\n");
*jugador1=53;
*turno=1;
}
else if(tablero[53]==1)
{
printf("****Jugador 1:De dado a dado****\n");
*jugador1=26;
*turno=1;
}
}
else if(*turno==1)
{
if(tablero[26]==2)
{
printf("****Jugador 2:De dado a dado****\n");
*jugador2=53;
*turno=0;
}
else if(tablero[53]==2)
{
printf("****Jugador 2:De dado a dado****\n");
*jugador2=26;
*turno=0;
}
}
}
void laberinto(int *jugador1,int *jugador2,int *tablero,int *turno)
{
if(*turno==0)
{
if(tablero[42]==1)
{
printf("****Jugador 1:Has caido en el laberinto,retrocedes hasta la casilla 30****\n");
*jugador1=30;
*turno=1;
}
}
else if(*turno==1)
{
if(tablero[42]==2)
{
printf("****Jugador 2:Has caido en el laberinto,retrocedes hasta la casilla 30****\n");
*jugador2=30;
*turno=0;
}
}
}
/*void posada(int *tablero,int *flag2)
{
if(tablero[19]==1)
{
*flag2=1;
}
else if(tablero[19]==2)
{
{
*flag2=2;
}
}
}
*/
void puente(int *jugador1,int *jugador2,int *tablero,int *turno)
{
if(*turno==0)
{
if(tablero[6]==1)
{
printf("*****Jugador 1***De puente a puente me lleva la corriente******\n\n");
*jugador1=*jugador1+6;
}
else if(tablero[12]==1)
{
printf("*****Jugador 1***De puente a puente me lleva la corriente******\n\n");
*jugador1=*jugador1-6;
}
}
else if(*turno==1)
{
if(tablero[6]==2)
{
printf("*****Jugador 2***De puente a puente me lleva la corriente******\n\n");
*jugador2=*jugador2+6;
}
else if(tablero[12]==2)
{
printf("*****Jugador 2***De puente a puente me lleva la corriente******\n\n");
*jugador2=*jugador2-6;
}
}
}