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

//-------Aliases-------//
private alias 5 : TYPE_HUD

// Function declarations
reserve function HUD_Function10

// Static Values

// Tables

function HUD_Function10
	DrawSpriteScreenXY(object.frame, object.value2, 20)
	object.value2 += 44
	if object[currentPlayer].value0 > 99
		temp1 = object[currentPlayer].value0
		temp1 /= 100
		DrawSpriteScreenXY(temp1, object.value2, 29)
		object.value2 += 8
		temp1 = object[currentPlayer].value0
		temp1 %= 100
		temp1 /= 10
		DrawSpriteScreenXY(temp1, object.value2, 29)
		object.value2 += 8
		temp1 = object[currentPlayer].value0
		temp1 %= 10
		DrawSpriteScreenXY(temp1, object.value2, 29)
	else
		if object[currentPlayer].value0 > 9
			temp1 = object[currentPlayer].value0
			temp1 /= 10
			DrawSpriteScreenXY(temp1, object.value2, 29)
			object.value2 += 8
			temp1 = object[currentPlayer].value0
			temp1 %= 10
			DrawSpriteScreenXY(temp1, object.value2, 29)
		else
			DrawSpriteScreenXY(object[currentPlayer].value0, object.value2, 29)
		end if
	end if
end function


event ObjectDraw
	if options.vsMode == 0
		if stage.player2Enabled == 0
			currentPlayer = 2
			object.value2 = screen.xcenter
			object.value2 -= 24
			object.frame = stage.playerListPos
			object.frame += 10
			CallFunction(HUD_Function10)
		else
			currentPlayer = 2
			object.value2 = screen.xcenter
			object.value2 -= 104
			object.frame = stage.playerListPos
			object.frame += 10
			CallFunction(HUD_Function10)
			currentPlayer = 3
			object.value2 = screen.xcenter
			object.value2 += 48
			object.frame = 11
			CallFunction(HUD_Function10)
			object.value1 = object[2].value0
			object.value1 += object[3].value0
			DrawSpriteScreenXY(13, screen.xcenter, 21)
			object.value2 = screen.xcenter
			if object.value1 > 99
				object.value2 -= 12
				temp1 = object.value1
				temp1 /= 100
				DrawSpriteScreenXY(temp1, object.value2, 29)
				object.value2 += 8
				temp1 = object.value1
				temp1 %= 100
				temp1 /= 10
				DrawSpriteScreenXY(temp1, object.value2, 29)
				object.value2 += 8
				temp1 = object.value1
				temp1 %= 10
				DrawSpriteScreenXY(temp1, object.value2, 29)
			else
				if object.value1 > 9
					object.value2 -= 8
					temp1 = object.value1
					temp1 /= 10
					DrawSpriteScreenXY(temp1, object.value2, 29)
					object.value2 += 8
					temp1 = object.value1
					temp1 %= 10
					DrawSpriteScreenXY(temp1, object.value2, 29)
				else
					object.value2 -= 4
					DrawSpriteScreenXY(object.value1, object.value2, 29)
				end if
			end if
		end if
	else
		currentPlayer = 2
		object.value2 = screen.xcenter
		object.value2 -= 104
		object.frame = stage.playerListPos
		object.frame += 10
		CallFunction(HUD_Function10)
		temp0 = 0
		object.value2 = screen.xcenter
		object.value2 -= 96
		while temp0 < object[2].value19
			DrawSpriteScreenXY(14, object.value2, 45)
			object.value2 += 16
			temp0++
		loop
		currentPlayer = 3
		object.value2 = screen.xcenter
		object.value2 += 48
		object.frame = vs.player2Type
		object.frame += 10
		CallFunction(HUD_Function10)
		temp0 = 0
		object.value2 = screen.xcenter
		object.value2 += 56
		while temp0 < object[3].value19
			DrawSpriteScreenXY(14, object.value2, 45)
			object.value2 += 16
			temp0++
		loop
	end if
end event


event ObjectStartup
	LoadSpriteSheet("Special/Objects.gif")
	SpriteFrame(0, 0, 8, 15, 291, 42)
	SpriteFrame(0, 0, 8, 15, 300, 42)
	SpriteFrame(0, 0, 8, 15, 309, 42)
	SpriteFrame(0, 0, 8, 15, 318, 42)
	SpriteFrame(0, 0, 8, 15, 327, 42)
	SpriteFrame(0, 0, 8, 15, 336, 42)
	SpriteFrame(0, 0, 8, 15, 345, 42)
	SpriteFrame(0, 0, 8, 15, 354, 42)
	SpriteFrame(0, 0, 8, 15, 363, 42)
	SpriteFrame(0, 0, 8, 15, 372, 42)
	SpriteFrame(0, 0, 48, 24, 250, 1)
	if saved.region == 0
		SpriteFrame(0, 0, 48, 24, 299, 1)
	else
		SpriteFrame(0, 0, 48, 24, 348, 1)
	end if
	SpriteFrame(0, 0, 48, 24, 397, 1)
	SpriteFrame(-20, 0, 40, 28, 250, 26)
	SpriteFrame(-8, 0, 16, 8, 442, 42)
end event

event RSDKDraw
	DrawSprite(0)
end event

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