Beispiel #1
0
Map::Map(DBItem item, BackgroundLayer *bgLayer, MapLayer *mapLayer, FoWLayer *fowLayer,
         DrawingLayer *drawingLayer, bool isMj) :
    DBItem(),
    ui(new Ui::Map)
{
    ui->setupUi(this);

    QHash<QString, QVariant> itemHashMap = item.getHashMap();
    columnsValues_ = item.getHashMap();

    int id = itemHashMap.value("id").toInt();
    QString windowtitle = itemHashMap.value("windowtitle").toString();
    int sceneHeight = itemHashMap.value("sceneheight").toInt();
    int sceneWidth = itemHashMap.value("scenewidth").toInt();
    bool isImage = itemHashMap.value("isimage").toBool();

    id_ = id;
    setWindowTitle(windowtitle);
    initRole(isMj);
    m_Layers = new Layers(bgLayer, mapLayer, fowLayer, drawingLayer);
    initScene(sceneWidth, sceneHeight);
    initLayers(false);
    initDisplay();
    initTooltip();

    m_IsImage = isImage;
    if(isImage){
        initAsImage();
    }
}
Beispiel #2
0
void freeKick10::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

    //    if(!rolesIsInit)
    initRole();

    for(int i=0;i<activeAgents.size();i++)
        setTactics(activeAgents.at(i));

    tAttackerMid->isKicker(Vector2D(Field::MaxX*0.7,-sign(wm->ball.pos.loc.y)*0.7*Field::MaxY));
    tAttackerMid->setFreeKickType(kickType::FreeKick10);

    setPositions(activeAgents);

    if(state > 3)
        activeAgents.removeOne(tAttackerMid->getID());

    if( state == 2)
        counter++;

    //    wm->ourRobot[tAttackerLeft->getID()].Status = AgentStatus::RecievingPass;
    //    activeAgents.removeOne(tAttackerLeft->getID());

    //    wm->ourRobot[tAttackerRight->getID()].Status = AgentStatus::RecievingPass;
    //    activeAgents.removeOne(tAttackerRight->getID());

    while(activeAgents.size() > 0)
    {
        wm->ourRobot[activeAgents.takeFirst()].Status = AgentStatus::Idle;
    }
}
Beispiel #3
0
void freeKick5::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

//    if(!rolesIsInit)
        initRole();

    for(int i=0;i<activeAgents.size();i++)
        setTactics(activeAgents.at(i));

    setPositions();

    int recieverID = tDefenderLeft->getID();

    target = Vector2D(wm->ball.pos.loc.x-2000,-wm->ball.pos.loc.y);
    tAttackerMid->isKicker(target);
    tAttackerMid->setFreeKickType(kickType::FreeKick5);

    if(state > 1)
    {
        activeAgents.removeOne(tAttackerMid->getID());
        if(wm->cmgs.ourIndirectKick())
        {
            wm->ourRobot[recieverID].Status = AgentStatus::RecievingPass;
            activeAgents.removeOne(recieverID);
        }
        tAttackerMid->youHavePermissionForKick(-1);
    }

    while(activeAgents.size() > 0)
    {
        wm->ourRobot[activeAgents.takeFirst()].Status = AgentStatus::Idle;
    }
}
Beispiel #4
0
void freeKick47::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

    //    if(!rolesIsInit)
    initRole();

    if( state  > 3)
        initRolesB(AttackerRight,DefenderLeft);

    for(int i=0;i<activeAgents.size();i++)
        setTactics(activeAgents.at(i));

    tAttackerMid->isKicker(Vector2D(0.3*Field::MaxX, -sign(wm->ball.pos.loc.y)*(0.6)*Field::MaxY));
    tAttackerMid->setFreeKickType(kickType::FreeKick47);

    setPositions(activeAgents);

    if(state > 3)
        activeAgents.removeOne(tAttackerMid->getID());

    while(activeAgents.size() > 0)
    {
        wm->ourRobot[activeAgents.takeFirst()].Status = AgentStatus::Idle;
    }
}
Beispiel #5
0
// on "init" you need to initialize your instance
bool GameFatherLayer::init()
{
	//////////////////////////////
	// 1. super init first
	if ( !Layer::init() )
	{
		return false;
	}


	Size visibleSize = Director::getInstance()->getVisibleSize();
	Vec2 origin = Director::getInstance()->getVisibleOrigin();

	initMap();


	
	initUI();
	
	initRole();

	initComponents();
	
	return true;
}
void PlayKickoffOur::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

    initRole();

    for(int i=0;i<activeAgents.size();i++)
        setTactics(activeAgents.at(i));

    setPositions();

    if( wm->cmgs.canKickBall() )
        wm->ourRobot[tAttackerMid->getID()].Status =  AgentStatus::Kicking;

}
Beispiel #7
0
void freeKick7::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

