Commit Graph

34208 Commits

Author SHA1 Message Date
Ghom
d067eaaf25 Fixing the undoable experisci arcade experiment. (#57898) 2021-03-23 17:56:22 -07:00
Ryll Ryll
c0ad950def Fixes admin immovable rods not hitting things (#57890)
Timber did an oopsie in #57850 and made it so rods with a specific target (AKA any spawned by admins either through the trigger event button or the admin smite) quit out of their creation before they started listening for clonging things. Possibly this was partly intended, in case you wanted to spawn a rod that would only hit whatever you designated as your target and nothing else, but this current setup doesn't hit the target either soo something needs fixing.

@Timberpoes let me know what you think and if you were intending for a soft rod option that would only hit the target.

Fixes: #57888
2021-03-23 17:41:00 +00:00
MLGTASTICa
3ad077eb70 i shot my own phazon to death and i cry. (#57772)
Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>
2021-03-23 10:55:33 +01:00
Ghom
ee59c16637 Ice cream revamp: Ice cream is a component and cones can hold multiple servings of ice cream now. (#57415)
* Ice cream rework WIP

* I'm done!

* i'll deal with my verbose engrish at a later date. I'm dead tired.

* linter aaaaaa

* Take a bite!

* FINALLY, A COMPONENT!

* ghost macro.

* Review, typos, beheading of a lame comsig.

* Typo. Now I'm self-obliged to test it again.

* It works.
2021-03-23 07:53:46 +01: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
Timberpoes
8811bc3ac0 Simple bots now use a different snowflake method for all access. (#57861) 2021-03-22 16:34:50 -07:00
TiviPlus
f3946541eb Minor vehicle tidying 2 (#57626)
Moving some code, using tool procs, nothing special
2021-03-22 15:23:22 -07: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
a96a011712 fixes mouse override icon on supplypod launchers (#57880) 2021-03-22 17:36:11 +00:00
Ghilker
5625e51196 Thermomachine rework (#57831)
* heat pump rework

* f

* efficiency

* powe

* powermess

* better math

* math and enviroment equation

* freezers connected to waste pipenet and co2 recircled in waste

* smol

* rotate danger

* upgrades

* minor tweaks

* requested changes
2021-03-22 10:42:01 -04:00
Mothblocks
47a03f6bcc Sec officers now only get PDA'd if the new member is of the same department (#57877)
Fixes #57869 - Sec officers now only get PDA'd if the new member is of the same department
2021-03-22 10:01:42 +00:00
Thalpy
161c65051c Speeds up drink reactions bringing them back to near instant. (#57859) 2021-03-22 02:07:56 -07:00
Timberpoes
f116289e67 Fixes not being able to open inactive ticket browser on admin ticket tab. (#57882)
About The Pull Request

Currently admins can't access the ticket logs for Resolved, Disconnected, Closed and Active tickets due to an early return that will block these from being opened in 100% of circumstances.

Clicking on the Active/Disconnected/Closed/Resolved tickets would have behaviour handled by /datum/admin_help_tickets/proc/BrowseTickets() which was reached through Click() calls.

image

When we call .Click() from topic calls, we provide a null var for the control parameter.

This then leads through to /client/Click() where #57084 added a bunch of if(!control) checks supposedly ported from TGMC (or at least Fikou couldn't explain why we changed that).

I can't find a single instance of us using this locally, it appears it's always passed through to Byond. Byond docs at http://www.byond.com/docs/ref/#/client/proc/Click describe it as control - the name of the skin control involved

I can't see any reason to early return if control is a FALSE-y value. This check is what was blocking access to the admin_help_tickets datum.

In testing, removing these checks restored previous functionality.
Why It's Good For The Game

Admins less triggered.
Changelog

🆑
fix: Admins can once again open the stat panels to look at active, disconnected, closed and resolved tickets.
/🆑
2021-03-22 18:14:47 +13:00
Y0SH1M4S73R
0230e7c7ad Mind magnification helmets once again fall off monkeys when they are humanized (#57824)
* Fixes mind magnified monkey humanization

* Update helmet.dm
2021-03-21 17:26:28 -07:00
Cimika/Lessie/KathyRyals
e9880251e4 Added the N.E.R.D. (Nanotrasen Emergency Response Drone) team as an admin ERT. (#57766)
Added the ability to call a Nanotrasen Emergency Response Drone Team in the Create Antagonist.
2021-03-21 22:40:25 +00:00
Timberpoes
a22205995a Fix (#57884) 2021-03-21 23:11:27 +01:00
GuillaumePrata
660b71dbcd Splits Wintercoats into their own code file. Engineering wintercoats can now hold a gas analyzer like Science ones can. (#57804)
Me again, moved wintercoats code from suit/miscellaneous into suit/wintercoat
24 wintercoats, likely something that might get new ones added in the future since some jobs still don't have theirs and I might move their icon files to their own file too to make it easier for future additions once this is added.

Moved some lines around, added a small tag before each suit because it was hard to read where one start and the other ends, yadda yadda yadda...

Now do you think this is over? Nooooo... I started to move this around because I, as Atmostech, want to hold a gas analyzer in the exo slot, like those guys at science (And medical for some reason???) can!!

Might need some rebalancing on what each can hold but that is for later.
2021-03-21 21:45:29 +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
zxaber
7d59802f74 Removes nationality tags from restaurant customer bot names (#57860)
Removes the "Space-American" and similar tags from customer bot names.

The robots have unique sprites and sounds, and themed names and chat lines. These tags aren't really necessary and pretty much just ruin the joke by telling the punchline.

Also, "Space-<Earth Country>" is dumb.
2021-03-21 21:13:46 +00:00
Emmett Gaines
d71ce02c98 Makes cargo canister listings get automatically generated at runtime (#57844) 2021-03-21 06:07:54 -07:00
Fikou
7b12b80537 fixes getting nothing from necropolis chests (#57839) 2021-03-21 06:00:36 -07:00
Qustinnus
66fb188128 fixes some oddities in addiction code (#57854)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-03-21 05:57:19 -07:00
Timberpoes
4a9b91e981 Immovable Rod code cleanup, signal listening and improvement. (#57850) 2021-03-21 05:52:52 -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
CRITAWAKETS
2425c5b7b7 Adds in an intern closet to centcom. (#57524) 2021-03-21 05:17:19 +01:00
TemporalOroboros
687f91d8bd Desnowflakes tank integrity (#56443)
Makes tanks use obj_integrity instead of their own snowflaked version.
Makes tanks check for exploding when they are destroyed, rather than once every process.
Makes tanks always leak their gases when they are deconstructed.
Removes the ability for tanks to seal themselves back up over time.
Makes the bomb spawner actually produce functional bombs.
Removes the extraneous syndicate bomb spawner subtype.
Miscellaneous code improvements to tanks, bomb spawners, and the blastcannon.
Fixes the explosives compressor doubling the power of any bomb you put in it.

The changes to tank rupturing behavior shouldn't effect most tritium fueled TTVs including the 50K recipe. Toxins players don't need to worry about suddenly being incapable of getting points or refining anomaly cores. They should only really effect singlecaps, but I don't know enough about singlecaps to know what recipes I should test. I have confirmation that at least one mix is not effected by this.

The self-sealing properties of tanks have been removed. I'm not sure what the purpose of it was, I have heard that it was used to enable hand-portable plasmaflooding, but I'm not familiar with the practice.

As it turns out, the basic bomb spawners were broken on master! I have made the bombs they produce maxcap instead of just spring a leak. Since they maxcap by default now I have removed the syndicate subtype used to spawn the TTV produced by the cuban pete arcade game and replaced it with the normal timer subtype. Since none of the bomb spawner subtypes were used for anything else this shouldn't have any effect on the game.

On a similar note, I have discovered that the maxcap recipe on the wiki stopped working at some point since it was written. I will replace it with a functioning set of instructions.

Less snowflake code.
Bomb spawners are actually functional now.
Slightly better code.
The explosives compressor accurately reflects the power of the bomb you put into it.
2021-03-20 18:15:24 -07:00
Mothblocks
f44c20cdf4 Departmental officers are now put together, rather than separate, if possible (#57685)
Security officers will now be paired up together in the same department, across departments. This means that, instead of 4 officers being split across 4 departments, there'll now be 2 groups of 2.

Late-join officers will be put into any department with only 1 officer. If none exist, the least populous department will be chosen, with their preference having priority.

Updates the maps to have more spawns for departmental officers. Delta previously had none, and now has some. Fixed a bug where MetaStation's security departmental officer was a supply one instead.

Removes the "random" departmental preference. All security officers are now given a department. The "none" preference still exists, but just to show that you don't care which department you're put into.

Updates the config to comment out SEC_START_BRIG. This is what the configuration was already on live servers.

This is something that should likely be test merged, but it mucks with savefiles. Luckily, the only damage it does is changing random departments to none, so if a TM is reverted, only that will have to be changed.
2021-03-20 20:11:11 -04:00
EOBGames
05edacb324 Rule Botannia: British Bots for the Restaurant (#57542)
* I hate moths

they're all dusty and shit
2021-03-20 16:23:16 -07:00
TiviPlus
47d9916646 Minor car refactor (#57628)
Minor car refactor
Changed how oil is made
Replaced vars with cooldowns
some other minor stuff
2021-03-20 16:06:19 -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
Fikou
01eef19c91 removes medkit from ert engineer (#57798) 2021-03-20 05:58:15 -07:00
tralezab
7d315ad317 FIXES EVERYTHING (#57826) 2021-03-20 05:46:43 -07:00
LemonInTheDark
2fad574a4e More harddel fixes + Tram sanity check (#57828)
* Fixes a harddel caused by the FUCKING MACHINE VAR WHAT THE FU-

* Fixes a tram related harddel, the proc that removed things from the riders list worked on stuff passed in by Uncrossed, but failed with the qdeleting signal. I've made a wrapper proc to better support these things, added signal handlers, and removed an if check that hid nulls (If it's breaking I need to know)
2021-03-20 05:46:04 -07:00
dragomagol
40466ab812 borg model picker uses a radial menu: (#57827) 2021-03-20 05:05:43 -07:00
Ghom
259d66e77e expands the list of orderable objects for space-italian and space-french customer_data datums. (#57546) 2021-03-19 23:08:54 -07:00
Kylerace
c7a399ec4a Fixes bug with atoms (including new players!!!!) not spawned from the holodeck being deleted by it if they happened to be initialized at the same time (#57510)
About The Pull Request

Fixes #57446
yeah not my best moment, holodeck currently sets SSatoms to add every call to InitAtom() to a list and then give it back to the holodeck console (it actually goes through map_template/holodeck to do it but whatever). However it turns out atom/New() calls InitAtom too, so if an atom is created while SSatoms is still creating the list to give to the holodeck then that atom is added to the list regardless of whether or not its actually from the holodeck template.

Now theres an extra argument to InitAtom that tells it whether its spawned directly from a map template (ie, its part of the input list of uninitialized atoms that InitializeAtoms was given) or otherwise the output list that the holodeck uses is populated by calling GetAllContents on all atom/movables spawned directly from the template.

also renamed some vars in initTemplateBounds because it was hard to reason what it was doing and made it use as anything

also note that loading a map template with returns_created_atoms = TRUE will no longer track atoms that arent in the map file but are spawned directly onto a turf, currently nothing does this with the holodeck (which is the only map template that has this feature)

by the way this bug is my fault
Why It's Good For The Game

incredibly incredibly unlucky new players dont deserve to be deleted just because they didnt spawn in the holodeck
Changelog

🆑
fix: the holodeck is no longer so powerful that it can destroy anything and everything that dares to start existing while it's busy loading programs
/🆑
2021-03-20 11:56:35 +13:00
zxaber
11367dda89 Adds the ability to download a borg's logs using SiliConnect. (#57300)
About The Pull Request

Adds a function to Siliconnect in which you can tap a borg using a mobile device that is currently running the software, and it will download the borg's logs. These logs list events such as being locked or unlocked, taken offline and being restored, and the process of being emagged. Borg logs will now list the emag user's name as a new user.

Downloading the logs is done by right-clicking the borg while the software is open and active. This will "tap" the borg with the device, initiating the log transfer automatically. The transfer will take eight seconds to complete, requiring you and the borg to stay adjacent the entire time, and the borg will get a large red text alert about the upload when it starts. The logs are also not stored permanently on the device, and will be lost if the app is closed.

This PR also introduces the tap() proc for modular computer programs, and adds functionality the the computers to call it when right-clicking with the tablet as a tool. Should the app use the tap in a meaningful way (such as starting a borg log download), it will return TRUE, and the computer will end the secondary attack chain.

Currently, this requires using a tablet or laptop with Siliconnect, as you cannot tap with a console. Someday I hope to add an additional hardware option for consoles in the form of a wireless hand scanner to replicate tapping.
Why It's Good For The Game

Adds a neat way to "diagnose" a borg acting oddly, assuming you have a way to keep them still. Allows one to view if the borg has been emagged, by whom, what SiliConnect messages the borg has received, the number of law changes that have been made, as well as some other (somewhat fluff) information relating to taking damage and getting upgrades.
Changelog

🆑
add: You can now download a cyborg's internal logs by right-clicking them with a mobile device running SiliConnect. Take a look if one is acting a bit strange, you might find something interesting.
add: Borg integrity (health) is now roughly shown in SiliConnect, under "Condition".
/🆑

To Do:

Fix the to_chat not being sent to the borg when a log transfer breaks due to distance
Add some sort of text feedback when tapping an atom with a device, or viewing one being tapped.
Possibly restrict syndicate borgs from having their logs viewed by SiliConnect (and likewise with station borgs and Roboverlord) Changed my mind on this, will implement later if we find it's needed.

    Change the log area of the window to expand naturally rather than use a fixed height

image

I'm not super deadset on the emag user's name being listed. It seems like a neat function unique to having a tablet running Siliconnect (as most of the other info is already available through other means), and one can always pop the brain out for a re-borg and demand the name anyway.
2021-03-20 11:53:45 +13:00
Thalpy
aab2a9610a Fixes some issues with helbital (#57425)
About The Pull Request

REM was changed from 1 to 0.5, so there were a few unintended side effects from that. It also fixes this:
image

And sets the hands to fire on a timer so the effects are shorter but more intense, as well as having the lag compensator actually work.

This doesn't fix the smoke/foam effects which I will fix after this because that's non specific to helbital.
Why It's Good For The Game

Fixes bugs and restores intended functionality.
Changelog

🆑
fix: fixes helgrasp's lag compensator and text
qol: Sets helgrasp to fire faster but last shorter
/🆑
2021-03-20 11:53:22 +13:00
Timberpoes
f12cc4ff0a Mulebots are no longer bugged into horrific, merciless machines of gore and destruction. (#57378)
About The Pull Request

In https://github.com/tgstation/tgstation/pull/57010/files#diff-08a9c12575e75bb692c000da3f7eea30c0340da26171c5c788fd2b17afef92b5 Floyd did an undocumented change to Mulebot behaviour.

He moved crushing from the /human/Crossed level to mulebot/Cross.

The problem is:
image

Cross (and Crossed) are called when some other object Crosses us, not when we Cross some other object.

This meant that... Well... Walking into a mulebot was deadly. Buckling to a mulebot was deadly.
lGrnThJEWG

And being buckled to a mulebot that ended up moving was deadly multiplied by the number of times the mulebot moved.
QJNXqBHZ8m

Also why can you push mulebots when things are buckled to it? That seems like an oversight.

I added new signals to the atom/movable/...Cross... series of procs that are sent from the thing crossing our AM. The thing crossing our AM can then listen for that signal on itself, and it now knows when it's crossing something! BOOM! CRUSH TIME!

I've also added a check to /mob/living/proc/PushAM to prevent pushing an AM buckled to a thing when you wouldn't be able to pull them. This check also takes into account if you'd just have the raw movement force to push the thing they're buckled to as well. This should put a stop to being able to push mulebots around when they have mobs buckled to them.

Also, you can swap places with active Mulebots. This is probably not intended. I've added TRAIT_NOMOBSWAP to them.

The end result? Mulebots that just work.


And don't worry, you can still crawl under them.

Why It's Good For The Game

Feex.
Changelog

🆑
fix: Mulebots no longer murder people just because that person dared to bump into them.
/🆑
2021-03-20 11:50:34 +13:00
SgtHunk
9b6320494b Makes the plasmaman outfit designation use the job rather than a very long list (#57758)
* Deletes the very-long outfit switch

* Small change, mechanically does nothing

Changes behavior a bit as per request, worked fine on my end
2021-03-19 12:46:44 -04:00
Ghilker
7628e402c2 HFR, different fuels edition (#57496)
This PR allows the HFR to use different gasmixes as fuel, these will be able to produce different gases based on the power level.
The UI will have all the specifics for the different mixes
These gas mixes also change some variables and energy releases
Increased filtering amount to meed demands
2021-03-19 01:50:10 -07:00
Trigg
56aea4bda1 I hate the fact that I need to do it like this (#57794)
Co-authored-by: Triggeredboi <lucas.moreno2124@gmail.com>
2021-03-18 23:23:18 -07:00
Sylphet
cd7d064d03 Grilled cheese sandwiches are now actually grilled, and made on the griddle. (#57743)
Removes the toasted sandwich. There is now a cheese sandwich, and a grilled cheese sandwich. The cheese sandwich is made through the crafting menu under sandwiches from two slices of cheese and two slices of bread. The grilled cheese sandwich is made by putting a cheese sandwich on the griddle in the same way that you would make a steak.
2021-03-18 20:48:59 -04:00
Thalpy
7bce57ef35 Fixes impurities on foam, smoke and cigs. Improves how impurities are handled. (#57435)
Reworks the main handlier for impurities and adds it to the add_reagent proc instead. Adds an option to bypass the purity splitting too. This reduces the amount of add_reagent calls and will prevent any unintended on_mob_add() and delete calls for reagents that are removed from splitting.
Fixes smoke, foam and cigarette issues too - since they used copy_to isntead of trans_to.
2021-03-18 14:56:14 -07:00
AnturK
7fef33c459 Adds easy to extend custom svg font. (#57717)
Just throw in svgs into tgui/packages/tgfont/icons directory and you can use them in tgui with tg- prefix.

Co-authored-by: Style Mistake <stylemistake@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-03-18 15:20:59 +02: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
ArcaneMusic
6c5abc0f85 Prevents abuse of the BEPIS to syphon cash from cargo. (#57610)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-03-17 16:28:03 -07:00
Fikou
28f4ebd5f8 you can no longer sentience potion human mobs (#57761) 2021-03-17 16:22:16 -07:00
TheVekter
54d9e117b3 Remove the foam finger rocket launcher (#57763)
It's baaaaad. Very bad. There are way better ways to do this but I
don't honestly have the capacity to do them. The sprite states are all
fucked up, it's an odd case of something not being snowflake enough in
the right places, the goddamn thing breaks if you drop it... For fuck's
sake, Ryll tried to fix it and even they couldn't. No, fuck it, get rid
of it, we'll rewrite it later.
2021-03-17 14:42:24 +00:00
GuillaumePrata
a6d06614fd Split plasmaman envirohelms into their own file (#57764)
There was around 440 icons in the helmet file, around 70ish were
plasmaman helmets so I'm moving them to their own file to make things
cleaner.
Also moved the basic plasmaman envirosuit together with the civilian
ones since it's basically the assistant one, better than in the middle
of miscellaneous uniforms.
2021-03-17 14:41:01 +00:00