Exemplo n.º 1
0
void DrawBombs()
{
	for (int i = 0; i < B_COUNT; i++)
	{
		if (bombs[i]->IsEnabled() == 0)
		{
			int rnd;
			rnd = rtlRand() % B_POSSIBILITY;
			if (rnd == 1)
			{
				rnd = 10 + rtlRand() % 620;
				bombs[i]->Enable(rnd, 0, 4, 9, rnd + 2, 0);
			}
		}
		else
		{
			if (bombs[i]->cy > gun->cy + 5)
			{
				health -= 5;
				if (explodes[R_COUNT + i]->IsEnabled() == 1)
				{
					explodes[R_COUNT + i]->Disable(BG_COLOR);
				}
				explodes[R_COUNT + i]->Enable(bombs[i]->cx, bombs[i]->cy);
				bombs[i]->Disable(BG_COLOR);
			}
			else
			{
				bombs[i]->cy += B_SPEED;
				bombs[i]->DrawAngle(bombs[i]->cx, 639, B_COLOR);
			}
		}
	}
}
Exemplo n.º 2
0
	bool SaveToDisk()
	{
		int i;
		Dword *rndList;
		Byte *bPtr;
		Dword k, keyLock;

		//
		rndList = new Dword[(sizeof( heroTbl ) * 5) * 2];
		//
		keyLock = rtlRand();
		//
		for ( i = 0; i < (sizeof( heroTbl ) * 5); i++ )
		{
			//
			rndList[i * 2] = rtlRand() % (sizeof(this->block) - 7);
			rndList[(i * 2) + 1] = ( rtlRand() % 31 ) + 1;
		}
		//
		for ( i = (sizeof( heroTbl ) * 5) - 1; i >= 0; i-- )
		{
			//
			bPtr = this->block + rndList[i * 2];
			k = rndList[(i * 2) + 1];
			//
			__asm{
				mov edx, bPtr
				mov ecx, k
				mov eax, [edx]
				rol eax, cl
				bswap eax
				mov [edx], eax
			}
		}
		//
		delete rndList;
		//
		((Dword *)(this->block))[(sizeof(this->block) / sizeof(Dword)) - 1] = keyLock;
		//
		this->fi.rwMode = FO_WRITE;
		this->fi.dataCount = 512;
		return kos_FileSystemAccess( &( this->fi) ) == 0;
	};
