Esempio n. 1
0
int IsBoss(double d,Position des)//判断下一时刻会不会碰到boss
{
	int flag=0;
	Position Next=Add(me.pos,Multiple(5,MaximumSpeed(speed))); 
	if (dist(Next,des)<d)
		flag=1;
	return flag;
}
Esempio n. 2
0
int IsDevour(double d,Position des)//判断下一时刻会不会碰到吞噬者
{
	int flag=0;
	Position Next; 
	for(int i=1;i<=8;i++)
	{
		Next=Add(me.pos,Multiple(i,MaximumSpeed(speed)));
		if (dist(Next,des)<d)
			flag=1;
	}
	return flag;
}
  SteamScene::SteamScene(CherEngine::Game& game)
    : IScene(game)
  {
    for (float angle = kMinAngle; angle <= kMaxAngle; angle += (0.5f * Deg2Rad))
    {
      const auto minSpeed = MinimumSpeed(angle);
      const auto maxSpeed = MaximumSpeed(angle);

      for (float speed = minSpeed; speed <= maxSpeed; speed += 1.0f)
      {
        _solutions.push_back({ 0, angle, speed, MaximumDistance(speed, angle) });
      }
    }
  }
Esempio n. 4
0
void AIMain() {
	if (GetStatus() -> team_id) 
	{
		/*Vector speed2={100,100,100};
		Move(GetStatus()->objects[0].id,speed2);*/
		return;
	}
	srand(time(0));
	for(;;){
		//if (abs(GetTime()-1000)<=5 || me.health>10000)
		//printf("time=%d\thealth=%d\tability=%d\n",GetTime(),me.health,me.ability);
		Init();
		speed=MaximumSpeed(speed);
		Move(me.id,speed);
		Strategy();
	}
}