Commit Graph

8 Commits

Author SHA1 Message Date
SkyratBot
b8d9874c27 [MIRROR] Converts all A && A.B into A?.B (#1292)
* Converts A && A.B into A?.B (#54342)

Implements the ?. operator, replacing code like A && A.B with A?.B

BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.

* Converts all A && A.B into A?.B

Co-authored-by: ZeWaka <zewakagamer@gmail.com>
2020-10-13 23:19:25 +02:00
SkyratBot
f8ce14a9a6 [MIRROR] Makes Modular PC icons not hardcoded in NtosMain.js, and fixes them not showing up (#1151)
* Unhardcodes Modular PC icons (#54158)

* Changes modPC program icons to not be hardcoded

* icons

* tgui.bundle.js, we meet again

* Makes Modular PC icons not hardcoded in NtosMain.js, and fixes them not showing up

Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
2020-10-04 15:25:44 +02:00
SkyratBot
98568e191a [MIRROR] Enforce preserving parent proc return values across ui_act call stacks (#999)
* Enforce preserving parent proc return values across ui_act call stacks (#53964)

All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.

* Enforce preserving parent proc return values across ui_act call stacks

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-26 17:17:59 +02:00
SkyratBot
62a57ad922 [MIRROR] Fission360 can now scan items on other Z levels (#318)
* Updates Fission360 (#52783)

* Fission360 can now scan items on other Z levels

Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
2020-08-13 00:18:40 +02:00
SkyratBot
5e6fcd041b [MIRROR] Updates modular PC program names to have some flavor (#216)
* Updates modular PC program names to have some flavor (#52492)

* Better program names

* Forgot a few things.

* oops

* Updates modular PC program names to have some flavor

Co-authored-by: zxaber <37497534+zxaber@users.noreply.github.com>
2020-08-07 01:38:08 +01:00
Aleksej Komarov
0cf00a2645 tgui 4.0 (#52085)
* tgui 4.0 hyper squash

* Upgrade dependencies
2020-07-16 20:13:04 +02:00
zxaber
4156b79b94 Adds Syndicate tablets, replaces the pinpointer used by Nuke Ops (#51386)
* Synux

* cleanup

* I bet this merge conflicts

we hate tgui.bundle

* extra bits

* Syndix

* small fixes

* Summary (required)

* this linter drives me up the wall

* final touchups

* Forgot this thing
2020-06-22 16:24:43 -03:00
zxaber
5a07c3f29a Adds two new modular apps: Lifeline for tracking suit sensors, and the Syndicate-only Fission360 for tracking nuke-related items (#51152)
About The Pull Request

    Adds two new modular computer programs. Both use the same underlying parts;
    -- Lifeline is an improved suit sensor tracker, showing where the target is on a grid if they're within 24 tiles. The scan button has a two-second delay (since the program has to check every humanoid in glob.human_list for trackability and we don't want that spammed). The app works pretty much how you would expect.
    -- Fission360 uses the same processes as above but for the nuke disk and all nukes in the area (self destruct, beer, syndicate). Available only via emagging a tablet for the moment.
    --
    Rudimentary multiZ support exists, in the form of replacing the crosshairs icon with an up or down arrow (once it's visible within the circle) to indicate if the target is above or below, if both the target and the computer are on a station Z level of some sort. Also, the grid lines are exactly two-tiles apart.

    Added support for programs to list special assets to load, so that we don't have to have every program loading all modular program assets. The radar apps use this to load the background grid and the too-far-away-to-display arrow.

Why It's Good For The Game

More modular apps are good. I'm hoping to see a syndicate-version of the modular tablet in the hands of nuke ops at some point, which is really where Fission360 will make sense. Otherwise, it's an extra tool for traitors with the nuke theft objective, I suppose.
Changelog

cl
add: Two new apps for modular computers are available: Lifeline for Medical, and Fission360 for anyone with access to the Syndicate repository. Lifeline is an improved suit sensors tracker, and Fission360 is the same but for nuclear-related things.
/cl
2020-05-27 15:36:28 +12:00