Commit Graph

103 Commits

Author SHA1 Message Date
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
Celotajs
fb2d71495b Convert jumpsuits, jumpskirts and sneakers to GAGS (#58514) 2021-04-25 17:01:36 -04:00
Ghilker
7bca0c36dc fix pneumatic cannon recipe (#58257) 2021-04-11 23:14:04 -07:00
Timberpoes
232fb90388 Cleanup (#58234)
as x doesn't work properly when used in for loops over special lists.

One instance of as anything in get_turf() in crafting code was removed as entirely redundant. It was an untyped for loop anyway.

Two instances of as anything in contents changed for wheelchairs with warnings added to change them to as anything loops when we upgrade to 514.
2021-04-09 02:31:45 -07:00
MrMelbert
b46b586d7b TGUI Limbgrower + Limbgrower refactoring and design expansion (#57955)
Refactors the limbgrower to modernize the code. Now, the limbgrower can accept any type of reagent in limbgrower designs.

Adds simple plumbing demand to the limbgrower, so you can pipe synthflesh into it.

Adds monkey tails, felinid ears and tails, lizard digitigrade legs, lizard tongues, fake lizard tails (unusable in lizard-wine and similar recipes), plasmaman organs, and ethereal organs (minus the heart) to the limbgrower via limbgrower design disks. These disks can be printed from the medical lathe once the required technology has been researched.

Adds a technology node to unlock the limbgrower design disks after advanced biotech, xenoorgan biology. In the future, this could have an experiment requirement - maybe to scan multiple types of species.

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2021-04-02 11:01:40 +03:00
Time-Green
635079aa98 Adds a plumbing layer manifold (#57494)
Adds a multilayer plumbing manifold, I also murdered the multilayer duct

You can now alt-click the plumbing RCD to change the layer it prints. I made a whole thing where right clicking changed the settings and you could use that to change machinery aswell. I even did that with the plunger, it was absolutely beautiful. Anyway that drained the life out of me because apparently there's no attack_obj_secondary and afterattack_secondary ALSO called attack_obj (left click). I just hate whoever made it with intensity

Plumbing now uses three layers. They should be easier to navigate. I tried to make layer connecting the same as cross-color connecting, but that would take more of my soul then there is to take
2021-03-24 13:57:00 -04:00
Ghilker
6121b13b94 Bluespace gas vendor (#57580)
* vendor

* more

* fex

* reeee

* WIP vendors

* BIGGERING AND FIGURING MORE BIGGERING

* CAPITALYSM!!

* ops

* tank refilling

* not working yet

* sprites and construction

* some stuff

* docs

* maps

* requested changes

* more changes

* change

Co-authored-by: tralezab <spamqetuo2@gmail.com>
2021-03-22 16:10:49 -04: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
LemonInTheDark
9422356c13 Removes the upgraded version of the h2 axe, the one with lifesteal (#57476)
I intended to clear this up before the pr adding this got merged, but I overslept. Don't ask

It's a very hard to get tool, but it's just kinda like, a fire axe but with slightly more damage and lifesteal.
Endgame atmos content should be atmos related, not just a good weapon. Also it's way too time consuming to
acquire, so its overpoweredness is balanced by its rarity. I don't like tools that are setup like this, since
they just end up bloating wiki articles.
2021-03-07 22:11:16 -08:00
Whoneedspacee
e8f81e33f8 Icebox Wendigo Buff + Crusher Trophies (#56258)
Co-authored-by: Jonathan Church <jchurch093@gmail.com>
Co-authored-by: s <wesoda24@gmail.com>
Co-authored-by: spookydonut <github@spooksoftware.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2021-03-04 12:54:15 -08:00
Ghilker
b6436d27f9 Fix stacking of blast doors and shutters from crafting (#57360) 2021-03-03 16:16:04 -08:00
Ghilker
99ed48ce8d [Ready]Atmos enhanced. Part 1: Crystallizer and machine recipes (#56889)
* crystallizer
2021-02-27 19:19:43 +01:00
Thalpy
fa575db934 Fermichem part 2.2 Adds new tools, crafts and methods for ghetto chemists to handle the new reaction mechanics. (#56871)
Since reactions now require a bit more involvement from chemists, ghetto chemistry is a bit harder. This seeks to help some of those problems by providing new tools for those without a chem heater/reaction chamber.

Also some of these might be useful for chemists in the lab too!

Here's what you can make:
image
the burners are similar to candles - except they burn their internal reagents. The temperature they heat by is dependant on the flame, fuel and oil burn for a lower amount, ethanol for a higher amount and plasma for the highest amount. They can be put on tables and bonked with beakers for a quick way to heat them (similar to lighters). You'll need to light them with a match or lighter too, though, and can be put out by use in hand.

The thermometer looks like this and gives you temperature readings!
thermom

The pH booklets are the same as before - but you can now craft them by making universal indicator. These are the best way for a ghetto chemist to check their pH, and multiple sheets should be used over a reaction.

The improvised chem heater looks like this, and is a reconfigured space heater, it requires more materials and tools lending itself to a static drug den, but has the best method of adjusting temperature and fighting against exo/endo thermic reactions:
Improv_heater

Finally, the cooling spray lets chemists do the oposite of a lighter on their beaker - cooling the reagents within. In addition, fire extinquishers perform the same function.

In addition ice and universal indicator have been added as reactions.

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2021-02-19 20:28:48 +02:00
Rohesie
0061b88441 Improves crafting code a tiny bit (#56937)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-02-17 21:42:24 -08:00
Mothblocks
0f435d5dff Remove hideous inline tab indentation, and bans it in contributing guidelines (#56912)
Done using this command sed -Ei 's/(\s*\S+)\s*\t+/\1 /g' code/**/*.dm

We have countless examples in the codebase with this style gone wrong, and defines and such being on hideously different levels of indentation. Fixing this to keep the alignment involves tainting the blames of code your PR doesn't need to be touching at all. And ultimately, it's hideous.

There are some files that this sed makes uglier. I can fix these when they are pointed out, but I believe this is ultimately for the greater good of readability. I'm more concerned with if any strings relied on this.

Hi codeowners!

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-14 16:53:29 -08:00
Fikou
f6dfc68360 repaths plasteel tiles to iron (#56644)
Repaths plasteel tiles and turfs to iron. We're in too deep to back out now
2021-02-06 13:53:08 -08:00
Fikou
8d586a7cb0 Rename metal sheets to iron sheets (#56643)
It's a specific type of metal, it shouldnt just be called generic "metal".
The reagent, ore and material datum are already called iron.
2021-02-05 15:48:00 +00:00
MrMelbert
9b0c2e771e A Big Hydroponics Update: A Rose by any other name (2 new plants, 4 new traits, new genes, and more!) (#56024) 2021-02-04 18:36:10 -08:00
necromanceranne
1611aaa70a Pipeguns: Elitism Edition (#56322)
About The Pull Request

The core of the PR:

The improvised shotgun that was is dead and removed.

Now we have Pipeguns. Pipeguns are bolt action rifles that have a damage multiplier that reduces their damage to 75%, and can be modified to fit the rare 7.62mm bullets. If you want to that is.

The pipegun also slowly increases in misfire probability for every shot at a rate of 5% per shot.

Pipeguns can also be upgraded to Regal Pipeguns. These contain more bullets, don't misfire and don't have a damage multiplier. To acquire one is a maint secret, only available to lucky assistants who come across the diary of a dead assistant. The probability of finding the book is quite, quite low.

Bandoliers now fit individual 7.62mm. Because why not. Currently they're available in stripper clips that fit into most combat belts so this is mostly a style preference at the moment

Other shit

Ammo modification and misfire behaviour is now generalized to all ballistics. You can now make any gun misfire and any internal magazine gun swap ammunition.

Misfires are not a flat chance. Instead, they increment as the gun fires over time.

Ports over this PR Citadel-Station-13/Citadel-Station-13#12274 which I felt was pretty neat conceptually for making some weapons weaker.

Makes the icemoon hermit's mosin into a regal pipegun, just to get mosins out of easy access.
Why It's Good For The Game

Improvised shotguns were one of my favourite weapons to horribly abuse while they were utterly broken a nice alternative, but I fully support moving towards curbing gun power curve. Part of that should include looking at improvised weapons like this which are seeing considerable usage with the removal of buckshot and slugs.

Initially I wanted to pair this with a PR of my own to bop Mosins on the skull along with it, but #56319 is already doing that, and while it's a very lenient approach to my own (I was going to remove them entirely from cargo), I respect it.

Changelog

cl
add: Replaces improvised shotguns with Pipeguns (with a special variant for those willing to go through arbitrary bullshit to acquire it and sheer good luck).
add: Now all guns can be set to misfire and swap ammunition.
add: Misfire chance is incremental as you fire the weapon, and not a flat static chance. This can be reset by using a piece of cloth on the gun and 10 seconds of cleaning.
balance: This has been applied to the detective revolver, but it only increments while using .357 bullets.
add: Guns can have damage multipliers attached for the bullets they fire. The pipegun (but not the regal version) is the first example with a 75% damage output.
balance: The Ice Hermit now has a regal pipegun instead of a Mosin Nagant.
balance: The bandolier fits 7.62mm.
balance: You can construct receivers and rifle stocks in the crafting menu.
balance: Detaches the magical rifles from the boltaction subtype, since they are just basically not using any variables attached to that subtype and made from a series of early returns.
/cl
2021-02-04 11:37:01 +13:00
HugoOdaX
4e2ffd1338 Makes blast doors/shutters and blast door controllers buildable and deconstructible (#56486) 2021-01-31 12:53:00 -08:00
AnturK
8c69586774 Adds aquariums and aquarium fish. (#56343)
Co-authored-by: tralezab <spamqetuo2@gmail.com>
Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: coiax <yellowbounder@gmail.com>
2021-01-27 12:44:36 -08:00
Tlaltecuhtli
df08104650 mining keys to open tendrills crates buyable with miner points (#56267) 2021-01-22 13:22:54 -08:00
necromanceranne
38656dc0e4 Infinite Gun Culling: Gun Kit Edition (#56133)
Every prototype firearm in the game now utilizes crafting to construct it, usually sacrificing a standard version of that firearm in order to produce the new one. The guns are made using gun part kits you print from the security protolathe (or buy, in the case of hellfire lasers).
2021-01-15 23:24:00 +00:00
ArcaneMusic
92902a798e Adds a new security bounty and tweaks existing security bounties. (#55952)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2021-01-09 11:23:30 -08:00
TemporalOroboros
863977e5fa Makes reagent updates more event based, also makes plasma boil properly. (#54790)
Converts most on_reagent_change calls to signals.
Converts on_reagent_change to a signal handler.
Expands the reagent exposure signals
Add a setter proc and signal for reagent temperature
Fixes adjust_thermal_energy not sending a temperature change event
Makes min_temp and max_temp actually do something with adjust_thermal_energy
2020-12-22 19:20:00 -03:00
TiviPlus
0eaab0bc54 Grep for space indentation (#54850)
#54604 atomizing
Since a lot of the space indents are in lists ill atomize those later
2020-11-30 12:48:40 -05:00
Qustinnus
41157f5d6b Moves grown food to newfood (#55040)
Moves grown food to newfood
Gives trash element support for callbacks for item creation override
2020-11-23 14:00:23 -08:00
ArcaneMusic
b29a686f92 Hygienebots de/construct and behave like the other simplebots. (#55089)
Adds simple deconstruct steps to the hygiene bot assembly, as well as adds a simple crafting menu option to craft one.
Also, corrects an issue with hygienebots not needing to be opened in order to be emagged. They now need to be emagged to be opened with a screwdriver, then emag the open panel in order to emag the robot, just like every other robot.
2020-11-23 13:44:18 -08:00
spookydonut
0383c19ac2 Minor refactor to signal handlers to remove potential sleeps (#54649)
About The Pull Request

These are legacy sleepers, the remaining 12 are non-trivial to fix.
2020-11-23 09:49:12 +13:00
TemporalOroboros
edd6500d78 /obj/screen --> /atom/movable/screen (#54403)
Repaths screen objects to /atom/movable
2020-11-08 23:07:15 -03:00
Timberpoes
60ee1c4a22 Fixes crafting duplication bug/runtime and attempts to address destroying items in consumed containers (#54330)
First issue: Certain crafting recipes (for example, Hooch) require a bottle, 100u hooch and a paper bag. If the 100u of hooch is in the bottle, because the crafting recipe has the bottle before the hooch in the requirements list, the craft will runtime as the bottle is "consumed" along with all its reagents.

To remedy this, I've created a simple sorter proc that runs when the global recipe list is inited. Before each recipe is added to the global recipe list, it now sorts the crafting requirements so that reagents are always processed first.

It's not exactly pretty, but it solves having to either refactor crafting code (please God no) or to go through every recipe datum and manually reorder the req list or create a unit test to ensure all recipe reqs are in the appropriate order.

Second issue: When crafting consumes a container, it qdels it and thus qdels all the items inside of it.

I've added two snowflake checks to empty the contents of reagent_containers and storage items before they are qdel'd. No more accidentally deleting items through crafting.
2020-10-12 15:20:01 -03:00
Timberpoes
1f23cc281d Enforce preserving parent proc return values across ui_act call stacks (#53964)
All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.
2020-09-26 11:52:39 -03:00
Ghilker
29c0ed1b00 Remove bad reference from atmos (#53781)
Change the name from Cyrion B to Zauker due to the easy connection the bad groups in the past

Not getting a repo ban is good
2020-09-17 13:51:15 -07:00
Wallemations
11073f55ec Fixes some issues with sign language & makes some things more clear (#53610)
Changes the name of the recipe for the gloves to make them more clear
Adds a note in the tongue file to make sure it's clear you SHOULDN'T SEE THAT TONGUE.
Adds a unique chat message for mimes who use sign language, to make it clearer you can't cheese as a mime
Adds a unique slurring verb for drunkards
Removes the ability for sign languagers to use megaphones, which I forgot existed in the game. 
Punctuation removal now replaces all punctuation used with periods rather than with blank space, to reduce run-on sentences.
2020-09-12 18:57:49 -07:00
Mickyan
7e4e9d432d Adds rollerskates, wheely can do tricks (#53497)
This turns wheelys into a skateboard subtype so they are no longer a copy paste of old skateboard code. They have lower stability compared to skateboards.
I've also made a whole bunch of small adjustments in the process to make skateboard code cleaner and more modular, such as turning the improvised skateboard to its own subtype so that construction steps don't need to be overwritten for all subtypes

Adds two subtypes of wheelys:
-Rollerskates: more stable than wheelys but slow you down when the wheels are retracted
-Skishoes: For skiing! Only work on snow, obviously

I wanted to add some fun alternatives to skateboards with their own drawbacks, and the ski shoes were an opportunity to do something fun for icemoon maps
2020-09-11 04:14:00 +01:00
LemonInTheDark
9e25e97370 Merge pull request #53013 from Ghilker/reactions-go-BRRRR
The scope of this PR is to add new and interesting stuff to the atmos crew and to bring more people to it both old and new.
This PR adds 5 new gases, a bunch of reactions (i'm still working on this but suggestions are useful), new recipes and items to the atmosians arsenal. These gases have high utility for everyone, atmosians will find them useful to do their job both as firefighters and air maintenance.
FINAL GAS NAMES (will change only if a maintainer ask about it)

Healium
Proto Nitrate
Cyrion B
Halon
Hexane

reactions avaiable in this PR: https://drive.google.com/file/d/1e6DZlBaKSCNdCADKnrH3F3aDWvl0iZr4/view

What the PR add:
-Healium: a red gas, stronger than n2o if breathed, with healing properties
-Proto Nitrate: a green inert gas if breathed but with different reactions with various gases at high temperatures
-Cyrion B: a black deadly gas if breathed that decompones very fast if exposed to N2 even at minimal amounts
-Halon: a light blue gas that when used in a fire it will suck up the O2 and will help cool the room, helping fighting the fire
-Hexane: a purple gas that has the ability to filter from the air plasma and n2o, useful to clean distro from the harmful gases quickly
-Healium Crystal: a reddish crystal that when broken will explode cooling the room and removing the plasma from the air (act like a grenade)
-Proto Nitrate Crystal: a greenish crystal that when broken will explode refilling a space with O2 and N2
-Cyrion B Crystal: a blackish crystal that when broken will explode dealing damage around it
-Metallic hydrogen recipe addition (atmosian armor and fireaxe)
-Statue of an elder atmosian (for bragging rights)
-Supermatter Interactions
-More gas interactions (Roinnel have multiple and different interactions)
-New RPD device: the pressure valve, a device that allow gas flow in a pipenet if the input pressure is higher than the set pressure it's getting atomized
-Fusion is a bit "easier" to start (minor changes to the math so that the instability is more reasonable)
-pluox can be also made without using rads
-cyrion-b bounty
-all 5 gases can be sold to cargo

More stuff needs to be added (like the SM interactions(added) and probably more reactions and breathe reactions)
Please leave suggestions and feedbacks as it helps improve the PR

Atmos desperately need more content and need to be proactive in the making of its tools, with this PR is a start to more atmos content

🆑
add: hydrogen + rads = trit
add: 5 new gases
add: Healium : made from Bz + Freon + cold, it knocks people down but have healing properties
add: Proto Nitrate : made from pluox and H2 + heat, it has different reaction with a bunch of other gases
add: Cyrion B : made from hypernoblium + stimulum around 0°C, it has heavy damage if breathed but is decomposed rapidly by N2
add: Halon : made from bz + trit + cold, it reacts with O2 at high temperature removing it and cooling the air, helping putting out fires
add: Hexane : made from bz + H2 + cold, it reacts with plasma and n2o and removes them from the air mix, filtering them.
tweak: stimulum no longer require plasma
add: canister sprites, gas sprites
add: crystal from gases formation and reaction
add: new metallic hydrogen recipes
add: elder atmosian statue
add: supermatter interactions
tweak: minor changes to fusion math to make it "easier" to start
add : pluoxium can be also made without using rads (not removing the rad production one) (this also produces a minimal amount of h2)
tweak: lowered hypernoblium min temperature of reaction
tweak: metallic hydrogen production more common
add: cyrion-b bounty
add: all 5 gases are up to selling
/🆑
2020-09-10 03:00:51 -07:00
Ghilke
c23dc8d674 changes 2020-08-29 10:49:24 +02:00
Wallemations
97dcf5ed51 Merge branch 'master' into master 2020-08-26 16:18:47 -04:00
Ghilke
0277d017c1 merge master 2020-08-26 15:37:25 +02:00
OnlineGirlfriend
c838ba21da [Ready] Wedding Content! Crate with tuxedo, wedding dress, cummerbund, veil, and craftable bouquets (#52733)
Adds wedding content.
2020-08-26 15:01:16 +02:00
Wallemations
e3fb5115ea Merge branch 'master' of https://github.com/tgstation/tgstation 2020-08-25 23:47:17 -04:00
Ghilke
f8d3f599c3 name change (again), more breath code 2020-08-23 16:08:52 +02:00
Ghilke
c61ec5b6d6 new names and requested changes 2020-08-23 12:43:36 +02:00
Ghilke
9ad2e29778 requested changes 2020-08-22 21:14:54 +02:00
Ghilke
98b68e004a new gas names! 2020-08-20 13:00:16 +02:00
Ghilke
fac58a2a78 merge master 2020-08-20 12:02:44 +02:00
Jared-Fogle
45c14f6330 Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#52761)
Adds SIGNAL_HANDLER, a macro that sets SHOULD_NOT_SLEEP(TRUE). This should ideally be required on all new signal callbacks.

Adds BLOCKING_SIGNAL_HANDLER, a macro that does nothing except symbolize "this is an older signal that didn't necessitate a code rewrite". It should not be allowed for new work.

This comes from discussion around #52735, which yields by calling input, and (though it sets the return type beforehand) will not properly return the flag to prevent attack from slapping.

To fix 60% of the yielding cases, WrapAdminProcCall no longer waits for another admin's proc call to finish. I'm not an admin, so I don't know how many behinds this has saved, but if this is problematic for admins I can just make it so that it lets you do it anyway. I'm not sure what the point of this babysitting was anyway.

Requested by @optimumtact.
Changelog

cl
admin: Calling a proc while another admin is calling one will no longer wait for the first to finish. You will simply just have to call it again.
/cl
2020-08-20 09:11:28 +12:00
tralezab
6a25b30b12 Removes "availible" mispellings in codebase (#53046)
* AVAILABLE

* Rebuild tgui

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-08-19 23:57:37 +03:00
Ghilke
2485402175 AHAH atmos goes BRRRRRR 2020-08-17 16:52:31 +02:00
Wallemations
38424855f0 Adds Sign Language quirk 2020-08-12 20:36:18 -04:00