// ----------------------------------
// RSDK Project: Sonic 1/Sonic 2
// Script Description: Start Message Object
// Script Author: Christan Whitehead/Simon Thomley
// Unpacked by Rubberduckycooly's script unpacker
// ----------------------------------

//-------Aliases-------//
private alias 7 : TYPE_STARTMESSAGE


// Tables

event ObjectMain
	switch object.state
	case 0
		object.value0 = 0
		CheckTouchRect(0, 0, screen.xsize, screen.ysize)
		if inputPress.start == 1
			checkResult = 1
		end if
		if checkResult > -1
			if options.stageSelectFlag == 1
				if checkResult > 0
					object.state = 2
				else
					object.state = 1
				end if
			else
				object.state = 1
			end if
		else
			object.value4++
			if object.value4 == 840
				object.state = 4
			end if
		end if
		break
	case 1
		object.value0 += 8
		music.volume -= 2
		if object.value0 == 320
			StopMusic()
			options.attractMode = 0
			player.lives = 3
			player.continues = 0
			player.score = 0
			player.scoreBonus = 0xC350
			starPostID = 0
			specialStage.listPos = 0
			specialStage.emeralds = 0
			specialStage.nextZone = 0
			stage.activeList = PRESENTATION_STAGE
			stage.listPos = 6
			LoadStage()
		end if
		SetScreenFade(0, 0, 0, object.value0)
		break
	case 2
		object.value0 += 8
		music.volume -= 2
		if object.value0 == 320
			StopMusic()
			options.attractMode = 0
			player.lives = 3
			player.continues = 0
			player.score = 0
			player.scoreBonus = 0xC350
			starPostID = 0
			specialStage.listPos = 0
			specialStage.emeralds = 0
			specialStage.nextZone = 0
			stage.activeList = PRESENTATION_STAGE
			stage.listPos = 5
			LoadStage()
		end if
		SetScreenFade(0, 0, 0, object.value0)
		break
	case 3
		object.value0 += 8
		music.volume -= 2
		if object.value0 == 320
			StopMusic()
			options.attractMode = 0
			stage.listPos = 4
			LoadStage()
		end if
		SetScreenFade(0, 0, 0, object.value0)
		break
	case 4
		object.value0 += 8
		music.volume -= 2
		if object.value0 == 320
			StopMusic()
			player.lives = 3
			player.continues = 0
			player.score = 0
			player.scoreBonus = 0xC350
			starPostID = 0
			specialStage.listPos = 0
			specialStage.emeralds = 0
			specialStage.nextZone = 0
			stage.activeList = REGULAR_STAGE
			stage.listPos = attract.stage
			stage.listPos <<= 1
			attract.stage++
			attract.stage &= 3
			options.attractMode = 1
			credits.screen = 0
			LoadStage()
		end if
		SetScreenFade(0, 0, 0, object.value0)
		break
	end switch
end event


event ObjectDraw
	if saved.Title == 1
		DrawSpriteScreenXY(0, screen.xcenter, object.ypos)
	else
		object.animationTimer++
		if object.animationTimer > 59
			object.animationTimer = 0
		end if
		if object.animationTimer > 29
			DrawSpriteScreenXY(0, screen.xcenter, object.ypos)
		end if
	end if
end event


event ObjectStartup
	LoadSpriteSheet("Title/Title.gif")
	switch saved.Title
	case 0
		SpriteFrame(-45, -1, 90, 9, 1, 370)
		break
	case 1
		SpriteFrame(-45, 25, 90, 8, 1, 380)
		break
	end switch
end event

event RSDKDraw
	DrawSprite(0)
end event

event RSDKLoad
	LoadSpriteSheet("Global/Display.gif")
	SpriteFrame(-16, -16, 32, 32, 1, 143)
end event
