Example #1
0
void loadTestMission(char *filename)
{
	game.currentMission = loadMissionMeta(filename);
	
	initBattle();
	
	loadMission(filename);
}
Example #2
0
static void startChallengeMission(void)
{
	initBattle();

	loadMission(game.currentMission->filename);
}
Example #3
0
void World::playVideo()
{
	if (_tankList.size() == 3) {
		_other++;
		if (_other % 30 == 0) {
			fire(_tankList[1]);
		} else if (_other % 51 == 0) {
			fire(_tankList[2]);
		}
	} else if (_tankList.size() == 2 & _other > 0 & _other < 1000) {
		_tankList[0]->move(false);
		_tankList[1]->move(false);
		_tankList[0]->rotate(3);
		_tankList[1]->rotate(1);
		_other = 0;

	} else if (_tankList.size() == 2 &_other == 0) {
		_other = -1;
		for (int q = 0; q < 8; q ++) {
			Tank *tank = new Tank;
			tank->setPos(QPoint(q * 50 + 12 * q + 6,-50));
			tank->setTeam(0);
			tank->setAngle(2);
			tank->setSpeed(1);
			tank->move(true);
			_tankList.append(tank);
		}
	} else if (_other <= -1 & _other > -50) {
		_other--;
	} else if (_other == -50) {
		_other--;
		_tankList[0]->setAngle(2);
		_tankList[1]->setAngle(2);
		_tankList[0]->move(true);
		_tankList[1]->move(true);
	}
	else if (_other <= -51 & _tankList.size() == 10) {
		_other--;
		if (_other % 50 == 0) {
			for (int q = 0 ; q < 8; q ++) {
				fire(_tankList[q + 2]);
			}
		}
	} else if ( _tankList.size() == 8 & _other < 0) {
		Tank *tank = new Tank;
		tank->setTeam(2);
		tank->setPos(QPoint(156, - 70));
		tank->setAngle(2);
		tank->setSpeed(1);
		tank->setSize(0);
		tank->move(true);
		_tankList.append(tank);
	} else if (_tankList.size() == 9 & _other < 0) {
		if (_tankList[8]->getPos().y() == 216) {
			_tankList[8]->move(false);
			_other = 0;
		}
	} else if (_tankList.size() == 9 & _other >= 0) {
		_other++;
		if (_other == 625) {
			for (int q = 0; q < _tankList.size() - 1; q++) {
				delete _tankList[0];
			}
			_tankList.remove(0,8);
			for (int q = 0; q < 8; q ++) {
				Tank *tank = new Tank;
				tank->setPos(QPoint(-50,q * 50 + 12 * q + 6));
				tank->setTeam(0);
				tank->setAngle(1);
				tank->setSpeed(rand() % 4 + 1);
				tank->move(true);
				_tankList.append(tank);
			}
			for (int q = 0; q < 8; q ++) {
				Tank *tank = new Tank;
				tank->setPos(QPoint(550,q * 50 + 12 * q + 6));
				tank->setTeam(1);
				tank->setAngle(3);
				tank->setSpeed(rand() % 4 + 1);
				tank->move(true);
				_tankList.append(tank);
			}
			_other = 1000;
		}
	} else if (_other == 1000 & _tankList.size() != 1) {
		for (int q = 1; q < _tankList.size(); q ++) {
			int f = rand() % 2;
			if (f == 1) {
				fire(_tankList[q]);
			}
		}
	} else if (_other >= 1000 & _tankList.size() == 1){
		_other++;
		if (_other == 1100) {
			delete _playerBase;
			delete _playerTank;
			gameOver();
			loadMission(0);
			_isVideo = false;
		}
	}
}