Example #1
0
//-----------------------------------------------------------------
void GABot::randomTeam(int TeamNumber)
{
   if (TeamNumber == 0){
      if (TeamA) delete TeamA;
      TeamA = new Team(this);
      TeamA->randomTeam(5);
      connect( TeamA, SIGNAL(botMove(Coordinate,Coordinate)),
         this,  SLOT(slotBotMoveA(Coordinate,Coordinate)));
      connect( TeamA, SIGNAL(botDirection(Coordinate,Direction)),
         this,  SLOT(slotBotDirectionA(Coordinate,Direction)));
      
   }else if (TeamNumber == 1){
      if (TeamB) delete TeamB;
      TeamB = new Team(this);
      TeamB->randomTeam(5);
      connect( TeamB, SIGNAL(botMove(Coordinate,Coordinate)),
         this,  SLOT(slotBotMoveB(Coordinate,Coordinate)));
      connect( TeamB, SIGNAL(botDirection(Coordinate,Direction)),
         this,  SLOT(slotBotDirectionB(Coordinate,Direction)));
   }


   if (TeamA && TeamB){
      prepareGame();
      emit(gameReady(TRUE));
   }
}
Example #2
0
//-----------------------------------------------------------------
int GABot::loadTeamFromFile( QString Filename, int TeamNumber )
{
	int Err=0;

	TeamData data;
	if (TeamNumber == 0) {
		TeamA = data.readTeamData(Filename);
		if (TeamA) {
			Err = 1;
			insertChild(TeamA);
			connect( TeamA, SIGNAL(botMove(Coordinate,Coordinate)),
			         this,  SLOT(slotBotMoveA(Coordinate,Coordinate)));
			connect( TeamA, SIGNAL(botDirection(Coordinate,Direction)),
			         this,  SLOT(slotBotDirectionA(Coordinate,Direction)));
		}
	} else if (TeamNumber == 1) {
		TeamB = data.readTeamData(Filename);
		if (TeamB) {
			Err = 1;
			insertChild(TeamB);
			connect( TeamB, SIGNAL(botMove(Coordinate,Coordinate)),
			         this,  SLOT(slotBotMoveB(Coordinate,Coordinate)));
			connect( TeamB, SIGNAL(botDirection(Coordinate,Direction)),
			         this,  SLOT(slotBotDirectionB(Coordinate,Direction)));
		}
	}

	if (TeamA && TeamB) {
		prepareGame();
		emit(gameReady(TRUE));
	}

	return Err;

}
MapController::MapController(const bool &centerOnPlayer,const bool &debugTags,const bool &useCache,const bool &OpenGL) :
    MapVisualiserPlayer(centerOnPlayer,debugTags,useCache,OpenGL)
{
    setWindowIcon(QIcon(":/icon.png"));

    botTileset = new Tiled::Tileset("bot",16,24);
    botTileset->loadFromImage(QImage(":/bot_skin.png"),":/bot_skin.png");
    botNumber = 0;

    //the bot management
    if(!connect(&timerBotMove,SIGNAL(timeout()),this,SLOT(botMove())))
        abort();
    if(!connect(&timerBotManagement,SIGNAL(timeout()),this,SLOT(botManagement())))
        abort();
    timerBotMove.start(66);
    timerBotManagement.start(3000);

    playerTileset = new Tiled::Tileset("player",16,24);
    QString externalFile=QCoreApplication::applicationDirPath()+"/player_skin.png";
    if(QFile::exists(externalFile))
    {
        QImage externalImage(externalFile);
        if(!externalImage.isNull() && externalImage.width()==48 && externalImage.height()==96)
            playerTileset->loadFromImage(externalImage,externalFile);
        else
            playerTileset->loadFromImage(QImage(":/player_skin.png"),":/player_skin.png");
    }
    else
        playerTileset->loadFromImage(QImage(":/player_skin.png"),":/player_skin.png");
    playerMapObject = new Tiled::MapObject();

    //the direction
    direction=CatchChallenger::Direction_look_at_bottom;
    playerMapObject->setTile(playerTileset->tileAt(7));
}
Example #4
0
File: team.cpp Project: edlau/GABot
unsigned int Team::insertBot(Bot *b) {
   connect( b, SIGNAL(botMove(Coordinate,Coordinate)),
            this, SLOT(slotBotMove(Coordinate,Coordinate)));
   connect( b, SIGNAL(botDirection(Coordinate,Direction)),
            this, SLOT(slotBotDirection(Coordinate,Direction)));
   Bots.append(b);
   return Bots.at();
}
Example #5
0
File: team.cpp Project: edlau/GABot
void Team::slotBotMove(Coordinate P1,Coordinate P2)
{
   emit(botMove(P1,P2));
}