You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
569 B
Go
35 lines
569 B
Go
|
2 weeks ago
|
package muddy
|
||
|
|
|
||
|
|
import (
|
||
|
|
"fmt"
|
||
|
|
|
||
|
|
"github.com/EngoEngine/ecs"
|
||
|
|
)
|
||
|
|
|
||
|
|
type Room struct {
|
||
|
|
ID
|
||
|
|
Location
|
||
|
|
Observable
|
||
|
|
Inventory
|
||
|
|
}
|
||
|
|
|
||
|
|
type RoomRepository interface {
|
||
|
|
Get(int64) (Room, error)
|
||
|
|
GetAll() ([]Room, error)
|
||
|
|
Delete(int64) error
|
||
|
|
}
|
||
|
|
|
||
|
|
type RoomSystem struct {
|
||
|
|
repository RoomRepository
|
||
|
|
}
|
||
|
|
|
||
|
|
func (s *RoomSystem) Initialize(w *ecs.World) {
|
||
|
|
fmt.Println("initializing room system")
|
||
|
|
// locationMapper := ecs.NewMap4[ID, Location, Observable, Inventory](w)
|
||
|
|
}
|
||
|
|
|
||
|
|
func (s *RoomSystem) Update(w *ecs.World) {}
|
||
|
|
|
||
|
|
// Finalize the system.
|
||
|
|
func (s *RoomSystem) Finalize(w *ecs.World) {}
|