Exemplo n.º 3
0
void loadquestion(){

	//Страшно корявая процедура генерации случайного номера вопроса
//	rtlSrand(kos_GetSystemClock() / 100000);

	int qcodee;

	int skipsleft;
	
regenerate:
	qcodee=(rtlRand()%questioncount)+1; 
   
	Byte inputbyte[1]={0x00};
   
	//Первый проход - проверяем сложность и считаем длины строк
	tempquestionlength = 0;
	tempanswerAlength = 0;
	tempanswerBlength = 0;
	tempanswerClength = 0;
	tempanswerDlength = 0;
	

	skipsleft=qcodee; 
	CKosFile basefile(filepathname);	
	//Найдём то место, откуда начинается наш вопрос
	while (skipsleft>0){
		basefile.Read (inputbyte,1);
		if (inputbyte[0]==0x10){
			skipsleft--;
		}
		inputbyte[0]=0x00;
	}

	//Проверим сложность
	basefile.Read (inputbyte,1);
	
	// Нам нужно, чтобы сложность задаваемого вопроса соответствовала номеру задаваемого
	// в игре вопроса (на какую сумму мы играем; вопрос на 1000000 должен быть посложнее,
	// чем вопрос на 100 рублей :-)))

	if (inputbyte[0]==0x05) //Лёкгий вопрос
	{
		if (currentquestion > 5){ //Лёгкие вопросы - вопросы от 1 до 5
			goto regenerate; //Если это уже 6 вопрос и более - ищем другой вопрос
		}
	}
	if (inputbyte[0]==0x06) //Средний вопрос
	{
		if ((currentquestion < 6)||(currentquestion > 10)){ //Средние вопросы - вопросы от 6 до 10
			goto regenerate;
		}
	}
	if (inputbyte[0]==0x07) //Сложный вопрос
	{
		if (currentquestion < 11){ //Средние вопросы - вопросы от 11 до 15
			goto regenerate;
		}
	}
	

	for (int counter=0; counter <currentquestion; counter++){
		if (askedquestions[counter]==qcodee){goto regenerate;}
	}


	askedquestions[currentquestion-1]=qcodee;
	

	inputbyte[0]=0x00;
	//Считаем, сколько символов в вопросе
	tempquestionlength = 0;
	tempanswerAlength = 0;
	tempanswerBlength = 0;
	tempanswerClength = 0;
	tempanswerDlength = 0;
	while (inputbyte[0]!=0x01){
		basefile.Read (inputbyte,1);
		tempquestionlength++;
	}
	while (inputbyte[0]!=0x02){
		basefile.Read (inputbyte,1);
		tempanswerAlength++;
	}
	while (inputbyte[0]!=0x03){
		basefile.Read (inputbyte,1);
		tempanswerBlength++;
	}
	while (inputbyte[0]!=0x04){
		basefile.Read (inputbyte,1);
		tempanswerClength++;
	}
	while (inputbyte[0]!=0x08){
		basefile.Read (inputbyte,1);
		tempanswerDlength++;
	}
	//Первый проход завершён!!!!

	if (needcleanup==true){
		delete question;
		delete answerA;
		delete answerB;
		delete answerC;
		delete answerD;
	}
	needcleanup=true;

	tempquestion = new char[tempquestionlength+1];
	tempanswerA = new char[tempanswerAlength+1];
	tempanswerB = new char[tempanswerBlength+1];
	tempanswerC = new char[tempanswerClength+1];
	tempanswerD = new char[tempanswerDlength+1];


 
	// ВТОРОЙ ПРОХОД: ФОРМИРУЕМ В ПАМЯТИ ВОПРОС И ВАРИАНТЫ ОТВЕТА
	CKosFile basefile2(filepathname);
	inputbyte[0]=0x00;
	skipsleft=qcodee; 
	
	//Найдём то место, откуда начинается наш вопрос
	while (skipsleft>0){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]==0x10){
			skipsleft--;
		}
		inputbyte[0]=0x00;
	}
	
	basefile2.Read (inputbyte,1); // Это - сложность вопроса. Мы её уже проверили.

	//Читаем вопрос
	int currentbyte=0; 
	while (inputbyte[0]!=0x01){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]!=0x01){tempquestion[currentbyte]=inputbyte[0];}
		currentbyte++;
	}
	tempquestion[currentbyte]='\n';

	//Читаем ответ A
	currentbyte=0; 
	while (inputbyte[0]!=0x02){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]!=0x02){tempanswerA[currentbyte]=inputbyte[0];}
		currentbyte++;
	}
	tempanswerA[currentbyte]='\n';

	//Читаем ответ B
	currentbyte=0; 
	while (inputbyte[0]!=0x03){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]!=0x03){tempanswerB[currentbyte]=inputbyte[0];}
		currentbyte++;
	}
	tempanswerB[currentbyte]='\n';

	//Читаем ответ C
	currentbyte=0; 
	while (inputbyte[0]!=0x04){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]!=0x04){tempanswerC[currentbyte]=inputbyte[0];}
		currentbyte++;
	}
	tempanswerC[currentbyte]='\n';

	//Читаем ответ D
	currentbyte=0; 
	while (inputbyte[0]!=0x08){
		basefile2.Read (inputbyte,1);
		if (inputbyte[0]!=0x08){tempanswerD[currentbyte]=inputbyte[0];}
		currentbyte++;
	}
	tempanswerD[currentbyte]='\n';

	basefile2.Read (inputbyte,1); // Это-правильный ответ
	tempcorrectanswer=inputbyte[0];
	// ВСЁ!!!!!! ГОТОВО!!!! УРА!
	
	//Считали. Теперь надо перетасовать вопросы.
	questionlength = 0;
	answerAlength = 0;
	answerBlength = 0;
	answerClength = 0;
	answerDlength = 0;
	//Сам вопрос остаётся без изменения
	questionlength=tempquestionlength;
	question = new char[questionlength];
	for (int cd=0; cd<questionlength; cd++){
		question[cd]=tempquestion[cd];
	}


	//Тасуем ответы
	bool answerAfree = true;
	bool answerBfree = true;
	bool answerCfree = true;
	bool answerDfree = true;

	int tmpvalue=0;
	
	//Первый вопрос
