Fixes a bug that caused a bad index runtime on mapped-in buns during map init that somehow apparently makes all food cause nausea and vomiting or something.
* get_tool_quality has numerical meaning
* Basic tools set tool quality
* Toolspeed is replaced by tool quality checks
* Addresses assorted results from live test
* Extra cleanup
* Indescribable! - A Food Flavor Fixing Pass
*You keep using that word. I do not think it means what you think it means.*
- Food will no longer erroneously have double the nutriment it's supposed to.
- Fixed a lot of invalid food nutriment tastes and spruced up some old ones.
- Made all foods use `nutriment_amt` where applicable
- Made those not applicable to the former use `nutriment_desc` when manually adding nutriment
- Moved setting bitesize out of Initialize, because... why
* fixes stragglers
* select_recipe improvement
Removes the call to Timsort and the recipe comparator proc;
uses a handrolled implementation of
`argmax(items + reagents + fruit)` instead.
This reduces the memory footprint of `select_recipe`
as well as the amount of processing needed to select the optimal recipe.
* angelogchay
* Fixes infinite loop following cooking error
```
while (select_recipe(available_recipes,C) == recipe)
var/list/TR = list()
TR += recipe.make_food(C)
```
This would never consume reagents due to an early return, meaning it would never terminate from the while loop. Clearing the reagents is an easy fix for something that will hopefully never happen, and avoids locking the server up if it does.
Also makes such failures obvious.
TODO: Unit test for recipes without results.
* Fixes/tweaks
* fix CI
* Add icons for crablegs and crabmeat
* Build all vending machine inventories on startup (cursed)
* Fix cookie having no icon (convert everything to cookiesnack)
* Remove kabob with no actual definition
* Fix spicy burrito having no icon
* Adds linter defines to repo.
* Uncomments linter defines already in the code.
* Resolves unreachable code linter errors.
* Nukes decade+ old syndie specops code except for computer since that's mapped in?????
* Resolves procs has no parent linter error.
* Proc signature fixes
* Bad comments
* "In" danger
* Type safety
* Implied nested list abuse
* Top level ..() usage
* Sleepy coder typos
* Invalid kwargs calls
* Pointless returns
* Linter hacks (see full message)
Byond doesn't care and it has no effect but linter doesn't like var/proc
for holding references to procs, despite that it's valid byond code.
Also, the linter seems to have serious issues figuring out relative
proc names. This commit is a sort of take-it-or-leave-it thing. It's not
required, it just cuts down on warnings, but this code is valid DM code.
* WHATEVER THIS IS
* Trick dreamchecker linter into ignoring this file's sins in it's weird use of vars
* Fix list decoration syntax - Its a list, not list of lists
- To declare that a var is a list you can `var/list/blah = list()` syntax or the `var/blah[0]` syntax. Both do exactly the same thing. But if you do `var/list/blah[0]` that is just like doing `var/list/list/blah = list()`
* Hopefully stops the ai holder subtype folder from going quantum and sometimes changes capitalization over time, and incidentally causing 20+ linter errors.
* Fixes unwrapped negated object in list linter error.
* Resolves colon-like list accessing linter error.
* Turns linter on in linter config.
* Fixes closet indentation properly and cleans up suit storage unit switch.
Co-authored-by: Aronai Sieyes <arokha@arokha.com>
Co-authored-by: Leshana <Leshana@users.noreply.github.com>
* Addsd sheet storage smartfridge
Implements persistent item storage
* Adds persistent produce smartfridge
Repaths smartfridge base type to /produce subtype
* Raises produce cap to 50, per staff meeting
* Adds Sprites
Adds the new bottled sprites for soda as well as some other additional drink sprites
* Added code and organization
Adds the code that'll modify the bottles as well as organizes the code that already exists
* Whoops - minor sprite error
Fixed the Schnapps sprites - forgot to change the 'alpha' of some pixels
Reorganizes Reagents dir structure
Refactors reactions to /decl
SSChemistry is no longer processing
Optimization isn't so optimized
Updates to distillery
New decl repository methods
Further tweaks
* Adding Cans
Adds the following cans
-Boda
-Kvass
-Kompot
* Adds Russian Reagents
Adds the following reagents
-Kompot
-Kvass
* Fills the cans
Adds the code needed for the can additions
* Updates the BODA Machine
Removes the old products and contraband and replaces them with the new cans