Arena.ResizeImmediate(155, 130)

timer = 0
Black1 = CreateSprite("Pixel","Top")
Black1.Scale(237.5, 130)
Black1.MoveTo(118.75, 160)
Black2 = CreateSprite("Pixel","Top")
Black2.Scale(237.5, 130)
Black2.MoveTo(521.25, 160)
Black1.color = {0,0,0}
Black2.color = {0,0,0}

Eggs = {}

SetPPCollision(true)

function Update()
	timer = timer + 1
	if timer == 1 then
		for i=0,5 do
			table.insert(Eggs, {Bullet = {Body = CreateProjectileAbs("Egg Dog/Bullets/Body", 0, 0), Neck = CreateProjectileAbs("Pixel", 0, 0), Head = CreateProjectileAbs("Egg Dog/Bullets/Head", 0, 0)}, X = 258 + 32*i, Timer = -30 - 40*(i%2)})
		end
	end
	for i=1,#Eggs do
		local Datos = Eggs[i]
		Datos.X = Datos.X - 0.5
		if Datos.X <= 226 then
			Datos.X = Datos.X + 192
		end
		Datos.Timer = Datos.Timer + 1
		Datos.Bullet.Body.MoveToAbs(Datos.X, 102)
		if Datos.Timer <= 0 then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 117)
			Datos.Bullet.Head.MoveToAbs(Datos.X, 137)
			Datos.Bullet.Neck.sprite.Scale(30, 16)
		elseif Datos.Timer > 0 and Datos.Timer <= 10 then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 117 - 8/10*Datos.Timer)
			Datos.Bullet.Head.MoveToAbs(Datos.X, 137 - 16/10*Datos.Timer)
			Datos.Bullet.Neck.sprite.Scale(30, 16 - 16/10*Datos.Timer)
		elseif Datos.Timer > 20 and Datos.Timer <= 40 then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 109 + 46/20*(Datos.Timer - 20))
			Datos.Bullet.Head.MoveToAbs(Datos.X, 121 + 92/20*(Datos.Timer - 20))
			Datos.Bullet.Neck.sprite.Scale(30, 92/20*(Datos.Timer - 20))
		elseif Datos.Timer > 40 and Datos.Timer <= 60 then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 155)
			Datos.Bullet.Head.MoveToAbs(Datos.X, 213)
			Datos.Bullet.Neck.sprite.Scale(30, 92)
		elseif Datos.Timer > 60 and Datos.Timer <= 80 then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 109 + 46/20*(80 - Datos.Timer))
			Datos.Bullet.Head.MoveToAbs(Datos.X, 121 + 92/20*(80 - Datos.Timer))
			Datos.Bullet.Neck.sprite.Scale(30, 92/20*(80 - Datos.Timer))
		elseif (Datos.Timer > 80 and Datos.Timer <= 100) or (Datos.Timer > 10 and Datos.Timer <= 20) then
			Datos.Bullet.Neck.MoveToAbs(Datos.X, 109)
			Datos.Bullet.Head.MoveToAbs(Datos.X, 121)
			Datos.Bullet.Neck.sprite.Scale(30, 0)
			if Datos.Timer == 100 then
				Datos.Timer = 20
			end
		end
	end
	if timer > 600 then
		Black1.Remove()
		Black2.Remove()
		EndWave()
	end
end

function OnHit()
	if Player.hp > 10 then
		Player.Hurt(10)
	elseif Player.hp > 1 then
		Player.Hurt(1)
	elseif not Player.isHurting then
		Black1.Remove()
		Black2.Remove()
		Encounter["X"] = Player.absx
		Encounter["Y"] = Player.absy
		Encounter["nextwaves"] = {"Game Over"}
		State("ACTIONSELECT")
		State("DEFENDING")
	end
end