engine layer

This commit is contained in:
2023-07-04 23:32:17 +02:00
parent 386bee5cd4
commit 374f7a9acc
10 changed files with 23 additions and 23 deletions

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"fmt" "fmt"

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"game/konstructor/entity" "game/konstructor/entity"
@@ -8,7 +8,7 @@ import (
) )
type Engine struct { type Engine struct {
Domain DomainInterface Domain entity.DomainInterface
Controller *Controller Controller *Controller
Settings *entity.Settings Settings *entity.Settings
KContext *entity.KContext KContext *entity.KContext

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"bytes" "bytes"

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"github.com/hajimehoshi/ebiten" "github.com/hajimehoshi/ebiten"

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"github.com/hajimehoshi/ebiten" "github.com/hajimehoshi/ebiten"

View File

@@ -1,4 +1,4 @@
package konstructor package engine
import ( import (
"github.com/hajimehoshi/ebiten" "github.com/hajimehoshi/ebiten"

View File

@@ -0,0 +1,10 @@
package entity
type DomainInterface interface {
Init()
GetMenu(name string) Menu
SetMenu(name string, menu Menu)
GetDialog(name string) Dialog
SetDialog(name string, menu Dialog)
GetLevel(index int) Level
}

View File

@@ -1,26 +1,15 @@
package konstructor package konstructor
import ( import (
"game/konstructor/engine"
"game/konstructor/entity" "game/konstructor/entity"
"github.com/hajimehoshi/ebiten" "github.com/hajimehoshi/ebiten"
) )
type ContextInterface interface {
}
type DomainInterface interface {
Init()
GetMenu(name string) entity.Menu
SetMenu(name string, menu entity.Menu)
GetDialog(name string) entity.Dialog
SetDialog(name string, menu entity.Dialog)
GetLevel(index int) entity.Level
}
type Konstructor struct { type Konstructor struct {
Domain DomainInterface Domain entity.DomainInterface
Controller *Controller Controller *engine.Controller
Settings *entity.Settings Settings *entity.Settings
KContext *entity.KContext KContext *entity.KContext
} }
@@ -37,7 +26,7 @@ func (k Konstructor) SetWindow() {
} }
func (k Konstructor) Run() { func (k Konstructor) Run() {
ebiten.RunGame(&Engine{ ebiten.RunGame(&engine.Engine{
KContext: k.KContext, KContext: k.KContext,
Domain: k.Domain, Domain: k.Domain,
Controller: k.Controller, Controller: k.Controller,

View File

@@ -3,6 +3,7 @@ package main
import ( import (
"game/domain" "game/domain"
"game/konstructor" "game/konstructor"
"game/konstructor/engine"
"game/konstructor/entity" "game/konstructor/entity"
"github.com/hajimehoshi/ebiten" "github.com/hajimehoshi/ebiten"
@@ -27,7 +28,7 @@ func main() {
}, },
}, },
}, },
Controller: &konstructor.Controller{ Controller: &engine.Controller{
KeyMap: entity.KeyMap{ KeyMap: entity.KeyMap{
Up: ebiten.KeyUp, Up: ebiten.KeyUp,
Down: ebiten.KeyDown, Down: ebiten.KeyDown,