Creative Commons License Foxbond's Repo

/** (c) 2013 Michał Jackowski */
#include <iostream>
#include <conio.h>
#include <time.h>
#include <process.h>
#include <pthread.h>

using namespace std;
void wait ( int seconds )
{
  clock_t endwait;
  endwait = clock () + seconds * CLOCKS_PER_SEC ;
  while (clock() < endwait) {}
}
	int k;
 	int m; 
 	int l; 
 	int c;
 	int v;
 	int b;
 	int n;
 	int d;
 	int z;
	int x;
	int i;
	int o;
	int s;
	int t=0;
	int y=0;
	int u;
	char j;	
	char f[25][15];

void* paletkaG(void* just){
	 while (true) {
		 if (b==4&&n==c){
		d=d*-1;
	}
	if (b==22&&n==v){
		d=d*-1;
	}
	if (b==4&&n==z){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==22&&n==i){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==4&&n==x){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if (b==22&n==o){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if(n==2&&s==-1){s=s*-1;}
	if(n==14&&s==1){s=s*-1;}
	c=8;
	z=c-1;
	x=c+1;
	j=_getch();
	if(j==97){c=c-1;}
	if(j==100){c=c+1;}
	 if (j == 27) {pthread_exit(just); }
	 
	do{
		c=8;
	z=c-1;
	x=c+1;
	j=_getch();
	if(j==97){c=c-1;}
	if(j==100){c=c+1;}
		for (k=1;k <= 25;k++){
			for(m=1;m <=15;m++){
				f[k][m]=' ';
				if (k==1||k==25){
					f[k][m]='=';
				}
   				if (m==1||m==15||k==13){
					f[k][m]='!';
				} 
			}
		}
		c=8;        
		v=8;
		b=13;
		n=8;
		d=1;
		s=0;
		z=c-1;
		x=c+1;
		i=v-1;
		o=v+1;



		f[b][n]='0';
 		f[3][c]='$';
    	f[23][v]='$';
		f[3][z]='<';
    	f[23][i]='<';
    	f[3][x]='>';
    	f[23][o]='>';
    	for (k=1;k <= 25;k++){
			for (m=1;m<=15; m++){
				cout << f[k][m];
				if (k==1 && m==15){ 
					cout<<"\t gora \t dol";
				}
				if (k==2 && m==15){ 
					cout<<"\t"<<y<<"\t"<<t;
				}
				if(m==15){
					cout << "\n";    
				}
			}
		}


		cout << "\n";
		cout << "naciśnij dowolny klawisz by zaczac";
		
		 do{
			 _sleep(500);
			system("cls");
		



	
	j=_getch();
	if(j==97){c=c-1;}
	if(j==100){c=c+1;}
	 if (j == 27) {pthread_exit(just); }
	 z=c-1;
	x=c+1;
			for (k=1;k <= 25;k++){
	for(m=1;m <=15;m++){
		f[k][m]=' ';
		if (k==1||k==25){
			f[k][m]='=';}
   		if (m==1||m==15||k==13){
			f[k][m]='!';}}}
			

z=c-1;
x=c+1;
i=v-1;
o=v+1;
if(c==14){c=13;}
if(c==2){c=3;}
if(v==14){v=13;}
if(v==2){v=3;}
			
        f[b][n]='0';
		f[3][c]='$';
    	f[23][v]='$';
		f[3][z]='<';
    	f[23][i]='<';
    	f[3][x]='>';
    	f[23][o]='>';
       
for (k=1;k<= 25;k++){
	for (m=1;m<=15; m++){
	 cout << f[k][m];
	 if(m==15){
		cout << "\n";    }
}}





}while(j!=27||u!=27);
}while(b==2||b==24);
}
	return NULL;
}

void* paletkaD(void* just)
{
    while (true) {
		 if (b==4&&n==c){
		d=d*-1;
	}
	if (b==22&&n==v){
		d=d*-1;
	}
	if (b==4&&n==z){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==22&&n==i){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==4&&n==x){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if (b==22&n==o){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if(n==2&&s==-1){s=s*-1;}
	if(n==14&&s==1){s=s*-1;}
		v=8;
		i=v-1;
		o=v+1;
       u=_getch();
		if(u==106){v=v-1;}
	if(u==108){v=v+1;}
        if (u == 27) {pthread_exit(just); }
		do{
		v=8;
	i=v-1;
	o=v+1;
	u=_getch();
	if(u==97){v=v-1;}
	if(u==100){v=v+1;}
		for (k=1;k <= 25;k++){
			for(m=1;m <=15;m++){
				f[k][m]=' ';
				if (k==1||k==25){
					f[k][m]='=';
				}
   				if (m==1||m==15||k==13){
					f[k][m]='!';
				} 
			}
		}
		c=8;        
		v=8;
		b=13;
		n=8;
		d=1;
		s=0;
		z=c-1;
		x=c+1;
		i=v-1;
		o=v+1;



		f[b][n]='0';
 		f[3][c]='$';
    	f[23][v]='$';
		f[3][z]='<';
    	f[23][i]='<';
    	f[3][x]='>';
    	f[23][o]='>';
    	for (k=1;k <= 25;k++){
			for (m=1;m<=15; m++){
				cout << f[k][m];
				if (k==1 && m==15){ 
					cout<<"\t gora \t dol";
				}
				if (k==2 && m==15){ 
					cout<<"\t"<<y<<"\t"<<t;
				}
				if(m==15){
					cout << "\n";    
				}
			}
		}


		cout << "\n";
		cout << "naciśnij dowolny klawisz by zaczac";
		
		 do{
			 _sleep(500);
			system("cls");
		



	u=_getch();
		if(u==106){v=v-1;}
	if(u==108){v=v+1;}
        if (u == 27) {pthread_exit(just); }
	 i=v-1;
	o=v+1;
			for (k=1;k <= 25;k++){
	for(m=1;m <=15;m++){
		f[k][m]=' ';
		if (k==1||k==25){
			f[k][m]='=';}
   		if (m==1||m==15||k==13){
			f[k][m]='!';}}}
			

z=c-1;
x=c+1;
i=v-1;
o=v+1;
if(c==14){c=13;}
if(c==2){c=3;}
if(v==14){v=13;}
if(v==2){v=3;}
			
        f[b][n]='0';
		f[3][c]='$';
    	f[23][v]='$';
		f[3][z]='<';
    	f[23][i]='<';
    	f[3][x]='>';
    	f[23][o]='>';
       
for (k=1;k<= 25;k++){
	for (m=1;m<=15; m++){
	 cout << f[k][m];
	 if(m==15){
		cout << "\n";    }
}}





}while(j!=27||u!=27);
}while(b==2||b==24);
    }
    return NULL;
}


void* pilka(void* just){
	b=13;
	n=8;
	d=1;
	s=0;
	 if (b==4&&n==c){
		d=d*-1;
	}
	if (b==22&&n==v){
		d=d*-1;
	}
	if (b==4&&n==z){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==22&&n==i){
		d=d*-1;
		if (s==-1){
			s=0;
		}if(s==0){
			s=1;
		}
	}
	if (b==4&&n==x){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if (b==22&n==o){
		d=d*-1;
		if (s==1){s=0;}
		if(s==0) {s=-1;}
	}
	if(n==2&&s==-1){s=s*-1;}
	if(n==14&&s==1){s=s*-1;}
	do{
		for (k=1;k <= 25;k++){
			for(m=1;m <=15;m++){
				f[k][m]=' ';
				if (k==1||k==25){
					f[k][m]='=';
				}
   				if (m==1||m==15||k==13){
					f[k][m]='!';
				} 
			}
		}
		



		f[b][n]='0';
 		f[3][c]='$';
    	f[23][v]='$';
		f[3][z]='<';
    	f[23][i]='<';
    	f[3][x]='>';
    	f[23][o]='>';
    	for (k=1;k <= 25;k++){
			for (m=1;m<=15; m++){
				cout << f[k][m];
				if (k==1 && m==15){ 
					cout<<"\t gora \t dol";
				}
				if (k==2 && m==15){ 
					cout<<"\t"<<y<<"\t"<<t;
				}
				if(m==15){
					cout << "\n";    
				}
			}
		}


		cout << "\n";
		cout << "naciśnij dowolny klawisz by zaczac";
		
		 do{
			 _sleep(500);
			system("cls");

		if (b==4&&n==c){
		d=d*-1;
	}
	if (b==22&&n==v){
		d=d*-1;
	}
	if (b==4&&n==z){
		d=d*-1;
		if (s==-1){
			s=0;
		}else{
			s=1;
		}
	}
	if (b==4&&n==x){
		d=d*-1;
		if (s==1){s=0;}
		else {s=-1;}
	}
	if(n==2&&s==-1){s=s*-1;}
	if(n==14&&s==1){s=s*-1;}

			b=b+d;
			n=n+s;




			
       
for (k=1;k<= 25;k++){
	for (m=1;m<=15; m++){
	 cout << f[k][m];
	 if(m==15){
		cout << "\n";    }
}}





}while(j!=27||u!=27);
}while(b==2||b==24);

       
	if (j == 27||u==27) {pthread_exit(just); }
	
	return NULL;
}

	int main(int argc, char* argv[]) {
	
	
    pthread_t thread1, thread2, thread3;
    int tret1, tret2, tret3, just;
	tret3 = pthread_create(&thread3, NULL, paletkaG,
            (void*) &just);
    tret2 = pthread_create(&thread2, NULL, paletkaD,
            (void*) &just);
    tret1 = pthread_create(&thread1, NULL, pilka,
            (void*) &just);

	
    pthread_join(thread1, NULL);
    pthread_join(thread2, NULL);
	pthread_join(thread3, NULL);
	 


	

 return 0;	
 
}


> Back