-
-
Notifications
You must be signed in to change notification settings - Fork 1
Decouple Fuel System using GameSettingsResource and Signals #534
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
ikostan
merged 79 commits into
main
from
convert-hard-coded-fuel-elements-to-godot-resource
Apr 10, 2026
Merged
Changes from 64 commits
Commits
Show all changes
79 commits
Select commit
Hold shift + click to select a range
5c393d1
Add fuel system, integrate with player and tests
ikostan 78b8c0d
Update player.gd
ikostan 3c09275
Update globals.gd
ikostan bbe9181
Update game_settings_resource.gd
ikostan d8e69b4
Update player.gd
ikostan af4983f
Update main_scene.gd
ikostan 5d90fe6
Use GameSettings for fuel and reset on spawn
ikostan 5384388
Update test_player.gd
ikostan 55416e8
Update test_difficulty.gd
ikostan cc1030e
Update test_difficulty_integration.gd
ikostan b54c44d
Reset speed on fuel out & update test helper
ikostan aa8b37b
Add GUT tests for fuel edge cases
ikostan 686191c
Update test/gut/test_fuel_ui.gd
ikostan 5dc44cf
test_fuel_initialization() can't fail right now.
ikostan aa03e99
Update test/gut/test_fuel_edge_cases.gd
ikostan 7196efb
Update test/gut/test_fuel_resource.gd
ikostan 4bf75bb
Use Globals.settings.max_fuel for the fuel fixtures and bar assertions.
ikostan 8c755c1
Isolate the singleton fuel state in this test.
ikostan 20d00e3
Restore the shared fuel state after this integration test.
ikostan c9a0e69
Update scripts/player.gd
ikostan c871aa9
Update scripts/game_settings_resource.gd
ikostan fba243a
Update game_settings_resource.gd
ikostan 312b477
Avoid auto-saving current_fuel on every drain tick.
ikostan 3073aee
Update globals.gd
ikostan d0d607a
Update globals.gd
ikostan 2b3c364
suggestion (bug_risk): Handle max_fuel changes so the fuel bar’s max …
ikostan f0b3cc8
Introduce a Godot Resource that centralizes fuel configuration
ikostan b9807a3
Update player.gd
ikostan 985e74c
Update player.gd
ikostan 59c8027
Update player.gd
ikostan 41d9de6
Add automated unit tests for core fuel logic
ikostan a080857
Add tests for persistence and UI integration of the fuel system
ikostan f17205c
Update test_fuel_persistence_integration.gd
ikostan 0cf39f2
issue (bug_risk): The setters for max_fuel and current_fuel are recur…
ikostan d5d3da8
question (bug_risk): Resetting current_fuel to max on player spawn ma…
ikostan f98206b
Update test/gut/test_fuel_additional_edge_cases..gd
ikostan 3c39448
Merge branch 'convert-hard-coded-fuel-elements-to-godot-resource' of …
ikostan 4c800b7
Update test/gut/test_fuel_persistence_integration.gd
ikostan e2ba596
Need to explicitly sever the ties before the node leaves the tree
ikostan b99e75f
Merge branch 'convert-hard-coded-fuel-elements-to-godot-resource' of …
ikostan 3687769
Update player.gd
ikostan 1f90f7b
Update main_scene.tscn
ikostan e6ce226
Update player.gd
ikostan e3bf849
issue (bug_risk): The current_fuel setter recursively assigns to itse…
ikostan e34245c
Update game_settings_resource.gd
ikostan 85a4a46
issue (bug_risk): Threshold setters assign to their own exported prop…
ikostan f8bb977
Update game_settings_resource.gd
ikostan 5582ee4
Update game_settings_resource.gd
ikostan 9c7318c
issue (bug_risk): Fuel warning uses absolute current_fuel vs a thresh…
ikostan 69661e4
The new test file test_fuel_additional_edge_cases..gd has a double do…
ikostan 049558b
Update test_fuel_persistence_integration.gd
ikostan 60d3224
issue: The max_fuel setter can indirectly force current_fuel to 0 and…
ikostan 8e17078
Update player.gd
ikostan 60239e3
Update player.gd
ikostan 6940141
issue: Guard against invalid or equal fuel threshold values that woul…
ikostan bbda2c3
Update test_fuel_additional_edge_cases.gd
ikostan 3c08ad8
Update player.gd
ikostan b639983
Update player.gd
ikostan e65f0ff
suggestion (bug_risk): The cached _settings reference is not used con…
ikostan 7f9da9c
Update game_settings_resource.gd
ikostan 11712ee
Update game_settings_resource.gd
ikostan ed2064b
Update game_settings_resource.gd
ikostan b34983c
Update player.gd
ikostan 25df0e2
Update player.gd
ikostan ce2ace0
Update test/gut/test_fuel_additional_edge_cases.gd
ikostan 981857b
Update scripts/player.gd
ikostan ad8a596
Update player.gd
ikostan 0f9350a
Update globals.gd
ikostan 249c0c8
Update globals.gd
ikostan 9de3148
Update globals.gd
ikostan 87cb1f5
Update test_fuel_persistence_integration.gd
ikostan 6fa8828
Update test_fuel_edge_cases.gd
ikostan 231d117
issue (bug_risk): Direct access to Globals.settings.current_fuel assu…
ikostan 18e1d7c
Update main_scene.gd
ikostan a94c9b2
issue (bug_risk): Fallback GameSettingsResource can desync player fue…
ikostan 6f9ea4b
Update player.gd
ikostan 9e6daa6
issue (bug_risk): Fuel timer never restarts after refuel, so fuel con…
ikostan c314ebc
Update game_settings_resource.gd
ikostan f0bfd62
Update player.gd
ikostan File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.