43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package maps
|
|
|
|
import (
|
|
"image/color"
|
|
|
|
"github.com/atridad/LilGuy/internal/config"
|
|
"github.com/atridad/LilGuy/internal/portal"
|
|
"github.com/atridad/LilGuy/internal/world"
|
|
)
|
|
|
|
func CreateDesert(screenWidth, screenHeight float64) *Map {
|
|
m := NewMap("desert", 2, "Desert", screenWidth, screenHeight)
|
|
m.BackgroundColor = color.NRGBA{R: 155, G: 196, B: 215, A: 255}
|
|
|
|
// ground surface
|
|
m.World.AddSurface(&world.Surface{
|
|
X: 0,
|
|
Y: screenHeight - config.GroundHeight,
|
|
Width: screenWidth,
|
|
Height: config.GroundHeight,
|
|
Tag: world.TagGround,
|
|
Color: color.NRGBA{R: 139, G: 69, B: 19, A: 255},
|
|
})
|
|
|
|
// left portal to plains
|
|
leftPortal := portal.CreateSidePortal("desert_left", portal.SideLeft, screenWidth, screenHeight)
|
|
leftPortal.DestinationMap = "plains"
|
|
leftPortal.DestinationPortal = "plains_right"
|
|
leftPortal.Color = color.NRGBA{R: 100, G: 255, B: 100, A: 180}
|
|
leftPortal.GlowColor = color.NRGBA{R: 150, G: 255, B: 150, A: 100}
|
|
m.AddPortal(leftPortal)
|
|
|
|
// right portal to plains
|
|
rightPortal := portal.CreateSidePortal("desert_right", portal.SideRight, screenWidth, screenHeight)
|
|
rightPortal.DestinationMap = "plains"
|
|
rightPortal.DestinationPortal = "plains_left"
|
|
rightPortal.Color = color.NRGBA{R: 255, G: 100, B: 100, A: 180}
|
|
rightPortal.GlowColor = color.NRGBA{R: 255, G: 150, B: 150, A: 100}
|
|
m.AddPortal(rightPortal)
|
|
|
|
return m
|
|
}
|