regenA:
	tmpvalue = (rtlRand() % 4) +1;
	if (tmpvalue==1){
		if (answerAfree==true){
			answerAfree=false;
			answerAlength=tempanswerAlength;
			answerA= new char [answerAlength];
			
			for (int c=0; c<answerAlength; c++){
				answerA[c]=tempanswerA[c];
			}
			if (tempcorrectanswer==0x01){correctanswer=0x01;}
		}
		else
		{
			goto regenA;
		}
	}
	if (tmpvalue==2){
		if (answerBfree==true){
			answerBfree=false;
			answerBlength=tempanswerAlength;
			answerB= new char [answerBlength];
			
			for (int c=0; c<answerBlength; c++){
				answerB[c]=tempanswerA[c];
			}
			if (tempcorrectanswer==0x01){correctanswer=0x02;}
		}
		else
		{
			goto regenA;
		}
	}
	if (tmpvalue==3){
		if (answerCfree==true){
			answerCfree=false;
			answerClength=tempanswerAlength;
			answerC= new char [answerClength];
			
			for (int c=0; c<answerClength; c++){
				answerC[c]=tempanswerA[c];
			}
			if (tempcorrectanswer==0x01){correctanswer=0x03;}
		}
		else
		{
			goto regenA;
		}
	}
	if (tmpvalue==4){
		if (answerDfree==true){
			answerDfree=false;
			answerDlength=tempanswerAlength;
			answerD= new char [answerDlength];
			
			for (int c=0; c<answerDlength; c++){
				answerD[c]=tempanswerA[c];
			}
			if (tempcorrectanswer==0x01){correctanswer=0x04;}
		}
		else
		{
			goto regenA;
		}
	}

//Второй вопрос
regenB:
	tmpvalue = (rtlRand() % 4) +1;
	if (tmpvalue==1){
		if (answerAfree==true){
			answerAfree=false;
			answerAlength=tempanswerBlength;
			answerA= new char [answerAlength];
			
			for (int c=0; c<answerAlength; c++){
				answerA[c]=tempanswerB[c];
			}
			if (tempcorrectanswer==0x02){correctanswer=0x01;}
		}
		else
		{
			goto regenB;
		}
	}
	if (tmpvalue==2){
		if (answerBfree==true){
			answerBfree=false;
			answerBlength=tempanswerBlength;
			answerB= new char [answerBlength];
			
			for (int c=0; c<answerBlength; c++){
				answerB[c]=tempanswerB[c];
			}
			if (tempcorrectanswer==0x02){correctanswer=0x02;}
		}
		else
		{
			goto regenB;
		}
	}
	if (tmpvalue==3){
		if (answerCfree==true){
			answerCfree=false;
			answerClength=tempanswerBlength;
			answerC= new char [answerClength];
			
			for (int c=0; c<answerClength; c++){
				answerC[c]=tempanswerB[c];
			}
			if (tempcorrectanswer==0x02){correctanswer=0x03;}
		}
		else
		{
			goto regenB;
		}
	}
	if (tmpvalue==4){
		if (answerDfree==true){
			answerDfree=false;
			answerDlength=tempanswerBlength;
			answerD= new char [answerDlength];
			
			for (int c=0; c<answerDlength; c++){
				answerD[c]=tempanswerB[c];
			}
			if (tempcorrectanswer==0x02){correctanswer=0x04;}
		}
		else
		{
			goto regenB;
		}
	}

	//Третий вопрос
