function init(bIsRestart)

	-- Initialise arena - backdrop_name, start_pos, is_restart
	init_level("level-volcanic-plains", CCPoint(-50, -20), bIsRestart)

	-- Fall from sky
	if (bIsRestart ~= true) then
		init_fall(bIsRestart)
	end

end

function init_fall(bIsRestart)

	-- Restart here
	if (bIsRestart ~= true) then
		game_manager:setCheckpoint("init_fall")
	else
		-- Do regular level start stuff
		startLevelIntro(bIsRestart)
	end

	player.Height = 40
	player:setFacingDir(kFacingDir_Left)
	player:doAction(kFAT_FallBack)

end

function onLevelIntro()

	-- Wait till fall is complete then do intro speech
	game_manager:startTimer(2, onIntroSpeech)

	bot_manager.MaxBotsOnScreen = 1

end

function onIntroSpeech()

	say("lumberjack", localize("VOLCANIC_PLAINS_SPEECH_1"), talkToFist)
	say("fist", localize("VOLCANIC_PLAINS_SPEECH_2"), fistTalk)
	say("lumberjack", localize("VOLCANIC_PLAINS_SPEECH_3"), talkToFist)
	say("fist", localize("VOLCANIC_PLAINS_SPEECH_4"), fistTalk, onLevelIntroEnd)

end

function onAmbush()

	-- Restart here
	if (bIsRestart ~= true) then
    
   		-- Make this a bit harder than the last ambush
		bot_manager.MaxBotsOnScreen = bot_manager.MaxBotsOnScreen + 1

		game_manager:setCheckpoint("onAmbush")
	end
                
	-- Spawn regular enemies
	local bot_descs = {}
	table.insert(bot_descs, game_manager:actorDescWithFile("raptor.plist"))
	table.insert(bot_descs, game_manager:actorDescWithFile("jurassic-gruntbear.plist"))

	-- Spawn lots of enemies
	startAmbush(bot_descs, bot_manager.MaxBotsOnScreen * 2)

	return true

end

function onAmbush2()

	-- Restart here
	if (bIsRestart ~= true) then
    
   		-- Make this a bit harder than the last ambush
		bot_manager.MaxBotsOnScreen = bot_manager.MaxBotsOnScreen + 1

		game_manager:setCheckpoint("onAmbush2")
	end

	-- Spawn regular enemies
	local bot_descs = {}
	table.insert(bot_descs, game_manager:actorDescWithFile("raptor.plist"))
	table.insert(bot_descs, game_manager:actorDescWithFile("jurassic-gruntbear.plist"))

	-- Spawn lots of enemies
	startAmbush(bot_descs, bot_manager.MaxBotsOnScreen * 3)

	return true

end

function onAmbush3()

	-- Restart here
	if (bIsRestart ~= true) then

   		-- Make this a bit harder than the last ambush
		bot_manager.MaxBotsOnScreen = bot_manager.MaxBotsOnScreen + 1

       	game_manager:setCheckpoint("onAmbush3")
	end

	-- Spawn regular enemies
	local bot_descs = {}
	table.insert(bot_descs, game_manager:actorDescWithFile("jurassic-gruntbear.plist"))

	-- Spawn lots of enemies
	startAmbush(bot_descs, bot_manager.MaxBotsOnScreen * 2)

	return true

end
