Commit Graph

1520 Commits

Author SHA1 Message Date
ReturnToZender
e1616cc575 Reverts to TG weapons
Add: Changes some of the effects of the stunbaton back to TG
2023-04-17 09:04:34 -05:00
CloverIsLucky
59681164a8 Increased borg KA mod capacity 2023-04-15 06:36:23 -06:00
Cyprex
e6bb4098c4 Revert "Merge upstream" 2023-03-11 18:51:44 +01:00
Paxilmaniac
3fb3c7add2 Gun code override unshittening part like, two by this point (#18957)
* this code is so fucking funny it makes me want to merge w/o looking

* safety component stuff

* safeties should be finished

* I loooove safety component

* I swear that's all for gun safety

* manufacturer component

* cant forget this

* this is so awful

* 1100 line long gun file

* ok it actually compiles now

* that should not be an addition of any sort

* these defines should not be used anymore

* why?? the fuck??? are there var edited fire modes on black mesa?????

* how did that even happen

* maybe ci will shut up now

* oh man so many guns are lacking autofire now

* probably fixes safety toggling

* that should reference the gun not the component

* that should probably return

* makes it replicate current behavior, defaults safeties to being ON

* and that is all i have to say about that

* its automagically
2023-03-04 19:53:15 +00:00
SkyratBot
10fb4944a7 [MIRROR] Removes the pipegun's chance to misfire and make you shoot yourself [MDB IGNORE] (#19639)
* Removes the pipegun's chance to misfire and make you shoot yourself (#73738)

## About The Pull Request

As the title might imply, the increasing percentage chance that a
pipegun misfires and fires at the user has been removed.
## Why It's Good For The Game

The pipegun already has a large number of other downsides, like a 1
round ammo capacity, it being bolt action, the fact it can get dirty and
have the bolt jam, and the 3/4 damage modifier. While these all make
sense and can make for a pretty fun improvised weapon, the chance to
misfire brings it from 'interesting' to 'unusuable in 99% of
situations'.
## Changelog
🆑
balance: The pipegun's chance to misfire and shoot at you rather than
the person you're pointing it at has been removed
/🆑

* Removes the pipegun's chance to misfire and make you shoot yourself

---------

Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-03-03 23:38:57 -08:00
SkyratBot
f194b57feb [MIRROR] Basic Mob Spiders II: Elements [MDB IGNORE] (#19268)
* Basic Mob Spiders II: Elements

* Update giant_spider.dm

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: lessthnthree <three@lessthanthree.dk>
2023-03-01 11:57:49 -08:00
SkyratBot
a0d9cdace3 [MIRROR] Fixes reverse revolver name [MDB IGNORE] (#19267)
* Fixes reverse revolver name (#73315)

## About The Pull Request

Reverse revolver is now named "Syndicate Revolver", same as the normall
syndie revolver.

Fixes https://github.com/tgstation/tgstation/issues/73313

## Why It's Good For The Game

Fix

## Changelog
🆑
fix: Fixes reverse revolver name being different from syndicate revolver
name
/🆑

* Fixes reverse revolver name

---------

Co-authored-by: SuperSlayer <91609255+SuperSlayer0@users.noreply.github.com>
2023-02-10 16:09:17 -08:00
SkyratBot
1fe9efd00a [MIRROR] Rebuilds Luxury Shuttle (mostly), makes it emag-only [MDB IGNORE] (#19229)
* Rebuilds Luxury Shuttle (mostly), makes it emag-only (#72940)

## About The Pull Request
![2023 02 07-06 49
54](https://user-images.githubusercontent.com/70376633/217159751-790e6ded-8525-4d13-a5b5-6a3d8076a00e.png)
Changes the really goofy old lux shuttle to a cooler layout with some
additions to make it a luxury and not just
"anti-poor-people protection + food"

Shuttle was made bigger to make it less cramped for the luxury class,
pool was moved to its own room, added an arcade
and a bar corner, has real lasers to shoot poors with (20c each shot),
has fire extinguishers now
Adds a new preopen variant of hardened shutters
Adds a paywall pin subtype for the luxury shuttle, and a laser gun
subtype

Made emag-only at a price of 10000 credits
## Why It's Good For The Game

The old luxury shuttle looked REALLY awful with its pool, was pretty
cramped even in the luxury section and BARELY resembled a luxury..
This luxury shuttle provides luxuries such as a less poorly designed
pool, more space for legs, arcade, to make it resemble a luxury unlike
the old one

## Changelog
🆑
add: Luxury Shuttle is now bigger, and less ugly! Poor people still get
it rough though...
/🆑

* Rebuilds Luxury Shuttle (mostly), makes it emag-only

---------

Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com>
2023-02-08 10:24:00 -05:00
SkyratBot
739f951461 [MIRROR] Fixes an edge case where you can get incurable plasma damage, & fixes healing sources that don't have biotype restrictions not working if the mob doesn't have the MOB_ORGANIC biotype [MDB IGNORE] (#19094)
* Fixes an edge case where you can get incurable plasma damage, & fixes healing sources that don't have biotype restrictions not working if the mob doesn't have the MOB_ORGANIC biotype (#73017)

## About The Pull Request

Fixes #72962

The plasma river applies toxins damage to a mob as it transforms
individual limbs into plasmaman ones.
Once all limbs have been transformed, the mob's species changes to
plasmaman.

This currently leads to incurable toxin damage as antitoxin drugs do not
work on plasmamen. Made it so that upon transforming fully, the toxin
damage is cleared.

Also fixed an issue where healing sources that do not have a
required_biotype parameter (e.g. `adjustToxLoss(-5)` vs
`adjustToxLoss(-5, required biotype=whatever)`) will not work on mobs
that do not have the `MOB_ORGANIC` biotype (e.g. plasmamen) due to it
defaulting to `MOB_ORGANIC`. For now those use the `forced` param to
accomplish this.

## Why It's Good For The Game

Incurable damage is no good.

## Changelog

🆑
fix: fixed getting incurable tox damage when fully transformed into a
plasmaman via plasma rivers
fix: fixed rod of asclepius/medibeam etc not being able to heal tox
damage despite not having biotype restrictions
/🆑

* Fixes an edge case where you can get incurable plasma damage, & fixes healing sources that don't have biotype restrictions not working if the mob doesn't have the MOB_ORGANIC biotype

---------

Co-authored-by: Bloop <vinylspiders@gmail.com>
2023-02-02 16:16:34 +00:00
SkyratBot
2bec145471 [MIRROR] The toy crossbow nolonger floats nearby your hand when you hold it. [MDB IGNORE] (#19115)
* The toy crossbow nolonger floats nearby your hand when you hold it. (#73140)

## About The Pull Request

The toy crossbow had its inhand dimensions set incorrectly to 64 causing
the inhand sprites to be offset incorrectly, I've set them to 32.
## Why It's Good For The Game

Bugfix.
## Changelog
🆑
fix: Toy crossbows have had their offset fixed and will now correctly
display in your hand.
/🆑

* The toy crossbow nolonger floats nearby your hand when you hold it.

---------

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
2023-02-02 16:14:13 +00:00
Funce
60bfb76832 [MIRROR] Dynamic Human Icon Generation For Simple/Basic Mobs (& Cardboard Cutouts) [MDB IGNORE] (#18884)
* Dynamic Human Icon Generation For Simple/Basic Mobs (& Cardboard Cutouts) (#72517)

revive of #68760
this time a proc, not an element
this time supports cardboard cutouts
this time supports mob corpses

![image](https://user-images.githubusercontent.com/23585223/211064291-81070650-189f-4afa-8116-81b687e3ea35.png)

prevents these icons ever being outdated, they'll always look what they
are supposed to, saves spriting work

🆑 Fikou, a hood by Viro
refactor: humanoid mobs and cardboard cutouts automatically generate
their sprites, they no longer will be outdated
/🆑

Co-authored-by: Time-Green <timkoster1@hotmail.com>

* Modular!

* Fix signal override merge skew (#72882)

Caused by https://github.com/tgstation/tgstation/pull/72517, with
https://github.com/tgstation/tgstation/pull/72561 raising an error that
was being hidden before

This changes equip logic somewhat so that set_wearer was being called
twice.

I don't think this should be being run in visualsOnly at all, as it does
a ton of stuff like registering signals, updating UI, etc etc etc. Don't
have time to investigate further.

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-01-27 13:56:00 -05:00
SkyratBot
39f3491d79 [MIRROR] Fixes swapped reverse revolver sprites [MDB IGNORE] (#18830)
Fixes swapped reverse revolver sprites (#72662)

## About The Pull Request

Fixes https://github.com/tgstation/tgstation/issues/72651 by changing
reverse revolver sprite to "revolversyndie"

## Why It's Good For The Game

Fixes an issue

## Changelog
🆑
fix: Fixes reverse revolver sprite being swapped to normal revolver
sprite
/🆑

Co-authored-by: SuperSlayer <91609255+SuperSlayer0@users.noreply.github.com>
2023-01-20 14:26:11 -05:00
SkyratBot
677fffbd51 [MIRROR] Documents bolt_types and fixes Mosin Nagant Sprite [MDB IGNORE] (#18714)
* Documents bolt_types and fixes Mosin Nagant Sprite (#72448)

## About The Pull Request
For an unknown period of time, `/obj/item/gun/ballistic` used the wrong
type of sprite for it's `bolt_type`, so anyone trying to make a new gun
and using it as an example wouldn't be able to make it work. Being an
abstract item, it used `BOLT_TYPE_STANDARD` when it had a
`BOLT_TYPE_LOCKING` icon state.

If you spawn it in and look at it, it looks like this.

![image](https://user-images.githubusercontent.com/89315023/210435339-05fdf022-94a2-49d4-98c0-c2155ab604a7.png)
But if you VV `bolt_bolt` type to `4` ( `BOLT_TYPE_LOCKING`), it looks
correct.

![image](https://user-images.githubusercontent.com/89315023/210436016-59b6eddc-cd6c-4e55-87f4-5791a8c94a1f.png)
Same with the Mosin, which now has a visible bolt, so you can tell if
it's open or not now!

![bolt](https://user-images.githubusercontent.com/89315023/210435912-31b24d7e-882c-49a7-bc81-9d681fe5d851.png)

So basically:
- Changes the Mosin to use the correct bolt type, `BOLT_TYPE_LOCKING`.
- Makes the abstract `/obj/item/gun/ballistic` use the correct type of
sprite. It comes in designer _Debug Purple checkerboard_.

![image](https://user-images.githubusercontent.com/89315023/210437549-3babc107-840f-4fce-9fe8-7913d50d6075.png)
- Adds `bolt_types_explained.md`. As the name implies, this explains in
detail what all the bolt types do, and what you should name the
iconstates for them when you're trying to make a new gun.
- Various comment changes in `ballistic.dm`, and the `combat.dm`
defines.
- De-souls the `boolets` variable name to `bullets` in the ammo counter
proc
- Adds a new parameter `handle_modifications = TRUE` to `sawoff()` When
set to false, it allows you to still use the sawing logic, but bypasses
all the snowflake code for variable changes, and only sets `sawn_off` to
true. This is helpful if you want to allow a weapon to be sawed off, but
don't want your icon forcibly set to `lefthand_file =
'icons/mob/inhands/weapons/guns_lefthand.dmi` or the weight class set to
normal.

## Why It's Good For The Game

Documentation is always good I hear. Also if you're trying to make a new
gun or fix a sprite issue, now you can look at the base type to
understand how it works!

## Changelog
🆑
fix: Mosin Nagant bolt sprites are now visible. It's like 5 pixels so
not a surprise nobody noticed for years.
/🆑

* Documents bolt_types and fixes Mosin Nagant Sprite

* Fixes our speargun overlay sprites

Co-authored-by: Stonetear <89315023+Stonetear@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2023-01-19 20:07:14 -08:00
SkyratBot
25f4961156 [MIRROR] Refactors memories to be less painful to add and apply, moves memory detail / text to memory subtypes. Adds some new memories to demonstrate. [MDB IGNORE] (#18487)
* Refactors memories to be less painful to add and apply, moves memory detail / text to memory subtypes. Adds some new memories to demonstrate.  (#72110)

So, a huge issue with memories and - what I personally believe is the
reason why not many have been added since their inception is - they're
very annoying to add!

Normally, adding subtypes of stuff like traumas or hallucinations are as
easy as doing just that, adding a subtype.

But memories used this factory argument passing method combined with
holding all their strings in a JSON file which made it just frustrating
to add, debug, or just mess with.

It also made it much harder to organize new memories keep it clean for
stuff like downstreams.

So I refactored it. Memories are now handled on a subtype by subtype
basis, instead of all memories being a `/datum/memory`.

Any variety of arguments can be passed into memories like addcomponent
(KWARGS) so each subtype can have their own `new` parameters.

This makes it much much easier to add a new memory. All you need to do
is make your subtype and add it somewhere. Don't need to mess with jsons
or defines or anything.

To demonstrate this, I added a few memories. Some existing memories had
their story values tweak to compensate.

Makes it way simpler to add new memories. Maybe we'll get some more fun
ones now?

🆑 Melbert
add: Roundstart captains will now memorize the code to the spare ID
safe.
add: Traitors will now memorize the location and code to their uplink.
add: Heads of staff winning a revolution will now get a memory of their
success.
add: Heads of staff and head revolutionaries who lose their respective
sides of the revolution also get a memory of their failure.
add: Completing a ritual of knowledge as a heretic grants you a quality
memory.
add: Successfully defusing a bomb now grants you a cool memory. Failing
it will also grant you a memory, though you will likely not be alive to
see it.
add: Planting bombs now increase their memory quality depending on how
cool the bomb is.
refactor: Memories have been refactored to be much easier to add.
/🆑

* Modular!

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2023-01-17 12:51:58 +13:00
SkyratBot
ef1ad8331a [MIRROR] Experiment with holding hard references to objects being qdeleted in 515 (saves 1.1+ seconds on init times, more on prod) [MDB IGNORE] (#18361)
* Experiment with holding hard references to objects being qdeleted in 515 (saves 1.1+ seconds on init times, more on prod) (#72033)

## About The Pull Request
Adds `EXPERIMENT_515_QDEL_HARD_REFERENCE`, which will queue to the GC
subsystem using hard references rather than `\ref`. This is only
possible in 515 because of the new `refcount` proc. `\ref` is very very
slow and has some nasty knock on effects, so removing its usages where
possible is good.

This is an explicit opt in define because I want to give us the ability
to test 515 on live while only testing 515 itself, not our experimental
changes. We have a few more of these we want to do so I made a separate
file for them. They're auto-defined in unit tests so we see them with
the alternate test runner. In a perfect world we'd test both on and off,
but eh.

Closes https://github.com/tgstation/dev-cycles-initiative/issues/10

* Experiment with holding hard references to objects being qdeleted in 515 (saves 1.1+ seconds on init times, more on prod)

* fix missed underbarrels

* HEV radio

* Keeps gc_destroyed from getting updated on every step thru the gc queue. (#72401)

Keeps gc_destroyed from getting updated on every step thru the gc queue.

Fixes logic that assumed gc_destroyed is the time the object first
qdel'ed. it used to get updated on each stage of the garbage controller
and there are 3 stages.

Added list index defines for the inner gc item list.

* test fix

* final fix

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2023-01-12 16:16:33 -05:00
SkyratBot
9e4a277cfd [MIRROR] Adds the Cursed quirk [MDB IGNORE] (#18492)
* Adds the Cursed quirk

* Update negative_quirks.dm

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-12 15:21:21 -05:00
SkyratBot
b44967501c [MIRROR] Optimizes explosions (very slightly) [MDB IGNORE] (#18624)
* Optimizes explosions (very slightly)

* Update explosions.dm

* Update atoms_movable.dm

* Update dungeon.dm

* Update stone.dm

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-10 12:34:26 -08:00
SkyratBot
953aeaff4a [MIRROR] Clean up something else which was failing CI [MDB IGNORE] (#18372)
* Clean up something else which was failing CI (#72299)

## About The Pull Request

Well my last PR passed the CI but everything else is still failing and I
want a little tick next to my pull requests.
So I guess I'm whacking moles until everything that 515 doesn't know how
to dispose of is disposed of?

I'll be honest I don't know what change makes this a requirement when it
wasn't before but it seems like a logical thing to be doing.
Unfortunately running this test locally doesn't produce a failure for me
so my only solution is to keep getting the CI to do it and hope that it
doesn't report a false positive again.

## Why It's Good For The Game

![image](https://user-images.githubusercontent.com/7483112/209726114-4a6da427-f82b-433b-a7ef-39591dc72e7b.png)

## Changelog

Not player facing

* Clean up something else which was failing CI

* modular m90

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2023-01-09 06:36:16 -05:00
SkyratBot
a5d80be1c4 [MIRROR] [no GBP] Carp no longer die in space or break CI [MDB IGNORE] (#18365)
[no GBP] Carp no longer die in space or break CI

Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2023-01-09 06:26:09 -05:00
SkyratBot
ae713bf18a [MIRROR] Crafting/Cooking menu update [MDB IGNORE] (#18334)
* Crafting/Cooking menu update

* Yeeted away all of the merge conflicts, time to fix the code

* Okay, now it compiles, and after testing, it seems to work just fine

* Actually, early addition of an upstream fix, so those that don't have hunger can still open the cooking menu

* Fixes the units tests by removing the extra comma in the Stuffed Muli Pod recipe

Co-authored-by: Andrew <mt.forspam@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2023-01-08 15:02:18 -05:00
SkyratBot
650d64f6d4 [MIRROR] afterattack now returns a flag if it's reasonable to suspect the user intends to act on an item [MDB IGNORE] (#18519)
* afterattack now returns a flag if it's reasonable to suspect the user intends to act on an item

* Update _neck.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-07 06:55:38 +00:00
SkyratBot
b80abedb59 [MIRROR] refreshes syndi-kits and syndicate surplus crates, introduces shared limited stock [MDB IGNORE] (#18209)
* refreshes syndi-kits and syndicate surplus crates, introduces shared limited stock

* merge conflict

* Surplus balance, Consolidated our surplus crate and the new tg one to just use our stats

* use upstream surplus loot crates

* syndicrate

Co-authored-by: Sol N <116288367+flowercuco@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2023-01-07 01:42:14 -05:00
SkyratBot
a878c3cc73 [MIRROR] Fixes dual wielding bypassing wizard checks [MDB IGNORE] (#18562)
* Fixes dual wielding bypassing wizard checks (#72431)

Fixes #72428

🆑 ShizCalev
fix: Non-magic inclined mobs will no longer fire staffs while duel
wielding.
/🆑

* Fixes dual wielding bypassing wizard checks

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2023-01-06 21:02:53 -08:00
SkyratBot
9e60e69323 [MIRROR] Adds an engraving to the staff of healing regarding proper healing beam usage. [MDB IGNORE] (#18496)
* Adds an engraving to the staff of healing regarding proper healing beam usage. (#72403)

🆑
fix: Adds an engraving to the staff of healing regarding proper healing
beam usage.
/🆑

Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>

* Adds an engraving to the staff of healing regarding proper healing beam usage.

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: Fikou <23585223+Fikou@ users.noreply.github.com>
2023-01-04 00:49:45 +00:00
SkyratBot
5c6c91144c [MIRROR] Changes the missing food icon test to cover ALL /obj's [MDB IGNORE] (#18139)
* Changes the missing food icon test to cover ALL /obj's

* Update implant.dm

* Hopefully fixes all the failing integration tests!

* Fixes more missing icons

* Even more icon fixes

* Hopefully that was all of them

* Okay now SURELY that's all of them

* I'm tired of this shit man

* Hopefully that's all, for real this time!

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-12-28 19:30:05 -05:00
SkyratBot
15faaa54f5 [MIRROR] Rewrites how action buttons icons are generated, makes them layer nicer. Allows observers to see a mob's action buttons. [MDB IGNORE] (#17907)
* Rewrites how action buttons icons are generated, makes them layer nicer. Allows observers to see a mob's action buttons.

* conflicts

* Modular!

* update modular

* icon icon icon icon icon

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2022-12-16 16:01:41 +00:00
SkyratBot
d5b5191e9d [MIRROR] Revolver Resprites: Imaginos Edition [MDB IGNORE] (#18166)
* Revolver Resprites: Imaginos Edition

* Removes the aesthetic module sprite

Co-authored-by: Imaginos16 <77556824+Imaginos16@users.noreply.github.com>
Co-authored-by: Halcyon <81479835+Ebin-Halcyon@users.noreply.github.com>
2022-12-16 01:15:37 +00:00
SkyratBot
632e356f81 [MIRROR] makes beams better (plus small kinesis tweaks) [MDB IGNORE] (#18041)
* makes beams better (plus small kinesis tweaks)

* meat hook

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-12-15 14:18:26 -05:00
SkyratBot
20ec22bca2 [MIRROR] The Indestructible objective energy guns protect their contents, preventing them from bricking [MDB IGNORE] (#18148)
* The Indestructible objective energy guns protect their contents, preventing them from bricking (#71976)

## About The Pull Request

Stops the two objective firearms from having their contents destroyed by
bombs. This isn't important for any other firearms, as they're all
destroyed by those explosions rather than surviving them, only to have
their contents deleted instead.

## Why It's Good For The Game

An everpresent consequence of oversimulation in firearms is that they're
prone to stupid shit like this happening. Since you can't replace the
power cell in these weapons, it just bricks the guns.

You can certainly replace the firing pin in the gun if that's destroyed,
but I figured it would be better to just wholesale make this no longer a
problem for these weapons.

## Changelog
🆑
fix: Stops strong enough explosions from bricking the objective energy
guns permanently.
/🆑

* The Indestructible objective energy guns protect their contents, preventing them from bricking

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2022-12-14 22:39:08 -08:00
SkyratBot
cf67304574 [MIRROR] Refactors Pirates into Pirate Gangs, Adds the Psyker-gang as new pirates [MDB IGNORE] (#17920)
* Refactors Pirates into Pirate Gangs, Adds the Psyker-gang as new pirates

* [PR to PR] NRI raider de-conflicting (#17921)

* sosig

Update revolver.dm

* Update nri_raiders.dm

* Apply suggestions from code review

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>

* Update nri_raiders.dm

* uhuh

* Update nri_raiders.dm

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Stalkeros2 <42087567+Stalkeros2@users.noreply.github.com>
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2022-12-08 09:43:43 -08:00
SkyratBot
17ab5722a2 [MIRROR] Radial menu to remove PKA modkits with a right click from an empty hand. [MDB IGNORE] (#17911)
* Radial menu to remove PKA modkits with a right click from an empty hand. (#71603)

## About The Pull Request
You can choose and remove one at a time, code blatantly stolen from the
shotgun cabinet.
The crowbar functionality stays because Cyborgs need it to empty their
PKA.
## Why It's Good For The Game
![Right click
PKA](https://user-images.githubusercontent.com/55374212/204449791-209afc83-9e72-42c4-aa08-92c39216b979.png)

This gives more control for miners to swap modkits from one fight to the
next or possibly mid fight.
Miners often have a favorite PKA setup that they use for most shifts, by
making swapping easier we have a little more freedom to add modkits that
are only useful occasionally (say a specific fauna counter) and these
are more likely to be used with an easier swaps system.
The old way to remove modkits was just pain, it would remove every
modkit at once and dump them on the floor.
Something something UX.

And hey, excuse to give better sprites to each modkit in the future.
## Changelog
🆑 Guillaume Prata
qol: Right clicking a PKA with an empty hand will show a radial menu
that lets you remove modkits one at the time.
/🆑

* Radial menu to remove PKA modkits with a right click from an empty hand.

Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
2022-12-04 07:23:13 -08:00
SkyratBot
fcdf5d850c [MIRROR] Psykers [MDB IGNORE] (#17825)
* Psykers (#71566)

## About The Pull Request
Finishes #66471
At burden level nine (or through a deadly genetic breakdown), you now
turn into a psyker.
This splits your skull in half and transforms it into a weird fleshy
mass. You become blind, but your skull is perfectly suited for sending
out psychic waves. You get potent psy abilities.
First one is brainwave echolocation, inspired by Gehennites (but not as
laggy).
Secondly, you get the ability of Psychic Walls, which act similarly to
wizard ones, but last shorter, and cause projectiles to ricochet off
them.
Thirdly, you get a projectile boost ability, this temporarily lets you
fire guns twice as fast and gives them homing to the target you clicked.
Lastly, you get the ability of psychic projection. This terrifies the
victim, fucking their screen up and causing them to rapidfire any gun
they have in their general direction (they'll probably miss you)
With most of the abilities being based around guns, a burden level nine
chaplain now gets a new rite, Transmogrify. This lets them turn their
null rod into a 5-shot 18 damage .77 revolver. The revolver possesses a
weaker version of antimagic (protects against mind and unholy spells,
but not wizard/cult ones). It is reloaded by a prayer action (can also
only be performed by a max burdened person).
General Video: https://streamable.com/w3kkrk
Psychic Projection Video: https://streamable.com/4ibu7o

![image](https://user-images.githubusercontent.com/23585223/204150279-a6cf8e2f-c678-476e-b72c-6088cd8b684b.png)

## Why It's Good For The Game
Rewards the burdened chaplain with some pretty cool stuff for going
through hell like losing half his limbs, cause the current psychics dont
cut it as much as probably necessary, adds echolocation which can be
used for neat stuff in the future (bat organs for DNA infuser for
example).

## Changelog
🆑 Fikou, sprites from Halcyon, some old code from Basilman and
Armhulen.
refactor: Honorbound and Burdened mutations are brain traumas now.
add: Psykers. Become a psyker through the path of the burdened, or a
genetic breakdown.
add: Echolocation Component.
/🆑

Co-authored-by: tralezab <spamqetuo2@ gmail.com>
Co-authored-by: tralezab <40974010+tralezab@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>

* Psykers

* commented out stuff is now in

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: tralezab <spamqetuo2@ gmail.com>
Co-authored-by: tralezab <40974010+tralezab@ users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
2022-12-03 19:45:18 -08:00
SkyratBot
be58f3f173 [MIRROR] Adds ion carbine inhands as well as fixes pink sproite belt/suit storage sprites [MDB IGNORE] (#17853)
* Adds ion carbine inhands as well as fixes pink sproite belt/suit storage sprites (#71572)

Unique inhands for the ion carbines and makes sure that the ion carbine has a defined worn sprite.

* Adds ion carbine inhands as well as fixes pink sproite belt/suit storage sprites

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2022-12-01 18:44:02 -05:00
SkyratBot
a101d66658 [MIRROR] Allows Fully Heal to be passed a series of flags, fixes Adminordrazine being horrible [MDB IGNORE] (#17535)
* Allows Fully Heal to be passed a series of flags, fixes Adminordrazine being horrible

* Apply suggestions from code review

* few more flag bits

* our shit

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
2022-11-28 00:09:31 +00:00
Zonespace
8db803e724 [MIRROR] Changes check_grep to use ripgrep and reformats/cleans up the check_grep file (#17631)
Changes check_grep to use ripgrep and reformats/cleans up the check_grep file (#71324)

## About The Pull Request

I fucked up the check_grep entry for docking ports.
default grep doesn't support newlines and so I need to use `pcregrep -M`

## Why It's Good For The Game

linters working good
## Changelog

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

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: san7890 <the@san7890.com>
2022-11-23 13:08:20 -05:00
Paxilmaniac
c4c1594a24 Gets rid of both ballistic gun fowling* and ballistic emp fulnerability (#17508)
* interesting

* we dont need these anymore
2022-11-22 22:29:25 -08:00
SkyratBot
c9d7c6cdde [MIRROR] Adds the Marksman Revolver from Ultrakill, with coinflipping and splitshotting! [MDB IGNORE] (#17666) 2022-11-22 09:57:59 -08:00
Zonespace
f7c26bbf25 515 Compat (#17465)
* ONLY SKYRAT CHANGES

* ACTUALLY SKYRAT CHANGES

* yolo, revert later

* Update alternate_byond_versions.txt

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2022-11-15 06:59:06 +00:00
SkyratBot
b5bd312379 [MIRROR] Add investigate_deaths [MDB IGNORE] (#17424)
* Add investigate_deaths

* merge changes other than giant_spider which deps on tg/70848

* gib

* dust

* death

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-11 14:44:33 -05:00
SkyratBot
5942183f72 [MIRROR] [NO GBP] More balloon alerts for guns + fixes a wrong alert [MDB IGNORE] (#17415)
* [NO GBP] More balloon alerts for guns + fixes a wrong alert (#71136)

## About The Pull Request

Turns out I missed a few to_chats in #70398. Also I accidentally
inverted one so it said close the cover instead of open it. Oops!
## Why It's Good For The Game

Same reason as the original PR, balloon alerts are handy for stuff you
care about right now and not in 5 minutes. Also they should probably not
tell you to do the opposite of what you actually need to do.
## Changelog
🆑 VexingRaven
fix: Fixed a few balloon alerts for guns and moved a few more chat
messages to balloon alerts
/🆑

* [NO GBP] More balloon alerts for guns + fixes a wrong alert

* update modular

Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-11-09 14:53:23 +00:00
SkyratBot
f3faa38e1c [MIRROR] (hopefully) improvements to use of scope and kinesis module [MDB IGNORE] (#17302)
* (hopefully) improvements to use of scope and kinesis module (#70934)

## About The Pull Request
so, scope and kinesis are the only things in the game (other than the
body zone selector) which use the function MouseMove. this tracks every
mouse movement, which meant we had to stuff a cooldown on it to not
calculate a ton of useless stuff. this time can misalign if you move
your mouse fast, not registering at all, as well as not working out with
the 0.2 second processing time of the things handling it (the scope
component and kinesis module)
instead of doing that, we are now keeping the mouse parameters as a
variable, which we update with every mousemove to the current
parameters. then we handle the calculations right as we need them (in
the kinesis/scope) module, rather than relying on mousemove cooldowns,
this should hopefully feel way better

## Why It's Good For The Game
😁

## Changelog
🆑
qol: sniper scopes and kinesis module should feel better to use
/🆑

* (hopefully) improvements to use of scope and kinesis module

* seconds

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-11-04 12:55:05 -04:00
SkyratBot
f3868c3522 [MIRROR] De-runtimes dueling pistols [MDB IGNORE] (#17227)
* De-runtimes dueling pistols (#70816)

* de-runtimes dueling pistols

* more refactors, pairing of unpaired guns

* return

* De-runtimes dueling pistols

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
2022-10-29 07:19:11 -07:00
SkyratBot
02e5e6af06 [MIRROR] Carrying a null rod no longer disables the ability to use the traitor chef's meat hook [MDB IGNORE] (#17162)
* Carrying a null rod no longer disables the ability to use the traitor chef's meat hook (#70783)

override meat_hook's inherited antimagic flags

Co-authored-by: SeigaSeiga <seigacomm@ gmail.com>

* Carrying a null rod no longer disables the ability to use the traitor chef's meat hook

Co-authored-by: SeigaSeiga <seigashearwood@gmail.com>
Co-authored-by: SeigaSeiga <seigacomm@ gmail.com>
2022-10-25 21:33:15 -04:00
SkyratBot
60356ebbfd [MIRROR] Fixes Type Mismatch Causing Infinite Irrevocable Welding [MDB IGNORE] (#17036)
* Fixes Type Mismatch Causing Infinite Irrevocable Welding (#70670)

* Fixes Type Mismatch Causing Infinite Irrevocable Welding

(and plasma cutters too, because that seemed to be broken as well).

Hey there,

Behavior introduced in #70235 caused this shit to break, causing infinite welding that you could never undo, with an overlay that could never be removed. This was due to a type_mismatch runtime that plagued servers for a bit, I just stole the pattern from Lemon and used LAZYADD/LAZYREMOVE and that seemed to have fixed the issue.

* fixes plasmacutter since it had the same broken pattern

* Fixes Type Mismatch Causing Infinite Irrevocable Welding

Co-authored-by: san7890 <the@san7890.com>
2022-10-20 02:23:36 -04:00
SkyratBot
612568daa0 [MIRROR] Swaps sleep() to use SECONDS define [MDB IGNORE] (#16973)
* Swaps sleep() to use SECONDS define

* merge conflicts and skyrat modules

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-19 19:43:24 -04:00
SkyratBot
59dc5c36b7 [MIRROR] Cleans up the fallout from plane cube [MDB IGNORE] (#17003)
* Cleans up the fallout from plane cube (#70235)

* Cleans up the fallout from plane cube

Alright.
Makes cleaning bubbles respect planes
Adds support for updating overlays on move, fixing an issue with pointing at items
Adds better error messages for failing to provide args for mutable_appearance()
Fixes a bug where string overlays were not respecting insertion order

* Adds documentation for offset spokesman and offset_const

* Better stack trace

* Removes some redundant uses of cached MAs

At this scale, attempting to cache MAs like this has 0 impact on anything
And just makes things more messy then they need to be

* ensures fullscreen objects START offset, so things are always proper

* ensures chatmessages always have the right offset

* fixes compile

* whoops, the above lighting plane should actually be ABOVE the lighting plane

* fixes compile, also cleans up the fire overlay a tad

* Adds a unit test for plane masters that are shrunk by multiz being double shrunk

This is slightly hacky because of how I'm handing the plane master
group, but it's not THAT bad, and gives me some real good coverage

* Properly targets the seethrough plane at the game world plate. This fixes unit tests, and also just makes more sense

* whoops

* oh

* adds datum support for allocate(), cleans up a harddel from testing

* Makes camera chunks index at 1, and also makes them support non powers of two sizes, since that was unneeded

* fixes runtime in allocate

* Cleans up the fallout from plane cube

* liquid tweaks

* oop

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-19 19:43:05 -04:00
SkyratBot
2853e3ffef [MIRROR] Wizard DLC - Tower of Babel [MDB IGNORE] (#16978)
* Wizard DLC - Tower of Babel (#69629)

About The Pull Request

This adds a new status effect called - Tower of Babel

Any carbon mob afflicted by the status effect will lose knowledge of every known language and gain a randomized one as a replacement. The affected mob will also be hit with a depressing moodlet that lasts for 15 seconds. Silicons are immune to all effects.

This effect is implemented in several ways:

    Tower of Babel wizard event (all crew on the station z level are affected. The wizard is not and gains mastery of every language to taunt their victims)
    Admin smite option
    Admin secret event (can be reversed)
    Staff of Babel (formerly the Staff of Sapping) will spawn during spawn magic wizard event
    Magicarp will randomly shoot bolts of babel
    Staff of Chaos will randomly shoot bolts of babel
    Overdosing on Mushroom Hallucinogen will temporarily and sporadically acquire the effect

The effect can be blocked or cured in several ways:

    Curators are given immunity
    Reading a book of babel (via lavaland loot) cures and gives immunity
    Reading a language book cures and gives immunity ONLY for that particular language

Note - The Tower of Babel does not allow tongueless, mute, or tongue tied people the ability to speak

* Wizard DLC - Tower of Babel

Co-authored-by: Tim <timothymtorres@gmail.com>
2022-10-19 12:25:29 +01:00
SkyratBot
a708d0ed1e [MIRROR] Russian revolver now lets you suicide with it [MDB IGNORE] (#16952)
* Russian revolver now lets you suicide with it (#70568)

* Russian revolver now lets you suicide with it

Russian revolvers now use fire_gun instead of afterattack, so the gun's suicide (which uses process_fire) will now work.
I haven't tested, but this seems to fix https://github.com/tgstation/tgstation/issues/66152 too (Monkeys getting aggro on people pointing the gun at them).

* actually, don't check for mob

Now the text is consistent with how it previously was, while always displaying the visible message.

* fix the comment to state yourself only

* Russian revolver now lets you suicide with it

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-10-18 12:08:58 -04:00
SkyratBot
db208c43a6 [MIRROR] Replace some chat messages for guns with balloon alerts [MDB IGNORE] (#16879)
* Replace some chat messages for guns with balloon alerts (#70398)

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>

* Replace some chat messages for guns with balloon alerts

* skyrat syncup

Co-authored-by: VexingRaven <msgerbs@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@ users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-17 16:04:31 -04:00
Gandalf
205e55b57f Adds an override to the inhand icon CI check (#16755)
* Update inhands.dm

* ci fix

* ew

* wew

* ew

* wew

* wew

* some hats

* rings and donator clothing

* more guns, pillows, devices

* crush hammer

* Fixing the inhands for the fake announcement device

* traitor_announcer

* Just a handful more fixes, for now.

* lost track of what I changed

* more

* weh

* Okay, now will you pass?

* Update code/modules/projectiles/guns/ballistic/bow.dm

Co-authored-by: tastyfish <crazychris32@gmail.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-10-12 00:29:37 +00:00