regenC:
		tmpvalue = (rtlRand() % 4) +1;
	if (tmpvalue==1){
		if (answerAfree==true){
			answerAfree=false;
			answerAlength=tempanswerClength;
			answerA= new char [answerAlength];
			
			for (int c=0; c<answerAlength; c++){
				answerA[c]=tempanswerC[c];
			}
			if (tempcorrectanswer==0x03){correctanswer=0x01;}
		}
		else
		{
			goto regenC;
		}
	}
	if (tmpvalue==2){
		if (answerBfree==true){
			answerBfree=false;
			answerBlength=tempanswerClength;
			answerB= new char [answerBlength];
			
			for (int c=0; c<answerBlength; c++){
				answerB[c]=tempanswerC[c];
			}
			if (tempcorrectanswer==0x03){correctanswer=0x02;}
		}
		else
		{
			goto regenC;
		}
	}
	if (tmpvalue==3){
		if (answerCfree==true){
			answerCfree=false;
			answerClength=tempanswerClength;
			answerC= new char [answerClength];
			
			for (int c=0; c<answerClength; c++){
				answerC[c]=tempanswerC[c];
			}
			if (tempcorrectanswer==0x03){correctanswer=0x03;}
		}
		else
		{
			goto regenC;
		}
	}
	if (tmpvalue==4){
		if (answerDfree==true){
			answerDfree=false;
			answerDlength=tempanswerClength;
			answerD= new char [answerDlength];
			
			for (int c=0; c<answerDlength; c++){
				answerD[c]=tempanswerC[c];
			}
			if (tempcorrectanswer==0x03){correctanswer=0x04;}
		}
		else
		{
			goto regenC;
		}
	}

	//Четвёртый вопрос
