示例#1
0
文件: main.cpp 项目: Novarisk/openwar
static BattleScenario* CreateBattleScenario()
{
	BattleScenario* scenario = new BattleScenario();
	scenario->AddCommander("1", 1, BattleCommanderType::Player, "");
	scenario->AddCommander("2", 2, BattleCommanderType::Script, "");
	scenario->StartScript(true);
	return scenario;
}
示例#2
0
文件: main.cpp 项目: openwar/openwar
static BattleScenario* CreateBattleScenario()
{
	Resource res("Maps/Practice.png");
	if (!res.load())
		return nullptr;

	auto smoothMap = std::unique_ptr<Image>(new Image());
	smoothMap->LoadFromResource(res);

	SmoothGroundMap* groundMap = new SmoothGroundMap(bounds2f(0, 0, 1024, 1024), std::move(smoothMap));
	BattleMap* battleMap = new BasicBattleMap(groundMap->GetHeightMap(), groundMap);

	BattleSimulator* battleSimulator = new BattleSimulator_v1_0_0(battleMap);

	BattleScenario* battleScenario = new BattleScenario(battleSimulator, 0);
	battleScenario->SetPractice(true);
	battleScenario->SetBattleScript(new PracticeScript(battleScenario));
    BattleCommander* player = battleScenario->AddCommander("1", 1, BattleCommanderType::Player);
    battleScenario->AddCommander("2", 2, BattleCommanderType::Script);

	glm::vec2 center(512, 512);

    battleSimulator->AddUnit(player, "SAM-BOW", 80, center + glm::vec2(-50, 0), 0);
    battleSimulator->AddUnit(player, "SAM-ARQ", 80, center + glm::vec2(  0, 0), 0);
    battleSimulator->AddUnit(player, "SAM-BOW", 80, center + glm::vec2( 50, 0), 0);
    battleSimulator->AddUnit(player, "SAM-YARI", 80, center + glm::vec2(-25, -30), 0);
    battleSimulator->AddUnit(player, "SAM-YARI", 80, center + glm::vec2( 25, -30), 0);
    battleSimulator->AddUnit(player, "SAM-KATA", 80, center + glm::vec2(-50, -60), 0);
    battleSimulator->AddUnit(player, "GEN-KATA", 40, center + glm::vec2(  0, -60), 0);
    battleSimulator->AddUnit(player, "SAM-KATA", 80, center + glm::vec2( 50, -60), 0);
    battleSimulator->AddUnit(player, "CAV-YARI", 40, center + glm::vec2(-70, -100), 0);
    battleSimulator->AddUnit(player, "SAM-NAGI", 80, center + glm::vec2(  0, -90), 0);
    battleSimulator->AddUnit(player, "CAV-BOW",  40, center + glm::vec2( 70, -100), 0);

	return battleScenario;
}