playground header skeleton, playground screen into separated files
This commit is contained in:
@@ -16,6 +16,7 @@ func (e *Engine) PlaygroundUpdate() {
|
|||||||
|
|
||||||
func (e *Engine) PlaygroundDraw(screen *ebiten.Image) {
|
func (e *Engine) PlaygroundDraw(screen *ebiten.Image) {
|
||||||
e.PlaygroundBackgroundDraw(screen)
|
e.PlaygroundBackgroundDraw(screen)
|
||||||
|
e.PlaygroundHeaderDraw(screen)
|
||||||
e.PlaygroundPlatformsDraw(screen)
|
e.PlaygroundPlatformsDraw(screen)
|
||||||
e.PlaygroundItemsDraw(screen)
|
e.PlaygroundItemsDraw(screen)
|
||||||
e.PlaygroundNPCsDraw(screen)
|
e.PlaygroundNPCsDraw(screen)
|
||||||
@@ -27,32 +28,6 @@ func (e *Engine) PlaygroundBackgroundDraw(screen *ebiten.Image) {
|
|||||||
e.PlaygroundAssetDraw(screen, playground.Render, konstructor.Position{})
|
e.PlaygroundAssetDraw(screen, playground.Render, konstructor.Position{})
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Engine) PlaygroundPlatformsDraw(screen *ebiten.Image) {
|
|
||||||
playground := e.GetPlayground()
|
|
||||||
for _, platform := range playground.Platforms {
|
|
||||||
e.PlaygroundAssetDraw(screen, platform.Type.Render, platform.Position)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *Engine) PlaygroundItemsDraw(screen *ebiten.Image) {
|
|
||||||
playground := e.GetPlayground()
|
|
||||||
for _, item := range playground.Items {
|
|
||||||
e.PlaygroundAssetDraw(screen, item.Type.Render, item.Position)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *Engine) PlaygroundNPCsDraw(screen *ebiten.Image) {
|
|
||||||
playground := e.GetPlayground()
|
|
||||||
for _, npc := range playground.NPCs {
|
|
||||||
e.PlaygroundAssetDraw(screen, npc.Type.Render, npc.Position)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *Engine) PlaygroundDefaultPlayerDraw(screen *ebiten.Image) {
|
|
||||||
player := e.Domain.GetDefaultPlayer()
|
|
||||||
e.PlaygroundAssetDraw(screen, player.Type.Render, player.Position)
|
|
||||||
}
|
|
||||||
|
|
||||||
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]
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
package easy_ebitengine
|
||||||
|
|
||||||
|
import (
|
||||||
|
"game/konstructor"
|
||||||
|
"image/color"
|
||||||
|
|
||||||
|
"github.com/hajimehoshi/ebiten"
|
||||||
|
"github.com/hajimehoshi/ebiten/text"
|
||||||
|
)
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundHeaderDraw(screen *ebiten.Image) {
|
||||||
|
header_bg, _ := ebiten.NewImage(e.Config.Screen.Width, 20, ebiten.FilterDefault)
|
||||||
|
header_bg.Fill(color.RGBA{
|
||||||
|
R: 0,
|
||||||
|
G: 255,
|
||||||
|
B: 0,
|
||||||
|
A: 200,
|
||||||
|
})
|
||||||
|
|
||||||
|
fl := konstructor.FontLayout{
|
||||||
|
Path: "assets/fonts/ArcadeClassic.ttf",
|
||||||
|
DPI: 72,
|
||||||
|
Size: 24,
|
||||||
|
}
|
||||||
|
|
||||||
|
face := fl.GetFontFace()
|
||||||
|
|
||||||
|
geoM := ebiten.GeoM{}
|
||||||
|
geoM.Scale(float64(e.Config.Screen.Scale), float64(e.Config.Screen.Scale))
|
||||||
|
screen.DrawImage(header_bg, &ebiten.DrawImageOptions{
|
||||||
|
GeoM: geoM,
|
||||||
|
})
|
||||||
|
text.Draw(screen, e.Config.Name, face, 10, 20, color.Black)
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package easy_ebitengine
|
||||||
|
|
||||||
|
import "github.com/hajimehoshi/ebiten"
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundItemsDraw(screen *ebiten.Image) {
|
||||||
|
playground := e.GetPlayground()
|
||||||
|
for _, item := range playground.Items {
|
||||||
|
e.PlaygroundAssetDraw(screen, item.Type.Render, item.Position)
|
||||||
|
}
|
||||||
|
}
|
||||||
10
konstructor/engines/easy_ebitengine/screen.playground.npc.go
Normal file
10
konstructor/engines/easy_ebitengine/screen.playground.npc.go
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
package easy_ebitengine
|
||||||
|
|
||||||
|
import "github.com/hajimehoshi/ebiten"
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundNPCsDraw(screen *ebiten.Image) {
|
||||||
|
playground := e.GetPlayground()
|
||||||
|
for _, npc := range playground.NPCs {
|
||||||
|
e.PlaygroundAssetDraw(screen, npc.Type.Render, npc.Position)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
package easy_ebitengine
|
||||||
|
|
||||||
|
import "github.com/hajimehoshi/ebiten"
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundPlatformsDraw(screen *ebiten.Image) {
|
||||||
|
playground := e.GetPlayground()
|
||||||
|
for _, platform := range playground.Platforms {
|
||||||
|
e.PlaygroundAssetDraw(screen, platform.Type.Render, platform.Position)
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
package easy_ebitengine
|
||||||
|
|
||||||
|
import "github.com/hajimehoshi/ebiten"
|
||||||
|
|
||||||
|
func (e *Engine) PlaygroundDefaultPlayerDraw(screen *ebiten.Image) {
|
||||||
|
player := e.Domain.GetDefaultPlayer()
|
||||||
|
e.PlaygroundAssetDraw(screen, player.Type.Render, player.Position)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user