当前位置: 首页>>代码示例>>C++>>正文


C++ WorldModel::IsBeforeKickOff方法代码示例

本文整理汇总了C++中WorldModel::IsBeforeKickOff方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldModel::IsBeforeKickOff方法的具体用法?C++ WorldModel::IsBeforeKickOff怎么用?C++ WorldModel::IsBeforeKickOff使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在WorldModel的用法示例。


在下文中一共展示了WorldModel::IsBeforeKickOff方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: FreeMan_DO

bool Decision::FreeMan_DO()
{
    static bool bBeamOver = false;
	
	if (wm.IsBeforeKickOff())
	{
		Vector v(-2,0,0);
		if (wm.GetUnum() == 1)
				v = Vector(-2,1,0);
		else if (wm.GetUnum() == 2)
				v = Vector(-2,-1,0);
		else if (wm.GetUnum() == 3)
				v = Vector(-2.5,0.5,0);
		else if (wm.GetUnum() == 4)
				v = Vector(-2.5,-0.5,0);
		else if (wm.GetUnum() == 5)
				v = Vector(-3,0,0);
		else if (wm.GetUnum() == 6)
				v = Vector(-3,1.5,0);
		else if (wm.GetUnum() == 7)
				v = Vector(-3,-1.5,0);
		else if (wm.GetUnum() == 8)
				v = Vector(-2,0,0);

		if (!bBeamOver) bBeamOver = ACT.BeamAfterDelay(v,10,5);
		
	}
	//else{ACT.KickSmallLeft();}/*
	else if (wm.IsPlayOn())
	{
		
		
		if ( wm.m_FallState != FALL_NONE || Motion_State == CLIMB_PERIOD)	
		{	
			cout<<"倒下 爬起"<<endl;
			bActionFinish = skill.ClimbOnGround();
			if (bActionFinish)
			{
				Motion_State = SQUAT_PERIOD;
				bActionFinish =  false;
			}
			else
				Motion_State = CLIMB_PERIOD;
			return true;
		}
		if (Motion_State == SQUAT_PERIOD) 
		{
			cout<<"蹲下 "<<endl;
			bActionFinish = ACT.Squat();
			if (bActionFinish)
			{
				Motion_State = ACTION_READY;
				bActionFinish =  false;
			}
			return true;
		} 
		if (Motion_State == STOP_WALK_PERIOD)
		{
			cout<<"停止走路 "<<endl;
			bActionFinish = skill.WalkForwardStop();
			if (bActionFinish)
			{
				Motion_State = ACTION_READY;
				bActionFinish = false;
			}
			return true;
		}
		if (Motion_State == STOP_MICRO_PERIOD)
		{
			cout<<"停止微调"<<endl;
			bActionFinish = skill.MicroAdjustForShoot(Vector(0,0,0),true,false);
			if (bActionFinish)
			{
				Motion_State = ACTION_READY;
				bActionFinish = false;
			}
			return true;
		}
		EstimateSituationUpdate_FreeMan();// should add if situation changed , initail all skill and ACT
		switch (Freeman_Situation)
		{
			case ATTACK : 
				FreeMan_Attack(); 
				break;
			case ASSIST_ATTACK : break;
			case DEFEND : break;
			case ASSIST_DEFEND : break;
			case URGENCY_DEFEND : break;
		}

		if(ShallISaySomething())
			Freeman_Say();

		/* For test say effector
		//wm.LogTeammateSay(1,ssay.str());
		//cout<<" i say "<<wm.GetAllSay()<<endl;
		//cout<<" people say "<<wm.GetOthersSay()<<endl;
		*/
	}
	else return true;
//.........这里部分代码省略.........
开发者ID:shuivin,项目名称:robocup3d,代码行数:101,代码来源:FreeManDecision.cpp


注:本文中的WorldModel::IsBeforeKickOff方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。