void setGraphicsType()
{
QApplication::setGraphicsSystem("raster");
}
void setRandomSeed()
{
QTime time = QTime::currentTime();
qsrand((uint)time.msec());
}
void setConfig()
{
g_config->file("./data/config.txt");
g_config->update();
}
void setTwoPlayers(TacticalSpaceCombatModule *TSCM, PlayerAIModule *PAIM, PlayerAIModule::type P1, PlayerAIModule::type P2)
{
TSCM->start();
TSCM->playerList["player1"] = new ListModel(new ShipTemplateItem, TSCM);
TSCM->playerList["player2"] = new ListModel(new ShipTemplateItem, TSCM);
PAIM->setData(&TSCM->orderList,&TSCM->playerList,TSCM->mapTable);
PAIM->setP1(P1);
PAIM->setP2(P2);
}
void setShip(TacticalSpaceCombatModule *TSCM, QString Ship, QPoint Position, QString Player, QList<AbilityTemplateItem::cores> types)
{
ShipTemplateItem *aux = NULL;
aux = new ShipTemplateItem(*TSCM->getShip(Ship),Position,qApp);
TSCM->playerList[Player]->appendRow(aux);
for (int i=0;i<types.count();i++)
aux->setHiddenComponent(types[i]);
}
void setInitialData(TacticalSpaceCombatModule *TSCM)
{
setShip(TSCM,"Sh0F",QPoint(1,2),"player1",QList<AbilityTemplateItem::cores>()<<AbilityTemplateItem::Command_Center<<AbilityTemplateItem::Life_Support);
setShip(TSCM,"Sh0F",QPoint(2,3),"player1",QList<AbilityTemplateItem::cores>()<<AbilityTemplateItem::Command_Center<<AbilityTemplateItem::Life_Support);
setShip(TSCM,"Sh1T",QPoint(6,6),"player2",QList<AbilityTemplateItem::cores>()<<AbilityTemplateItem::Command_Center<<AbilityTemplateItem::Scanner);
setShip(TSCM,"Sh2T",QPoint(7,8),"player2",QList<AbilityTemplateItem::cores>()<<AbilityTemplateItem::Command_Center<<AbilityTemplateItem::Life_Support);
TSCM->calculateOrder();
}
void setViewConfiguration(QDeclarativeView *QDV)
{
QDV->setMinimumSize(g_config->get_int("width"),g_config->get_int("height"));
QGLWidget *glWidget = new QGLWidget(QDV);
glWidget->setAutoFillBackground(false);
QDV->setViewport(glWidget);
QDV->engine()->addImageProvider(QLatin1String("loader"), new ImageProvider);
}
void setQMLInterface(TacticalSpaceCombatModule *TSCM, QDeclarativeView *QDV, QString qmlFile)
{
QDV->rootContext()->setContextProperty("player1",TSCM->playerList["player1"]);
QDV->rootContext()->setContextProperty("player2",TSCM->playerList["player2"]);
QDV->rootContext()->setContextProperty("mapTable",TSCM->mapTable);
QDV->rootContext()->setContextProperty("config",g_config);
QDV->rootContext()->setContextProperty("engine",TSCM);
if (qmlFile.contains("qrc:")) QDV->setSource(QUrl(qmlFile));
else QDV->setSource(QUrl::fromLocalFile(qmlFile));
QDV->show();
QDV->setEnabled(false);
}
void connectModules(TacticalSpaceCombatModule *TSCM, QDeclarativeView *QDV, PlayerAIModule *PAIM)
{
QApplication::connect(PAIM,SIGNAL(enableView(bool)),QDV,SLOT(setEnabled(bool)));
QApplication::connect(TSCM,SIGNAL(turnEnded()),PAIM,SLOT(turnEnded()));
}