From 1ae5d304c60675836dc0006fb12c43bf3eda071c Mon Sep 17 00:00:00 2001
From: Yona-TYT <yonatan.el.amigo@gmail.com>
Date: Sun, 29 Dec 2024 16:33:31 -0400
Subject: [PATCH] ADD good_desc_x.get_metric

---
 src/simutrans/script/api/api_obj_desc.cc             | 5 +++++
 src/simutrans/script/api/squirrel_types_ai.awk       | 1 +
 src/simutrans/script/api/squirrel_types_scenario.awk | 1 +
 3 files changed, 7 insertions(+)

diff --git a/src/simutrans/script/api/api_obj_desc.cc b/src/simutrans/script/api/api_obj_desc.cc
index 116d8fd66..43d0c3104 100644
--- a/src/simutrans/script/api/api_obj_desc.cc
+++ b/src/simutrans/script/api/api_obj_desc.cc
@@ -770,6 +770,11 @@ void export_goods_desc(HSQUIRRELVM vm)
 	 */
 	register_method(vm, &goods_desc_t::get_weight_per_unit, "get_weight_per_unit"); // in kg
 
+	/**
+	 * @returns metric unit name
+	 */
+	register_method(vm, &goods_desc_t::get_mass, "get_metric");
+
 	/**
 	 * Calculates transport revenue per tile and freight unit.
 	 * Takes speedbonus into account.
diff --git a/src/simutrans/script/api/squirrel_types_ai.awk b/src/simutrans/script/api/squirrel_types_ai.awk
index d0e5b23f0..d4da6a57d 100644
--- a/src/simutrans/script/api/squirrel_types_ai.awk
+++ b/src/simutrans/script/api/squirrel_types_ai.awk
@@ -165,6 +165,7 @@ BEGIN {
 	export_types_ai["good_desc_x::get_catg_index"] = "integer()"
 	export_types_ai["good_desc_x::is_interchangeable"] = "bool(good_desc_x)"
 	export_types_ai["good_desc_x::get_weight_per_unit"] = "integer()"
+	export_types_ai["good_desc_x::get_metric"] = "string()"
 	export_types_ai["good_desc_x::calc_revenue"] = "integer(way_types, integer)"
 	export_types_ai["sign_desc_x::is_one_way"] = "bool()"
 	export_types_ai["sign_desc_x::is_private_way"] = "bool()"
diff --git a/src/simutrans/script/api/squirrel_types_scenario.awk b/src/simutrans/script/api/squirrel_types_scenario.awk
index 7032b7f64..4c55b689b 100644
--- a/src/simutrans/script/api/squirrel_types_scenario.awk
+++ b/src/simutrans/script/api/squirrel_types_scenario.awk
@@ -165,6 +165,7 @@ BEGIN {
 	export_types_scenario["good_desc_x::get_catg_index"] = "integer()"
 	export_types_scenario["good_desc_x::is_interchangeable"] = "bool(good_desc_x)"
 	export_types_scenario["good_desc_x::get_weight_per_unit"] = "integer()"
+	export_types_scenario["good_desc_x::get_metric"] = "string()"
 	export_types_scenario["good_desc_x::calc_revenue"] = "integer(way_types, integer)"
 	export_types_scenario["sign_desc_x::is_one_way"] = "bool()"
 	export_types_scenario["sign_desc_x::is_private_way"] = "bool()"
-- 
2.47.1

