Exemplo n.º 1
0
TEST(PlayStateTest, Constructor) {
	PlayState playState(Trump.SPADES, 1);
	ASSERT_EQ(Trump.SPADES, playState.getTrump());
	ASSERT_EQ(1, playState.getBeginningPlayer());
	ASSERT_EQ(1, playState.getPrimaryBeginningPlayer());
	ASSERT_EQ(0, playState.trickCount());
}
Exemplo n.º 2
0
TEST(PlayStateTest, Setters) {
	PlayState playState(Trump.HEARTS, 0);
	playState.incrementPlayerScore(2);
	playState.setBeginningPlayer(2);
	ASSERT_EQ(2, playState.getBeginningPlayer());
	ASSERT_EQ(0, playState.getPrimaryBeginningPlayer());
	ASSERT_EQ(1, playState.trickCount());
	ASSERT_EQ(1, playState.getScoreOf(2));
}
Exemplo n.º 3
0
void Playlist::addTrack(Track *track)
{
    track->setParent(this);
    connect(track, SIGNAL(playState()), SLOT(setLastTrack()));

    m_tList.insert(m_tList.end(), track);
    int trackIndex = m_tList.size()-1;
    track->setIndex(trackIndex);

    for(int i=0; i<5; i++) {
         m_Model->setItem(trackIndex, i, m_tList.at(trackIndex)->mitem().at(i));
    }

    connect(track, SIGNAL(playState()), SLOT(trackSelfActivate()));
    connect(track, SIGNAL(updated(bool)), SLOT(save()));
    connect(track, SIGNAL(updateMe()), m_Parser, SLOT(updateTrack()));

    Q_EMIT trackAdded();

    if(m_listType == PlaylistWidget::LocalList || m_listType == PlaylistWidget::DbSearch)
        if(!m_bLoadingState)
            save();
}
Exemplo n.º 4
0
PlaylistDetailsWidget::PlaylistDetailsWidget(MainWindow* mw, QWidget* parent):
    QGridLayout()
{

    _mw = mw;
    _parent = (PlaylistHandlerWidget*) parent;

    _playlistNameLabel = new QLabel(tr("Playlist being played :"));
    _playlistDurationLabel = new QLabel(tr("Duration :"));
    _nbFilmsLabel = new QLabel(tr("Number of films :"));
    _playlistEndsInLabel = new QLabel(tr("Ends in :"));
    _playlistNameValue = new QLabel("-");
    _playlistDurationValue = new QLabel("--:--:--:");
    _nbFilmsValue = new QLabel("0");
    _playlistEndsInValue = new QLabel("--:--:--");
    _timer = new QTimer(this);

    addWidget(_playlistNameLabel,0,0);
    addWidget(_playlistNameValue,0,1);
    addWidget(_playlistDurationLabel,0,2);
    addWidget(_playlistDurationValue,0,3);
    addWidget(_nbFilmsLabel,1,0);
    addWidget(_nbFilmsValue,1,1);
    addWidget(_playlistEndsInLabel,1,2);
    addWidget(_playlistEndsInValue,1,3);

    _playlistEndsInLabel->hide();
    _playlistEndsInValue->hide();

    connect(_mw->playerControlWidget(), SIGNAL(playState()), this, SLOT(updatePlaylistWidgetEndsInPlay()));
    connect(_mw->playerControlWidget(), SIGNAL(pauseState()), this, SLOT(updatePlaylistWidgetEndsInPause()));
    connect(_mw->playerControlWidget(), SIGNAL(stopState()), this, SLOT(updatePlaylistWidgetEndsInStop()));
    connect(_mw->playerControlWidget()->seekWidget()->flipBar(), SIGNAL(positionManuallyChanged()), this, SLOT(updateEcart()));


}
Exemplo n.º 5
0
int main()
{
	// initialize IRQ (interrupts)
	// this must come before everything else
	IRQ_INIT();

	// Initialize global pointers
	GameStateManager gameStateMan;
	OamManager oamMan;
	AudioManager audioMan;
	PlayState playState(&gameStateMan);
	TitleScreenState titleState(&gameStateMan);
	PauseState pauseState(&gameStateMan);
	GameOverState gameOverState(&gameStateMan);
	StoreState storeState(&gameStateMan);
	StageEndState stageEndState(&gameStateMan);
	
	g_gameStateMan = &gameStateMan;
	g_oamMan = &oamMan;
	g_playState = &playState;
	g_titleState = &titleState;
	g_pauseState = &pauseState;
	g_gameOverState = &gameOverState;
	g_storeState = &storeState;
	g_stageEndState = &stageEndState;
	g_audioMan = &audioMan;

	// create stage events
	StageEvent endEvent;
	StageEvent event1;
	StageEvent event2;
	StageEvent event3;
	StageEvent event4;
	StageEvent event5;
	StageEvent event6;
	StageEvent firePowerPowerUpEvent;
	StageEvent invinciblePowerUpEvent;
	StageEvent bombPowerUpEvent;
	g_endEvent = &endEvent;
	g_event1 = &event1;
	g_event2 = &event2;
	g_event3 = &event3;
	g_event4 = &event4;
	g_event5 = &event5;
	g_event6 = &event6;
	g_firePowerPowerUpEvent = &firePowerPowerUpEvent;
	g_invinciblePowerUpEvent = &invinciblePowerUpEvent;
	g_bombPowerUpEvent = &bombPowerUpEvent;

	initializeEvents();

	StageEvent * stage1Events[24];
	int stage1Timing[24];
	int stage1yOffset[24];
	fillEventsStage1(stage1Events, stage1Timing, stage1yOffset);
	Stage stage1(&playState, stage1Events, stage1Timing, stage1yOffset, 24);
	g_stage1 = &stage1;

	StageEvent * stage2Events[20];
	int stage2Timing[20];
	int stage2yOffset[20];
	fillEventsStage2(stage2Events, stage2Timing, stage2yOffset);
	Stage stage2(&playState, stage2Events, stage2Timing, stage2yOffset, 20);
	g_stage2 = &stage2;
	
	StageEvent * stage3Events[20];
	int stage3Timing[20];
	int stage3yOffset[20];
	fillEventsStage3(stage3Events, stage3Timing, stage3yOffset);
	Stage stage3(&playState, stage3Events, stage3Timing, stage3yOffset, 20);
	g_stage3 = &stage3;

	videoInit();

	g_gameStateMan->pushState(g_titleState);

#ifdef DEBUG
	// timers used for debug display
	REG_TM1D = 0x10000 - 2808; // overflow into timer 2 every 2808 cycles, approx. 1% of a screen refresh
	REG_TM2D = 0;
	REG_TM2CNT = TM_CASCADE | TM_ENABLE;
	REG_TM1CNT = TM_FREQ_1 | TM_ENABLE;
	int oldPercent, diffPercent, oldFrac, diffFrac;
	char buf[15];
#endif // DEBUG

	while(true)
	{
		// wait until next VBlank
		// prefer this over vid_vsync() - it's
		// better for power consumption
		VBlankIntrWait();

#ifdef DEBUG
		// grab current percentage
		oldPercent = REG_TM2D;
		oldFrac = REG_TM1D;
#endif // DEBUG

		// update shadow OAM to real OAM
		g_oamMan->update();

		// mix the next frame's audio
		g_audioMan->sndMix();
		
		// poll keys - do not do this in other places
		key_poll();

		// update the game state
		g_gameStateMan->update();

#ifdef DEBUG
		// grab current percentage, and write it out
		diffPercent = REG_TM2D - oldPercent;
		diffFrac = REG_TM1D - oldFrac;

		// round the percent based on the fractional amount
		if (diffFrac > 1404)
		{
			diffPercent++;
		}
		else if (diffFrac < -1404)
		{
			diffPercent--;
		}

		gba_itoa(diffPercent, buf);

		// clear out characters from the last write
		write("  ", Vec2(0, 0));
		write(buf, Vec2(0, 0));

		// reset timer 2 to 0
		REG_TM2CNT = 0; // disable timer
		REG_TM2D = 0; // set new value to 0
		REG_TM2CNT = TM_CASCADE | TM_ENABLE; // reenable timer
#endif // DEBUG
	}
}