Add operator mode for testing without money constraints#102
Merged
Conversation
Adds a Player.operatorMode flag (enabled via FISHE_OPERATOR_MODE env var) with canAfford()/spendMoney() helpers that bypass every money gate across the shop, docks, tavern, bank, and business systems, so testers can buy gear, hire crew, and gamble without needing cash. Not persisted to saves. Surfaces an [OPERATOR MODE] indicator in all three front-ends. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Adds Player.hasEnergy()/spendEnergy() (mirroring canAfford/spendMoney) so fishing works regardless of energy in operator mode, and skips the shop's daily buy-budget check when selling fish, so testers can fish and sell without running into either resource gate.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Player.operatorModeflag (defaults from theFISHE_OPERATOR_MODEenv var, e.g.FISHE_OPERATOR_MODE=1 python3 src/fishE.py) withcanAfford()/spendMoney()helpers.[OPERATOR MODE]indicator in the console, pygame, and web front-ends so it's obvious when it's active.Test plan
python3 -m pytest -q— 213 passed, 11 pre-existing pygame failures (no video device in this sandbox; confirmed present onmaintoo, unrelated to this change)canAfford/spendMoney/worker-quit logic with$0on hand🤖 Generated with Claude Code