📄 baseagent.cpp
字号:
{
// AfxMessageBox("Information error 3");
}
}
switch(iNum)
{
case 1:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][0].position.x=x;
r[0][0].position.y=y;
r[0][0].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position1.x=x;
op.position1.y=y;
}
break;
case 2:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][1].position.x=x;
r[0][1].position.y=y;
r[0][1].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position2.x=x;
op.position2.y=y;
}
break;
case 3:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][2].position.x=x;
r[0][2].position.y=y;
r[0][2].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position3.x=x;
op.position3.y=y;
}
break;
case 4:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][3].position.x=x;
r[0][3].position.y=y;
r[0][3].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position4.x=x;
op.position4.y=y;
}
break;
case 5:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][4].position.x=x;
r[0][4].position.y=y;
r[0][4].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position5.x=x;
op.position5.y=y;
}
break;
case 6:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][5].position.x=x;
r[0][5].position.y=y;
r[0][5].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position6.x=x;
op.position6.y=y;
}
break;
case 7:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][6].position.x=x;
r[0][6].position.y=y;
r[0][6].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position7.x=x;
op.position7.y=y;
}
break;
case 8:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][7].position.x=x;
r[0][7].position.y=y;
r[0][7].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position8.x=x;
op.position8.y=y;
}
break;
case 9:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][8].position.x=x;
r[0][8].position.y=y;
r[0][8].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position9.x=x;
op.position9.y=y;
}
break;
case 10:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][9].position.x=x;
r[0][9].position.y=y;
r[0][9].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position10.x=x;
op.position10.y=y;
}
break;
case 11:
if(m_iSide==LEFT_TO_RIGHT)
{
r[0][10].position.x=x;
r[0][10].position.y=y;
r[0][10].angle=(int)angle;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
op.position11.x=x;
op.position11.y=y;
}
break;
case 12:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position1.x=x;
op.position1.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][0].position.x=x;
r[0][0].position.y=y;
r[0][0].angle=(int)angle;
}
break;
case 13:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position2.x=x;
op.position2.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][1].position.x=x;
r[0][1].position.y=y;
r[0][1].angle=(int)angle;
}
break;
case 14:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position3.x=x;
op.position3.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][2].position.x=x;
r[0][2].position.y=y;
r[0][2].angle=(int)angle;
}
break;
case 15:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position4.x=x;
op.position4.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][3].position.x=x;
r[0][3].position.y=y;
r[0][3].angle=(int)angle;
}
break;
case 16:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position5.x=x;
op.position5.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][4].position.x=x;
r[0][4].position.y=y;
r[0][4].angle=(int)angle;
}
break;
case 17:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position6.x=x;
op.position6.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][5].position.x=x;
r[0][5].position.y=y;
r[0][5].angle=(int)angle;
}
break;
case 18:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position7.x=x;
op.position7.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][6].position.x=x;
r[0][6].position.y=y;
r[0][6].angle=(int)angle;
}
break;
case 19:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position8.x=x;
op.position8.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][7].position.x=x;
r[0][7].position.y=y;
r[0][7].angle=(int)angle;
}
break;
case 20:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position9.x=x;
op.position9.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][8].position.x=x;
r[0][8].position.y=y;
r[0][8].angle=(int)angle;
}
break;
case 21:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position10.x=x;
op.position10.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][9].position.x=x;
r[0][9].position.y=y;
r[0][9].angle=(int)angle;
}
break;
case 22:
if(m_iSide==LEFT_TO_RIGHT)
{
op.position11.x=x;
op.position11.y=y;
}
else if(m_iSide==RIGHT_TO_LEFT)
{
r[0][10].position.x=x;
r[0][10].position.y=y;
r[0][10].angle=(int)angle;
}
break;
}
break;
case 'b':
case 'B':
// theball.angle=angle;
theball.position.x=x;
theball.position.y=y;
break;
case 'c':
case 'C':
name.SetPosition(7);
// read the teamname
if (name.ParseString(teamname))
{
// ist it my team ?
// read player number
iNum = name.ParseInteger();
if (msg.HasErrorOccured())
{
// AfxMessageBox("Information error 3");
}
}
switch(iNum)
{
case 1:
rbtCollision[0][0].isMovable=x;
break;
case 2:
rbtCollision[0][1].isMovable=x;
break;
case 3:
rbtCollision[0][2].isMovable=x;
break;
case 4:
rbtCollision[0][3].isMovable=x;
break;
case 5:
rbtCollision[0][4].isMovable=x;
break;
case 6:
rbtCollision[0][5].isMovable=x;
break;
case 7:
rbtCollision[0][6].isMovable=x;
break;
case 8:
rbtCollision[0][7].isMovable=x;
break;
case 9:
rbtCollision[0][8].isMovable=x;
break;
case 10:
rbtCollision[0][9].isMovable=x;
break;
case 11:
rbtCollision[1][0].isMovable=x;
break;
case 12:
rbtCollision[1][1].isMovable=x;
break;
case 13:
rbtCollision[1][2].isMovable=x;
break;
case 14:
rbtCollision[1][3].isMovable=x;
break;
case 15:
rbtCollision[1][4].isMovable=x;
break;
case 16:
rbtCollision[1][5].isMovable=x;
break;
case 17:
rbtCollision[1][6].isMovable=x;
break;
case 18:
rbtCollision[1][7].isMovable=x;
break;
case 19:
rbtCollision[1][8].isMovable=x;
break;
case 20:
rbtCollision[1][9].isMovable=x;
break;
}
break;
}
TRACE("robot1=%d\n",rbtCollision[0][0].isMovable);
return TRUE;
}
void CBaseAgent::SendCommand()
{
CString msg;
if(m_iSide==LEFT_TO_RIGHT)
{
msg.Format("((player left 1) %d %d) ((player left 2) %d %d) ((player left 3) %d %d) ((player left 4) %d %d) ((player left 5) %d %d) ((player left 6) %d %d) ((player left 7) %d %d) ((player left 8) %d %d) ((player left 9) %d %d) ((player left 10) %d %d) ((player left 11) %d %d)",
thePlannerL->command[2],thePlannerL->command[3],
thePlannerL->command[5],thePlannerL->command[6],
thePlannerL->command[8],thePlannerL->command[9],
thePlannerL->command[11],thePlannerL->command[12],
thePlannerL->command[14],thePlannerL->command[15],
thePlannerL->command[17],thePlannerL->command[18],
thePlannerL->command[20],thePlannerL->command[21],
thePlannerL->command[23],thePlannerL->command[24],
thePlannerL->command[26],thePlannerL->command[27],
thePlannerL->command[29],thePlannerL->command[30],
thePlannerL->command[32],thePlannerL->command[33]);
}
else if(m_iSide==RIGHT_TO_LEFT)
{
msg.Format("((player right 1) %d %d) ((player right 2) %d %d) ((player right 3) %d %d) ((player right 4) %d %d) ((player right 5) %d %d) ((player right 6) %d %d) ((player right 7) %d %d) ((player right 8) %d %d) ((player right 9) %d %d) ((player right 10) %d %d) ((player right 11) %d %d)",
thePlannerR->command[2],thePlannerR->command[3],
thePlannerR->command[5],thePlannerR->command[6],
thePlannerR->command[8],thePlannerR->command[9],
thePlannerR->command[11],thePlannerR->command[12],
thePlannerR->command[14],thePlannerR->command[15],
thePlannerR->command[17],thePlannerR->command[18],
thePlannerR->command[20],thePlannerR->command[21],
thePlannerR->command[23],thePlannerR->command[24],
thePlannerR->command[26],thePlannerR->command[27],
thePlannerR->command[29],thePlannerR->command[30],
thePlannerR->command[32],thePlannerR->command[33]);
}
SendMsg(msg);
}
void CBaseAgent::writetofile()
{
/*
fprintf(fp,"ball.x=%d,ball.y=%d\n",theball.position.x,theball.position.y);
fprintf(fp,"num1.x=%d,num1.y=%d,num1.angle=%d\n",r[0][0].position.x,r[0][0].position.y,r[0][0].angle);
fprintf(fp,"num2.x=%d,num2.y=%d,num2.angle=%d\n",r[0][1].position.x,r[0][1].position.y,r[0][1].angle);
fprintf(fp,"num3.x=%d,num3.y=%d,num3.angle=%d\n",r[0][2].position.x,r[0][2].position.y,r[0][2].angle);
fprintf(fp,"op1.x=%d,op1.y=%d\n",op.position1.x,op.position1.y);
fprintf(fp,"op2.x=%d,op2.y=%d\n",op.position2.x,op.position2.y);
fprintf(fp,"op3.x=%d,op3.y=%d\n",op.position3.x,op.position3.y);
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -