Commit Graph

32 Commits

Author SHA1 Message Date
SkyratBot
c5ca08fd01 [MIRROR] Adds spaces around logical operators [MDB IGNORE] (#18776)
* Adds spaces around logical operators

* Update code/modules/admin/verbs/admingame.dm

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-01-21 22:16:43 -08:00
SkyratBot
4102b5c67b [MIRROR] Add contextual screen tips for APCs [MDB IGNORE] (#18810)
Add contextual screen tips for APCs (#72625)

## About The Pull Request
And makes some improvements on their balloon alerts.

The code has a lot of if/else nonsense, I followed how other big chains
of screen tips work now but maybe it can be smoothed out, I put the code
on it's own DM so we don't need to stare at that wall while dealing with
other APC code.
## Why It's Good For The Game
APC is definitely the worst offender on construction being a mess.
I personally like that it is a complicated machine that needs multiple
pieces to build/repair, but the bad user experience of doing that just
can't be excused.
Need to memorize multiple steps, a sequence of tools, you have "traps"
you can get caught into by using the wrong tool, using crowbar at the
wrong time and locking the access cover or engiborgs using a screwdriver
and ejecting the cell as examples.

Now you will know what will happen before you misuse tool and you will
get hints about what each tool does to the APC, even if it is not the
right step at the moment, as a balloon alert will explain why the
attempt failed.
## Changelog
🆑 Guillaume Prata
qol: APCs have contextual screen tips now.
/🆑

Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
2023-01-19 15:30:55 -05:00
Zonespace
1135ac5e2c Mirror #72280 (#18648)
Add lints for idiomatic balloon alert usage (#72280)

Adds lints for `balloon_alert(span_xxx(...))` (which is always wrong),
and balloon alert where the first letter is a capital (which is usually
wrong). Fixes everything that failed them. As a reminder, abbreviations
like "AI" and "GPS" shouldn't be capitalized in a balloon alert.

In cases where this is intentional for flavor (there was one case), you
can `UNLINT` like so:

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
2023-01-12 08:48:06 -05:00
SkyratBot
011fefdd81 [MIRROR] Refactors armor into dedicated subtypes [MDB IGNORE] (#18291)
* Refactors armor into dedicated subtypes

* start

* most tg things

* pain (#18584)

* shit

* non-mod changes

* compile

Co-authored-by: John Doe <gamingskeleton3@gmail.com>

* #18291

* compile fix

* ???

Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com>
Co-authored-by: John Doe <gamingskeleton3@gmail.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2023-01-07 20:06:16 -08:00
SkyratBot
002ab78d9b [MIRROR] useless update_appearance reduction, emissive_blocker micro optimization (saves a second of init) [MDB IGNORE] (#18243)
* useless update_appearance reduction, emissive_blocker micro optimization (saves a second of init)

* merge conflict

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2023-01-07 18:45:54 -05:00
SkyratBot
3e8d1e750e [MIRROR] Grey Tide event light behavior changes and code tidiness [MDB IGNORE] (#18009)
* Grey Tide event light behavior changes and code tidiness (#71230)

## About The Pull Request

Makes a number of changes to the Grey Tide event, some of which are and
some of which aren't player facing.

Player facing bits:

- The lights will once again turn off when the event ends and the doors
begin opening. Originally, the lights would all shatter when the event
hit, providing a cover of darkness for opportunists to sneak around
under. Unfortunately this would prevent the AI from fixing the doors
until the lights were replaced, leading to headaches and the removal of
this functionality in #43159. Now, the lights are simply turned off at
the APC instead of shattered.
- The lights now flicker at certain intervals as the event is running,
rather than just right at the start.
- Announcement has been slightly modified to indicate that the event
hits more than just airlocks.
- Event runs way faster. Doors open all at once, rather than
one-at-a-time.

And now for the non player-facing bits:

- The filename is now grey_tide.dm instead of prison_break.dm. The event
was effectively re-branded to the Grey Tide event six years ago, but the
filename was unchaged.
- potential_areas is now a part of setup instead of a var on the
round_event.
- Cleans up instances of single-character varnames and stuff not in
snake case.
- The event now checks if it has any valid areas (will it work or not)
at the start, rather than at the end.
- The event now sends a global signal when run, rather than checking
everything in the entire world. It should run faster now.
- Everything that can be affected by the grey tide event now stores its
functionality on a signal handler, including the light flickers

## Why It's Good For The Game

Makes the grey tide event a bit more interesting and easier to take
advantage of. Cleans up the backend code a bit.

## Changelog
🆑 Rhials
balance: The lights will now flicker more frequently before a Grey Tide
event
balance: The lights will now be shut off via the APC when the Grey Tide
event opens up a department.
code: Makes some miscellaneous code improvements to the Grey Tide event
code: Grey tide event runs much faster
code: Renames prison_break.dm to grey_tide.dm
/🆑

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

* Grey Tide event light behavior changes and code tidiness

Co-authored-by: Rhials <Datguy33456@gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-12-09 03:44:51 +00:00
SkyratBot
c54da692c7 [MIRROR] Adds Type Paths to Duplicate APC Logging [MDB IGNORE] (#17823)
* Adds Type Paths to Duplicate APC Logging (#71592)

## About The Pull Request

Hey there,

Space Ruins all use the same name "Unexplored Location", and one of them
is conflicting:

![image](https://user-images.githubusercontent.com/34697715/204362713-737a3ae0-3caa-4913-8db5-c247d4a0c540.png)

I have no fucking idea which one this is though, given that I took this
screenshot a week ago. It doesn't fail unit tests since it's on a space
ruins Z-Level, which are exempt from those checks. So, let's just at
least put the type in the message so someone can figure it out sooner.
## Why It's Good For The Game

We shouldn't be having duplicate APCs, and this problem is very hard to
fix right now. At least if I had a type, I would be much more able to
tell which subtype of `/area/ruin/space` is fluking on us.
## Changelog
Nothing that affects players.

* Adds Type Paths to Duplicate APC Logging

Co-authored-by: san7890 <the@san7890.com>
2022-12-01 01:01:17 +00:00
SkyratBot
257feb1be7 [MIRROR] More horrible 515 proc compatibility. [MDB IGNORE] (#17671)
* More horrible 515 proc compatibility.

* Feex

* Hopefully we're done now

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-11-27 14:46:36 -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
a6406e4007 [MIRROR] Fixes Unreadable APC Balloon Alerts for Ethereals [MDB IGNORE] (#16817)
* Fixes Unreadable APC Balloon Alerts for Ethereals (#70451)

* Fixes Unreadable APC Balloon Alerts as Ethereals

Hey there,

So basically, when an ethereal on combat mode would try and discharge an APC, they would get this, which is completely unreadable:

So, let's add a small sleep at the end of `togglelock()` for ethereals, and then proceed to continue on with the proc chain of whatever an ethereal might want to do with an APC.

* swaps the balloon alerts to add timers

less elegant, but it does do the job nicely

* Fixes Unreadable APC Balloon Alerts for Ethereals

Co-authored-by: san7890 <the@san7890.com>
2022-10-12 13:58:40 -04:00
SkyratBot
9bf006d189 [MIRROR] Multiz Rework: Human Suffering Edition (Contains PLANE CUBE) [MDB IGNORE] (#16472)
* Multiz Rework: Human Suffering Edition (Contains PLANE CUBE)

* skyrat changes

* bodyparts merge

* unres door floorlight fix

* Future upstream fix for blindness

* upcoming upstream airlock fix

* fix button emissive

* Fix FOV markings?

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: tastyfish <crazychris32@gmail.com>
2022-10-02 23:30:09 -04:00
SkyratBot
96761dae1a [MIRROR] [MDB IGNORE] APC controller and Power Monitor/AmpCheck fixes, aka How do I write PR titles [MDB IGNORE] (#15987)
* [MDB IGNORE] APC controller and Power Monitor/AmpCheck fixes, aka How do I write PR titles (#69146)

About The Pull Request

bgug fix stuff
APC controller UI has its elements section'ed off. The backend has been redone to make the behaviour of the APC controller a bit less janky. The console should be more stable, and all the soul has been removed from the code and the UI.

before this PR stales out from nobody wanting to review my pr, I should probably outline what exactly changed:

    APC controller consoles have had their APC code almost entirely reworked. They no longer have to hold a reference to the person using the controller currently, and APCs themselves no longer hold a reference to the controller, instead to the person directly. A lot of code was moved to APC themselves to make it a lot more stable.
    APC controller used to call toggle_breaker without passing args, causing a runtime. Fixed in

    Fixes the power flow control console not actually being able to toggle breakers #69343
    APC controller UI has had the Window.Content tags moved up to the top component, and a lot has been sectioned off to make the UI more sane.
    AmpCheck used to look for a wire on it's turf, or as a fallback look for the Area APC. A check to see if the APC has a terminal did so on a weakref, causing a runtime and preventing the program from ever finding a valid APC in it's area, making it show nothing. This has been fixed. On the other hand, the power monitor console did not store the ground wire or APC terminal as a weakref, this has been updated. As a fallback, if there are still no APCs in the powernet, the UI will show a dimmer popup.
    There was a "secret" power monitor variation in code so PDAs could not access monitors in hidden places. With the removal of PDAs, this control console is useless.

Why It's Good For The Game

Tiny bit of (much needed) polish on some useful tools in the engineering department.
Changelog

cl
fix: Fixed runtime when using AmpCheck without connecting the console with a wire.
fix: Fixed a few runtimes that could occur when using APC controller consoles.
qol: Sucked soul out of APC controller code and UI.
del: Removed "secret" power monitor console.
/cl

* [MDB IGNORE] APC controller and Power Monitor/AmpCheck fixes, aka How do I write PR titles

* update paths

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-09-05 17:59:42 -04:00
SkyratBot
99b94b2de0 [MIRROR] Fixes APC rigged cell null runtimes [MDB IGNORE] (#15991)
* Fixes APC rigged cell null runtimes (#69597)

* Fixes APC rigged cell runtimes

* adjust

* Fixes APC rigged cell null runtimes

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2022-09-04 14:22:54 +01:00
SkyratBot
895096a37d [MIRROR] [MDB IGNORE] Fix High Capacity APC Inheritance [MDB IGNORE] (#15945)
* [MDB IGNORE] Fix High Capacity APC Inheritance (#69526)

Doing some mapping work downstream and I noticed there were both directional and non directional high caps. Code dived to figure out which was the valid one to use and found the directional high caps were not actually inheriting the upgraded power cells do to bad name structure. Corrected inheritance structure. Updated Kilo and Icebox to use directional high caps as standard and updated several ruin and gateway missions to standard directional high caps

* [MDB IGNORE] Fix High Capacity APC Inheritance

Co-authored-by: ORCACommander <orcacommander1@gmail.com>
2022-08-31 11:41:00 -07:00
SkyratBot
eb10127879 [MIRROR] Makes APCs set lights to low power mode when < 30% (when equipment power turns off) [MDB IGNORE] (#15847) 2022-08-26 14:42:28 -07:00
SkyratBot
6a7619580e [MIRROR] Misc cell fixes [MDB IGNORE] (#15822)
* Misc cell fixes (#69373)

* Fixes APCs runtiming from their cell being destroyed.

* Misc cell fixes

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2022-08-25 14:47:28 +01:00
SkyratBot
3f76c3f5b8 [MIRROR] [GBP No Update] Perish, individual logging runtime [MDB IGNORE] (#15525)
* [GBP No Update] Perish, individual logging runtime (#69024)

missed 2 or 3(lol it was more when I look back at the files), LOG_GAME tags on the log_message line, and did some cleaning up since i was looking through every log_message again

Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>

Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>

* [GBP No Update] Perish, individual logging runtime

Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@ users.noreply.github.com>
2022-08-11 08:12:08 -04:00
SkyratBot
6016cf97b4 [MIRROR] individual LOG_GAME [MDB IGNORE] (#15401)
* individual LOG_GAME

* e

* Update teleporter.dm

Co-authored-by: Mooshimi <85910816+Mooshimi@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-08-08 01:11:55 +01:00
SkyratBot
7c7db8cdc9 [MIRROR] Fix APC constantly clicking during a grid check [MDB IGNORE] (#15285)
* Fix APC constantly clicking during a grid check (#68835)

* apc update change

* apcs should probably force update

* Fix APC constantly clicking during a grid check

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
2022-07-30 08:14:59 -07:00
SkyratBot
7ac51736fe [MIRROR] Some nightshift fixes [MDB IGNORE] (#15126)
* Some nightshift fixes (#68566)

Fixes APC night shift manual cycling balloon alert; update_nightshift uses the correct variable

* Some nightshift fixes

Co-authored-by: Profakos <profakos@gmail.com>
2022-07-22 11:50:43 -07:00
SkyratBot
49e4651f20 [MIRROR] Improves ambience [MDB IGNORE] (#14774)
* Improves ambience

* Update lavaland.dm

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-07-08 01:17:01 +01:00
SkyratBot
7156f4e38d [MIRROR] Resonance cascade polishening, bugfixes and better logging [MDB IGNORE] (#14351)
* Resonance cascade polishening, bugfixes and better logging

* Update light.dm

Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-06-19 22:43:21 +01:00
SkyratBot
339ccfc737 [MIRROR] APC balloon alerts [MDB IGNORE] (#14359)
* APC balloon alerts (#67755)

Changes the to_chat messages from building/repairing/deconstruction/etherealing APCs to balloon alerts.

I tried to standardize the multiple names that some items get into one, example: control board or electronics into just board.
Renamed other things just to be cleaner on what tools to use, example: power terminal was change to cable terminal.
And added ! at the end of all error messages so it is easier to know that your attempt failed.

* APC balloon alerts

Co-authored-by: GuillaumePrata <55374212+GuillaumePrata@users.noreply.github.com>
2022-06-17 00:29:53 +01:00
SkyratBot
0a1f06a2d1 [MIRROR] This tail refactor turned into an organ refactor. Funny how that works. [MDB IGNORE] (#14017)
* 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>
2022-06-11 23:20:16 -04:00
SkyratBot
bcf99a79ac [MIRROR] Better cyclelink_helper_multi and duplicate apc logging [MDB IGNORE] (#13922)
* Better cyclelink_helper_multi and duplicate apc logging (#67151)

* Better cyclelink_helper_multi and duplicate apc logging

Co-authored-by: Tastyfish <crazychris32@gmail.com>
2022-05-26 23:24:35 +01:00
SkyratBot
78a01022cd [MIRROR] Moves APC Mapping Checks to Mapload rather than New (CI IS SAVED EDITION) [MDB IGNORE] (#13866)
* Moves APC Mapping Checks to Mapload rather than New (CI IS SAVED EDITION) (#67193)

* Moves APC Mapping Checks to Mapload rather than New

We've been dealing with this issue for a few months now, and I've grown tired of explaining the problem after I figured it out and decided to finally fix it today.

Basically, this check ran at _all_ times, rather than just on mapload (even though it logs to log_mapping). Not good, let's fix that by shuffling some stuff around. I tested this code and I was able to organically create an APC, and all the APCs on load didn't appear to be absolutely fucked in some horrific way.

* dmdoc

* Moves APC Mapping Checks to Mapload rather than New (CI IS SAVED EDITION)

Co-authored-by: san7890 <the@san7890.com>
2022-05-25 01:04:05 +01:00
SkyratBot
c1a1683db6 [MIRROR] removes permeability, rolling it into bio armor [MDB IGNORE] (#13435)
* removes permeability, rolling it into bio armor

* e

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-05-09 01:16:27 +01:00
SkyratBot
a2aac9dd31 [MIRROR] updateDialog and updateUsrDialog cleanup [MDB IGNORE] (#13118)
* 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>
2022-04-26 15:26:56 +01:00
SkyratBot
1c3f574660 [MIRROR] fixes ethereal feeding breaking APC charging [MDB IGNORE] (#13106)
* fixes ethereal feeding breaking APC charging (#66490)

* fixes ethereal feeding breaking APC charging

Co-authored-by: MacBlaze1 <33578623+MacBlaze1@users.noreply.github.com>
2022-04-25 14:41:55 -04:00
SkyratBot
3e64621cb4 [MIRROR] [NO GBP]increase roundstart power available to SM rooms [MDB IGNORE] (#13023)
* increase roundstart power available to SM rooms (#66393)

Swap the normal APC cell for a high grade one for all maps SM rooms to allow more time to setup the SM

* [NO GBP]increase roundstart power available to SM rooms

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2022-04-23 15:02:42 +01:00
SkyratBot
49f3040f5b [MIRROR] [gbp no-update]fix apc as anything runtiming [MDB IGNORE] (#12985)
* [gbp no-update]fix apc as anything runtiming (#66344)

* fix as anything runtiming

* Apply suggestions from code review

* [gbp no-update]fix apc as anything runtiming

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2022-04-22 00:09:52 +01:00
SkyratBot
353a2b9a73 APC code deep cleaning (#12848)
Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2022-04-17 08:49:49 -07:00