Commit Graph

1229 Commits

Author SHA1 Message Date
Paxilmaniac
d4fa2905ff Deployable Component (Big Dakka Included) (#60554) 2021-08-04 01:18:09 -07:00
interestingusernam3
0d0c2aebb5 Gutlunch udders no longer double as mouths (#60665)
Co-authored-by: Your mother <mothmilk666666666666@tfwno.gf>
2021-08-03 23:57:48 -07:00
LemonInTheDark
64afba725d Renames RemoveComponent, fixes a dumb runtime in Destroy (#60653)
* Renames RemoveComponent, as its purpose was unclear. Fixes up some dumb uses, and properly docs its status as a helper proc for transfering components
2021-08-02 22:23:00 -07:00
tralezab
40003fe2ad componentized spirit item possession (#60614)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-08-02 22:21:23 -07:00
MrMelbert
09758ba01e renames damge -> damage (#60647) 2021-08-02 18:14:14 -07:00
Ghom
e13af3ab93 surgery_initiator component to element. (#60634) 2021-08-02 18:12:18 -07:00
Watermelon914
e887c09a3c Fixed phantom slipping caused by mk-clown shoes bananas (#60626)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2021-08-02 14:06:03 -07:00
Watermelon914
96f1c2abae Adds the bare minimum admin components and allows admins to define list literals. (#60240)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
Co-authored-by: carshalash <carshalash@gmail.com>
Co-authored-by: tgstation-server <tgstation-server@tgstation13.org>
2021-08-02 01:50:06 -07:00
Ryll Ryll
ba59702cee Adds a preference to make flashes darken your screen (#60434) 2021-08-01 14:18:36 -07:00
TiviPlus
e28a0f3f87 Fix riding offsets not actually doing anything (#60572) 2021-08-01 16:39:08 +02:00
ChungusGamer666
a02e928e2e Turns rust component into bespoke element (#60496) 2021-07-31 14:58:55 -07:00
SmArtKar
f43932a2bb Fixes unremovable components counting towards overall capacity (#60528)
BCIs are no longer 6 slot instead of 10
2021-07-30 11:54:55 -03:00
Fikou
499025c8cb ski shoes arent as limiting anymore (#60437) 2021-07-29 12:15:48 -07:00
JustANormalHooman
f141740246 [Fix] Biobags are now capable of feeding reproductive extracts (#60345)
* Makes Xenobiology biobags able to feed Reproductive extracts again

Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>
2021-07-29 16:26:42 +02:00
Ghom
25a1804e70 Converts the footstep component into an element. (#60479) 2021-07-29 03:35:51 -07:00
tralezab
14045259fa Trash Cannons (#60476) 2021-07-29 02:17:03 -07:00
Mothblocks
bd6873fd4d Remove nanites (#60473)
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2021-07-28 16:00:56 -07:00
Watermelon914
548f924c21 Adds the ability to save/load circuits for admins. Adds the ability to duplicate modules in a round. (#60222)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2021-07-28 14:26:50 -07:00
Ghom
484aaedeaf The spooky component is now a spooky element. (#60465) 2021-07-28 01:45:01 -07:00
Ghom
781998836c Moves the kneecapping element to the elements folder. (#60466) 2021-07-28 01:40:50 -07:00
Matthew J
b19e1785dc [FUCK][NO CI] Rust Component Fixes (#60252)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2021-07-27 01:43:17 -07:00
Wallemations
7f1640b651 Makes only mapload foods require players to pick them up to decompose (#60392)
Co-authored-by: Changelogs <action@github.com>
2021-07-25 17:39:24 -07:00
Thunder12345
39da0b0407 Capture The Flag: Class Warfare (#59629)
Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>
2021-07-23 15:49:22 -07:00
Rohesie
e38cb8a424 Fixes an underlay movable lighting runtime (#60336) 2021-07-22 15:50:42 -07:00
tralezab
6647f0d6aa Dissecting Biddle Traitors: Toned down traitor flavor + antag info tgui (#60311) 2021-07-22 15:39:26 -07:00
BurgerLUA
a416aaf3b1 Adds closets to ant decomposition blacklist, converts ant locate() spam into typecache (#60296)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2021-07-20 02:01:31 -07:00
LemonInTheDark
96cc4a7260 EVEN MORE HARDDEL FIXES (#60228)
Fixes a ton of harddels, sourced from #59996 
I think this brings us down to like, ~100 per round from ~200, with only like 20 of those being proper hell failures. I've seen harddel profiles below 1 second of total cost. Feeling good.

See you on the other side

Makes the cryopod control computer into a weakref, never trust bee code 
Converts brig door timer internal lists to weakrefs
Fixes a harddel caused by qdeling a motion sensitive camera after it had left its source area, jesus christ why didn't we do this already holy shit
Converts the radio implant ref held by the antenna mutation to weakrefs because it isn't reliably cleaned up, makes the radio implant actually qdel its fucking radio
Removes the target var from the throwing datum, it does literally nothing and just exists to cause harddels, mostly for the singularity
 Fixes a cable harddel sourced from things that try to enter blueprints after smoothing, but before roundstart. IE, shuttles. Removes shuttles from the blueprints
Fixes emmisive blockers being added post qdel
Removes some manual ghosting from cryopods, I initially did this for harddel reasons, but I figured out a better fix for that. I'm now doing it because it's got this really strange logic for like "re-entering the game" that doesn't actually link to what the ghostize proc does. We should remove this at some point
Fixes robot hud objects harddeling due to hanging refs
Fixes buildmode related hanging refs, I'm coming for you admin team
Fixes a few instances of trying to add the forensics component post qdel, hhhhhhhhhhh
Fixes some split personality harddels/weirdness
Replaces a use of disconnect_duct with an init qdel hint, I suspect there's more issues with duct harddels, I've seen some odd logs about ahhh the area_contents list, but we can worry about that later
Makes teleporter targets into weakrefs, properly types them as /atom
Makes frequency devices into weakrefs
Makes cameras remove themselves from camera nets on Destroy
Makes tgui ui datums implement destroy, this means if I ever see one hang a ref to user or whatever, I know there's an error with calling close() properly. I've seen this harddel once, but not after this change so I assume there was some error with close(). IDK maybe this is a papering over? Would have to ask @stylemistake 
I've seen logs of beartraps being in world post del, putting a return there just in case. The same is true of nerf darts, but I haven't really looked into that yet
Makes a shoe's ref to untying alerts a weakref, yes this is needed.
Moves clearing client_in_contents to the Login of the new mob. This prevents doing things like ghosting someone before a mob qdel causing harddels
Fixes a harddel set sourced from adding a status effect to a qdeleted thing. Is this an error? I'm honestly not sure.
Converts bsa code to weakrefs
Converts the partner var of heat exchangers to weakrefs
Converts camera assemblies to weakrefs
Fixes some dumb behavior with ammo casings and assuming you'll be on a turf post Destroy parent call
Fixes? merger related harddels, you were never cleared from your own members list, so origin objects would end up making a new list, creating harddels. Potential input from @ninjanomnom about the logic
Chasms store a static list of "falling atoms", which only exists for chasms that go somewhere else. This list wasn't being cleared of qdeleted objects, which is what happens when you fall in most chasms. Fixes this, and converts the list to weakrefs.
Fixes some runtimes in both sheet code, and the weather listener element. This is here because runtime spam made testing more of a pain, didn't think it needed its own pr
Fixes colorful reagent harddels sourced from reagents that were qdel'd before roundstart. I'm only like 50% sure this actually got it, but the issue may have been solved by #60174, so eh
Turns the nuke op antag datum's ref to the war button into a weakref
Fixes some holopad code that was not nulling refs all the time
Converts camera bugs to weakrefs, this was the result of the bug being "reworked" like 6 years back without taking the existing ref clearing into account. Whole item needs a redo, but this'll do for now.
Ensures that the both pulling and pullee refs are cleared on Destroy
The crew monitor held all users in a non clearing list, makes that list a weakref because I hate everything

Oh and I removed all sources of gas_mixture qdeletion, I'm kinda unsure on this since it's not technically supported, but any harddels from it might? indicate something going wrong with like, gas passing logic. I'd like @MrStonedOne's thoughts, since I trust him to call me an idiot if I'm wrong.

<!-- Please add a short description of why you think these changes would benefit the game. If you can't justify it in words, it might not be worth adding. -->

## Why it's not good for the game

I crashed sybil like 10 times to get this data, I'm gonna put it to good use. Don't think you're safe sybilites, I'm coming for you.
2021-07-19 12:41:21 -04:00
Watermelon914
bad807638c Fixes duffelbag curse and curse of hunger code in general (#60290)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2021-07-18 17:37:46 -07:00
Rohesie
4c21166e4f Job refactor: strings to references and typepaths (#59841)
* Job refactor: strings to references and typepaths
2021-07-18 20:48:47 +02:00
TiviPlus
dea4c5b9e0 Changes overlay lighting vis contents objs -> underlays (#60239)
Previously what it would do is create up to three objects; a cone, a lighting image and a holder
Then whenever the lighting image was placed into the holders vis contents and the holder would be teleported several times when the parent would to turn or move, and the cone would be spun when the parent spun

Instead of doing that it now just translates a single overlay every time that something is updated
2021-07-17 11:14:49 -03:00
Watermelon914
4a30ee038c Allows charging batteries of integrated circuits with inducers and allows scanning ids on unregistered circuits through shells. (#60227)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2021-07-17 04:00:17 -07:00
Watermelon914
5a21e2e64c Circuit submodules (#60109)
Adds the module component that is basically a subroutine. Allows you to compact your logic into a bunch of functions.
2021-07-17 01:05:57 -03:00
Rohesie
67734544d3 Fixes a roundstart uplink implanting runtime (#60242)
There's no guarantee there will be a user making the implanting, such as it's the case of roundstart equipping.
2021-07-16 17:43:37 +01:00
Kylerace
c60bceba41 fixes hyperspace connect_loc_behalf bug (#60231)
turns out my move_stacks var doesnt work asynchronously since this bug made things with connect_loc_behalf runtime on every movement unless you somehow moved it back to the transit turf and off without it doing the runtime special.

(The sleep and hell the whole bit of code in space/Entered was unneeded, since it just happens normally as a part of move. Life is pain) -Lemon

also does misc code improvements i found while investigating ANOTHER c_l_b bug with stacks i found while testing this one, which i did NOT manage to fix unfortunately
2021-07-15 19:54:20 -07:00
John Willard
a7790bc5ae Fixes density when fireman carrying (#59900) 2021-07-15 19:02:02 -07:00
Wallemations
a78799f8ae Adds Ants, Decomposition, and some extras. (#59634)
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-07-15 18:12:15 -07:00
Rohesie
2f8c4620a4 Fixes losing dynamic luminosity on ChangeTurf() (#60218) 2021-07-15 14:40:51 -07:00
Ghom
13dedbe143 Fixes lingering moodlet on ethereal stomach removal. (#60130) 2021-07-13 12:32:30 -07:00
Time-Green
6be8c68509 Fixes a plumbing harddel (#60067) 2021-07-08 18:54:55 -07:00
Wayland-Smithy
33781ac857 Fix Tram ghost magnet and other cases of observer forceMove (#60026) 2021-07-08 18:11:13 -07:00
Matthew J
5a5cf6933e Rust Component / Wirebrush Rust Remover (#59977)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-07-07 03:45:57 -07:00
Bobbahbrown
4fcf927bf4 fix buckling to a vehicle not setting your initial sprite position correctly (#59999) 2021-07-04 20:53:26 -07:00
Fikou
adb9b76e1c wisps no longer fall in chasms (#60004)
Co-authored-by: coiax <yellowbounder@gmail.com>
2021-07-04 20:52:28 -07:00
Bobbahbrown
972cd3de61 introduce advanced sucking functionality to custodians (+ bonus GAGging) (#59925)
* base sucking functionality

* functional upgrade and upgrade refactor

* minor tweak here

* finish overhaul of upgrades, add gags-ified upgrades

* add documentation (you love to see it)

* update sucking sound

* do some of the requested cleanup, fix key going into trash bag, add right click func
2021-07-04 00:29:46 +02:00
Watermelon914
ebac974568 Fixed being able to insert infinitely many components into a shell. Fixes being able to view the shell's circuit in a locked shell. (#59962) 2021-07-03 14:59:38 -03:00
Watermelon914
a57a04b320 Fixed carps being untameable and fixes tameable code not properly removing itself from something (#59955)
Fixes #59897
2021-07-03 14:44:09 -03:00
RandomGamer123
97e15965a1 Fix ion carbine parts kit's name and other similar grammar issues (#59947) 2021-07-02 21:01:14 -07:00
Rohesie
2c5a357035 Reverts Entered() passing dir instead of old loc (#59910) 2021-07-01 17:06:42 -07:00
RandomGamer123
38278f2e17 Change uplink implants to inherit the uplink flags of the uplink they were bought from (#59735)
Uplinks implants bought from uplinks inherit the uplink flags of the uplink they were bought from.

This fixes an undocumented bug where by purchasing an uplink implant, nuke ops would be able to get things they normally can't.

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
2021-07-01 19:58:33 +01:00
Timberpoes
90a611a344 Fix forensic component inheritance inserting null entries into lists and causing to_chat errors. (#59873)
Fixing the following runtime:

[17:13:04] Runtime in to_chat.dm,88: Empty or null string in to_chat proc call.
  proc name: to chat (/proc/to_chat)
  usr: Cowboy_penis_monster/(Zackary Mason)
  usr.loc: (Telecomms Control Room (105,89,2))
  src: null
  call stack:
  to chat(Zackary Mason (/mob/living/carbon/human), "", null, "", 0, 1, 1, 0)
  the forensic scanner (/obj/item/detective_scanner): add log("", 1)
  the forensic scanner (/obj/item/detective_scanner): scan(Control Room (/obj/machinery/door/airlock/command/glass), Zackary Mason (/mob/living/carbon/human))

Forensic scanner attempting to add "" to the logs, which eventually gets output to_chat.

Tracked error down to forensic component lazylists and the fun of trying to OR two lazylists together.
2021-06-30 23:41:04 -03:00