* The Great Radio Rework: NTNET Part 1 of many.
* Update airlock.dm
Co-authored-by: WarlockD <warlockd@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Update emotes.dm
* Update emotes.dm
* Update emotes.dm
* Fix spacing, redo some checks, fix bugs
* Add PR to readme, add new file overwrite, fix styling
* Add cooldown to long silicon emotes
* Fixes a metric fuckton, adds global cooldown, etc.
* cry
* unit test makes me cry
* Readd global cooldown on /datum/emote
* Overwrite /emote/beep modularily, instead of having two
* Bugfixes, mixed gender noises, refactors
* Add requested cooldown and volume change, move code about, blahblahblah
* Remove unnecessary cooldown vars from silicon emotes
* Update and prettify readme further.
* Switch default emote gender to female, no sound for non-carbons on certain emotes
* Add volume var and vary to scream run_emote
Co-authored-by: Avunia Takiya <git@takiya.cloud>
* Fix zero damage items not showing explicitly set attack verbs in chat (#55509)
Borked exactly five months ago by #52890.
This will close#55219.
* Fixing zero damage items with set attack verbs not showing chat messages anyway.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Refactors how movetypes are added and removed, No timers this time. (#55444)
* Refactors how movetypes are added and removed, No timers this time.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Remove TRAIT_ALWAYS_CLEAN from codebase (#55765)
Hygiene is no longer a thing, and the TRAIT_ALWAYS_CLEAN trait is not
actually used anywhere anymore. So it can be safely removed.
* Remove TRAIT_ALWAYS_CLEAN from codebase
Co-authored-by: coiax <yellowbounder@gmail.com>
* Deadchat plays everything - A simple way for admins to let deadchat control things. (#55314)
* Deadchat plays things
* Pocket lint
* View those variables
* Arr var
* Arrr save changes and don't code while drunk
* Loog dot exe
* Big ol' changes
* Deadchat plays everything - A simple way for admins to let deadchat control things.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* The ashdrake won't enrage anymore if all lava arena targets have gone clientless or deleted. (#55507)
* The ashdrake won't become enraged if all lava arena targets have gone clientless or deleted now.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Uranium Golems: Punch to Irradiate, not Exist to Irradiate (#55602)
* Uranium golems no longer irradiate by mere presence. Instead, they irradiate by punching people. Also some statistic changes including durability from brute damage, punch damage, etc. Also uranium golems can wear engineering clothes
* Adds radiation emissions from being struck as a uranium golem
* Uranium Golems: Punch to Irradiate, not Exist to Irradiate
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
* Specifies if DNR was pushed in body examine text (#55399)
Adds the examine text " and [t_his] soul has lost the will to live..." instead of the usual "soul departed" message if the person hits DNR.
* Specifies if DNR was pushed in body examine text
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
* No more original moth wings being set to none (#55672)
Moths that drink a potion of flight have their moth wings set to none, which their handle fire would store as their original, and that would be applied from reconstructive surgery.
Now potions of flight store an original, and handle fire checks to see if something was stored before, so it doesn't overwrite that.
* Fixes mothman wing reconstruction bug
Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
* Fix redundancy in /mob/living/silicon/Login (#55639)
/mob/living/silicon/Login had duplicated code encapsulated in a "remove_antag_for_borging" proc:
* Fix redundancy in /mob/living/silicon/Login
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
* Fixes some bugs involving regal rats (#55688)
- Regal rats are supposed to, when examing other regal rats, see them as
false kings. There was however, no check to see if you were looking at
yourself.
- When clicking on anything when at full health, you would get a message
about how you didn't need to eat anything. But you should only get
those messages, when you're attempting to consume cheese.
* Fixes some bugs involving regal rats
Co-authored-by: coiax <yellowbounder@gmail.com>
* Tweak cursed ice boots to NODROP only on equip (#55654)
Cursed ice hiking boots dropped by demonic frost miners only
become unremovable when worn.
* Tweak cursed ice boots to NODROP only on equip
Co-authored-by: coiax <yellowbounder@gmail.com>
* Fixing a very old issue about lizard snouts and hoods, fake mustaches and similars. (#55574)
Fixing a little visual issue with certain hoods, fake mustaches and similars making lizard snouts magically disappear when worn.
* Fixing a very old issue about lizard snouts and hoods, fake mustaches and similars.
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
* Generalizes hands blocked as unarmed attack block (#55579)
I suppose for bots there's a certain level of abstraction involved, but it makes sense within the context.
There's a pretty bad bug associated with shades here that this fixes.
* Generalizes the hands-blocked trait as UnarmedAttack block
Co-authored-by: Rohesie <rohesie@gmail.com>
* Hulks can now swing people by their tails + small changes to carbon throw impacts (#55383)
This PR adds another little interaction to hulks, letting them swing monkeys and humanoids with tails (so lizardpeople and felinids mainly) similar to (copied from) the wrestling move. To do this, be a hulk, have a carbon with a tail in at least a neck grab, target the groin, enable throw mode, then click in the direction you'd like to chuck them. After a short 2 second do_after, you'll start swinging your victim around and around by the tail, eventually sending them flying at a very, very high speed! The full process takes about 14 seconds from start to finish, not including getting them in a neck grab to begin with. Impacting a solid wall with no armor will do about 30 brute damage and can cause up to a hairline fracture if you're very unlucky.
This PR also makes a few changes to the effects of being thrown into things. Previously, you'd only suffer damage and a 2 second paralyze if you were thrown into solid turfs or carbon mobs, which meant smashing into windows or girders at high speed didn't do anything. This PR makes it so high speed impacts (I.E. hulk throws and high speed disposal outputs, not normal body throwing) into solid atoms will still deal a lesser amount of damage. Structures like windows and girders will deal a bit more damage and a small 1 second paralyze compared to other atoms
Why It's Good For The Game
Tail spinning adds a goofy niche power to hulk that doesn't just involve deleting walls and shrugging off stuns, and the other throw impact changes make being thrown into things at high speed more consistent rather than only applying to a specific type of atom.
* Hulks can now swing people by their tails + small changes to carbon throw impacts
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* [READY] Lavaland Elite Changes (#55367)
This PR just does some balancing to the Lavaland Elites, along with some QOL. The changes:
Ability buttons now show the current cooldown on them for when you can attack again.
BROODMOTHER
Nerfed Rage attack cooldown from 7 seconds to 10 seconds
HERALD
Speed increased from 4 to 2
Directional Shot cooldown nerfed from 5 to 3 seconds
Projectiles now deal 20 damage instead of 15
LEGIONNAIRE
Melee attacks now deal 35 damage instead of 30
Charge is now much faster to perform once it starts moving (moves faster) and combos into itself
Charge does melee damage per step now
Smoke cooldown decreased from 6 to 4 seconds
Fixed the bonfire not lighting things on fire who cross over it
PANDORA
Damage tiles now deal 30 damage instead of 20
Can no longer teleport to tiles it cannot see
AOE Blast is now 7x7 instead of 5x5
AOE Blast and Lineshot now move based on Pandora's current damage, speeding up as it gets lower
These are just some changes in order to better balance out the elites, giving strength to everyone but the broodmother and nerfing a tad BS attack the Broodmother possessed
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
* [READY] Lavaland Elite Changes
Co-authored-by: IndieanaJones <47086570+IndieanaJones@users.noreply.github.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
* Refactors Beams to use signals: Revived from 2019 edition! BONUS: Medbeams are also refactored to use signals (#55193)
Huge removal of dead vars, bad timers, and other sloppy jitteriness from beams. They go from checking movement to waiting for a signal.
VARIABLE KILL LIST:
sleep_time: signals baby
finished: signals BAYBEEE
target_oldloc: not only not typecasted as a turf or named as a turf, it was unused. when are we going to use this? the beam starts from the origin!
origin_oldloc: bad name, not typecasted. renamed to originturf
static_beam: how are you an unused variable and still get replaced by signals like really
timing_id: signallllss bbbaaaabbyy
recalculating: you get the drill by now signals baby
base_icon: unused, seemingly replaced by visuals I think
* Refactors Beams to use signals: Revived from 2019 edition! BONUS: Medbeams are also refactored to use signals
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
* Prevents simple animals from creating/destroying 1 footstep component per process (#55599)
* Lowers the amount of footstep component churn
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Update shadowpeople.dm (#55547)
Nightmare light eaters can no longer be deleted using acid
* Makes light eaters acid proof
Co-authored-by: wesoda25 <37246588+wesoda25@users.noreply.github.com>
* Fixes GC for observers and new players, and tons of loose references to stuff that shouldnt be (#55563)
I've done this on a signal because atom_hud is applied very loosely in some contexes, and the objects themselves dont have an easy way to track back into what huds they're affected by, so this seemed the best. Properly cleans up next_time_allowed, which was missing.
Update: I discovered this is also an issue for a lot of simple mobs, such as slimes and bots and such. So fixing this is huge
* Fixes GC for observers and new players, and tons of loose references to stuff that shouldnt be
Co-authored-by: Azarak <azarak10@gmail.com>
* null AI transfers through transformations correctly (#55535)
* Humans that get turned into monkeys don't get monkey AI
Co-authored-by: Yenwodyah <yenwodyah@gmail.com>
* Removes roundstart miasma. Yes, even the gibs that are marked as miasma producers. Fuck you. Carbons now start listening for death at init, then get the component when they die. Gibs behave just as they used to. (#55343)
* Removes roundstart miasma, from everything.
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
* Disconnect and Reconnect messages for deadchat (#55395)
adds messages to deadchat when a client with a mob disconnects or reconnects
* Disconnect and Reconnect messages for deadchat
* aaa
Co-authored-by: Emmanuel S <mrdoomboyo@gmail.com>
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
* Refactors how humans receive damage from xenomorphs, monkeys & slimes (#55389)
melee_damager_lower and melee_damage_lower has been moved from living/simple_animal to living.
Humans receive damage from xenomorphs, monkeys and slimes via random math between these two variables instead of hardcoded values.
* Refactors how humans receive damage from xenomorphs, monkeys & slimes
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
* [READY] Creates Datumized AI and applies it to monkeys (#55238)
New AI system, implemented for monkeys.
* [READY] Creates Datumized AI and applies it to monkeys
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
* You can sacrifice souls to toolboxes (#55306)
So, now that it's December, this PR makes it so you can use a soulstone with a shade in it on a mechanical toolbox to sacrifice the shade to give the toolbox back its SOUL (it goes back to the old sprite)
* You can sacrifice souls to toolboxes
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
* Prevents bypassing the bluespace anomaly core limit by killing ice demons (#55454)
Ice demons now have a 5% chance to drop a raw bs anomaly core instead of a 5% chance to drop an active one.
Fixes#55229
* Prevents bypassing the bluespace anomaly core limit by killing ice demons
Co-authored-by: interestingusernam3 <51925758+interestingusernam3@users.noreply.github.com>
* Replace direct poi_list manipulation with element (#55416)
Replaces GLOB.poi_list |= src and GLOB.poi_list -= src with an element that handles it directly.
More consistent code, especially when a lot of code couldn't decide how to add/remove (some |=, some -=, some .Remove, etc).
* Replace direct poi_list manipulation with element
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>