Updated balloon alerts with the latest changes from tgstation.
Improvements include a new plane for them, and their duration changes
depending on their length.
Unfortunately, since they were added, they have been abused for really
long text that is difficult to parse in-game (by myself included).
Balloon alerts are useful, but they are not smoking guns and have
limitations due to their lack of persistence. I have clamped down on
their abuse in favor of the standard established by tgstation, [seen
here](https://hackmd.io/0Cvr4hpcTe-KI6SbgfUWtw#balloon_alertballoon_alert_to_viewers).
We lack updated runechat so I will not propose this be a fully
implemented standard at this time, but I have cut down all existing
balloon alerts to size.
Refactored (second passage) how movement works, now it's mostly in line
with TG handling and avoids calling 3 gazillion Cross() Uncross() etc.
on every atom in a turf.
Fixed EMP protection from species not actually protecting (this includes
the surge prevention for IPCs).
Fixed EMP 3D calculation runtiming because I forgot to make the value
absolute and it was doing the square root of a negative number.
It's now possible to queue the round to start with the Start Round verb
even while the system is initializing, for an even faster pain train to
enter the round and test things.
Turned a ton of unmanaged globals into managed globals.
Refactored some UT output.
Removed some unused things, including vars.
Added a test to ensure people don't keep adding new unmanaged vars.
Don't let the large file size scare you, it's just mostly splitting
stuff into contained sprites and putting them in the correct place.
Anyway, resprites most non-resprited devices in devices.dmi, and puts
them in contained sprites.
Also puts any related /obj/item/device into contained sprites too.
That's basically the long and short of it.
From previous PR:
- Fixes Quick Equip (Thanks, Matt)
- Fixes Loadout Preview, will override uniforms properly now
- Turns shirts into uniform items, so you can attach accessories to them
This also fixes the issue of people spawning in shirtless if they didn't
attach properly to the pants.
Additions:
- Shifts suspenders, leather chaps, and kneepads to be pants
accessories.
(This fixes the issue of accessories staying even without pants, e.g.
assless chaps)
(In future, hip holsters are to be added to this accessory list)
Anyway, that's the long and short of it. Have fun.
---------
Signed-off-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
Refactored mousedrag procs, added signals, some safeguards, did some
cleanups around, renamed them to make a little more sense. Mostly put in
line with TG's code.
Fast clicking and releasing with a drag, depending on the grace period
and how fast it is done, can be counted as clicks, to aid in combat
scenarios where you spamclick.
Adds the SPLF Raider offship, a repurposed freighter used by the
Solarian People's Liberation Fleet to raid corporate assets in the CRZ.
This is a piratical offship, but they are not antagonists.
- In terms of ghostroles, this ship is comprised of four volunteer
militants, one repurposed civilian synthetic, and one actual naval petty
officer from the 35th splinter to moderate the volunteers.
- My hope is that the ship should avoid independent ships and only
attack corporate vessels, which I hope is communicated in the ghostrole
descriptions.
- For now, the uniforms and voidsuits are all generic Solarian assets,
which may spark some confusion over how the SPLF is meant to be an
entirely seperate faction to the mainline ASSN. With some luck, we'll
have unique SPLF suits to work with soon.
This creates two modkits for the Assunzionii 'Rook' voidsuit, one for
the human variant and one for the IPC variant, available in the loadout
to any character with an Assunzionii origin. It's only applicable to
research voidsuits.
IPCs have access to both variants so human-shaped synthetics can still
get a suit they can use.
In current code, the Rook is a military voidsuit descended from the
Coalition Vulture. As this allows you to transfer it from research
voidsuits, it has been shifted to be a mechanically identical subtype of
the standard research suit. Anything in the description alluding to its
military uses or its anomaly resistance have been removed to reflect
this.
This should be a relatively clean change, the Rook isn't currently used
substantially in the uplink or for any ghostroles. My thought is that,
if someone ever does make an Assunzione military offship, they could
resprite this suit for a new armoured variety. The implementation should
otherwise resemble the implementation of the Himean modkits.
This implements a resprite of the regular Gargoyle voidsuit, the SFA
variant, and the SSMD variant, full credit to shqvelheaded on discord
for the sprites. This also adds a unique variant for the SPLF, which I
intend to use for https://github.com/Aurorastation/Aurora.3/pull/20197.
Not all of the Gargoyle variants have been resprited, but most of the
ones that are accessible ingame short of using the uplink, and are
extant factions in the setting, have been.

https://forums.aurorastation.org/topic/20198-mission-briefing-auroras-gamemode-revolution
To-do:
- [x] Finish storyteller verbs.
- [x] Storyteller landmarks.
- [x] Proper storyteller spawning. Right now the gamemode system is
happy with just picking one storyteller and no actors.
- [x] Antagonist whitelists code.
- [x] Adding the Storyteller whitelist.
- [x] Mission map loading code.
- [x] Map in a bunch of missions.
- [ ] Storyteller adminhelps.
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: DreamySkrell <>
Does what it says on the tin. Purely cosmetic for now. This is step
zero.
Basically, clothing is starting to get real bloated with a lot of
variants.
More pressingly, accessories as well, and we're probably going to get
accessories of accessories.
After seeing what's going on with arm guards, leg guards, plate carriers
and the like,
it's heading towards a really messy level of abstraction.
Hopefully this will nip it in the bud, so to speak.
I've also added the layering feature used in watches, so you can tuck in
your uniform in your pants, or your coat in your pants if you're so
inclined to.
This also means that in the near future, we'll finally have the ROLL
PANTS feature that has escaped us for so long.
For reviewers :
This PR is majority legwork of simply adding the new pants slot in. Very
similar to my previous Wrist slot PR.
The rest is just changing the existing pants/skirts over to a new
loadout slot and changing paths.
---------
Signed-off-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
**This is up for review.**
- Remaps the Golden Deep ghostrole to be better.
- Includes new uniforms for menial Golden Deep synthetics, and new
Golden Deep voidsuits.
- Includes the clothes dyer, a new item that changes the colour of
recolourable clothing to whatever the user wishes. Adds it exclusively
to the Golden Deep ship, so the merchant can customise their drip as
much as if they were in the loadout, since pretty much all of the newer
GD clothing is recolourable. Works for both the regular colour and the
accent colour.
- Uses submaps for the warehouse.
- A few semi-empty spaces exist right now which will be filled once the
sprites for what's going to go there are complete, particularly in the
great hall.
- The armoury is intended to be pretty strong - it's a cargo freighter
with very valuable cargo, so you have an unusually hard fight to get
said cargo if you board. It contains a laser rifle, a combat shotgun
(with a box of EMP shells, notably, with the idea that the Hoplan should
be particularly good at restraining other synthetics), two energy
glaives, and two pistols intended for the Hoplan. There are also two
machine pistols and two energy carbines, intended for if the Hoplan wish
to arm the rest of the crew.
- Adds the ship to Valley Hale - has the OK from lore, as far as I know.
Removed a snowflake storage code for the light replacer, that was
bypassing the doafter loading inside afterattack.
Fixed multi-stacking light replacing doafter.
Fixes#19508
Refactored the attack proc signature.
Added signals and components for the attack proc.
Added signals and components for the attackby proc.
Adjusted some leftover attackby procs signatures.
Added grep test to ensure people don't keep adding attack/attackby procs
with the wrong signature.
I'm not sure when the templeist versebook lost the icon it was meant to
reference, but it's been broken for a while. This adds a new sprite for
the book, plus inhands, to fill the gap.
Refactored the projectile code, mostly in line with TG's now.
Refactored various procs that are used or depends on it.
Projectiles can now ricochet if enabled to.
Damage falloffs with distance.
Homing projectiles can now have accuracy falloff with distance.
Projectiles have a maximum range.
Muzzle flash is configurable per projectile.
Impact effect of the projectile is configurable per projectile.
Accuracy decreases with distance.
Projectiles work with signals and emits them, for easy hooking up from
other parts of the code.
Meatshielding is now less effective .
Impact sound is now configurable per projectile.
High risk.
Refactored all the builtin text procs to use string interpolation
instead.
Added a linting for the above.
This is based on, and should only be merged after, #19847
Personal shields can now remain active while put back in the belt,
freeing your hands.
Some code reordering and cleanup.
Fixed a runtime on inspection of the personal shield.
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.