Лабораторная работа №1 (990940), страница 2
Текст из файла (страница 2)
temp=Robot->FindJoinableFriend();
if(temp==NULL)
res= 0;
else
res=1;
break;
case 4: // weak
temp=Robot->FindWeakEnemy();
if(temp==NULL)
res= 0;
else
res=1;
break;
case 5:
if(RobotVec.size()==2)
res=1;
else res=0;
break;
}
break;
case 2: // Таблица 2
switch(m.LParam) // Номер условия
{
case 1:
res=purgatory.IsEmpty();
break;
case 2:
res=purgatory.IfSinner();
break;
case 3:
res=purgatory.IfKiller();
break;
case 4:
res=purgatory.IfDevil();
break;
case 5:
res=purgatory.IfGood();
break;
case 6:
res=purgatory.IfSaint();
break;
}
z.Format("Итого прошло: грешников-%d, убийц-%d, дьяволов-%d, хороших-%d, святых-%d",purgatory.sinner,purgatory.killer,purgatory.devil,purgatory.good,purgatory.saint);
RateText.SetWindowTextA(z.GetBuffer());
break; //
case 3: // Таблица 3
switch(m.LParam) // Номер условия
{
case 1:
Robot=Robot->FindEnemy();//take turns
temp=Robot->FindNearest();
if(temp==NULL)
res=0;
else
res=1;
break;
case 2:
res=Robot->IsEnemyUp();
break;
case 3:
res=Robot->IsEnemyDown();
break;
case 4:
res=Robot->IsEnemyLeft();
break;
case 5:
res=Robot->IsEnemyRight();
break;
}
}
break;
////////////
case ACTIONS: // Действия
res=1;
switch(m.WParamLo)
{
case 1: // Таблица 1
switch(m.LParam) // Номер действия
{
case 1: //
Robot->MakeRandMove();
break;
case 2: //
Robot->RunFromDangerousEnemy();
break;
case 3: //
Robot->Kill(Robot->FindWeakEnemy());
break;
case 4: //
Robot->Join(Robot->FindJoinableFriend());
break;
}
break;
case 2: // Таблица 2
switch(m.LParam) // Номер действия
{
case 1:
break;
case 2: // Действие 1
purgatory.MakeSinner();
break;
case 3:
purgatory.MakeKiller();
break;
case 4:
purgatory.MakeDevil();
break;
case 5:
purgatory.MakeGood();
break;
case 6:
purgatory.MakeSaint();
break;
}
break;
case 3: // Таблица 3
switch(m.LParam) // Номер действия
{
case 1:
Robot->Kill(Robot->FindNearest());
break;
case 2:
Robot->MoveUp();
break;
case 3: // Действие 1
Robot->MoveDown();
break;
case 4:
Robot->MoveLeft();
break;
case 5:
Robot->MoveRight();
break;
}
break;
}
break;
}
//ReleaseMutex(Sync);
lock.Unlock();
return res;
}
void CrobotsDlg::OnBnClickedButton3()
{
}
void CrobotsDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
if(stop.IsWindowEnabled())
OnBnClickedButton2();
OnOK();
}
void CrobotsDlg::OnStnClickedPicture()
{
// TODO: Add your control notification handler code here
}
19















