held items actually contains "null" entries by default using just var/I
gets these null items and then tries to wash_obj a null causing a
runtime
Specifying /obj/item will stop the nulls being iterated
* 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?
cl coiax
fix: Objects and items can now be inserted into closets, like before.
fix: Fixes a bug which prevented carbons from throwing items.
/cl
Essentially, the original way the insert() proc was structured, I
overlooked an else-if chain that was skipped if something was an item,
because I thought it only existed to type-check the item to access its
flags.
These are the changed lines from the NODROP PR. https://github.com/tgstation/tgstation/pull/42109/files#diff-2b130b854bf2e2a5e76320246520eea4L171closes#42109
* 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
* toolbox pls
* rstar
* Update uplink_items.dm
* contents, force
* i
* toolbox now costs 2 tc
robuster
* "toolbox"
* grammar mistake
* bust < bash
* description is better
A old, blue toolbox, it looks robust.
* changed bash skulls to bust heads
because i just watched the space station 13 video again
* yuh
* asdf
* throw!
* uplink now notes that it increases in damage
🆑 coiax
tweak: Bartenders now gain their ability to "booze slide" from their
beer googles, rather than from a granter book in their backpacks.
/🆑
Less action button clutter, the ability to disable it if required (at
the cost of style), still keeping it possible for non-roundstart bartenders
(provided of course, you have the shades for it), as well as a less
janky way of checking than just looking through someone's action
buttons.
🆑 coiax
code: Randomly coloured gloves and randomly coloured glowsticks now have
slightly different typepaths, but otherwise function the same.
/🆑
Essentially, these items just acted AS spawners by qdeling in Initialize
(or at least hinting) and spawning a new totally seperate item.
There is nothing that uses the auto-equipping of random gloves, so I
removed it.
🆑 coiax
fix: Smuggler's satchels can now be found with t-ray scanners, as
intended.
/🆑Fixes#42296.
I used a trait because currently this is the only object that I'm aware
of that uses partial invisibility (because it wants to be visible to
ghosts), and it seems a waste to dedicate an entire obj_flag to one
item, or put a hardcoded typepath.
🆑 coiax
fix: Ghosts and camera mobs no longer feel if the shower is cold or too hot.
/🆑Fixes#42269.
- In addition, replaces some "the shower" with [src].
* Glowing goo glows more, and always contains radium
🆑 coiax
tweak: Glowing goo now glows a lot more noticably in the dark, and
always contains radium.
/🆑
You can barely see it in the dark, should glow more. Also, the normal
in-game method of creating it is spilling radium on the floor, so all
glowing goo should have radium in it, even the roundstart stuff.
* Roundstart goo now contains either radium or uranium
* Radium is now a subtype of uranium, because nearly-identical behaviour
cl coiax
fix: Monkey cubes now expand in a running shower!
fix: Slimes now die in running showers.
/cl
Showers now apply 200 water reagent via TOUCH every tick to anything under them.
This doesn't actually add reagent to the atoms it touches though.
Showers now use timers rather than spawn for the mist creation.
Mist isn't recreated every time the shower is turned on and off.
All living mobs are burned by hot showers, not just carbons.
This means that slimes are healed by hot showers.
Showers are now in a separate file.
Shower temperatures now use defines.
Fixes#41773.
* Die of fate tweaks and fixes
🆑 coiax
fix: Rolling a 6 with a die of fate now reduces your speed as intended.
fix: Rolling an 8 with a die of fate will cause the explosion to be
around the roller, not the die.
tweak: Die of fate effects now make loud visible messages so it's
obvious what has happened.
admin: Dice can now be "totally rigged" with admin edits to
unconditionally always roll a certain value, rather than just some of
the time. A new "cursed die of fate" has been added to demonstrate this
effect.
/🆑
- new proc `do_smoke` that does basic smoke effects, to avoid the same
pattern for making smoke effects.
- Dice rigging has been split into two vars, "rigged" for the severity
of the rigging (not rigged, basically rigged, totally rigged), and
rigged_value for the value it's trying to rig to.
* Stealth die of fates
* Code review II?
This description doesn't really make much sense when people use them for flavor
on stations and sometimes to make entire NT shuttles out of. So it's no longer
evil.
* Scope locate calls which are immediately checked against a list
* Remove silly use of locate from bible Topic
* Scope various locate calls (needs testing)
* More WIP
* Buff up lightswitches while we're here
* Tidy record browsing code
* Scope a few more locates
These have caused problems in the past (#41917, #39303). Continues #29349.
Also cleans up lightswitch code while I was already touching it.
I recommend a testmerge.
This new shuttle is significantly more usable than the hideous lopsided garbage
we had before. The turrets can actually fire at nuke ops and won't kill ian
anymore. It also has shields you can enable to give you extra protection from
boarders or meteors, and the bridge can thoroughly lock itself down with blast
doors to enter it, and on the windows. These turrets can also be disabled in the
bridge, if you like.
This shuttle now costs 30k, up from 15k, since it's an actually useful shuttle
now. Gotta pay for your security!
🆑 coiax
fix: The Spontaneous Brain Trauma event now has a range of possible severities,
and no longer runtimes.
/🆑
In addition, I changed the description/names of some pills to make them more
accurate, and added some neurine pills, because I needed them for testing.
With thanks to @oranges for spotting the runtime in the first place.
* Removes smugglers satchels
I love the cutie reading this
* remove smuggler's satchel from code
* removes all smugglers' satchel persistence code
* removes remaining things
storage component for smugglers, the miracle ruin (uses smugglers), the dme
🆑 coiax
fix: Humans with the Void mutation will no longer be able to enter the void
while inside something else (eg. cloning pod, cryotube) willingly or unwillingly.
/🆑
- I refactored immortality talisman effects to stop all this ugly ass code
reusing, and stop the weird modification of the speech invocation.
- I added DNA injectors for the Void mutation for testing.
cl Floyd / Qustinnus
tweak: You now have to be naked to get the nice shower moodlet, if you shower with clothes you get a bad moodie
add: Hygiene, you slowly become dirty over time, the more covered in blood you are the faster you will lose hygiene. When you are too dirty you will have a stink overlay. (Hygiene doesn't affect mood currently) It also spawns miasma slowly if you smell like shit.
add: adds NEET and neat traits. NEET's get 20 bucks social welfare extra and like being unhygienic, while neat people dislike being unhygienic and like being hygienic
/cl
This doesn't affect mood so plssss dont strawman in this PR about how I'm forcing you to shower or die or whatever
This PR is mostly visual and will allow for people to judge others for literaly being smelly as hell.
also NEET and neat traits which interact with being smelly. (neat likes hygiene, dislikes lack of it. NEETs like lack of hygiene and get some social welfare (20 bucks))