void Sounds::startMusicGameplay() {
	if(Settings::getInstance()->musicEnabled == false)
		return;
	if(s3eIOSBackgroundMusicAvailable() == S3E_TRUE)
		if(s3eIOSBackgroundMusicGetInt(S3E_IOSBACKGROUNDMUSIC_PLAYBACK_STATE) == S3E_IOSBACKGROUNDMUSIC_PLAYBACK_PLAYING)
			return;

	IGLog("Sounds starting gameplay music");
	
	// if gameplay music is already playing, only change song if it's been playing for a full minute
	if(gameplayPlaying) {
		if(s3eTimerGetMs() - gameplayStart <= 60000)
			return;
	}

	gameplayPlaying = true;
	gameplayStart = s3eTimerGetMs();
	stopMusic();
	char buffer[100];
	int randomSong = gameplayMusicNum;
	while(randomSong == gameplayMusicNum)
		randomSong = rand()%3;
	switch(randomSong) {
		default:
		case 0: sprintf(buffer, "gameplay1.mp3"); break;
		case 1: sprintf(buffer, "gameplay2.mp3"); break;
		case 2: sprintf(buffer, "gameplay3.mp3"); break;
	}
	if(s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
		s3eAudioPlay(buffer, 0);
}
void IntroState::Init()
{
	IwGetResManager()->LoadGroup("introsprites.group");

	m_Splash1 = new Sprite("logo", false);
	m_Splash2 = new Sprite("splash2", false);

	m_TransManager = new TransitionManager();
	m_TransitionState = FADE_IN;

	if (s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
		s3eAudioPlay("music.mp3", 1);

	printf("IntroState initialized\n");
}
// music
void Sounds::startMusicMenu() {
	if(Settings::getInstance()->musicEnabled == false)
		return;
	if(AIRPLAY_DEVICE == AIRPLAY_DEVICE_IPHONE) {
		if(s3eIOSBackgroundMusicAvailable() == S3E_TRUE)
			if(s3eIOSBackgroundMusicGetInt(S3E_IOSBACKGROUNDMUSIC_PLAYBACK_STATE) == S3E_IOSBACKGROUNDMUSIC_PLAYBACK_PLAYING)
				return;
	}
	
	IGLog("Sounds starting menu music");
	gameplayPlaying = false;
	stopMusic();
	if(s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
		s3eAudioPlay("menu.mp3", 0);
	else
		IGLog("mp3 codec not available on this system");
}
示例#4
0
bool CIwGameAudio::PlayMusic(const char* name, int repeat_count)
{
	if (!Available)
		return false;

	// Only play music is on
	if (!IW_GAME_AUDIO->isMusicOn())
		return false;

	// Use s3eAudio to play our music using the devices music player
	if (s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
	{
		if (s3eAudioPlay(name, repeat_count) != S3E_RESULT_SUCCESS)
			return false;
	}
	else
		return false;

	return true;
}
示例#5
0
void Audio::PlayMusic(const char* filename, bool repeat)
{
    // We only support play back of MP3 music
    if (s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
        s3eAudioPlay(filename, repeat ? 0 : 1);
}
示例#6
0
bool CIwGameAudio::isMusicCodecSupported(s3eAudioCodec codec)
{
	return s3eAudioIsCodecSupported(codec) ? true : false;
}
示例#7
0
void MusicPlayer::initialise()
{
	s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3);
	s3eAudioRegister(S3E_AUDIO_STOP, AudioStopCallback, NULL);
}
示例#8
0
/**
* Constructor
*/
Game::Game():

	physicsHz(60),
	timeStep(1.0f/physicsHz),
	velocityIterations(10),
	positionIterations(8),
	g_accumulator(0.0f),
	g_prevTime(s3eTimerGetMs()),
	loadCheckpoint(false), 
	mPaused(false),
	mMultiplayer(false),
	mBytesRecieved(-1),
	timeSinceLastSend(0),
	mRDXVel(0),
	mRecRDXVel(0),
	mDiff(1),
	mTimeSinceLastRequest(0),
	mSelectedLevel("1"),
	mPlayersFinished(0),
	FACEBOOK_APP_ID("160040267492274"),
	FACEBOOK_APP_SECRET("b7d69cf0ef9e50a344d892df3c8c7fe6") {

		mRequestBuffer = NULL;
		mHost = true;
		mSock = NULL;
		mPlayerFound = false;
		mPlayersInLobby = 0;
		mStage = Constants::MAINMENU;
		ServerUrl = "http://10.40.3.237:28003";
		g_GetUID = NULL;
		g_AddScore = NULL;
		mLevel = NULL;
		g_SelectedLvlScore = 0;
		g_Selectedlvl = "tutorial";
		PostScoreRequest = NULL;
		mTimeTaken = 0.0f;
		mPlayerDeaths = 0;
		g_CurrentSession = NULL;

		crateSpawned = true;
		maxCrates = 1;

		moveLeftBtn = Iw2DCreateImage("Images/ArrowLeft.png");
		moveRightBtn = Iw2DCreateImage("Images/ArrowRight.png");
		jumpBtn = Iw2DCreateImage("Images/ArrowJump.png");
		kickBtn = Iw2DCreateImage("Images/kick.png");
		punchBtn = Iw2DCreateImage("Images/punch.png");

		mMenuSystem = new MenuSystem();
		mMenuSystem->init(this);

		mCollListener = new MyContactListener();
		mCollListener->setGame(this);

		// Prepare the iwgxfont resource for rendering using Iw2D
		mFont = Iw2DCreateFontResource("font_large");

		if (s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3)) {
			s3eAudioPlay("Audio/MainMenu.mp3", 0);
		}

		mMusic.push_back("Audio/gameMusic1.mp3");
		mMusic.push_back("Audio/gameMusic2.mp3");

		srand((unsigned)time(0));
}
void GameplayState::Init()
{
	IwGetResManager()->LoadGroup("sprites.group");
	m_Portraits[DAVE] = new Sprite("dave_port", true);
	m_PortraitsNot[DAVE] = new Sprite("dave_port_b", true);
	m_Portraits[DAVE]->SetPosition(CIwFVec2(130,0));
	m_PortraitsNot[DAVE]->SetPosition(CIwFVec2(130,0));

	m_Portraits[NIGEL] = new Sprite("nigel_port", true);
	m_PortraitsNot[NIGEL] = new Sprite("nigel_port_b", true);
	m_Portraits[NIGEL]->SetPosition(CIwFVec2(210,0));
	m_PortraitsNot[NIGEL]->SetPosition(CIwFVec2(210,0));

	m_Portraits[MANDY] = new Sprite("mandy_port", true);
	m_PortraitsNot[MANDY] = new Sprite("mandy_port_b", true);
	m_Portraits[MANDY]->SetPosition(CIwFVec2(290,0));
	m_PortraitsNot[MANDY]->SetPosition(CIwFVec2(290, 0));

	n_guiButtons[0] = new Sprite("touchScreenMoveL", true);
	n_guiButtons[0]->SetPosition(CIwFVec2(0, 260));

	n_guiButtons[1] = new Sprite("touchScreenMoveR", true);
	n_guiButtons[1]->SetPosition(CIwFVec2(414, 260));

	m_throwingTarget = new Sprite("target_sprite", true);

	screenHeight = Iw2DGetSurfaceHeight();
	screenWidth = Iw2DGetSurfaceWidth();

	m_CharacterIndex = 0;
	m_ThrowingTargetSide = 0;
	m_isThrowing = false;
	m_canThrow = false;
	m_SpacePressed = false;
	m_gameOver = false;
	m_MouseClicked = false;
	m_ClickLocation = CIwFVec2(0,0);
	m_Level = new TileMap("levelproto1.txt", "levelrelationships1.txt");
	m_Cam = new Camera(screenWidth, screenHeight);
	m_Cam->SetPosition(CIwSVec2(0, 0));
	m_Cam->Position = CIwSVec2(0, 0);
	m_Cam->SetLevelBounds(m_Level->GetLevelBounds());
	SpawnCharacters();

	m_Layers[0] = new Sprite("layer1", false);
	m_Layers[1] = new Sprite("layer2", false);
	m_Layers[2] = new Sprite("layer3", false);
	m_Layers[3] = new Sprite("layer4", false);

	m_Cranes[0] = new GameObject("clamp_back", Scenerary, false);
	m_Cranes[0]->SetPosition(CIwFVec2(100, 0));
	m_Cranes[0]->SetMovSpeed(CIwFVec2(-0.15, 0));
	m_Cranes[1] = new GameObject("clamp_mid", Scenerary, false);
	m_Cranes[1]->SetPosition(CIwFVec2(210, 0));
	m_Cranes[1]->SetMovSpeed(CIwFVec2(-0.35, 0));
	m_Cranes[2] = new GameObject("clamp_front", Scenerary, false);
	m_Cranes[2]->SetPosition(CIwFVec2(m_Cranes[2]->GetWidth() + 10, 0));
	m_Cranes[2]->SetMovSpeed(CIwFVec2(-1, 0));

	if (s3eAudioIsCodecSupported(S3E_AUDIO_CODEC_MP3))
		s3eAudioPlay("bgmusic.mp3", 0);

	m_ThrowingSound = new SoundEffect("dave_throw");
	m_ThrowingNigelSound = new SoundEffect("nigel_throw");

	m_TerminalSound = new SoundEffect("terminal_selected");
	doorSound = static_cast<CIwSoundSpec*>(IwGetResManager()->GetResNamed("locked_door", "CIwSoundSpec"));
	doorSoundInst = NULL;

	buttonSoundCount = 0;

	m_LayerVals[0] = 0;
	m_LayerVals[1] = 0.025;
	m_LayerVals[2] = 0.05;
	m_LayerVals[3] = 0.075;
	printf("GameplayState initialized\n");
}