Keep the 4x fuel consumption override without redeclaring the vanilla static#87
Open
Smiggus wants to merge 1 commit into
Open
Keep the 4x fuel consumption override without redeclaring the vanilla static#87Smiggus wants to merge 1 commit into
Smiggus wants to merge 1 commit into
Conversation
Vanilla SCR_FuelConsumptionComponent already declares 'protected static float s_fGlobalFuelConsumptionScale' (default 8). Redeclaring the same member in the modded class conflicts with the original declaration; Enforce Script does not allow modded classes to redeclare existing members. Use a distinctly named constant instead and keep passing 4.0 to SetGlobalFuelConsumptionScale() on the server.
5826fce to
30bbfa2
Compare
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.
The 4x global fuel consumption scale is intentional (vanilla's 8x default is the thing being corrected). This PR does not change that behavior. The problem is only how it was written: the modded class declared
static float s_fGlobalFuelConsumptionScale = 4.0;, and vanillaSCR_FuelConsumptionComponentalready declares that exact static (protected, default 8). A modded class cannot redeclare an existing member, so this is either a compile failure or a shadow variable depending on engine version, and it is fragile against game updates either way.Changed to a distinctly named constant, still passed to
SetGlobalFuelConsumptionScale()on the server inOnPostInit. Net effect in game is identical: 4x consumption.Note for later: because this runs in
OnPostInitof every fuel consumer, any scale an admin changes mid-session gets reset to 4x when the next vehicle spawns. If admin control matters, the call could move to a game-mode init hook instead. Left as-is here to keep the change minimal.