ItemTypeMap, NPCTypeMap

This commit is contained in:
2023-07-07 00:38:13 +02:00
parent 13920d66b7
commit 415a564317
5 changed files with 44 additions and 0 deletions

16
domain/item_type.go Normal file
View File

@@ -0,0 +1,16 @@
package domain
import "game/konstructor"
func (d *Domain) InitItemType() {
d.ItemTypeMap = konstructor.ItemTypeMap{}
}
func (d *Domain) GetItemTypeMap() konstructor.ItemTypeMap {
return d.ItemTypeMap
}
func (d *Domain) GetItemType(name string) konstructor.ItemType {
value, _ := d.ItemTypeMap[name]
return value
}

16
domain/npc_type.go Normal file
View File

@@ -0,0 +1,16 @@
package domain
import "game/konstructor"
func (d *Domain) InitNPCType() {
d.NPCTypeMap = konstructor.NPCTypeMap{}
}
func (d *Domain) GetNPCTypeMap() konstructor.NPCTypeMap {
return d.NPCTypeMap
}
func (d *Domain) GetNPCType(name string) konstructor.NPCType {
value, _ := d.NPCTypeMap[name]
return value
}

View File

@@ -5,6 +5,8 @@ type DomainBaseFields struct {
DialogMap DialogMap DialogMap DialogMap
Levels []Level Levels []Level
ObjectTypeMap ObjectTypeMap ObjectTypeMap ObjectTypeMap
ItemTypeMap ItemTypeMap
NPCTypeMap NPCTypeMap
} }
type DomainInterface interface { type DomainInterface interface {
@@ -24,6 +26,12 @@ type DomainInterface interface {
GetObjectTypeMap() ObjectTypeMap GetObjectTypeMap() ObjectTypeMap
GetObjectType(name string) ObjectType GetObjectType(name string) ObjectType
GetItemTypeMap() ItemTypeMap
GetItemType(name string) ItemType
GetNPCTypeMap() NPCTypeMap
GetNPCType(name string) NPCType
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 ItemTypeMap map[string]ItemType
type ItemType struct { type ItemType struct {
ID string ID string
Render Render Render Render

View File

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