🆑
add: contraband crate with british police outfit
/🆑
why is it good for gaming:
now they can buy thematic items and sec can do fun rp
description of what is added:
items added in the security vendor:
an hat with same properties of the helmet
a suit with same properties of normal sec suit for
a whistle with 10s cooldown
a pair of white gloves
a conversion kit which can turn a stun baton in a crappier police baton (no free batons and no "upgraded versions*")
for 1100 credits
prices are so sec can buy the whole reskin kit within 20 minutes of the round
tl note: police baton is more garbage than the roundstart free sec baton its for thematic rp
* update_icon() improvements
Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().
The rest of obj/item fuck it
* Suggested fixes, also passes the linter
* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON
* Actually this is better
* Signilzes datum/action to update its icon when its connected item does.
* REWROTE EVERYTHING
* And these too
* Mapmerger as usual
* Qust changed some datum mat stuff, fixed
* Updated the rune sprite to be in-line with blood cult style runes.
* Uses a less degenerate sprite for the rune
* Nanotrasen fires the Wave Motion Gun at the Clock Cult
* Fixes a random changelog appearing from the reebe void.
* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.
* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.
* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron
* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.
removes materials list from items, uses custom_materials instead. This might introduce some bugs so we should testmerge this for a while (and Ill test stuff locally as much as I can)
this also adds material crafting to sheets. Test case being chairs. In the future we can add stuff like tables, walls, doors etc.
also applies materials to everything, with fixes, which can close#46299
* Reverts italics-span back to no color.
* Cleans up many extra spaces and indents.
* Adds 'hear' span class.
* Replaces all 'italics' used in heard messages with 'hear'.
About The Pull Request
Converts every single usage of playsound's vary parameter to use the boolean define instead of 1 or 0. I'm tired of people copypasting the incorrect usage.
Also changes a couple of places where a list was picked from instead of using get_sfx internal calls
This was done via regex:
(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\)) to match 1
(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\)) to match 0
full sed commands:
/(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\))/\1TRUE\2/ 1 to TRUE
/(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\))/\1FALSE\2/ 0 to FALSE
I'm not very good with regex and these could probably be optimized, but they worked.
Why It's Good For The Game
Code usability
About The Pull Request
Completely removes item_color and the clusterfuck of bad programming it caused.
In places where item_color was used for entirely unique purposes it was split off and renamed to a new var on that typepath only, or refactored so it wasn't needed
In places where item_color was used as a dye color, it was converted to the new dye_color var
In places where item_color was used as the worn overlay it was removed and instead now icon_state is always used as the clothing overlay.
A new mob_overlay_icon var was added for manually setting where the mob overlay icon path is for specific items.
Moved some mob overlay files relating to clothing to their own directory as well for organization purposes.
Totally refactors washing machines, instead of the horrible abortion that was iterating through the typepath it now uses a registry of dye results.
Some bonus functionality to come out of this:
the washing machine now supports arbitrary dye colors.
Why It's Good For The Game
It's been 4 years since the "this should be deprecated soonish" comment was added, and this var is a shitpile of confusion if you just trace the usage of it.
Changelog
cl
add: Washing machines now support arbitrary dye color
add: Washing machines now dye nearly every item.
refactor: lots of backend changes to clothing overlays, report any issues
/cl
* adds "you" to some combat visible_messages.
* more you-messages and attack verbs to present tense.
* small fixes
* more additions and small fixes
* few message tweaks
* Fixes a typo and few other wordings.
* This turns butchering into something that resembles a component.
* Changes how the recycler works.
It no longer uses butchering in disgusting ways.
* I guess this works? It's not pretty though.
* How the fuck...
About The Pull Request
Beekit now gets one less beenade and has a lower chance, beesword has worse armor pen, does 2 less damage and injects 4 toxin as opposed to 4 histamine (could be looked at as a buff though). Plus I removed some pointless // remarks that I previously made but I doubt that really matters
Why It's Good For The Game
Pretty overpowered, hopefully this will make things better.
Changelog
cl
balance: Beekit now has a lesser chance of spawning and has one less grenade
balance: beesword now does 2 less damage, has worse armor penetration, and injects toxin as opposed to histamine
/cl
* Payment generation rework and no repeated target
* Blacklist
* Remove pod explosion
* contractor baton
* darker highlight
* Slight increase for the higher paying contracts
* Victims get healing injected to bring them out of soft crit/crit
* pod send fix
* Text changes
* More text tweaks
* New baton - custom sprite/sound
* Better sound - fixes
* Stutter
* text
* classic_baton rework
* attack silicons still, and only show charging for new baton
* Properly attack/stun silicons where appropriate
* . list
This improves init times and makes explosions and other shit that modifies a bunch of turfs faster by saving a proccall and potentially not doing the same work more than once.
cl Naksu
code: Turf adjacency list updates are now handled by a subsystem queue
/cl
* Fixes projectiles not hitting mobs, some refactoring too
* some stuff for projectile can hit target to work with not being ontop of an object
* Yeah let's just refactor bullet_act while we're at it.
* Yeah let's just refactor bullet_act while we're at it.
* Yeah let's just refactor bullet_act while we're at it.
* CanPass returns true to projectiles regardless of hit
* snakecase?
* Refactors NODROP flag into TRAIT_NODROP
🆑 coiax
fix: Anti-drop implants can no longer be used to drop objects that they
were not responsible for sticking to a person's hand.
fix: Backfiring with a Barnyard spellbook will now play a spooky horse sound.
refactor: Refactors the way that "NODROP" items work to a new system,
there should be no change in functionality.
/🆑
Various items in the codebase were doing weird hoop jumps in order to
preserve the nodrop flag's state when it also wanted to change it, so I
moved it to a trait system.
I may have gone overboard with the type of unique trait sources, but
those can be changed later. My long term plan is make a general "CURSED"
nodrop origin, which means you can unlock cursed items by being hit with
a bolt of door opening or something. But that's for another PR, this has
no functionality changes, apart from some slightly modified descriptions
on cursed masks.
- Removed a bunch of redundant voice changing code for all the voice
changing animal masks, used two new clothing flags for this purpose.
- Also refactored a bit the animal masks, making new cursed subtypes that play
the sound when created.
* Drop location
* Passes thrownthing to hitby
* Items now also pass thrownthing
* No longer uses default arguments
Also fixes bananium shield
* Adds more arguments to hitby calls
* Standardises throw_impact
* Clears up some loose ends
* Adds back wacky comment
* Reinstates can_push=FALSE on bananium shield
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.
Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove
cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.