Commit Graph

4536 Commits

Author SHA1 Message Date
oranges
35a56b92fa Turns out a bunch of components do not properly transfer because of (#42691)
one of three things.

    1. They don't use RegisterWithParent or UnregisterFromParent to unregister
       and register signals

    2. They use callbacks which refer to a source object, which is usually deleted
       on transfer, or lost in some manner, or simply makes no sense at all to be
       transferred

    3. the component was never designed to be transferred at all

TransferComponents gave no shits about any of this and just blindly transferred
all components, if they were actually capable of it or not.

I only noticed this because it was causing chairs to break as they would not register signals
and verbs correctly for rotation after being picked up and then placed down, and a player
reported that issue via ahelp.

Luckily we caught it before the rot got anywhere, only chairs and the shuttle subystem
tend to use this proc (Shuttle uses it on turfs), can you imagine if everything was using
this LMAO

Which is good because it's more dangerous than a loaded gun

I have added a can_transfer var, that is true when a component is valid to
actually transfer, which means the dev has actually thought about what happens when
you take the parent object away and swap it for another and all the crazy that is entailed
by this

I have done my best to audit what components are actually
transferable, but things are basically a hot mess (Thanks @Cyberboss )

The following components required edits:
Forensics:
did not register/deregister the clean_act signal properly, did not checkblood on new parent

Rotation:
did not use RegisterWithParent or UnregisterFromParent, turned out
to not be transferable anyway due to having callbacks that can be
passed in to the parent with unknown sources that we can't feasibly
reuse (i.e if you're transferred from a chair to a bed, your old rotation
call backs are no longer valid). Turns out the use case it was for (just chairs)
didn't need it anyway, so I just made it non valid for transfer.

Wet Floor:
Honestly this one is just a hot mess, it should be a subtype of the slippery
component with the extra wet turf handling.

As it is it basically manages a slippery component on top of it's own extra
functionality, so that's a major code smell.

I added registration/unregistration of the signals, and made it's pretransfer
remove the slippery component and the posttransfer add it back (via update_flags)

Components that seem transferable without issues
mirage_border
orbiter
decal
spill
storage (I hope to earth)
2019-03-06 19:56:49 +01:00
yogstation13-bot
7837558e9c [MIRROR] Corrects CQC help instructions (#4651)
* Corrects CQC help instructions (#42980)
2019-03-03 04:01:48 -06:00
nichlas0010
687d661a9a Merge pull request #4633 from yogstation13/upstream-merge-42889
[MIRROR] Adds snailpeople as a rare genetic meltdown effect
2019-03-02 15:39:36 +00:00
yogstation13-bot
3567bb5898 [MIRROR] Fixes spawner menu runtime (#4644)
* Merge pull request #42959 from SouDescolado/Runtimes-fix

Fixes spawner menu runtime

* Fixes spawner menu runtime
2019-03-02 09:48:47 -05:00
nichlas0010
0114ae9e2c Update dna.dm 2019-03-01 22:28:39 +01:00
Time-Green
c0e0ef18e4 Adds snailpeople as a rare genetic meltdown effect (#42889)
Meant to be part of #42864 , but got a little big so I'll add it to wichever gets merged last.
[Snailcrawl demonstration](https://youtu.be/IL7WFpfRo4c)

PROS

- Gets snailcrawl, wich makes them greatly faster and gives them a lube trail

- Their blood is spacelube

- They get a cool armored nodrop snail shell

- They don't slip

CONS

- Very slow

- Punch is pathetic

- Tttaaalllkkk llliiikkkeee ttthhhiiisss

- Extremely vulnerable to salt

- Can't wear glasses

Adds gastrolisis, wich is pretty much [this](https://www.youtube.com/watch?v=lFbPi8o0OEU) spongebob episode where they slowly turn into snails

You can also get gastrolisis by random_reagent_id, so maintpills and botany

🆑
add: Adds snailpeople as a rare genetics accident.
sprite: Snailshell sprites by nickvr628
/🆑
Snailshell sprites by @nickvr628

Why: It's a silly gimmicky race and it's a rare occurence. Also extremely highly requested for some reason
2019-03-01 21:39:31 +01:00
yogstation13-bot
9ebfacdb9b [MIRROR] Changes the pAI 'Loudness Booster' to allow instrument selection. (#4632)
* Changes the PAI loudnessBooster to a piano_synth, allows choosing of instrument. (#42910)

* Changes the pAI 'Loudness Booster' to allow instrument selection.
2019-03-01 15:02:15 -05:00
yogstation13-bot
a5aa292361 [MIRROR] New trait: Unstable (#4623)
* New trait: Unstable

* New trait: Unstable (#42904)

* nice.

*  They exist to cease.

*  "They've got eyes inside my head!"

* frick

* unstable insanity

* Just try taking this bull by the horns. (eyeballs)

* It's a thankless job, and you'll probably die in an explosion. But the pay is pretty good.

* "The best denials are simply that: a beginning and end unchanged, a dream with no memory."

* fixes the dme

* Update negative.dm
2019-02-28 19:17:04 -05:00
yogstation13-bot
b5a54efa4b [MIRROR] Logging tweaks and fixes (#4594)
* Logging tweaks and fixes (#42817)

* Add a virus log, plus a log for facehuggers

Logs each infect event and contains detailed descriptions of the virus

I also added a log message for printing virus culture bottles including
who printed them

Finally i tacked on a change to adding a game log entry for facehuggers
because why not

* Further logging fixes and updates

Medbots now combat log

combat log no longer tries to run keyname on an object because that
doesn't make much sense

* Dead say no longer logs twice

* tabs to spaces

* Logging tweaks and fixes

* this is why tg shouldnt change spaces 4no raisin
2019-02-26 21:03:53 -05:00
yogstation13-bot
5ac1fe8d15 [MIRROR] Fixes jaunting mobs squeeking things. (#4590)
* Fixes jaunting mobs squeeking things.

* Merge pull request #42898 from ShizCalev/jaunt-squeek-fix

Fixes jaunting mobs squeeking things.
2019-02-26 21:01:36 -05:00
yogstation13-bot
8bd3094503 [MIRROR] Adds more genetic meltdown effects (#4592)
* Adds more genetic meltdown effects
2019-02-26 17:16:53 -06:00
yogstation13-bot
484b933123 [MIRROR] Hypnosis code improvements (#4591)
Hypnosis code improvements involving how it does the regex
2019-02-26 16:47:56 -06:00
yogstation13-bot
fe516a16c5 [MIRROR] Ends the Great Clown Shoes Debate of 2019 (#4571)
* Merge pull request #42791 from Mickyan/honkmeariver

Ends the Great Clown Shoes Debate of 2019

* Ends the Great Clown Shoes Debate of 2019
2019-02-25 18:26:17 -05:00
yogstation13-bot
507e4ae8f1 [MIRROR] Fixes crawling sounds from being played from buckled mobs (#4569)
* fix footstep sounds from being played while buckled (#42788)

Fixes the crawling sound from being played from moving buckled/mounted mobs.
## Why It's Good For The Game

Apparently I didn't catch the crawling sounds being played from buckled mobs that are moving. Examples include the Janitor on their pimpin' ride or some assistant piggy-backing off of a cyborg.

* Fixes crawling sounds from being played from buckled mobs
2019-02-25 18:24:41 -05:00
yogstation13-bot
a1b030b795 [MIRROR] Fixes some minor speech replacement stuff (#4568)
Fixed merge conflict
2019-02-25 17:13:58 -06:00
yogstation13-bot
d96ad5ba64 [MIRROR] Fix some variables with 'list' in the wrong place (#4553)
* Fix some variables with 'list' in the wrong place

* Merge pull request #42869 from AutomaticFrenzy/patch/list-order

Fix some variables with 'list' in the wrong place
2019-02-24 13:29:47 -05:00
yogstation13-bot
0fa6f0f46f [MIRROR] Fixes junkie quirk (#4523)
* Fixes junkie quirk

* Fix junkie quirk (#42844)

Junkies will now spawn with their pills correctly filled with their appropriate
drug.
2019-02-21 13:21:24 -05:00
yogstation13-bot
51612196d3 Fixes missing mutation arguments (#4506) 2019-02-21 13:17:59 -05:00
yogstation13-bot
1bd9a6689b Assimilation 2.0: Not quite a big enough PR to be worthy of the 2.0 title but almost (#42607) (#4472)
* one

* ???

* big

* sprites

* it is done

* oofs

* no more bad jokes

* location -> reception

* i forgot a feature lmao

* yo lemme nerf this op power

* adjust removal and makes panic less insane

* hey i forgot another feature

* one mind removals

* *laser eyes meme*

* Disables multiple one minds for real this time
2019-02-21 12:45:16 -05:00
yogstation13-bot
5dcc41d618 [Ready] [Could Use Sprites] add Antenna and Mind Reader powers, paranoia disability to genetics (#42443) (#4469)
* adds the antenna power to genetics
it gives you an innate radio

* adds paranoia and mind reader

* foil hat interaction, sprites, tweaks

* upstream change
never webedit, kids

* fixes conflict-fixing error
2019-02-21 12:21:12 -05:00
yogstation13-bot
29a550f5cc [MIRROR] [READY]New Side Antagonist: Space Dragon (#4452)
* [READY]New Side Antagonist: Space Dragon (#42551)

* Add files via upload

* Rename space_dragon.dm to code/modules/events/space_dragon.dm

* Adds Space Dragon

* Adds Space Dragon Event

* Remove Copied File

* Put antagonist definition in proper location for space dragon

* Update space_dragon.dm

* Removed passive health regen from space dragon

* Updated Weight and Earliness for Space Dragon

* Added Objective to Space Dragon, Updated Starting Blurb

* Cleaned Up the Objective Determiner

* Actually fix the space dragon objectives

* Fix the objective display for the space dragon's target

* Updated Space Dragon Intro Blurb

* Updated Centcom Message When Space Dragon Spawns

* Updated Space Dragon's description with new lore

* Clean Up Space Dragon's OnFire()

* Add Space Dragon Sprites

* Sprite in wrong location

* Properly adds Space Dragon Sprites

* Adds Space Dragon Tiny Sprite to be Carp

* Space Dragon Uses New Sprites, Tiny Form Updated

* Increased Time Til' Dragon Spawn

* Drake's Tail Sweep Now Uses Prebuilt Spell

Thanks to Cobblestone for the head's up on this.

* [READY]New Side Antagonist: Space Dragon

* why the fuck doesnt the mirror bot do this automatically
2019-02-21 12:14:18 -05:00
ShizCalev
4adbf90a8c Fix neet quirk runtime (#42825) 2019-02-19 04:55:36 +01:00
monster860
50d9a09492 mirror (#4510)
Removes science completely from the map
2019-02-18 12:09:48 -05:00
yogstation13-bot
05e86b90c3 [MIRROR] [GOONETICS] Chromosomes (#4453)
* [GOONETICS] Chromosomes (#42151)

* adds chromosomes

* Makes the framework nice and functional

* Adds chromosome interaction

* Makes chromosomes work

* removes the double instability update

* Apply suggestions from code review

Co-Authored-By: Time-Green <timkoster1@hotmail.com>

* more review stuff

also fixed some inconsistencies in chromosomes

* unfucks defines

* Fixes saved mutations runtiming with empty pods

* Adds stability to the dna console and advanced health scanner

* removes a random bug i stumbled upon

* Update code/game/machinery/computer/dna_console.dm

Co-Authored-By: Time-Green <timkoster1@hotmail.com>

* makes chromosomes harder to get

fixes double mutations, adds reinforcer and nerfs stabilizer

* fixes edge case where fireballs would be harmless

* cleans up find/replace all mess and 1 in 10 trillion chance of fireball breaking

* [GOONETICS] Chromosomes

* fuck you mirror bot
2019-02-18 12:01:23 -05:00
nichlas0010
6487e98c28 Merge pull request #4503 from yogstation13/upstream-merge-42785
[MIRROR] Deaf disease fix
2019-02-18 16:15:41 +00:00
Jordie
e746916078 Merge pull request #42795 from 4dplanner/crusher
Blood drunk eye fix
2019-02-18 15:42:00 +01:00
Jordie
c3047c00b5 Merge pull request #42785 from ShizCalev/deaf-disease-fix
Deaf disease fix
2019-02-18 15:41:31 +01:00
nichlas0010
44eb424681 Merge pull request #4471 from yogstation13/upstream-merge-42730
[MIRROR] Makes the Meteor Shuttle way more expensive
2019-02-13 15:05:24 +00:00
nichlas0010
f7b1841bb6 Update negative.dm 2019-02-13 15:03:25 +00:00
granpawalton
2b60a1ce79 tweaks tissue hydration to meet description and holy water added to desc (#42745) 2019-02-13 07:42:03 +01:00
Shadowflame909
b5b0bea791 Makes the Meteor Shuttle way more expensive (#42730)
* Update shuttles.dm

* Update shuttles.dm
2019-02-13 07:40:36 +01:00
nichlas0010
714268e06e Merge pull request #4451 from yogstation13/upstream-merge-42659
[MIRROR] Properly adds a Janitor ERT
2019-02-12 11:13:36 +00:00
nero1024
0b7b234955 Fixes footstep sounds for downed/lying mobs (#42704)
Nobody made a report but I noticed this issue: Downed players being dragged are playing footstep sounds, specifically the bare footstep sounds via their hands from what I noticed.

Fixes (hopefully) footstep sounds from being played from incapacitated mobs that are being moved (via dragging for example). Instead, lying mobs will play a crawling sound when moving.
## Why It's Good For The Game

Footstep sounds shouldn't be played when mobs are being dragged.
2019-02-11 10:27:41 +01:00
Vile Beggar
bbbbb7bac9 Properly adds a Janitor ERT (#42659)
* does the thing

* adds the regen thing to the sprayer

* adds a quite important addition to a comment

* capitalizes janitorial response

Co-Authored-By: VileBeggar <edmir995@gmail.com>

* adds cobby's process suggestion
2019-02-06 21:54:56 +01:00
nichlas0010
1d6a19a208 Merge pull request #4394 from yogstation13/upstream-merge-41535
[MIRROR] [Ready] Outputs datum
2019-02-05 20:07:08 +01:00
Militaires
b55756c5a4 [Ready] Outputs datum (#41535)
Idea and instructions by @Razharas, many thanks.

This PR only implements the framework required to catalog as well as play the sounds. Their to_chat text, and icons (if any) are not included, are to be pushed in a separate PR.

This PR does not remove the old playsound_local system, it is kept for the sake of not necessitating a direct changeover of every single playsound in the code, which will surely cause a lot of merge conflicts. It does however, replace bike horns' and toy nukes' means of playback to this datum, purely as proof of concept.

Playsound_local may remain in the code to support playback of admin-uploaded sounds that do not have an inherent datum. Playsound will likely be renamed to something else in the next PR to reflect its new, more universal function. We will see.

New process for adding sounds:

    Create a new datum/outputs subtype.
    If you wish, write down some supporting text; this gives further meaning to the sound.
    Add multiple sounds to the sounds list, and weight them as you wish. (New)
    Add a sound icon if you wish, it defaults to a generic sound circle anyways though.
    playsound(/datum/outputs/new_subtype, receiver), and it will deliver, icon, sound, and text to the receiver.

Maintaining implication is that from now on playsound should only be processing datum/outputs

This pr intends to gut to_chats that are added alongside playsounds in the code.
This pr eliminates the need to initialize sounds in a list so that you can weight them or have the game play them randomly from the list.

Sound Rings
Currently, only mobs with the audiolocation var may view them. Sound icons have an alpha that depends on the volume of the sound, louder sounds create a more opaque image

Sound rings are completely modular and may be changed to any image.

In addition to renaming playsound to reflect its new function. I intend to give blind people sound icons at the cost of their small view, but that is for another PR.

cl Basilman
refactor: refactored how sounds are stored and played
add: Added sound rings and supporting text
/cl
2019-02-03 22:24:15 +01:00
Tad Hardesty
7cea2a2942 [s] Fixes petting mood stacking (#42650)
* Fixes petting mood stacking

* fixed pronouns
2019-02-03 21:31:05 +01:00
Nirnael
7a25f213c4 Fix tourettes function overload (#42592) 2019-02-01 21:09:14 +01:00
nichlas0010
f85bf9d9d7 Merge pull request #4359 from fluffe9911/roxie
Ports Roxie from Old Old Yogs!
2019-02-01 20:25:05 +01:00
nichlas0010
361a135445 Merge pull request #4360 from yogstation13/IRoveRefridgerators
I love refridgerators
2019-02-01 17:53:35 +01:00
nichlas0010
cc7860a5ce Merge pull request #4309 from fluffe9911/morelavalandruins
Readding Old Lavaland Ruins Part 3 The Other Ones
2019-02-01 12:14:25 +01:00
coiax
6f836a9e2b Traumas are copied when a person is cloned (#41852)
* Traumas are copied when a person is cloned

🆑 coiax
add: When a person is cloned, any mental traumas are cloned as well.
/🆑

If the cloner is going to recreate your delicate personality, it's going
to have to recreate anything wrong with your brain as well. After all,
where does one greytider's legitimate fear of security end, and another
one's irrational fear begin?

Essentially, traumas could be easily gotten rid of by cloning, or death
would rob a person of a rare positive trauma. Now you're stuck with them
until you get rid of them.

* Suggested changes
2019-02-01 12:00:17 +01:00
fluffe9911
bdc65dcb49 Ports Roxie from Old Old Yogs! 2019-01-31 16:56:06 -05:00
fluffe9911
214ac70e48 is this modularized? 2019-01-31 16:16:12 -05:00
nichlas0010
f8af55e96d Merge pull request #4345 from yogstation13/upstream-merge-42586
[MIRROR] Antimagic works again
2019-01-31 12:22:21 +01:00
nichlas0010
0cce09974c Merge pull request #4347 from yogstation13/upstream-merge-42503
[MIRROR] Adds Paraplegic quirk (FREE ROUNDSTART WHEELCHAIR*)
2019-01-31 12:21:07 +01:00
Firewolf34
4554688e86 Bedsheet Bliss (#4338)
* Added the Virology Blanket (new bedsheet option)

* Provides a defib to Syndie Lavaland Base Medical, and adds a piece of syndi-cake trash to it's maint

* Adds virology bedsheets to Virology, adds Orange Bedsheets to Brig, and also fixes #4332

* Adds the include for the new Yogs bedsheet_bin.dm file.

* Removes the weird bedsheet clipped into Courtroom wall

* Added the new Prisoner's Blanket! Now there is an official bedsheet for NT Brig Cells.

* Rolls out Prisoner's Blankets to Brigs in all four Yogs maps!

* Modularized the lavaland_surface_syndicate_base1.dmm for Yogs

* Somehow Dream Maker deleted a red corner from YogsDelta. Fixed.
2019-01-30 18:38:14 -05:00
coiax
edc595cc4b Adds Paraplegic quirk (#42503)
🆑
add: Adds the Paraplegic quirk for -3 points. You start with unhealable leg paralysis
(persists through cloning), and have a wheelchair to move around the station.
/🆑

This is really popular for some reason.

This required a surprising amount of small code tweaks for it to "feel"
right in edge cases like being a job that had items in their hands or
joining on the arrivals shuttle.

Justification for -3 points: You move REALLY slowly, in a game that's
about generally running from security/the guy with the esword. And if
you die and get cloned and don't have your chair, you move even slower.
2019-01-30 18:27:08 +01:00
Jordan Brown
abda52c97b Merge pull request #42586 from 4dplanner/antimagic
Antimagic works again
2019-01-30 17:31:54 +01:00
nichlas0010
059bc8313c Merge pull request #4341 from yogstation13/upstream-merge-42464
[MIRROR] Adds welding hardhats
2019-01-30 16:42:47 +01:00