#223: an office declared a flat buffer - 60 ore, 30 gas, 30 energy - whatever was in its berth, so one keeping an interceptor had transporters haul it gas and energy it can never spend, and the figure bore no relation to what it was actually charged. Since #220 that charge depends on the berth's occupant and on how far down the fleet the berth sits, neither of which a definition can state. It asks for what its own berth costs, four charges deep: enough that the tax is payable whenever the bank has anything - a transporter round trip fits inside four intervals - and no more, so an office is not a hoard. Same idiom outposts and workshops already use for world-dependent demand. A small floor stays in the definition on purpose: an empty berth asks for nothing dynamic, so without it a newly crewed berth would start from zero and could starve before its first delivery landed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019AJMdB7iuHuLFZM1aBu3GD
39 lines
1.2 KiB
Text
39 lines
1.2 KiB
Text
[gd_resource type="Resource" script_class="BuildingDefinition" format=3]
|
|
|
|
[ext_resource type="Script" path="res://buildings/BuildingDefinition.gd" id="1"]
|
|
[ext_resource type="PackedScene" path="res://buildings/FleetOfficeBuildingVisual.tscn" id="2"]
|
|
[ext_resource type="Script" path="res://buildings/BuildingLogisticsProfile.gd" id="3"]
|
|
|
|
[sub_resource type="Resource" id="Resource_office_logistics"]
|
|
script = ExtResource("3")
|
|
input_buffers = {
|
|
"energy": 6,
|
|
"gas": 6,
|
|
"ore": 10
|
|
}
|
|
collected_outputs = PackedStringArray()
|
|
conversion_input = ""
|
|
conversion_output = ""
|
|
conversion_rate = 0.0
|
|
conversion_yield = 1
|
|
|
|
[resource]
|
|
script = ExtResource("1")
|
|
definition_id = "fleet_office"
|
|
display_name = "Fleet Office"
|
|
description = "Holds one berth in the fleet and pays for the vessel in it. Hub transporters keep it stocked; an office that runs dry loses its vessel."
|
|
cost = 35
|
|
build_resource_costs = {
|
|
"ore": 35
|
|
}
|
|
action_icon = 2
|
|
menu_icon = 2
|
|
visual_scene = ExtResource("2")
|
|
capabilities = PackedStringArray("fleet_office")
|
|
logistics = SubResource("Resource_office_logistics")
|
|
map_color = Color(0.45, 0.78, 1, 1)
|
|
map_sides = 4
|
|
menu_button_name = "FleetOfficeButton"
|
|
menu_label_name = "FleetOfficeLabel"
|
|
menu_cost_name = "FleetOfficeCost"
|
|
max_hp = 45
|