Rework of cigarettes and cigarette-related items
Created by: dylanstrategie
Addressing an issue, unfucking the code while at it
- Use standardized procs like update_brightness() and update_icon() to minimize bullshit
- Cigarettes (and all sub-types) can now be lit with anything tagged as is_hot(), special messages kept whenever applicable
- Added a strike-anywhere matchbox. The matches existed, the matchbox didn't. Under the cigarette machine's premium items, can be lit against any surface
- You can't shove an entire matchbox into cigarette packets anymore. The reason seems obvious (it's as big as the packet itself)
- All matchboxes are now fancy storages and contain 21 matches to start with (I'm aware it's nowhere near a real matchbox's contents, but 100-ish matches is pure overkill)
- Normal matches last as much as strike-anywhere (10 instead of 5) and no longer go out when dropped
- Cigarettes and sub-types will be put out if dipped into water when lit, and will not light if they contain water (aka wet)
- When striking a cheap lighter, you roll for 20 % to light it, and 80 % to "fail". If you fail, you simply have to try again, once it's lit you're done
- All lighter actions have 5 attackdelay (not seconds !) to minimize spamming
- Added sounds to lighter and zippos (matches sounds withheld because holy shit those ugly sources)
- New cigarette vending machine costs : Matchbox : 25 $, Cheap Lighter : 25 $, Cigarette Pack : 20 $
- All files referencing matchboxes fixed, including the map
- Added empty variants to matchboxes for mapping purposes
Testing is now complete and most, if not all features, work flawlessly. I also evinced a few serious problems with this PR
Fixes #4402 (closed)
Changelog included