object_type.go

This commit is contained in:
2023-07-07 00:24:22 +02:00
parent 457d08080f
commit 88401697c7
5 changed files with 37 additions and 20 deletions

View File

@@ -9,6 +9,7 @@ type Domain struct {
MenuMap konstructor.MenuMap MenuMap konstructor.MenuMap
DialogMap konstructor.DialogMap DialogMap konstructor.DialogMap
Levels []konstructor.Level Levels []konstructor.Level
ObjectTypeMap konstructor.ObjectTypeMap
} }
func (d *Domain) Init() { func (d *Domain) Init() {

View File

@@ -20,14 +20,7 @@ func (d *Domain) InitLevel() {
Y: 10, Y: 10,
Z: 0, Z: 0,
}, },
Type: konstructor.ObjectType{ Type: d.GetObjectType("TestObjectType"),
ID: "test_object_type",
Render: konstructor.Render{
Image: "assets/images/objects/test_object.png",
Width: 30,
Height: 30,
},
},
}, },
{ {
ID: "test_object2", ID: "test_object2",
@@ -36,14 +29,7 @@ func (d *Domain) InitLevel() {
Y: 50, Y: 50,
Z: 0, Z: 0,
}, },
Type: konstructor.ObjectType{ Type: d.GetObjectType("TestObjectType"),
ID: "test_object_type",
Render: konstructor.Render{
Image: "assets/images/objects/test_object.png",
Width: 30,
Height: 30,
},
},
}, },
}, },
}, },

25
domain/object_type.go Normal file
View File

@@ -0,0 +1,25 @@
package domain
import "game/konstructor"
func (d *Domain) InitObjectType() {
d.ObjectTypeMap = konstructor.ObjectTypeMap{
"TestObjectType": konstructor.ObjectType{
ID: "test_object_type",
Render: konstructor.Render{
Image: "assets/images/objects/test_object.png",
Width: 30,
Height: 30,
},
},
}
}
func (d *Domain) GetObjectTypeMap() konstructor.ObjectTypeMap {
return d.ObjectTypeMap
}
func (d *Domain) GetObjectType(name string) konstructor.ObjectType {
value, _ := d.ObjectTypeMap[name]
return value
}

View File

@@ -14,6 +14,9 @@ type DomainInterface interface {
GetLevels() []Level GetLevels() []Level
GetLevel(index int) Level GetLevel(index int) Level
GetObjectTypeMap() ObjectTypeMap
GetObjectType(name string) ObjectType
AddToInventory(item *Item) bool AddToInventory(item *Item) bool
RemoveFromInventory(item *Item) bool RemoveFromInventory(item *Item) bool
UseInventoryItem(item *Item) bool UseInventoryItem(item *Item) bool

View File

@@ -1,5 +1,7 @@
package konstructor package konstructor
type ObjectTypeMap map[string]ObjectType
type ObjectType struct { type ObjectType struct {
ID string ID string
Render Render Render Render