Basically putting all the translation stuff together before I refactor things to use it.

This commit is contained in:
2025-05-25 12:53:34 -05:00
parent 1e2d971643
commit f5cb84e0c9
31 changed files with 254 additions and 327 deletions

View File

@@ -1,13 +0,0 @@
class_name Onion extends "res://scripts/Item/Item.gd"
func getName() -> String:
return "Onion"
func getCategory() -> ItemCategory:
return ItemCategory.MEDICINE;
func isConsumable() -> bool:
return true;
func consume() -> void:
print("Consuming Potion");

View File

@@ -1 +0,0 @@
uid://bmfaw3kid1pqx

View File

@@ -7,7 +7,7 @@ enum ItemSortType {
class ItemStackNameComparator:
static func _sort(a, b):
return Item.getItemName(a).to_lower() < Item.getItemName(b).to_lower()
return ITEM.getItemName(a).to_lower() < ITEM.getItemName(b).to_lower()
class ItemStackTypeComparator:
static func _sort(a, b):
@@ -22,7 +22,7 @@ func isPlayerInventory() -> bool:
return self == ITEM.PLAYER_INVENTORY
func addItem(type:Item.Type, quantity: int = 1) -> void:
if !Item.isStackable(type):
if !ITEM.isStackable(type):
# Item cannot be stacked, add each item to inv
for i in range(quantity):
contents.append(ItemStack.new(type, 1))

View File

@@ -1,4 +1,4 @@
class_name Item
class_name Item extends Node
enum Type {
# Items
@@ -9,7 +9,7 @@ enum Type {
SWEET_POTATO = 3,
# Recipe outputs
ASH_BAKED_SWEET_POTATO = 4,
BAKED_SWEET_POTATO = 4,
};
enum Category {
@@ -19,70 +19,8 @@ enum Category {
FOOD
};
static func isStackable(itemType:Type) -> bool:
match itemType:
_:
return true
static func getItemName(itemType:Type, count:int = 1) -> String:
match itemType:
Type.POTION:
if count != 1:
return "Potions"
return "Potion"
Type.ONION:
if count != 1:
return "Onions"
return "Onion"
Type.SWEET_POTATO:
if count != 1:
return "Sweet Potatoes"
return "Sweet Potato"
Type.ASH_BAKED_SWEET_POTATO:
if count != 1:
return "Ash-Baked Sweet Potatoes"
return "Ash-Baked Sweet Potato"
_:
assert(false, "Invalid item type")
return ""
static func getItemDescription(itemType:Type) -> String:
match itemType:
Type.POTION:
return "A potent healing drink, infused with magical properties. Restores health and stamina."
Type.ONION:
return "A common vegetable, known for its strong flavor and aroma. Can be used in cooking."
Type.SWEET_POTATO:
return "A nutritious root vegetable, sweet and starchy. Can be used in cooking."
Type.ASH_BAKED_SWEET_POTATO:
return "Tender, warm, and sweet meal, made by baking a sweet potato in campfire embers. Comforting, simple, and gently filling."
_:
assert(false, "Invalid item type")
return ""
static func getItemCategory(itemType:Type) -> Category:
match itemType:
Type.POTION:
return Category.MEDICINE
Type.ONION:
return Category.INGREDIENT
Type.SWEET_POTATO:
return Category.INGREDIENT
Type.ASH_BAKED_SWEET_POTATO:
return Category.FOOD
_:
assert(false, "Invalid item type")
return Category.KEY_ITEM
@export var title:String = ""
@export var description_text:String = ""
@export var type:Type = Type.POTION
@export var category:Category = Category.INGREDIENT
@export var stackable:bool = true

View File

@@ -1,13 +0,0 @@
class_name Potion extends "res://scripts/Item/Item.gd"
func getName() -> String:
return "Potion"
func getCategory() -> ItemCategory:
return ItemCategory.MEDICINE;
func isConsumable() -> bool:
return true;
func consume() -> void:
print("Consuming Potion");

View File

@@ -0,0 +1 @@
class_name ItemOnion extends "res://scripts/Item/Item.gd"

View File

@@ -0,0 +1 @@
uid://dipe47ljyvycv

View File

@@ -0,0 +1 @@
class_name ItemPotion extends Item

View File

@@ -0,0 +1 @@
uid://b6v2o563casay