예제 #1
0
파일: campaign.cpp 프로젝트: Glyth/xoreos
void Campaign::loadCampaign(const CampaignDescription &desc) {
	clear();
	loadCampaignFile(desc);

	_currentCampaign = desc;

	try {
		_module.load(_currentCampaign.directory + "/" + _startModule + ".mod");
	} catch (Common::Exception &e) {
		clear();

		e.add("Failed to load campaign's starting module");
		throw;
	}
}
예제 #2
0
void Campaign::loadCampaign(const Common::UString &campaign, bool standalone) {
	unload(false);

	if (!standalone)
		loadCampaignFile(campaign);
	else
		setupStandaloneModule(campaign);

	try {
		_module->load(_startModule);
	} catch (Common::Exception &e) {
		clear();

		e.add("Failed to load campaign's starting module");
		throw;
	}

	_hasCampaign = true;
}