Refactor recent gameplay systems after code review
This commit is contained in:
parent
3f3a22227d
commit
d68f4d4f88
57 changed files with 530 additions and 572 deletions
|
|
@ -30,6 +30,8 @@ var hub_id: int = 0
|
|||
var burner_id: int = 0
|
||||
var load_limit: int = 0
|
||||
var energy_before_stall: int = 0
|
||||
var conversion_rate: float = 0.0
|
||||
var conversion_yield: int = 0
|
||||
|
||||
const MOTHERSHIP_AT := Vector2.ZERO
|
||||
const HUB_AT := Vector2(150.0, 0.0)
|
||||
|
|
@ -48,6 +50,9 @@ func _initialize() -> void:
|
|||
mothership_id = game_state.add_building(GameState.BUILDING_MOTHERSHIP, MOTHERSHIP_AT)
|
||||
burner_id = game_state.add_building(GameState.BUILDING_GAS_BURNER, BURNER_AT)
|
||||
game_state.deposit_resource_to_building(burner_id, GameState.RESOURCE_GAS, 20)
|
||||
var logistics: Resource = game_state.building_logistics_profile(game_state.find_building(burner_id))
|
||||
conversion_rate = logistics.conversion_rate
|
||||
conversion_yield = logistics.conversion_yield
|
||||
|
||||
|
||||
func _process(delta: float) -> bool:
|
||||
|
|
@ -73,10 +78,10 @@ func _process(delta: float) -> bool:
|
|||
var energy_made: int = game_state.building_resource(burner_id, GameState.RESOURCE_ENERGY)
|
||||
var gas_burned: int = 20 - gas_left
|
||||
if gas_burned < 2:
|
||||
return _fail("burner only burned %d gas in 2.5s at rate %.1f/s" % [gas_burned, GameState.GAS_BURN_RATE])
|
||||
if energy_made != gas_burned * GameState.ENERGY_PER_GAS:
|
||||
return _fail("burner only burned %d gas in 2.5s at rate %.1f/s" % [gas_burned, conversion_rate])
|
||||
if energy_made != gas_burned * conversion_yield:
|
||||
return _fail("burner made %d energy for %d gas burned, expected %dx" % [
|
||||
energy_made, gas_burned, GameState.ENERGY_PER_GAS
|
||||
energy_made, gas_burned, conversion_yield
|
||||
])
|
||||
if game_state.rocks != 0 or game_state.gas != 0:
|
||||
return _fail("conversion touched the bank (rocks=%d gas=%d) - it must only use local stock" % [
|
||||
|
|
|
|||
Loading…
Reference in a new issue