regenD:
	tmpvalue = (rtlRand() % 4) +1;
	if (tmpvalue==1){
		if (answerAfree==true){
			answerAfree=false;
			answerAlength=tempanswerDlength;
			answerA= new char [answerAlength];
			
			for (int c=0; c<answerAlength; c++){
				answerA[c]=tempanswerD[c];
			}
			if (tempcorrectanswer==0x04){correctanswer=0x01;}
		}
		else
		{
			goto regenD;
		}
	}
	if (tmpvalue==2){
		if (answerBfree==true){
			answerBfree=false;
			answerBlength=tempanswerDlength;
			answerB= new char [answerBlength];
			
			for (int c=0; c<answerBlength; c++){
				answerB[c]=tempanswerD[c];
			}
			if (tempcorrectanswer==0x04){correctanswer=0x02;}
		}
		else
		{
			goto regenD;
		}
	}
	if (tmpvalue==3){
		if (answerCfree==true){
			answerCfree=false;
			answerClength=tempanswerDlength;
			answerC= new char [answerClength];
			
			for (int c=0; c<answerClength; c++){
				answerC[c]=tempanswerD[c];
			}
			if (tempcorrectanswer==0x04){correctanswer=0x03;}
		}
		else
		{
			goto regenD;
		}
	}
	if (tmpvalue==4){
		if (answerDfree==true){
			answerDfree=false;
			answerDlength=tempanswerDlength;
			answerD= new char [answerDlength];
			
			for (int c=0; c<answerDlength; c++){
				answerD[c]=tempanswerD[c];
			}
			if (tempcorrectanswer==0x04){correctanswer=0x04;}
		}
		else
		{
			goto regenD;
		}
	}

	delete tempquestion;
	delete tempanswerA;
	delete tempanswerB;
	delete tempanswerC;
	delete tempanswerD;
}
Exemplo n.º 4
0
void kos_Main(){
	rtlSrand(kos_GetSystemClock() / 10000);
	kos_InitHeap();
	getFilePathName();
	prepareFileData();
	draw_window();
	while (true){

		switch (kos_WaitForEvent()){
		case 1:
			draw_window();
			break;
		case 2:
			Byte keyCode;
			kos_GetKey(keyCode);

			if (status==0){ //Меню
				if (keyCode==27){
					app_halt();
				}
				if (keyCode==13){
					currentquestion=1;
					status=1;
					loadquestion();
					////// ПОМЕНЯТЬ МЕСТАМИ!!!!!!! /////////
					draw_window();

				}
			}
			if (status==1){ //Игра

			if (keyCode==8){
				status=6;
				draw_window();
			}

			if (drawA==true){
			if ((keyCode==49)||(keyCode==97)||(keyCode==65)){
					if (correctanswer==0x01){
						status=2;
					}
					else
					{
						status=-1;
					}
					drawA = true;
					drawB = true;
					drawC = true;
					drawD = true;
					
					draw_window();
			}
			}

			if (drawB==true){
			if ((keyCode==50)||(keyCode==98)||(keyCode==66)){
					if (correctanswer==0x02){
						status=2;
					}
					else
					{
						status=-1;
					}
					drawA = true;
					drawB = true;
					drawC = true;
					drawD = true;
					
					draw_window();					
				}
			}
			if (drawC==true){
			if ((keyCode==51)||(keyCode==99)||(keyCode==67)){
					if (correctanswer==0x03){
						status=2;
					}
					else
					{
						status=-1;
					}
					drawA = true;
					drawB = true;
					drawC = true;
					drawD = true;
					
					draw_window();					
				}
			}
			if (drawD==true){
			if ((keyCode==52)||(keyCode==100)||(keyCode==68)){
					if (correctanswer==0x04){
						status=2;
					}
					else
					{
						status=-1;
					}
					drawA = true;
					drawB = true;
					drawC = true;
					drawD = true;
					
					draw_window();
			}
			}
			
			if (callfriendavailable==true){ //Реализация подсказки "Звонок другу"
				if (keyCode==56){
					callfriendavailable=false;
					status=4;
					call_friend();
					draw_window();
				}
			}

			if (zalavailable==true){ //Реализация подсказки зала
				if (keyCode==57){
					zalavailable=false;
					status=5;
					call_zal();
					draw_window();
				}
			}

			if (na50available==true){ //Реализация подсказки "50 на 50"
			if (keyCode==55){
				
				if (correctanswer==0x01){
					drawA=true;

						int tmpcodee;
						
						recode1:
						tmpcodee =(rtlRand()%3)+1; 
	
						int tmpbyte;
						
						switch(tmpcodee){
						case 1:
							drawB=true;
							drawC=false;
							drawD=false;
							break;
						case 2:
							drawB=false;
							drawC=true;
							drawD=false;
						case 3:
							drawB=false;
							drawC=false;
							drawD=true;
						
						}
				}
				if (correctanswer==0x02){
					drawB=true;

						int tmpcodee;
						
						recode2:
						tmpcodee =(rtlRand()%3)+1; 
	
						int tmpbyte;
					

						switch(tmpcodee){
						case 1:
							drawA=true;
							drawC=false;
							drawD=false;
							break;
						case 2:
							drawA=false;
							drawC=true;
							drawD=false;
						case 3:
							drawA=false;
							drawC=false;
							drawD=true;
						
						}
				}
				if (correctanswer==0x03){
					drawC=true;

						int tmpcodee;
						
						recode3:
						tmpcodee =(rtlRand()%3)+1; 
						int tmpbyte;
						

						switch(tmpcodee){
						case 1:
							drawB=true;
							drawA=false;
							drawD=false;
							break;
						case 2:
							drawB=false;
							drawA=true;
							drawD=false;
						case 3:
							drawB=false;
							drawA=false;
							drawD=true;
						
						}
				}
				if (correctanswer==0x04){
					drawA=true;

						int tmpcodee;
						
						recode4:
						tmpcodee =(rtlRand()%3)+1; 
						
						int tmpbyte;
						

						switch(tmpcodee){
						case 1:
							drawB=true;
							drawC=false;
							drawA=false;
							break;
						case 2:
							drawB=false;
							drawC=true;
							drawA=false;
						case 3:
							drawB=false;
							drawC=false;
							drawA=true;
						
						}
				}
				na50available=false;
				draw_window();

			}
			}

			}
			if (status==2){ //Окно "Это - правильный ответ!"
				if (keyCode==13){
					if (currentquestion<15){
						currentquestion++;
						status=1;
						loadquestion();
						draw_window();
					}
					else
					{
						status=3;
						draw_window();
					}

				}
			}
			if (status==3){ //Вы выиграли миллион
				if (keyCode==27){
					app_halt();
				}
			}
			if (status==4){ //Совет друга
				if (keyCode==13){
					status=1;
					draw_window();
				}
			}
			if (status==5){ //Подсказка зала
				if (keyCode==13){
					status=1;
					draw_window();
				}
			}
			if (status==6){ //Вы забрали деньги ;-)
				if (keyCode==27){
					app_halt();
				}
			}
			if (status==-1){ //Вы ошиблись :-(
				if (keyCode==27){
					app_halt();
				}
			}

			//kos_DrawBar(38,118,50,130,0xBBBBBB);
			//kos_DisplayNumberToWindow (keyCode,3,40,120,0x000000, nbDecimal, false);


			break;
		case 3:
			app_halt();
			break;
		}

	}
}
Exemplo n.º 5
0
void call_zal(){ //Подсказка зала
	int maxpercent=0;
	for (int tmpc=0; tmpc<(16-currentquestion);tmpc=tmpc+2){
		maxpercent=(rtlRand()%101);
		if (maxpercent>50) {break;}
	}

	if ((drawA==true)&&(drawB==true)&&(drawC==true)&&(drawD==true)){
		switch (correctanswer){
		case 0x01:
		zalA=maxpercent;
		zalB=(rtlRand()%(101-zalA));
		zalC=(rtlRand()%(101-zalA-zalB));
		zalD=100-zalA-zalB-zalC;
		break;

		case 0x02:
		zalB=maxpercent;
		zalA=(rtlRand()%(101-zalB));
		zalC=(rtlRand()%(101-zalA-zalB));
		zalD=100-zalA-zalB-zalC;
		break;

		case 0x03:
		zalC=maxpercent;
		zalB=(rtlRand()%(101-zalC));
		zalA=(rtlRand()%(101-zalC-zalB));
		zalD=100-zalA-zalB-zalC;
		break;

		case 0x04:
		zalD=maxpercent;
		zalB=(rtlRand()%(101-zalD));
		zalC=(rtlRand()%(101-zalD-zalB));
		zalA=100-zalD-zalB-zalC;
		break;
		}
	}
	else
	{
		if ((drawA==true)&&(drawB==true)){
			if (correctanswer==0x01){
				zalA=maxpercent;
				zalB=100-zalA;
			}
			else
			{
				zalB=maxpercent;
				zalA=100-zalB;
			}
		}
		if ((drawA==true)&&(drawC==true)){
			if (correctanswer==0x01){
				zalA=maxpercent;
				zalC=100-zalA;
			}
			else
			{
				zalC=maxpercent;
				zalA=100-zalC;
			}
		}
		if ((drawA==true)&&(drawD==true)){
			if (correctanswer==0x01){
				zalA=maxpercent;
				zalD=100-zalA;
			}
			else
			{
				zalD=maxpercent;
				zalA=100-zalD;
			}
		}
		
		if ((drawB==true)&&(drawC==true)){
			if (correctanswer==0x02){
				zalB=maxpercent;
				zalC=100-zalB;
			}
			else
			{
				zalC=maxpercent;
				zalB=100-zalC;
			}
		}
		if ((drawB==true)&&(drawD==true)){
			if (correctanswer==0x02){
				zalB=maxpercent;
				zalD=100-zalB;
			}
			else
			{
				zalD=maxpercent;
				zalB=100-zalD;
			}
		}
		
		if ((drawC==true)&&(drawD==true)){
			if (correctanswer==0x03){
				zalC=maxpercent;
				zalD=100-zalC;
			}
			else
			{
				zalD=maxpercent;
				zalC=100-zalD;
			}
		}

	}
}
Exemplo n.º 6
0
void call_friend(){
	int tmpcodee;
						
	recode5:
	tmpcodee =(rtlRand()%10)+1; 
	int tmpbyte;

	if (currentquestion < 6 ){
		if (tmpcodee>3){ //Друг знает
			if (correctanswer==0x01) {friendsAdvice[0]='A';}
			if (correctanswer==0x02) {friendsAdvice[0]='B';}
			if (correctanswer==0x03) {friendsAdvice[0]='C';}
			if (correctanswer==0x04) {friendsAdvice[0]='D';}
		}
		else //Друг говорит наугад
		{
			
			int tmpbyte2=0;
			recode51:
			int tmpcodee2=(rtlRand()%4)+1;

			switch(tmpcodee2){
			case 1:
				friendsAdvice[0]='A';
				break;
			case 2:
				friendsAdvice[0]='B';
				break;
			case 3:
				friendsAdvice[0]='C';
				break;
			case 4:
				friendsAdvice[0]='D';
				break;
			}
		}

	}

	if ((currentquestion > 5) && (currentquestion<11)){
		if (tmpcodee>5){ //Друг знает
			if (correctanswer==0x01) {friendsAdvice[0]='A';}
			if (correctanswer==0x02) {friendsAdvice[0]='B';}
			if (correctanswer==0x03) {friendsAdvice[0]='C';}
			if (correctanswer==0x04) {friendsAdvice[0]='D';}
		}
		else //Друг говорит наугад
		{
			
			int tmpbyte2=0;
			recode52:
			int tmpcodee2=(rtlRand()%4)+1;
			switch(tmpcodee2){
			case 1:
				friendsAdvice[0]='A';
				break;
			case 2:
				friendsAdvice[0]='B';
				break;
			case 3:
				friendsAdvice[0]='C';
				break;
			case 4:
				friendsAdvice[0]='D';
				break;
			}
		}

	}

	if (currentquestion > 10){
		if (tmpcodee>7){ //Друг знает
			if (correctanswer==0x01) {friendsAdvice[0]='A';}
			if (correctanswer==0x02) {friendsAdvice[0]='B';}
			if (correctanswer==0x03) {friendsAdvice[0]='C';}
			if (correctanswer==0x04) {friendsAdvice[0]='D';}
		}
		else //Друг говорит наугад
		{

			int tmpbyte2=0;
			recode53:
			int tmpcodee2=(rtlRand()%4)+1;

			switch(tmpcodee2){
			case 1:
				friendsAdvice[0]='A';
				break;
			case 2:
				friendsAdvice[0]='B';
				break;
			case 3:
				friendsAdvice[0]='C';
				break;
			case 4:
				friendsAdvice[0]='D';
				break;
			}
		}

		if ((friendsAdvice[0]=='A')&&(drawA==false)){goto recode5;}
		if ((friendsAdvice[0]=='B')&&(drawB==false)){goto recode5;}
		if ((friendsAdvice[0]=='C')&&(drawC==false)){goto recode5;}
		if ((friendsAdvice[0]=='D')&&(drawD==false)){goto recode5;}
	}






}