* Replaces GetComponent in Mining items with Signalers (#68575)
* Replaces many instances of GetComponents in mining items with signals and better uses overall of Components, in drills and the GPS handcuffs.
* To do this, also added 3 new signals to mechs when you are adding/removing mech equipment onto one.
* Replaces GetComponent in Mining items with Signalers
Co-authored-by: Salex08 <33989683+Salex08@users.noreply.github.com>
* entrenching tool now tells you on examine how to switch config (#68551)
* entrenching tool now tells you on examine how to switch config
Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
* addresses reviews on the tram pr made after merge, fixes diagonal movement bugs (#68033)
* addresses reviews on the tram pr made after merge, fixes diagonal movement bugs
* wew
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Tsu's Brand Spanking New Storage: or, How I Learned To Pass Github Copilot As My Own Code
* Delete storage.dm
* yippee
* shit
* holy shit i am stupid
* more fixes
* fuck
* woops
* The mining wardrobe has now an "explorer" duffelbag instead of a normal one. (#68425)
* The mining wardrobe has now an "explorer" duffelbag instead of a normal one.
Co-authored-by: Tristrian <Tiago.A.C.9@hotmail.com>
* Revisiting The Goliath: Or, that time I dripped out the SBC Starfury just because (#68126)
Drips the SHIT out of the SBC Starfury while not completely overhauling it. Touches everything NOT in engineering or southward (because I love how scuffed that part is and refuse to touch it on principle) - Also converts one map varedit into a real boy subtype, and moves tiny fans to their own file.
Mandatory disclosure on the gameplay changes:
Fighters 1 and 3 are now NOT in the hangar, and are now attached to the formerly unused gunnery rooms.
Cryo now works. Yeah. I know.
You can actually open the anesthetic closet now.
Everyone now shares three spawners. This doesn't reduce the amount of people who can play when this rolls, as I've adjusted var/uses in accordance: it just reduces clutter.
A few of the horizontal double airlocks have been compacted into glass_large airlocks.
The bar windows now actually have grilles like they were meant to.
Four turbines have shown up. They aren't functional*, they just look like gunnery and conveniently fit in the spots. I'm sure this is space OSHA compliant.
The map is ever so slightly smaller, vertically. This should distance us from an edge case where somehow all space levels are too cluttered for this to spawn properly, for the time being.
*Technically there's nothing stopping you from using them besides the amount of time it'd take for the operatives to kick your ass
This map was originally designed wayyy back before we even had the computer sprites we have now, (#27760 if you want to see SOUL) and it shows. While it will never have it's SM again, we can at least make the thing much nicer to look at.
* Revisiting The Goliath: Or, that time I dripped out the SBC Starfury just because
Co-authored-by: BluBerry016 <50649185+unit0016@users.noreply.github.com>
* Fixes Survival Pod Walls Not Smoothing With Their Airlocks (#68116)
Fixes#68115 (Survival Pod Walls Don't Smooth With Their Airlock)
They used to smooth, but then during the icon smoothing refactor someone forgot to add them to their smoothing_groups
Also corrected the misspelling
* Fixes Survival Pod Walls Not Smoothing With Their Airlocks
* Update spaceship_turfs.dm
Co-authored-by: 13spacemen <46101244+13spacemen@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
* Fix some dashes breaking permanently (heirophant staff and ninja sword) (#68195)
* Fix dashing sometimes breaking, with additional code improvement to go along with it.
* Fix some dashes breaking permanently (heirophant staff and ninja sword)
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Fixes some cases which references are used in trait sources, potentially causing hard deletes (#67974)
About The Pull Request
Fixes some cases in which actual references were used in trait sources instead of keys (or ref() keys).
This can cause some rare and difficult to find hard deletes.
Trait sources should be a string key relating to the source of it, not an actual reference to what added it. References within trait sources are never handled in Destroy(), because it's not expected behavior, meaning it can cause hanging references.
So, I went through with a regex to find some cases and replaced them.
I used the following and just picked through the few by hand to find erroneous ones.
ADD_TRAIT\(.+, .+, [a-z]+\)
REMOVE_TRAIT_TRAIT\(.+, .+, [a-z]+\)
Why It's Good For The Game
Less hard deletes, probably.
Changelog
cl Melbert
code: Some traits which mistakenly were sourced from a hard reference are no longer.
/cl
* Fixes some cases which references are used in trait sources, potentially causing hard deletes
* wew
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Completely removes `proc_holders` from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code.
* our changes
* yes
* 0
* Update blackmesa.dmm
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* [MDB Ignore] Makes mining and labor shuttle home docks their own type, rather than varedits (#68006)
I'll have to do the others at some point
I don't want to, but it'll happen
* [MDB Ignore] Makes mining and labor shuttle home docks their own type, rather than varedits
Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com>
* Implements a Demolition Modifier variable to items, affects damage vs structures and robots. (#66967)
Adds a modifier variable which can be used to increase or decrease a given items damage to structures, machinery, vehicles, and robots (including cyborgs, simple-bots, and anything else with the MOB_ROBOTIC biotype)
* Fixes attacks on mech equipment ignoring armor / melee damage, also fixes mech equipment not being disabled at 0% health, also also unit tests mech armor (#67411)
Co-authored-by: itseasytosee <55666666+itseasytosee@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* This tail refactor turned into an organ refactor. Funny how that works.
* Firstly, fixing all the conflicts.
* Fixes all our maps (hopefully)
* Actually, this should fix pod people hair :)
* Almost everything is working, just two major things to fix
* Fixed a certain kind of external organ
* Cleaning up some more stuff
* Turned tail_cat into tail because why the fuck are they separate?
* Moved all the tails into tails.dmi because that was just dumb to have like 3 in a different file
* Adds relevant_layers to organs to help with rendering
* Makes stored_feature_id also check mutant_bodyparts
* Fixes the icon_state names of ALL the tails (pain)
* Fixes wagging, gotta refactor most mutant bodyparts later on
* I Love Added Failures
* Fixed some organs that slipped through my searches
* This could possibly fix the CI for this?
* It doesn't look like it did fix it
* This will make it pass, even if it's ugly as sin.
* Fixed Felinids having a weird ghost tail
* Fixes instances of snouts and tails not being properly colored
Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
* Material holding machines can't connect to ore silos on different z levels (#66953)
The station's ore silo can't connect to machines that are off the station z-level anymore. This doesn't affect multi-z stations.
Also includes ore silo code improvement because I was unhappy with it.
* Material holding machines can't connect to ore silos on different z levels
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Refactors how fauna scans stuff + electrocute act (#66947)
* Refactors how fauna scans stuff + electrocute act
Electrocuting fauna (like with staff of storms) now acts the same way attacking it does, and causes Megafauna to hunt you.
This refactors fauna's FindTarget to do so.
* merges the two for loops
* Refactors how fauna scans stuff + electrocute act
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Add new H.E.C.K. suit GAGS sprite, recolorable via spray can (#67217)
imageadd: The H.E.C.K. suit has a new sprite. (by Meyhazah)
add: You can now use a spray can to completely recolor the H.E.C.K. suit.
* Add new H.E.C.K. suit GAGS sprite, recolorable via spray can
Co-authored-by: Urumasi <Urumasi@email.cz>
* [MDB IGNORE] The Grand Airlock Naming Audit (#67235)
I manually audited all 4,710 instances of airlocks across all maps for upper casing
You'll never guess what I found.
UPDATE: We now have a grep to check for mistitled airlocks, and it's in this PR!
* [MDB IGNORE] The Grand Airlock Naming Audit
* TG MAP RESET
Co-authored-by: Son-of-Space <63861499+Son-of-Space@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* [MDB IGNORE] More /area/ typepath organization and cleanup (#67107)
This further continues what I did in b4fb8f3ed1 (but instead of just stations, its now every (most) applicable area in the game
* [MDB IGNORE] More /area/ typepath organization and cleanup
* wew
* e
* Update CentCom_skyrat.dmm
* wew
* ews
Co-authored-by: Jolly <70232195+Jolly-66@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Fixes Marker Beacons Not Having an Icon (#66830)
FUCK.
In #66736 (7517e79), I forgot to change this line. It worked fine in the screenshot because the screenshot came from before I spun it out into it's own DMI. Whoops.
* Fixes Marker Beacons Not Having an Icon
Co-authored-by: san7890 <the@san7890.com>
* Titan's Final Lament - Colossus and hierophant crusher trophy rework (#66793)
This is somewhat a port of BeeStation/BeeStation-Hornet#6805 with slight changes, credits to Rukofamicom for the original PR.
Kinetic crusher is supposed to be a high risk high reward weapon, but with current hiero wall trophy it just ends up with the player cheesing mob and boss AIs. To fix this, here we change hiero trophy to spawn a hierophant chaser instead of a wall, which will increase player's DPS without offering them any protection.
However, this creates another issue: right now colossus is unbeatable with crusher without cheesing it with the wall due to it's shotgun attack which kills and dusts you point blank or 1 tile away, which is extremely unfair and unfun. To fix this, I add what should've been done from the start - make colossus telegraph it's attacks before starting them. Player has 1.5 seconds to react(unlike 3 seconds in the original PR which made the fight much easier) and dodge the attack or at least get away from the colossus to have a chance to survive.
Since this does make the fight significantly easier, colossus gets a special final attack during which it shouts "Perish" and uses different attacks. Unlike in the original PR, he can only use it once, so it's not as deadly and bullshit. This should make the fight more epic and similar to other bossfights which get cool attacks near the end of the battle.
Goodbye 4 GBP, you served me well.
* Titan's Final Lament - Colossus and hierophant crusher trophy rework
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
* Mapping Marker Markets - They're All In Now (#66736)
bout The Pull Request
Hey there,
We had a lot of marker colors previously locked behind the in-game "random marker" mechanic that mappers couldn't really use since you'd have to varedit those shits. Now, instead of just... Burgundy, we now have:
Bronze!
Yellow!
Lime!
Olive!
Jade!
Teal!
Cerulean!
Indigo!
Purple!
Violet!
Fuschia!
All for your mapping enjoyment.
There were also a few instances of weird var_edited mapping markers that I also got rid of in this PR as well. I also split off markers out of lighting.dmi into their own .dmi.
Why It's Good For The Game
image
Gives mappers the power to use these sprites that we already have in the codebase in their conquest to make stuff look better.
Changelog
cl
add: On the mapping end, mappers are now able to add a wide range of funky new colors to maps. Keep an eye out, for they might just be coming to a station near you sometime soon.
/cl
* Mapping Marker Markets - They're All In Now
Co-authored-by: san7890 <the@san7890.com>
* Makes smoke and foam attempt to fill the available space.
* wew
* reset
* Revert "reset"
This reverts commit 75be4f934504793ceb5c9bf2f3774dc24517df5a.
Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
* Improper forced qdel cleanup, some expanded del all verbs (#66595)
* Removes all supurfolus uses of QDEL_HINT_LETMELIVE
This define exists to allow abstract, sturucturally important things to
opt out of being qdeleted.
It does not exist to be a "Immune to everything" get out of jail free
card.
We have systems for this, and it's not appropriate here.
This change is inherently breaking, because things might be improperly
qdeling these things. Those issues will need to be resolved in future,
as they pop up
* Changes all needless uses of COMSIG_PARENT_PREQDELETED
It exists for things that want to block the qdel. If that's not you,
don't use it
* Adds force and hard del verbs, for chip and break glass cases
respectively
The harddel verb comes with two options before it's run, to let you
tailor it to your level of fucked
* Damn you nova
Adds proper parent returns instead of . = ..()
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
* Ensures immortality talismans cannot delete their human if something goes fuckey. Thanks ath/oro for pointing this out
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
* Improper forced qdel cleanup, some expanded del all verbs
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Seth Scherer <supernovaa41@ gmx.com>
Mining voucher redeem selection is now using a radial menu when choosing a voucher rewards instead of an input menu. In addition to looking better, the menu now provides an additional information about specific reward set when a corresponding info button is clicked.
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
* updateDialog and updateUsrDialog cleanup (#66494)
This PR focuses on cleaning up two procs - updateDialog and updateUsrDialog. Both of which are/were used updating for old HTML UIs. As these UIs got converted to TGUI over time, these old code fragments started to pile up, often due to coders simply overlooking them. This resulted in them being dead code doing nothing when called, or randomly opening up windows when they shouldnt, for example when a vending machine is screwdrivered and UI cannot even be interacted with.
However, there were also some desirable uses - like opening a window when an ID is inserted into civilian bounty console, which you are then gonna obviously use to pick a bounty. I kept these uses and replaced them with proper ui_interact, so they now always work, instead of them working only when you had them set as a currently used machine on mob. The list of these changes is:
Civilian Bounty Console will now always bring up its UI when you insert the ID.
Air Alarm and APC will now always bring up its UI when you unlock their controls.
Portable Chem Mixer, Chem Dispenser, Chem Heater, Improvised Chem Heater, Chem Spectometer and Chem Master will now always bring up their UI when you add or replace beaker to them.
Two old /Topic calls were cleaned up as well, as they were no longer relevant.
Removes dead or outdated code, adds sensible UX when working with certain UIs.
* updateDialog and updateUsrDialog cleanup
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>