//    if(!rolesIsInit)
        initRole();

    if( state == 2)
        initRolesB(AttackerLeft,DefenderLeft);

    for(int i=0;i<activeAgents.size();i++)
        setTactics(activeAgents.at(i));

    setPositions(activeAgents);

    int recieverID;

    tAttackerMid->isKicker(Vector2D(0.3*Field::MaxX, -sign(wm->ball.pos.loc.y)*(0.6)*Field::MaxY));
    tAttackerMid->setFreeKickType(kickType::FreeKick7);

    if(state > 1)
    {
        recieverID = tAttackerLeft->getID();

        activeAgents.removeOne(tAttackerMid->getID());
        if(wm->cmgs.ourIndirectKick())
        {
            wm->ourRobot[recieverID].Status = AgentStatus::RecievingPass;
            activeAgents.removeOne(recieverID);
        }
    }
    else
    {
        if( state == 1)
            activeAgents.removeOne(tAttackerMid->getID());

        recieverID = tDefenderLeft->getID();
        wm->ourRobot[recieverID].Status = AgentStatus::RecievingPass;
        activeAgents.removeOne(recieverID);
    }

    while(activeAgents.size() > 0)
    {
        wm->ourRobot[activeAgents.takeFirst()].Status = AgentStatus::Idle;
    }
}
void PlayPenaltyOpp::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

    initRole();

    for(int i=0;i<activeAgents.size();i++)
    {
        wm->ourRobot[activeAgents.at(i)].Status = AgentStatus::Idle;
    }

    while( !activeAgents.isEmpty() )
    {
        int index = activeAgents.takeFirst();
        setTactics(index);
    }

    setPositions();
}
Beispiel #9
0
void GameLayer::extraInit() {
    
    initRole();
    initGround();
    initCollisions();
    
    setRoleState(ROLE_STATE_JUMP_DOWN);
    setTouchEnabled(false);
    
    BBButton *button = BBButton::create(CCSizeMake(200, 60), this, bbButtonFunI_selector(GameLayer::restart), NULL, NULL, NULL, NULL, "Play Again");
    button->mLabel->setFontSize(30);
    button->setPosition(CCPoint(getContentSize().width - button->getContentSize().width, getContentSize().height - button->getContentSize().height));
    button->mDependedTarget = this;
    this->addChild(button, 10);
    
    setScore(0);
    
    beginCountdown(3);
}
Beispiel #10
0
MainWindow::MainWindow(User *user, QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    setStyleSheet(StyleSheet::s_StyleSheet);

    // Sets Null pointer for later deletion if m_Server and/or m_Client are not used
    m_Server = NULL;
    m_Client = NULL;

    m_User = user;

    initConnects();
    initRole();
	initLogger();
    m_NotificationStacker.setParent(this);

    // TODO full screen button -> showFullScreen();
}
Beispiel #11
0
void PlayStop::execute()
{
    wm->passPoints.clear();
    wm->debug_pos.clear();

    QList<int> activeAgents=wm->kn->ActiveAgents();

    for(int i=0;i<activeAgents.size();i++)
    {
        wm->ourRobot[activeAgents.at(i)].Status = AgentStatus::Idle;
    }

    initRole();

    while (activeAgents.size() >0)
    {
        setTactics(activeAgents.takeFirst());
    }
    setPositions();
}
Beispiel #12
0
void freeKickDirect::execute()
{
    QList<int> activeAgents=wm->kn->ActiveAgents();

    //    if(!rolesIsInit)
    initRole();

    for(int i=0; i<activeAgents.size(); i++)
        setTactics(activeAgents.at(i));

    setPositions();

    target = Field::oppGoalCenter;
    tAttackerMid->isKicker(target);
    tAttackerMid->setFreeKickType(kickType::Shoot);
    tAttackerMid->youHavePermissionForKick(-1);
    activeAgents.removeOne(tAttackerMid->getID());

    while(activeAgents.size() > 0)
    {
        wm->ourRobot[activeAgents.takeFirst()].Status = AgentStatus::Idle;
    }
}
Beispiel #13
0
Map::Map(bool isImage, QString mapName, QString bgFilename, int bgWidth, int bgHeight
         , TokenItem *tokenItem, int tileStep, bool isMj, QWidget *parent) :
    QWidget(parent),
    DBItem(),
    ui(new Ui::Map)
{
    ui->setupUi(this);

    this->setWindowTitle(mapName);
    initRole(isMj);
    QPixmap bgPixmap = createBgPixmap(bgFilename, bgWidth, bgHeight, tileStep);

    m_Layers = new Layers(bgPixmap, 2, 2, Qt::black, tileStep, tokenItem, isMj);

    initScene(tileStep);
    initLayers();
    initDisplay();
    initTooltip();

    m_IsImage = isImage;
    if(isImage){
        initAsImage();
    }
}