scale and common drawing method
This commit is contained in:
@@ -24,61 +24,45 @@ func (e *Engine) PlaygroundDraw(screen *ebiten.Image) {
|
|||||||
|
|
||||||
func (e *Engine) PlaygroundBackgroundDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundBackgroundDraw(screen *ebiten.Image) {
|
||||||
playground := e.GetPlayground()
|
playground := e.GetPlayground()
|
||||||
render := playground.Render
|
e.PlaygroundAssetDraw(screen, playground.Render, konstructor.Position{})
|
||||||
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) PlaygroundPlatformsDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundPlatformsDraw(screen *ebiten.Image) {
|
||||||
playground := e.GetPlayground()
|
playground := e.GetPlayground()
|
||||||
geoM := ebiten.GeoM{}
|
|
||||||
for _, platform := range playground.Platforms {
|
for _, platform := range playground.Platforms {
|
||||||
render := platform.Type.Render
|
e.PlaygroundAssetDraw(screen, platform.Type.Render, platform.Position)
|
||||||
geoM.Reset()
|
|
||||||
geoM.Translate(float64(platform.Position.X), float64(platform.Position.Y))
|
|
||||||
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{
|
|
||||||
GeoM: geoM,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) PlaygroundItemsDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundItemsDraw(screen *ebiten.Image) {
|
||||||
playground := e.GetPlayground()
|
playground := e.GetPlayground()
|
||||||
geoM := ebiten.GeoM{}
|
for _, item := range playground.Items {
|
||||||
for _, platform := range playground.Items {
|
e.PlaygroundAssetDraw(screen, item.Type.Render, item.Position)
|
||||||
render := platform.Type.Render
|
|
||||||
geoM.Reset()
|
|
||||||
geoM.Translate(float64(platform.Position.X), float64(platform.Position.Y))
|
|
||||||
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{
|
|
||||||
GeoM: geoM,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) PlaygroundNPCsDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundNPCsDraw(screen *ebiten.Image) {
|
||||||
playground := e.GetPlayground()
|
playground := e.GetPlayground()
|
||||||
geoM := ebiten.GeoM{}
|
for _, npc := range playground.NPCs {
|
||||||
for _, platform := range playground.NPCs {
|
e.PlaygroundAssetDraw(screen, npc.Type.Render, npc.Position)
|
||||||
render := platform.Type.Render
|
|
||||||
geoM.Reset()
|
|
||||||
geoM.Translate(float64(platform.Position.X), float64(platform.Position.Y))
|
|
||||||
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{
|
|
||||||
GeoM: geoM,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) PlaygroundDefaultPlayerDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundDefaultPlayerDraw(screen *ebiten.Image) {
|
||||||
player := e.Domain.GetDefaultPlayer()
|
player := e.Domain.GetDefaultPlayer()
|
||||||
geoM := ebiten.GeoM{}
|
e.PlaygroundAssetDraw(screen, player.Type.Render, player.Position)
|
||||||
render := player.Type.Render
|
|
||||||
geoM.Reset()
|
|
||||||
geoM.Translate(float64(player.Position.X), float64(player.Position.Y))
|
|
||||||
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{
|
|
||||||
GeoM: geoM,
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) GetPlayground() konstructor.Playground {
|
func (e *Engine) GetPlayground() konstructor.Playground {
|
||||||
level := e.Domain.GetLevel(e.KContext.CurrentLevel)
|
level := e.Domain.GetLevel(e.KContext.CurrentLevel)
|
||||||
return level.Playgrounds[e.KContext.CurrentPlayground]
|
return level.Playgrounds[e.KContext.CurrentPlayground]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundAssetDraw(screen *ebiten.Image, render konstructor.Render, position konstructor.Position) {
|
||||||
|
geoM := ebiten.GeoM{}
|
||||||
|
geoM.Translate(float64(position.X), float64(position.Y))
|
||||||
|
geoM.Scale(float64(e.Config.Screen.Scale), float64(e.Config.Screen.Scale))
|
||||||
|
screen.DrawImage(e.GetImage(render), &ebiten.DrawImageOptions{
|
||||||
|
GeoM: geoM,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
4
main.go
4
main.go
@@ -22,8 +22,8 @@ func main() {
|
|||||||
Config: &konstructor.Config{
|
Config: &konstructor.Config{
|
||||||
Name: "Game",
|
Name: "Game",
|
||||||
Screen: &konstructor.ScreenConfig{
|
Screen: &konstructor.ScreenConfig{
|
||||||
Width: 320,
|
Width: 640,
|
||||||
Height: 240,
|
Height: 480,
|
||||||
Scale: 2,
|
Scale: 2,
|
||||||
},
|
},
|
||||||
KeyMap: konstructor.KeyMap{
|
KeyMap: konstructor.KeyMap{
|
||||||
|
|||||||
Reference in New Issue
Block a user