Commit Graph

2019 Commits

Author SHA1 Message Date
SkyratBot
532ce4e9ef [MIRROR] Proper custom job name support [MDB IGNORE] (#9547)
* Proper custom job name support

* merge (#9552)

Co-authored-by: Tastyfish <crazychris32@gmail.com>
2021-11-20 22:52:42 +01:00
SkyratBot
a94325afe4 [MIRROR] Replacing more C-style for loops with the faster, traditional ones. [MDB IGNORE] (#9560)
* Replacing more C-style for loops with the faster, traditional ones. (#62908)

* Replacing more C-style for loops with the faster, traditional ones.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-11-19 20:37:13 +00:00
SkyratBot
054b4d9739 [MIRROR] nitryl and stimulum merge in nitrium [MDB IGNORE] (#9514)
* nitryl and stimulum merge in nitrium (#62061)

This PR is the first of a few were i'll be merging similar working gases into one.
This time is Nitryl and Stimulum. They'll be merged into Nitrium , a brown gas with both features of the two gases
The main scope is to add dept to atmos by removing bloated content and/or repeated content that has never seen the lights of the day (how many times have you seen both gases made and used at the same time?)
The PR so far:
-removed nitryl
-removed stimulum
-merged them into Nitrium (Nitrium is now made with trit, nitrogen and bz from a minimum temperature of 1500 K)
-made Nitrium have both gases features such as fast movements and sleep and stun immunity but increased damage taken
-Nitrium can make crystals that spread the chemicals with a cloud (is still far more efficient to just breathe the gas)

Less rare gases, going towards a better atmos gameplay loop

* nitryl and stimulum merge in nitrium

* Fixing blackmesa

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2021-11-17 15:14:33 -05:00
SkyratBot
2e0e84a6dd [MIRROR] Antag HUDs will now animate if you have multiple antagonists, and will no longer clear on deconversion [MDB IGNORE] (#9397)
* Antag HUDs will now animate if you have multiple antagonists, and will no longer clear on deconversion (#62718)

About The Pull Request

This is for the admin combo HUD. Players shouldn't notice any difference (except at roundend).
2021-11-09T16-27-26.mp4

Removes the ability to set custom antag HUDs for custom admin teams for complexity, though if there's a large enough demand I can try to bring it back in another PR.

Fixes #59767

TM candidate only so that I can make sure antags aren't getting leaked to people who shouldn't see them.
Changelog

cl
fix: Antag HUDs will no longer clear on deconversion if the player was another antag.
qol: Antag HUDs (as seen by admins and at the round end) will now animate between all antagonists, rather than just choosing the most latest.
/cl

* Antag HUDs will now animate if you have multiple antagonists, and will no longer clear on deconversion

* Update sol_fed.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-11-14 23:27:01 +00:00
SkyratBot
395f31fdad [MIRROR] The detomatix cart now sends forged messages that make PDAs explode if one tries to reply to them instead of detonating them right off the bat. [MDB IGNORE] (#9441)
* The detomatix cart now sends forged messages that make PDAs explode if one tries to reply to them instead of detonating them right off the bat.

* Feex

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-11-14 13:54:48 -05:00
SkyratBot
e42c71a9e1 [MIRROR] [s] Fixes an exploit in chef order console that potentially let players lag the server [MDB IGNORE] (#9402)
* [s] Fixes an exploit in chef order console that potentially let players lag the server (#62724)

* Update chef_order.dm

* Update chef_order.dm

* Update chef_order.dm

* [s] Fixes an exploit in chef order console that potentially let players lag the server

Co-authored-by: CocaColaTastesGood <47264839+CocaColaTastesGood@users.noreply.github.com>
2021-11-11 21:53:20 -05:00
SkyratBot
71b5f92eda [MIRROR] [MDB IGNORE] dir sanity, primarily on WALLITEMs [MDB IGNORE] (#9315)
* [MDB IGNORE] dir sanity, primarily on WALLITEMs (#62601)

About The Pull Request

Wall items mostly use the direction from the floor to the wall in the named mapping helper. Wall items mostly use the direction from the wall to the floor for the internal dir variable.

This leads to a headache when it comes to working out what conflicts with what, and what needs placing where.

Wall frames provided a member, inverse, which specified whether or not to invert the direction of the item when looking for conflicts. It was also used to specify whether to look for conflicts outside of the wall (cameras and lights appear external to the wall) or inside the wall (most wall items). This flag was set for Intercoms, APCs, and Lights. Since APCs and Lights expect a floor-to-wall direction, and Intercoms expect a wall-to-floor direction, this means that APCs and Lights were getting the correct direction, and Intercoms were getting the wrong direction.

Some implications of this setup were:

    You could build an APC on top of another wall item, provided there was nothing external attached to the wall and the area didn't have an APC.
    You could stack Intercoms indefinitely on top of the same wall, provided you weren't in a one-tile wide corridor with something on the opposite wall.

Or both! Here's twenty Intercoms placed on the wall, and a freshly placed APC frame after placing all Intercoms and deconstructing the old APC:

endless-stack-of-intercoms

Not everything used this inverse variable to adjust to the correct direction. For example, /obj/machinery/defibrillator_mount just used a negative pixel_offset to be visually placed in the correct direction, even though the internal direction was wrong, and never set! This also let you stack an indefinite number of defib mounts on the same wall, provided it wasn't a northern wall... except you could do this to northern walls too, since defibs weren't considered a wall item for the purposes of checking collisions at all!

Ultimately, every constructable interior wall item either used this inverse variable to adjust to the correct placement, set a negative pixel_offset variable to have its offset adjusted to the correct placement, or overrode New or Initialize to run its own checks and assignment to pixel_x and pixel_y!
Inventory: Table of various paths, related paths, and the adjustments they used

Unfortunately, untangling /obj/structure/sign is going to be another major headache, and this has already exploded in scope enough already, so we can't get rid of the get_turf_pixel call just yet. This also doesn't fix problems with the special 2x1 /obj/structure/sign/barsign.

Some non-wall items have been made to use the new MAPPING_DIRECTIONAL_HELPERS as part of the directional cleanup.

tl;dr: All wall mounted items and some directional objects now use the same direction that they were labelled as. More consistent directional types everywhere.
Why It's Good For The Game

fml
Changelog

cl
refactor: Wall mounted and directional objects have undergone major internal simplification. Please report anything unusual!
fix: You can no longer stack an indefinite amount of Intercoms on the same wall.
fix: Defibrillator Mounts, Bluespace Gas Vendors, Turret Controlers, and Ticket Machines are now considered wall items.
fix: Wall mounted items on top of the wall now consistently check against other items on top of the wall, and items coming out of the wall now consistently check against other items coming out of the wall.
fix: The various directional pixel offsets within an APC, Fire Extinguisher Cabinet, Intercom, or Newscaster have been made consistent with each other.
fix: The pixel offsets of Intercoms, Fire Alarms, Fire Extinguisher Cabinets, Flashers, and Newscasters have been made consistent between roundstart and constructed instances.
fix: Constructed Turret Controls will no longer oddly overhang the wall they were placed on.
qol: Defibrillator mounts now better indicate which side of the wall they are on.
fix: Some instances where there were multiple identical lights on the same tile have been fixed to only have one.
/cl

* [MDB IGNORE] dir sanity, primarily on WALLITEMs

* apc directionals

* bluespace vendor fix

* defib fix

Co-authored-by: esainane <esainane+github@gmail.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
2021-11-10 17:17:26 -05:00
SkyratBot
b7b6bd501f [MIRROR] removes double spaces AFTER symbols [MDB IGNORE] (#9226)
* removes double spaces AFTER symbols

* Fixing conflicts

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2021-11-05 18:15:12 -04:00
SkyratBot
e90627be0e [MIRROR] Modernizing Radiation -- TL;DR: Radiation is now a status effect healed by tox healing, and contamination is removed [MDB IGNORE] (#9176)
* Modernizing Radiation -- TL;DR: Radiation is now a status effect healed by tox healing, and contamination is removed

* Fixing conflicts

* Makes it compile, yeet all the RAD armor from everywhere (thanks RegEx!)

* Removing more lingering rad armor (woo)

* Damnit powerarmors

* Bye bye rad collectors!

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2021-11-02 10:36:46 -04:00
SkyratBot
7954d664a8 [MIRROR] removes double spaces before symbols [MDB IGNORE] (#9117)
* removes double spaces before symbols (#62397)

This can apparently cause some bugs on occasions, so I thought I might as well try to kill them all.

* removes double spaces before symbols

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2021-10-29 04:14:00 +01:00
SkyratBot
baaff4488c [MIRROR] no more double/triple/etc prize for you after completing orion [MDB IGNORE] (#9079)
* no more double/triple/etc prize for you (#62347)

* no more double/triple/etc prize for you after completing orion

Co-authored-by: Seris02 <49109742+Seris02@users.noreply.github.com>
2021-10-27 16:59:25 +01:00
Iamgoofball
fd577e0227 GoofSec: Departmental Guards, Stamina Crit Fixes, Armory Rework, 3-Hit-Stamcrit Batons, Flashbang fixes (#8524)
* GoofSec: Departmental Guards, Stamina Crit Fixes, Armory Rework, 3-Hit-Stamcrit Batons, Flashbang fixes

* More realism changes to the guns.

* "lmao lets just make bullets do double damage!!!!!"

* maint-fu properly restored

* fixes disabler desc

* sagwfwdqdqa

* Departmental Guard Drip + Fixing Guard Rolling Antags

* adds the trims for the guards

* haha yes i totally forgot the knockdown

* Brute damage hardlight bullets + map fixes!

* afwefqdqwd

* fixes security armor balance lmfao

* NICE FUCKIN MERGE CONFLICT

* Big Security Armor Rework + Fixing cell swapping issues

* Space Police!

* removes 2hand from the guns for now

* Fixes Guard antag rolling.

* Stamina crit filter is back!

* Fixed vendors, 911 overhaul, Re-added sec crates to cargo

* whoops haha

* afwvwsadcwaed

* efWEFwedqadq

* bank error, you have been rewarded 20 thousand credits

Co-authored-by: Funce <funce.973@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-10-26 17:17:20 +01:00
SkyratBot
404a603dc2 [MIRROR] runtime fix for borgs cryoing with upgrade modules + no more mmi laying around after they cryo, and various other runtime fixes [MDB IGNORE] (#8975)
* runtime fix for borgs cryoing with upgrade modules + no more mmi laying around after they cryo, and various other runtime fixes

* Fixing conflicts

Co-authored-by: Seris02 <49109742+Seris02@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2021-10-23 00:25:25 +01:00
SkyratBot
cf6c4a4f96 [MIRROR] Emagging the communications console now lets you purchase dangerous shuttles. Moves some to this system (including Disco Inferno and the Oh, Hi Daniel) [MDB IGNORE] (#8923)
* Emagging the communications console now lets you purchase dangerous shuttles. Moves some to this system (including Disco Inferno and the Oh, Hi Daniel) (#62056)

Emagging the shuttle will now let you buy dangerous shuttles (anything marked emag_only).

This includes:

Disco Inferno (which returns, at 10,000 credits)
Oh, Hi Daniel (which returns, at 10,000 credits)
Hyperfractal Gigashuttle (which has been moved over, and now costs 10,000 credits)
Grand Corporate Monastery (which has been moved over, and now costs 18,000 credits)
Purchasing a shuttle while it's emagged will censor your name.

Adding the capability for emag shuttles allows for some fun design space. Previously, shuttles like the Disco Inferno and Oh, Hi Daniel were removed for being grief messes, but now that an antagonist is (in most cases) required to purchase, this now becomes an act of in-game chaos, rather than just grief.

This can also help administrative efforts. Buying grief shuttles presently just makes you valid to the crew, which is tough considering the people who buy this are the ones in command. Now, buying grief shuttles not only requires an emag (which a basic griefer cannot get), but can now be deemed as a traitorous act.

* Emagging the communications console now lets you purchase dangerous shuttles. Moves some to this system (including Disco Inferno and the Oh, Hi Daniel)

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-10-18 21:40:54 -04:00
SkyratBot
fa519bdde3 [MIRROR] cleanup _HELPERS/_lists.dm and all the necessary files [MDB IGNORE] (#8783)
* cleanup _HELPERS/_lists.dm and all the necessary files

* Epbic

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-10-13 21:07:35 +01:00
SkyratBot
f49861e646 [MIRROR] Allows emagged and syndicate borgs to self-detonate [MDB IGNORE] (#8654)
* Allows emagged and syndicate borgs to self-detonate (#61915)

Once upon a time, when borgs could access machines from any distance once the window was open, borgs could self-detonate as a combat strategy. At some point, machine access for borgs was confined to being nearby the device, which removed self-detonation (except when near the console) as a side effect. This PR re-adds the ability for emagged and syndicate borgs by placing a confirm-type button into their RoboTact app (Actions section, under the Status tab).

Stunned or locked borgs cannot self-destruct.

Additionally, logging for borg detonations has been moved out of the robot console and into the borg self_destruct() proc, to avoid duplicate code, and emagged borgs now have their tablet theme and icon changed to syndicate versions.

* Allows emagged and syndicate borgs to self-detonate

Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
2021-10-08 15:33:12 +01:00
SkyratBot
30e071673f [MIRROR] Refactors the list datatype to support composite lists. Adapts a lot of circuits to be able to properly use composite lists. Adds the dispenser shell [MDB IGNORE] (#8650)
* Refactors the list datatype to support composite lists. Adapts a lot of circuits to be able to properly use composite lists. Adds the dispenser shell (#61856)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Colovorat <35225170+Colovorat@ users.noreply.github.com>

* Refactors the list datatype to support composite lists. Adapts a lot of circuits to be able to properly use composite lists. Adds the dispenser shell

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
Co-authored-by: Colovorat <35225170+Colovorat@ users.noreply.github.com>
2021-10-08 14:19:46 +01:00
SkyratBot
cc93b11d23 [MIRROR] _HELPERS/unsorted.dm has been sorted [MDB IGNORE] (#8627)
* _HELPERS/unsorted.dm has been sorted

* Feexing conflicts

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2021-10-06 22:07:01 +01:00
SkyratBot
ab9daa1cba [MIRROR] Add the ability to cancel incoming and outgoing cross comms console messages for admins [MDB IGNORE] (#8538)
* Add the ability to cancel incoming and outgoing cross comms console messages for admins (#61799)

You can now cancel incoming and outgoing cross comms console messages.

* Add the ability to cancel incoming and outgoing cross comms console messages for admins

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-10-01 21:08:59 +01:00
SkyratBot
6a3a1aed83 Rendering refactor P1: Plane unification and render relaying (pictures and video included) (#8479)
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2021-10-01 00:08:39 +01:00
SkyratBot
c23bd1cb8c [MIRROR] every case of initialize that should have mapload, does (#8374)
* every case of initialize that should have mapload, does

* E

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-24 23:07:53 +01:00
SkyratBot
124ddd7cca [MIRROR] tgui Preferences Menu + total rewrite of the preferences backend (#8153)
* tgui Preferences Menu + total rewrite of the preferences backend

* nah, we dont need to ping those people

* trying to remove the funny stuff

* unmodularizing this

* prefs reset

* this may need to be reverted, who knows

* okay, this part

* perhaps

* EEEEEEEEE

* unsanitary

* E

* Stage 1 + loadout system

* more fixes

* E

* I mean, it launches?

* More fixes and reorganisation

* E

* customisation code is spaget.

* disable ERP prefs

* Update erp_preferences.dm

* Update erp_preferences.dm

* E

* Slowly getting there

* It may be time for help :)

* tri...colors... help

* preferences now pass preferences

* Update dna.dm

* Fuck this man

* missing savefile return, set_species works, removed dumb stuff from updateappearance

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8199

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8224

* https://github.com/tgstation/tgstation/pull/61519

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8278

* e

* le butonAZARAK HELLO

* hhh

* Proper recognition where it's due, MrMelbert!

* EEEE

* examine block

* Better gen hit sounds from whitedream

* final loadout touches, more bug fixes im sure to come

* i said there would be bugfixes

* Update LoadoutManager.js

* Missing preferences in the html menu

* LIVE TESTING PHASE BABY

* Update LoadoutManager.js

* EEE

* LAUNCH TEST FIRE

* Update job.dm

* Update new_player.dm

* 50gb DAY ONE PATCH

* EEE

* Update preferences.dm

* buggle fixes

* Update examine.dm

* >LOOC starts on

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2021-09-23 00:40:37 +01:00
SkyratBot
6bfb914351 Harddeletes: Accident edition (#8294)
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-09-20 23:20:46 +01:00
SkyratBot
f817ed6387 [MIRROR] Adds the interrupt signal to the delay component, reorganises BCI files and circuit code improvements (#8264)
* Adds the interrupt signal to the delay component, reorganises BCI files and circuit code improvements (#61393)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Adds the interrupt signal to the delay component, reorganises BCI files and circuit code improvements

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-09-19 22:21:35 +01:00
SkyratBot
24d68e7f9e [MIRROR] Station alert bugfixes (#8221)
* alert bugfixes (#61475)

* Station alert bugfixes

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
2021-09-17 21:18:42 +01:00
SkyratBot
04302a770a [MIRROR] moves obj_integrity and associated procs to the atom level (#8016)
* moves obj_integrity and associated procs to the atom level

* Feex good

* Whoops forgot the maps

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-10 16:47:01 +01:00
SkyratBot
a7d6611e0b Reduces copypasta in emissive code. (#8040)
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2021-09-07 19:53:49 +01:00
SkyratBot
b771ded970 [MIRROR] Emergency Access Button Cooldown (#7960)
* Emergency Access Button Cooldown (#61139)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Emergency Access Button Cooldown

Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-09-04 08:52:45 -04:00
SkyratBot
af8c0d2977 [MIRROR] Refactors how components are triggered and refactors how ports are ordered (#7951)
* Refactors how components are triggered and refactors how ports are ordered (#60934)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Refactors how components are triggered and refactors how ports are ordered

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-09-03 14:02:48 +01:00
GoldenAlpharex
e9e5a36618 Hahaha Golden you fixed my master! (#7913)
* Time to see if this helps master

* A fix to the stack trace about clothes continuing to burn

* Trying to update the maps a bit for less conflicts

* Removes some Deltastation merge conflicts

* Fixes more bugs in maps.

* Yet another bug

* One less runtime, maybe?

* Tried to fix some uniforms icon_state to fix CI

* Update DeltaStation2_skyrat.dmm

* Update DeltaStation2_skyrat.dmm

* Please tell me this does it.

* Reverting the icon change, as it's addressed better somewhere else

* I SWEAR IF THIS FIXES IT

* Gonna try this this time

* Actually fuck off let's see if this is the problem (I just realised it might be)

* The nail in the coffin, for now.

Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-02 14:28:46 +12:00
Useroth
f900b1ec6d [MDB IGNORE] Eliminates Toxins (#60619) (#7911)
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)

Co-authored-by: EOBGames <58124831+EOBGames@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-01 16:50:22 +01:00
SkyratBot
eedc63bbff [MIRROR] tgui: Silicon Station Alerts (#7847)
* tgui: Silicon Station Alerts

* 0

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-09-01 16:38:53 +01:00
SkyratBot
eae7233c5b [MIRROR] small refactor to can_interact() so that borg range is fully respected (#7891)
* small refactor to can_interact() so that borg range is fully respected (#60693)

Its a relatively small refactor that changes the previous machinery "can_interact()" proc that literally did a full override despite half of their checks already existing in not one, but TWO parent procs, so i removed the redundant checks, added callbacks to its parents and then added the cyborg range check on the can_interact_with() itself. in doing so i also moved the interaction range var from silicons only, to mobs as a whole and defaulted it to a single tile, silicons override it to 7 (so pAIs and borgs like before) but then set AI and AI.eye to "null", because i have a check in can_interact that if there is no range set, then the range is effectively unlimited. and i even added code for when AI is carded and their wireless transmission is disabled it sets their range to "0" aka, it has no range to do anything even if it could

this was really complicated for me so despite my extensive testing it probably would be a bad thing if any of you want to test my code yourself to ensure there isnt a bug with this (theres no runtimes ive come across)

note: i did a lot of searching and going through machinery to ensure i caught all the little snowflake overrides and added can_interact() checks to them, but i may have missed one or two things, especially maybe a altclick or ctrlclick somewhere, however i believe i caught most of them

one nice side effect of this refactor is that you can actually set another mobs range to something other than 1 tile and they can interact at range, rather than only silicons getting this ability, an admin could VV a human to have a 3 tile arm reach as a meme if they want

* small refactor to can_interact() so that borg range is fully respected

Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>
2021-08-31 20:26:36 +01:00
SkyratBot
adec50296d [MIRROR] Allows you to cancel TGUI alerts (#7846)
* Allows you to cancel TGUI alerts (#61072)

This was requested by someone downstream. Some TGUI alerts offer two options e.g. (Kill Bob, Kill Janice), In byond alerts you'd be able to cancel by pressing the X, but tgui alerts don't support this. I've added an option to enable the normal X in the top right, so you can cancel out of alerts if you enable it.

* Allows you to cancel TGUI alerts

Co-authored-by: AMonkeyThatCodes <20987591+AMonkeyThatCodes@users.noreply.github.com>
2021-08-29 15:36:58 +01:00
jjpark-kb
6dfd617177 fixes some of the issues of the createanddestroy unit test (#7648)
* send help

* polychromic createanddestroy fix
2021-08-20 23:23:23 -04:00
SkyratBot
b0c01e40af [MIRROR] Del The World: Unit testing for hard deletes (#7589)
* Del The World: Unit testing for hard deletes (#59612)

Co-authored-by: SteelSlayer <42044220+SteelSlayer@ users.noreply.github.com>

* Del The World: Unit testing for hard deletes

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: SteelSlayer <42044220+SteelSlayer@ users.noreply.github.com>
2021-08-17 18:58:57 +01:00
SkyratBot
d4e11d2080 [MIRROR] Redoes how alarms are handled, moves their behavior to datums (#7547)
* Redoes how alarms are handled, moves their behavior to datums

* a

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-08-15 23:38:01 +01:00
Deek-Za
29397dbfdb Fixed CDO Access (#7575)
Honestly. This has been overdue for months. CDO can finally do their job without risking access to the equipment or detective lockers.
2021-08-15 22:51:09 +01:00
SkyratBot
db78fbb47a [MIRROR] Adds Circuit variables (#7539)
* Adds Circuit variables (#60590)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Adds Circuit variables

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-08-13 17:23:58 +01:00
SkyratBot
9e74cd4a03 [MIRROR] Input ports now connect to multiple output ports. Remove combiner. (#7505)
* Input ports now connect to multiple output ports. Remove combiner. (#60494)

* tgui bsod

* debug disconnections

* prelim

* recomment

* set_value -> put ._.

* DAMN IT

* reinsert subsystem

* prepare

* unditch signals

* remove combiner

* remove combiner some more

* how did router.dm get here? deleting.

* These two COMSIGS should be one.

* critical typo

* inline cast

* have your signals

* Have your set_input & set_output.

* make compile

* upgrade save/load to n-to-n-wires

* have your documentation

* have your unsafe proc

* pay no attention to the compile errors

* unlist the ref

* paste my for block back in ._.

* fix manual input

* oops pushed too soon

* Have your !port.connected_to?.length

Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>

Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>

* Input ports now connect to multiple output ports. Remove combiner.

Co-authored-by: Gurkenglas <gurkenglas@hotmail.de>
Co-authored-by: Watermelon914 <37270891+Watermelon914@ users.noreply.github.com>
2021-08-11 20:27:29 +01:00
SkyratBot
58b169b7ed [MIRROR] Add USB support to teleporter control consoles (#7473)
* Add USB support to teleporter control consoles (#60530)

* Add USB support to teleporter control consoles

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-08-10 15:50:52 +01:00
FlamingLily
3a88a59152 Fixes the suit sensor sorting, ohgodohfuck (#7460)
* Update crew.dm

* Update crew.dm
2021-08-08 15:57:16 +01:00
SkyratBot
47bb16ee3d [MIRROR] Moves most circuit component defines to files to reduce the amount of scattered code. (#7450)
* Moves most circuit defines to files (#60705)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Moves most circuit component defines to files to reduce the amount of scattered code.

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-08-08 02:41:46 +01:00
SkyratBot
3ab1e7ebe2 [MIRROR] Refactors port types completely and adds the option type. Refactors options to use this new type (#7386)
* Refactors port types completely and adds the option type. Refactors options to use this new type (#60571)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Refactors port types completely and adds the option type. Refactors options to use this new type

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-08-04 18:30:56 +01:00
SkyratBot
a1c3b5ce0f [MIRROR] Fixes multiple mapping errors (#7299)
* Fixes multiple mapping errors (#60534)

* Fixes multiple mapping errors

Co-authored-by: 小月猫 <alina.r.starkova@gmail.com>
2021-08-01 23:15:55 +01:00
SkyratBot
170863cfd7 [MIRROR] Circuit component descriptions and module names are now visible to the naked eye. (#7290)
* Circuit component descriptions and module names are now visible to the naked eye. (#60545)

* Circuit component descriptions and module names are now visible to the naked eye.

Co-authored-by: Gurkenglas <gurkenglas@hotmail.de>
2021-08-01 11:42:08 +01:00
SkyratBot
1dbdea84bc [MIRROR] Fixes the outputs in the launchpad usb connection (#7287)
* Fixes the outputs in the launchpad usb connection (#60550)

* Fixes the outputs in the launchpad usb connection

Co-authored-by: TheSmallBlue <ilanmori@hotmail.com>
2021-08-01 11:41:43 +01:00
SkyratBot
3e3c391aee [MIRROR] Removes Destroy overrides from most circuit components (#7216)
* Removes Destroy overrides from most circuit components (#60492)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Removes Destroy overrides from most circuit components

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2021-07-29 11:16:23 +01:00
SkyratBot
9f7d93f3f3 [MIRROR] Remove nanites (#7210)
* Remove nanites

* a

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-07-29 00:45:17 +01:00
SkyratBot
6fd3c8f51d [MIRROR] QoL changes for launchpad usb connection and fixes it not working with null x/y offset inputs (#7203)
* QoL changes for launchpad usb connection and fixes it not working with null x/y offset inputs (#60347)

If null x/y offsets are passed, it won't update the telepad's x/y offsets.
This fixes a problem with the x/y offsets not being updated if 1 of the x/y offsets is null.

* QoL changes for launchpad usb connection and fixes it not working with null x/y offset inputs

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
2021-07-28 23:10:53 +01:00