Save The Tree implementation and acceptance work in progress
Preserve production code, regression fixtures, audio assets and provenance, test infrastructure, and the original-completion plan and progress ledger. Final game and Windows acceptance remain pending; excluded local artifacts and native experiments are not part of this snapshot.
This commit is contained in:
@@ -82,7 +82,7 @@ func configure(
|
||||
customer_capacity = int(_value(options, &"customer_capacity", -1))
|
||||
service_attribute = StringName(_value(options, &"service_attribute", &""))
|
||||
related_facility_id = StringName(_value(options, &"related_facility_id", &""))
|
||||
related_facility_operating = related_facility_id.is_empty()
|
||||
related_facility_operating = related_facility_id.is_empty() and not requires_operating_kitchen()
|
||||
suspension_reason = StringName(_value(options, &"suspension_reason", &""))
|
||||
queue_capacity = maxi(int(_value(options, &"queue_capacity", 0)), 0)
|
||||
base_service_minutes = maxi(int(_value(options, &"base_service_minutes", 1)), 1)
|
||||
@@ -107,6 +107,12 @@ func configure(
|
||||
return self
|
||||
|
||||
|
||||
# Original 8.2 requires each dining venue to use a BACK kitchen. Geometry and
|
||||
# shared logistics are separate contracts; this single-ID rule does not infer either.
|
||||
func requires_operating_kitchen() -> bool:
|
||||
return definition_id in [&"cafeteria", &"restaurant", &"tavern"]
|
||||
|
||||
|
||||
func is_valid() -> bool:
|
||||
return not instance_id.is_empty() \
|
||||
and not definition_id.is_empty() \
|
||||
@@ -159,7 +165,7 @@ func is_within_opening_hours(absolute_minute: int) -> bool:
|
||||
func set_operational_conditions(conditions: Dictionary, absolute_minute: int) -> bool:
|
||||
if _has_value(conditions, &"related_facility_id"):
|
||||
related_facility_id = StringName(_value(conditions, &"related_facility_id", &""))
|
||||
related_facility_operating = related_facility_id.is_empty()
|
||||
related_facility_operating = related_facility_id.is_empty() and not requires_operating_kitchen()
|
||||
if StringName(_value(conditions, &"suspension_reason", &"")) in [&"DESTROYED", &"RAIDED"]:
|
||||
suspension_reason = StringName(_value(conditions, &"suspension_reason", &""))
|
||||
if _has_value(conditions, &"durability"):
|
||||
|
||||
Reference in New Issue
Block a user