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

//-------Aliases-------//
private alias 72 : TYPE_EGGMANVALVE


// Static Values

// Tables

event ObjectMain
	switch object.state
	case 0
		if object.value1 > 0
			object.value1 -= 0x10000
		end if
		if object.value2 > 0
			object.value2 -= 0x10000
		end if
		break
	case 1
		if object.value1 < 0x50000
			object.value1 += 0x10000
		end if
		if object.value2 > 0
			object.value2 -= 0x10000
		end if
		break
	case 2
		if object.value1 > 0
			object.value1 -= 0x10000
		end if
		if object.value2 < 0x50000
			object.value2 += 0x10000
		end if
		break
	case 3
		if object.value1 < 0x50000
			object.value1 += 0x10000
		end if
		if object.value2 < 0x50000
			object.value2 += 0x10000
		end if
		break
	case 4
		object.xpos += object.xvel
		object.ypos += object.yvel
		object.yvel += 0x3800
		if object.outOfBounds == 1
			object.type = TypeName[Blank Object]
		end if
		break
	end switch
end event


event ObjectDraw
	DrawSpriteFX(0, FX_FLIP, object.xpos, object.ypos)
	temp0 = object.value1
	temp0 += object.ypos
	DrawSpriteFX(1, FX_FLIP, object.xpos, temp0)
	temp0 = object.value2
	temp0 += object.ypos
	DrawSpriteFX(2, FX_FLIP, object.xpos, temp0)
end event


event ObjectStartup
	LoadSpriteSheet("HPZ/Objects.gif")
	SpriteFrame(8, -12, 24, 24, 405, 132)
	SpriteFrame(10, -20, 10, 8, 407, 123)
	SpriteFrame(20, -20, 10, 8, 407, 123)
end event

event RSDKDraw
	DrawSprite(0)
end event

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