diff --git a/items/test_item.tres b/items/test_item.tres index e8800e9..fa87acf 100644 --- a/items/test_item.tres +++ b/items/test_item.tres @@ -7,6 +7,7 @@ [resource] script = ExtResource("1_s7nhb") name = "Test Item" +description = "This is an debug item" min_price = 10.0 max_price = 100.0 stack_size = 5 diff --git a/scripts/game.gd b/scripts/game.gd index 319929b..971e190 100644 --- a/scripts/game.gd +++ b/scripts/game.gd @@ -2,7 +2,11 @@ extends Node class_name Game -enum ITEM_TYPE {VALUABLE, WEAPON, MODULE} +enum ITEM_TYPE {VALUABLE, WEAPON, MODULE, AMMUNITION} +enum AMMO_TYPE {NULL, LASER_ENERGY, ROCKETS} + +const DEFAULT_ITEM = preload("res://items/test_item.tres") +const DEFAULT_WEAPON = preload("res://scenes/weapons/presets/SingleLaserMk1.tscn") static var gameversion = "Ictar 1.1" @@ -62,3 +66,21 @@ static func profile_load(profile_name): print(meta, ": ", profile_meta[meta]) print(profile_meta[meta].keys()) return profile_meta + +static func get_item(id : String): + var path_name = id.to_lower().replace(" ", "_") + var path = "res://items/{name}.tres".format({"name": path_name}) + var res = load(path) + if res != null: + return res.duplicate() + else: + return DEFAULT_ITEM.duplicate() + +static func get_weapon(id : String): + var path_name = id.replace(" ", "") + var path = "res://weapons/presets/{name}.tscn".format({"name": path_name}) + var res = load(path) + if res != null: + return res + else: + return DEFAULT_WEAPON diff --git a/scripts/item.gd b/scripts/item.gd index 9d17696..951ea8d 100644 --- a/scripts/item.gd +++ b/scripts/item.gd @@ -3,6 +3,7 @@ extends Resource class_name Item @export var name : String +@export var description : String @export var min_price : float @export var max_price : float @export var stack_size : int