-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Temperature calculation cleaning #30385
Merged
kevingranade
merged 16 commits into
CleverRaven:master
from
Hirmuolio:Hirmuolio-temperature-cleaning
May 17, 2019
Merged
Temperature calculation cleaning #30385
kevingranade
merged 16 commits into
CleverRaven:master
from
Hirmuolio:Hirmuolio-temperature-cleaning
May 17, 2019
Conversation
This file contains 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
Labels
[C++]
Changes (can be) made in C++. Previously named `Code`
Code: Infrastructure / Style / Static Analysis
Code internal infrastructure and style
Mechanics: Temperature
Freezing, cooling, thawing, heating, etc. mechanics
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
SUMMARY: Infrastructure "Clean temperature code a bit"
Purpose of change
The temperature code would set and get the enviroment temperature in many places before the item processing is called. Then the temperature is passed along through numerous functions until it reaches the
process_temperature_rot
and is finally used.This would also cause the
g->get_temperature( pos )
to be called on all temperature tracked items every turn. The temperature is needed only once every 10 minutes (100 turns) so 99% of times this was unnecessary.Describe the solution
process_temperature_rot
. It is the only place where the temperature is actually used.item::process
only existed to pass the temperature along. It has been removed now.signed char
(this is the temperature before heat sources like fires). So the temperature range was quite limited. Changed that to an integer so that the test could set the temperature to 55 C without overflowing.g->new_game
to see if mapgen is completed to avoid the segrault with vending machines/toilets.Describe alternatives you've considered
Additional context