Commit Graph

768 Commits

Author SHA1 Message Date
MrMelbert
b3e8eebdc9 Kills /obj/item/melee/transforming, replaces it with a transforming weapon component (#60761)
This PR kills off the transforming subtype of /obj/item/melee and replaces it with a component to handle the transforming behavior, /datum/component/transforming.

The transforming component handles updating the variables of an item when it's transformed. Things like force, sharpness, whetstone force bonus, and attack verbs. Similar to the two-handed component, but instead of transforming into a two-hander it remains a one handed weapon.

The "nemesis" behavior (dealing addition damage to certain factions) of the transforming subtype was moved to the cleaving saw only, since it was the only transforming item that used it. In the future, this can be made into a bespoke element/component as well.

The following weapons and items have been updated to use this component:

    Energy Swords / Sabers / Bananium Energy Sword
    Energy Circular Saw
    Energy Dagger
    Energy Axe
    Toy Energy Sword
    Holographic Energy Sword
    Switchblade
    Advanced Medical Tools (Laser scalpel, Mechanical Pinches, Searing Tool)
    Advanced Engineering Tools (Hand Drill, Jaws of Life / Syndicate Jaws of Life)
    Combat Wrench
    Cleaving Saw
    Telescopic Batons / Contractor Batons
    Roasting Stick
    Telescopic Riot Shield
    Energy Shield / Bananium Energy Shield

This PR also touches up the code around the various above items.
2021-08-23 11:45:54 -07:00
manofpepsi
610b83831c [MDB IGNORE] beer and ale headsmash fix (#60748)
repaths the beer and ale to allow bottle headsmashing with them.
2021-08-22 17:17:37 -07:00
AnturK
d72eac0c3a Runtime fixes batch. (#60946)
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-21 12:50:03 -04:00
jughu
f80bf037b3 Updates security rifle crate names (#60878) 2021-08-18 20:49:04 -07:00
EOBGames
b08632353c [MDB IGNORE] Eliminates Toxins (#60619)
Repaths everything referring to "toxins" while actually meaning either the room in science or plasma gas. While this PR might be disrespectful to our forefathers, given this is (I believe) a holdover from as far back as the Exadv1 days, this has constantly irked me since I started working with the code. None of the player-facing stuff has referred to plasma as toxin since before 4407 hit, besides the Toxins Lab, and yet all of the type-paths are still pointing at toxins, making it a nightmare to search for in a map editor, and making the code needlessly easy to confuse with that of toxin damage. So this just fires it into the sun.

Anything relating to Toxins, the science subdepartment, now makes reference to Ordnance instead. This felt fitting enough given the focus of the subdepartment is around the creation of and testing of explosives.
Anything relating to plasma gas has, fittingly, been made to refer to plasma gas.

Edit: Ah yes, I feel I should probably apologise off the bat for the size of this PR- the code touched is mostly atmos machinery and simplemobs, a few sprites here and there, and of course the station maps + a few offstation maps.

Makes the code more legible and makes mapping less painful.

(The payment has been made)
2021-08-17 11:49:47 -07:00
Jordan Brown
995bd71344 Fix a bad to_chat call (#60893) 2021-08-17 10:26:16 -07:00
LemonInTheDark
cd576ab519 Del The World: Unit testing for hard deletes (#59612)
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
2021-08-15 21:09:26 -07:00
Krysonism
b8b347722d Drugs of the 26th century. Three new hella rad drugs, one less lame drug and more! (#60432)
* lead stuff

* kronkus + loot table

* one drug sprite

* kroncaine

* drug items

* addiction stuff

* makes this compile

* plane master controllers

* small adjustments

* bro its a comment CHILL OUT

* temp

* desc and sprite update

* temp

* hmm

* invisible1

* invisible2

* fixes

* It compiles

* misc drug fixes

* signal

* synthesis

* fix

* span macros

* kroncaine filter removal + no speedup on cuffs n narsie rune

* makes the ampoule visible.

* hud-b-gone

* revert

* reverts more

* sound enviroment

* on_transfer & animated fade

* adrenal crisis + unknown

* blastoff signal

* blastoff adjustments

* filters

* small fixes

* animation parallel

* Taste, sounds and feel

* span proc

* final touches

* review and integration fix

* less blood, more fun

* moth and blood fix

* KronKaine and bLaSToFF spelling fix

* Assorted bLaSToFF fixes and range change

* suggestions from head head head coder

Co-authored-by: floyd <Floydje123@Hotmail.com>
2021-08-09 12:03:36 -04:00
Fikou
270acce4f5 [Ready] Mining Loot Rework (#60516)
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-08-08 02:22:34 -07:00
Ghom
67a324f06d Fixes cargo manifest exports. (#60538) 2021-07-30 17:44:47 -03:00
vincentiusvin
f943974865 Adds the proper path to the boxes (#60346) 2021-07-23 13:58:27 -07:00
GoldenAlpharex
ced603614d That's it. *GAGS'ifies your berets* (#59536)
Converts berets to greyscale config
2021-07-23 21:37:23 +02:00
Rohesie
0ec599786a Adds a setter for density (#59529)
Adds set_density()
Fixes one instance of a duplicate density assignment on an object.
Comments two hacky usages of density which will have to forgo using the setter for now.

Lets us append code to the event of density changing.
Pretty sure this is leading up to some multitile object thing -Lemon
2021-06-16 15:06:10 -07:00
Watermelon914
375a20e49b Refactors most spans into span procs (#59645)
Converts most spans into span procs. Mostly used regex for this and sorted out any compile time errors afterwards so there could be some bugs.
Was initially going to do defines, but ninja said to make it into a proc, and if there's any overhead, they can easily be changed to defines.

Makes it easier to control the formatting and prevents typos when creating spans as it'll runtime if you misspell instead of silently failing.
Reduces the code you need to write when writing spans, as you don't need to close the span as that's automatically handled by the proc.

(Note from Lemon: This should be converted to defines once we update the minimum version to 514. Didn't do it now because byond pain and such)
2021-06-14 13:03:53 -07:00
TemporalOroboros
daec5002fc Adds Neon Carpet (#59140)
Adds a couple varieties of neon carpet.
Makes decals care about their plane in addition to their layer.
2021-06-13 15:40:53 -03:00
Kylerace
d3a1bea859 Turns lighting objects into a datum, makes all lighting be performed with an underlay. big maptick fix very good! (#58991)
credit to zewaka for the idea of using underlays

turns the lighting object movables that were unnecessary and increased maptick into a datum which then applies and removes an underlay in update(). also applies a lot of general lighting clean ups (mostly using as anything in loops and fixing single letter var names).

multiz is a little different by necessity, now only the bottom turf's lighting matters in the brightness of the top turf unlike master where the bottom turf's lighting object is hidden from the vis_contents of the top turf. there are still some kinks to iron out here though, since currently objects suspended in openspace (like tram platforms) look bad and glass floors look bad too

only thing i have left to do is make multiz work (well)

UPDATE: multiz now appears the same as far as i can tell, its possible there are other situations in which its different but datum mats work and it automatically updates if the turf below changes. now i just need to make the system less finnicky if at all possible (and possibly merge managed_turf_vis_content with managed_overlays maybe?)

new update: its basically equivalent to normal multiz as far as i can tell (visually at least, in the circumstances ive tested so far)

NEW NEW UPDATE: turfs no longer have the VIS_HIDE vis_flag and multiz works without stacking the lighting from the floor below! so this shouldnt have any overt drawbacks to master anymore

1 needless movable per tile is terrible for maptick. this is probably a larger improvement than my emissive blocker change in terms of maptick. im guessing we'd get around 0.6 average maptick per player after this where currently we get 0.85 or so

Edit: according to lemon, sybil reached 0.71 maptick per person when tm'd with this

if this is a big enough improvement i might finally be able to get rid of the Gone discord avatar
2021-06-12 21:37:29 -07:00
LemonInTheDark
f90e8cf7a3 Fixes a bunch of harddels that are sourced from player action (#59371)
Sourced from #59118 and a cursed project I'll pr later, This pr contains a lot of harddel fixes for stuff that pops up after a player interacts with something. I'm not gonna list them all here because there's something like 60 130, check the commit log if you're curious

Oh and I moved ref tracking screaming to a separate define, and made some optimizations to the thing in general. I think that's it, this pr is a bit of a frankenstine
2021-06-10 21:44:23 -03:00
interestingusernam3
997de9b59e Adds two clown-spection scanners that print clowncrypted reports (#59306)
Alright, update the changelog and body of the PR, and comment here when that's done.
This should be ready for merge then.
2021-06-07 16:35:25 -03:00
Cimika/Lessie/KathyRyals
61654778fe Ported hair gradients from TGMC. (#59435)
* Ported hair gradients from TGMC.

* Removed preferences. Added hair spray. Added the colorist quirk.

* Adds 2 new longer fade variants

* Added to vendor. Added to goodies.

* Added the sprite for the spray.

* Grammar!

* Update code/modules/mob/living/carbon/human/species.dm

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>

* Doccing and newline.

* Reviewies concerns adressed.

* Update code/modules/mob/living/carbon/human/human_defines.dm

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
2021-06-05 20:12:28 -04:00
coiax
8f8899ca49 Standardize beach ball descriptions and branding (#59499)
- All beach balls are now Nanotrasen-brand beach balls, including the
  ones that are ordered from Cargo.

- `wilson`, a beach ball in a cave, now has a proper name, despite their
  lack of capitalisation.
2021-06-05 13:07:32 -03:00
carshalash
15f94abb9c Halves price of aquariums via cargo (#59420) 2021-06-02 09:56:32 +01:00
Emmett Gaines
7de70dc236 Cargo canister purchases fixed again (#59274)
There were some remaining bugs with purchasing gas canisters brought to my attention.
2021-05-24 12:28:20 -04:00
Celotajs
190d0a0384 Replace alert usage with tgui_alert (#58419)
Pretty much every alert() call is replaced with tgui_alert, except one I replaced with tgalert as a fallback. If tgui_alert exists, why not use it?
2021-05-20 22:43:27 +12:00
Kokonut
014c44ef62 Adds new sprites for assembly part vendors and custom vendors (#59051) 2021-05-15 02:06:33 -07:00
RandomGamer123
46cfe62d70 Cargo console mail clarifications (#58822) 2021-05-12 12:50:40 -07:00
tralezab
ea57e3f960 Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#58882) 2021-05-09 16:49:59 -07:00
LemonInTheDark
c906c44393 Fixes a fuck ton more harddels (#58779)
Redoes how geese handle eating shit, it was fucking stupid and caused harddels, and while this method is technically slower in the best case, it's a fucking goose
Fixes action related harddels, I hate how they work but at least this way they won't hold refs.
Fixes the hierophont causing its beacon to harddel
Removes the M variable from megafauna actions, it was used like a typed owner and caused harddels, so I burned it
Fixes target and targets_from harddels, replaces all setters of target with LoseTarget and GiveTarget, which should help maintain behavior. I'm not sure if this breaks anything, but if it does we should fix the assumptions that code makes instead of reverting this change
Fixes more area_senstive_contents related harddels, we need to allow the mob to move before clearing out its list.
Fixes marked object harddels (I'm coming for you admin team)
Fixes a language based human harddel
Fixes managed overlay related harddels (This was just emissive blockers, but I think this is a good safety net to have. If we clear the overlay list we should clear this one as well)
Fixes bot core harddels, I hate the fact that this exists but it has no reason to know who its owner is
Adds a walk(src, 0) to simple_animal destroy, it's the best bang for the buck in terms of stopping spurious harddels. Walk related harddels aren't that expensive in the first place, since byond does the same thing I'm doing here, but this makes finding mob harddels easier, so let's go with it
I fixed another source of part harddels, I hate fullupgrade so much
Fixes all the sound loop harddels
2021-05-05 10:57:27 -04:00
Celotajs
574c81a143 Resolve chameleon GAGS item issues (#58808)
This PR fixes issues with the chameleon jumpsuit and sneakers. In addition to that, it properly defines setting for GAGS worn and inhand icons instead of having them be in Initialize() for specific item types. Names for the prisoner jumpsuits and wheelys have also been reverted to how they were before the GAGS PR.
2021-04-30 22:16:18 -07:00
BluBerry016
a4149d398b Turns constants into variables in the Cargo Console. (#58765) 2021-04-30 03:46:00 -07:00
LemonInTheDark
a924226b50 React optimization + event based processing for tanks, canisters and pipelines (#58418)
* Makes tanks only process when needed, rather then doing it constantly

* Makes portable atmos machines only process when needed, makes adding and removing atmos machinery cheaper, makes the tank processing logic actually work properly

* Makes pipelines only react() when their mix changes, fixes a ton of misuses of update_parents that were causing about 10ms of load for atmos just from reconcile_air()

* Adds in a new reaction framework alongside the old one for profiling related reasons

* whoops

* Cleanup, removes the react profiling code, I've chosen a direction to go here

* Cleans up some code, adds comments describing how to interact with portable atmos machines/tanks and their
mixes, adds a blurb to Atmospherics.md about the topic as a whole, leaves a line of bread for someone to follow
if I get hit by a bus in 2 days (Knock on wood)

* Removes priority from reactions, moves priority groups to the defines file

* whoops

* Converts air_contents to _air_contents, replaces all the out of file things that used it with return_air()

* Replaces the canister air contents uses, converts it back to air_contents, I decided I didn't like the _

* Fixes
2021-04-30 12:29:29 +02:00
Urumasi
955075138a Fix gas canister value (#58736)
PR #57844 (d71ce02c98) accidentally omitted a pair of parenthesis in gas value calculations, making gas canisters with 0.1 moles of gas cost the same as canisters with 1000 moles
2021-04-27 16:18:17 -07:00
tralezab
caacc604fd you can no longer skittish dive into supplypods (#58692) 2021-04-26 01:11:38 -07:00
Celotajs
fb2d71495b Convert jumpsuits, jumpskirts and sneakers to GAGS (#58514) 2021-04-25 17:01:36 -04:00
Mothblocks
7e4de07506 Remove all gamemodes except Dynamic (#58470)
Removes all /datum/game_mode except dynamic. Eventually, all of mode and game_mode will be removed, and Dynamic will become an ingrained system. Every single other gamemode was unmaintained at best and poisoned other code at worst. Currently all tg servers run 24/7 Dynamic, so the time to act is now.

* Remove gamemode references from age checks

* Monkey

* Remove heretics

* Remove BBs

* Refactor uplinks and remove clown ops

* Remove nuke ops

* Removes and refactors cult

* Remove extended

* Remove and move out meteors

* Removes wizard

* Remove sandbox

* Remove changelings

* Remove traitors

* Remove revs

* Remove gangs

* Remove changing mode and voting for new gamemodes

* get_candidates signature fix

* Summon ERT and NERD in their own panel

* Remove some old unneeded age_check stuff

* Fix old signatures of get_uplink_items

* Use Extended like config for dynamic.json

* Fix discounted gear
2021-04-25 01:55:10 -07:00
ArcaneMusic
3475446f74 Ports Mail From Kiwi Take 2: Arconomy Class Mail (#58146)
Co-authored-by: tralezab <spamqetuo2@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-04-24 22:49:27 -07:00
JosephJomama
76bb4aa63e Fixes bounty cubes paying out extremely low speedy delivery bonuses (#58434)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-04-16 17:45:51 -07:00
tralezab
d0eb1ce36c refactors pods, new helper for spawning items from pods through code (#58222) 2021-04-13 00:37:48 -07:00
Ghilker
b09fe5d6aa Better HFR building (#57901)
The PR adds a quick and easy way to build the HFR
there will be boxes that when properly positioned and hit the center with a multitool you'd create the HFR, rotate the side parts to finish the build and hit with a multitool the interface like normally. (can't do much about it because pipe code is hell)
There will also be a buyable crate from cargo with CE secured lock
The normal way to build it is still available.
2021-04-09 00:12:48 -07:00
tralezab
488a0c054a After revolutionaries win, one living headrev (if any are able to) will be allowed to rename the station with a revolutionary banner (#58165)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-04-06 18:19:07 -07:00
Thalpy
b174623c2b Fixes a minor oversight with eigenstasium (#58069) 2021-04-01 17:09:31 -07:00
Emmett Gaines
554514d215 Fixes cargo gas canisters not being purchaseable (#58028) 2021-03-30 23:48:00 -07:00
Ryll Ryll
51394ea3e3 You can now manufacture bone gel (#58006) 2021-03-29 12:31:43 -07:00
AnturK
8b1ffd1e49 Adds explorer drones / adventures. (#57851)
A new side-job for cargo. Prepare and launch exploration drones at distant sites to encounter weird adventures, collect loot and expand the station cargo network. Adventures - the main content type here, can be written by anyone without any knowledge of programming. The purpose here is creating an way of interesting way of delivering lore (and adding some new job content/cargo expansion method).

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2021-03-26 11:38:39 +02:00
ArcaneMusic
b5a9002a5e Defines the interrogation room as unique area and not 4 different var edits. (#57612)
* Defines the interrogation room as unique area and not 4 different var-edits

* Fixes the gaping hole in the wall

* We added a new map at the very end.

* Blaseball

* Committing the changes

* Rebuilds the deltastation setup in case it's actually breaking something...
2021-03-23 01:29:51 +01:00
Fikou
a96a011712 fixes mouse override icon on supplypod launchers (#57880) 2021-03-22 17:36:11 +00:00
ArcaneMusic
d633c322ac Fixes an infinite credit exploit that got overlooked. (#57803)
So, turns out when assigning values to crates, a good number of the "large object" crates all have multiples of their export, and that didn't get assessed when giving them their current values. As it is currently, you can make infinite credits by ordering some select crates. This adjusts their prices to make them not do the bad, and work in-line with similar crates that sell lower than their buy value.
Also, fixes an issue with liquid tanks having a component of their sell value not tied to the defined, which was completely glossed over in the price rework, and is now scaled to the correct current value.(500 cr crates -> 200 cr crates).
2021-03-21 21:18:38 +00:00
Emmett Gaines
d71ce02c98 Makes cargo canister listings get automatically generated at runtime (#57844) 2021-03-21 06:07:54 -07:00
Fikou
ed85d3f5aa Full-Automatic Guns (#57084)
* fullauto component

* eh

* h

* brap

* it works!

* FUCK SHITUP

* dumbass

* l6

* oops

* GOD

* THE LAST 10% OF A PROJECT IS 90% OF THE WORK

* slopwer projecitles, replaces the tesla gun

* heavy

* minigun

* minigun stuff

* runtime fixes, pointer icon

* nuh uh

* makes modifeirs things

* nerf this

* yes

* aghh

* agh

* real high intensity changes here

Co-authored-by: Ryll-Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2021-03-20 21:39:52 -07:00
TemporalOroboros
fb488fdfff Some explosions code cleanup (#57493)
Clears out two deprecated explosions systems (explosion ids and explosion levels)
Refactors a bunch of contents_explosions procs to be maybe slightly faster.
Cleans up a bunch of ex_act code.
Slightly cleaner code
A few less unused vars on /atom and /turf
2021-03-20 16:03:59 -07:00
Mothblocks
84fc8464a3 Remove the voodoo doll (#57780)
A clunky to use grief tool that is near exclusively used to just make
people say slurs and WGW and copypastas and rule breaking stuff and
yadda yadda.
2021-03-18 13:18:57 +00:00