Commit Graph

404 Commits

Author SHA1 Message Date
Gamer025
37c23ef428 Fixes and refactors death examine code (#55907)
Examine death bodies should now display the correct text
Changed the logic so that the message tells you if the players is:

- Still in his body (`[t_He] [t_is] limp and unresponsive; there are no signs of life...`) or
- A ghost that could enter the body again (`[t_He] [t_is] limp and unresponsive; there are no signs of life and [t_his] soul has departed, but the link is not yet fully broken...`) or
- No ghost, that can reenter the body and no key (`[t_He] [t_is] limp and unresponsive; there are no signs of life and [t_his] soul has lost the will to live...`)

Also refactored the code a bit:

- Moved the death examine message generation to a proc so that you can work with returns
- Removed pushed_do_not_resuscitate since its not needed this way
2021-01-07 16:18:09 -03:00
Emmanuel S
23cd239d05 Specifies if DNR was pushed in body examine text (#55399)
Adds the examine text " and [t_his] soul has lost the will to live..." instead of the usual "soul departed" message if the person hits DNR.
2020-12-24 08:17:14 -03:00
Azarak
0a3edac8fb Fixes GC for observers and new players, and tons of loose references to stuff that shouldnt be (#55563)
I've done this on a signal because atom_hud is applied very loosely in some contexes, and the objects themselves dont have an easy way to track back into what huds they're affected by, so this seemed the best. Properly cleans up next_time_allowed, which was missing.

Update: I discovered this is also an issue for a lot of simple mobs, such as slimes and bots and such. So fixing this is huge
2020-12-17 01:42:49 -08:00
Ghom
4c31b0e116 CanUseTopic() refactor. (#54747)
* CanUseTopic() refactor.

* Forgot about default_can_use_topic. Tested and working.

* Update bin.dm

* no-nonsense.
2020-11-25 13:12:12 +01:00
TemporalOroboros
edd6500d78 /obj/screen --> /atom/movable/screen (#54403)
Repaths screen objects to /atom/movable
2020-11-08 23:07:15 -03:00
Rohesie
c55bb1b6c8 Basepixels (#54652) 2020-10-28 20:31:13 -07:00
ZeWaka
9629feed35 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.
2020-10-13 16:43:53 -03:00
Emmanuel S
21707c549b Orbit Menu: Auto-Observe mode, Refresh button, Alive/Ghost counters (#54031)
Observe, Refresh, alive/ghost count, and no more [ghost]

Apply suggestions from mr jaredfogle

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
mister jaredfogle

yes? he built? tgui it
2020-10-07 19:52:51 +03:00
TiviPlus
72fc7213ed Mecha medical and other_equipment refactor (#53637) 2020-09-23 02:40:16 -03:00
Couls
75cdfc88f6 Optimize stat panel and fix guardian verbs (#53463)
Optimizes stat panel code for better performance, including icon caching and removing some unnecessary processing
Also fixes #53432
fix #53381
fix #53724
Changelog

add: icons are back on alt clicks
fix: horrible performance from alt clicking turfs with multiple objects
tweak:browser should notify the SS when it's ready to receive data

* Update statbrowser.html

* Apply suggestions from code review

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

* hidden = TRUE

* almost ready

* Browser should notify when ready to receive data

* Apply MSO's suggestions

* reset cache if something in it gets deleted

* Fix runtime

* fix my stupid code

* send href_token when adding admin tabs

* fix an issue with cyborg suit topic

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-09-14 23:36:46 -07:00
TiviPlus
ce3d7e2f0d Mecha refactor 2020 (#52902)
-Mechs are a vehicle subtype
-Mech equipment half-rewritten
-Mech actions completely redone
-Cooldown macros
-New movement macros & replacing all var in GLOB.diagonals with ISDIAGONALDIR(var)
-New lazylist macro
-Support for lavaland only mechs
-Removed the tank because fuck off with that hacky shit
-Documentation
-Fuckton of fixes
2020-08-29 23:33:47 -03:00
Rob Bailey
533201a9f1 Smooth Movement: Resurrection: Resurgence: Revengeance 4: The Return of Smooth Movement: Smooth Edition Director's Cut (#52515)
Automatic glide size adjustment based on move delay.
Essentially a port of https://github.com/yogstation13/Yogstation/pull/8132 but that was mostly my code with some fixes.

Why again? well it turns out the recent byond fixes to glide size actually worked and solved the issues that were unsolvable.
https://file.house/0B3u.mp4
Glide size no longer incorrectly scales at fps, so it works as intended at any framerate with the only stuttering being normal byond suck stuttering.
2020-08-27 18:34:11 -07:00
Couls
e7f99e3b8b Browser Status Panel (#53112) 2020-08-27 15:28:03 -07:00
Rohesie
eda7c6ca55 Overlay lighting component (#52413)
Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.

It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:


This is a BYOND limitation, very well worth it IMO.

🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑
2020-08-22 14:56:38 +12:00
TiviPlus
b4fe4f717b Refactors area stuff (#52751)
-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot
-Unused vars
-Fixed a var pretending to be a fake bool
-Probably more
2020-08-10 16:31:59 -03:00
tralezab
63382211d8 Mafia Lobby Reworks, Panel Redesign, Abstaining, and More
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-08-08 23:36:37 +03:00
tralezab
864924a804 [READY] Mafia Additional Roles and Generic Randomized Setup (#52083)
* new roles

* Madness rename

* hop judgement override

* hop vote fixed, travis happy

* hop fixed

* Update code/modules/mafia/_defines.dm

Co-authored-by: Fikou <piotrbryla@onet.pl>

* highly experimental random setup system

* hop cannot reveal before any voting is possible, lmao

* this shit actually works lmfao

* removes forced_setup, nightmare detection immune

* whoop

* removes setups!

* OK, finally kind of done with all this minus the incoming reviews

* adds hop's ability to their text, removes old var

* bundle?

* Update tgui.bundle.js

* role fixes (roleblock not working on a few)

* eep

* fuck

* potato's review

* Update tgui.bundle.js

* ffff

* bundle

* rohesie's review

* eureka

* updates doc, removes debug stuff

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-07-22 00:29:05 -03:00
Ryll-Ryll
40c1b51b97 dunno what to rename this 2020-07-16 21:53:56 -04:00
Ryll-Ryll
1f31064c3e Merge remote-tracking branch 'tgstation/master' into who-named-this-damned-proc 2020-07-16 21:43:14 -04:00
ShizCalev
254536072e [s] sanity checks vv_edit_var() values (#52255)
cl ShizCalev
fix: Added some sanity checking for varedit values.
/cl
* sanity checks vv_edit_var() values

* this should be an or

* one more fix
2020-07-16 10:20:41 +12:00
ShizCalev
b3fa367ac7 Fixes cameramob ghostize runtime (#52197) 2020-07-14 20:14:08 -04:00
skoglol
7ec3849d63 Merge pull request #52158 from LemonInTheDark/help-me
Fixes acid/fire/blobs/a few other things touching objects below a tile
2020-07-12 11:56:26 +02:00
Ryll-Ryll
6506b72d1e capital 2020-07-11 23:42:26 -04:00
Ryll-Ryll
0115ce25d6 update this too 2020-07-11 23:34:43 -04:00
Ryll-Ryll
7f15be7f68 Merge branch 'master' into who-named-this-damned-proc 2020-07-11 23:30:49 -04:00
Ryll-Ryll
fc0b247738 rename 2020-07-11 23:23:23 -04:00
Ryll Ryll
e4397e0fca adds full monty for observer examine_more (#52088) 2020-07-12 04:34:24 +10:00
LemonInTheDark
fce4274752 Fixes all bits of code that check if something is under a tile that weren't being done 2020-07-10 22:14:37 -07:00
tralezab
fd9b5efae7 Mafia: a minigame for ghosts to sign up for while dead (#51788)
* pre-removal of mafia_game_signups

* redoes the whole joining system, start of the role popup datum

* MAPMERGE 💪

* bundle fix + working on a fix

* even more testing

* lobby working, fail text, comments out 2>3 player test setup

* mapmerge

* uhhh maybe?

* updates mafia controls panel

* megafix + megafeature pack

* lint, small fix bundle. should compile after this

* bye test setup

* big changes, no revs yet though

* godmode, why not

* bundle frick off man

* SORRY

* doesn't send rev messages and mafia messages if they don't exist

* removes revs, improves tgui by a shit ton

* mostly mafia panel stuff

* maps + improvements

* disables this map because bugs

* bundle, take that

* Apply suggestions from stylemistake code review

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>

* 1/2 review

* bad maps gone

* goodbye game ID

* e

* finally done

* voila

* don't forget bundle!

* e

* last commit before i irrevocably BOUNDS myself to death

* Rebuild tgui

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-06 19:02:45 +03:00
Jared-Fogle
1d045501f2 New tgui based orbit menu (#51585)
* New tgui based orbit menu

* Update tgui.bundle.js

* Safely check len if orbiters is null

* Add a search bar

* Rename Antagonists to Ghost-Visible Antagonists

Co-authored-by: Emmanuel S. <emmanuelssr@gmail.com>

* Move ghosts below alive

* Rebuild tgui.bundle

* Update as per stylemistake's feedback

* Cosmetic stuff

* Rebuild tgui

* Replace localeString with faster alternative

* Update tgui.bundle.js to latest upstream

* Hitting enter in the search bar will now snap you to orbit the most relevant result

Co-authored-by: Emmanuel S. <emmanuelssr@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-06-14 00:14:31 -04:00
Jared-Fogle
79a81ca137 Fix medical HUD showing skulls when a player leaves their body for a ghost (#51594)
* Don't reset medical hud on /mob/living/Logout

* Use ShizCalev's suggestion
2020-06-14 00:13:16 -04:00
deathride58
282852d261 Fixes a pair of DoS vectors. This isn't very urgent since skids haven't picked up on these specific ones yet, but now that I'm making this set of PRs, it's only a matter of when now. 2020-06-11 23:43:14 -04:00
LemonInTheDark
a08f2113a4 Unfucks smallscreen, removes my stupidity (#51266)
* slightly less SHIT FUCK SHIT FUCK

* Turns out we do need this

* YaYeet

* That should do it
2020-05-25 23:38:10 -03:00
LemonInTheDark
1614501d23 Datum view and some other things (#51208)
* Datumizes all uses of change_view

* Cleanup and helper procs

* tweaks values to match the format, hint hint, (value - 0.5) works just fine

* And there's the rest

* woop, braindamage

* and one more

* fuck you menu file

* woops

* we should apply that

* fixes tooltip drift, thank you goon coders

* you can shake but you can't zoom
2020-05-25 01:53:51 +08:00
Timberpoes
58bdb85285 Ghost chem scans (#50475) 2020-04-19 16:06:10 +08:00
Rohesie
0cf8f7cd9d Dynamic current_players lists rework (#50013)
* current player lists

* Docs
2020-03-21 17:05:13 +01:00
Time-Green
c04abab2bf [READY] Makes plumbing mappable and reworks hiding (#49644)
🆑
tweak: Ducts can now be hidden under tiles
code: tile hiding is now an element and way cooler and sexier
/🆑

Ducts can now be hidden under tiles
Plumbing machinery connects can now be hidden aswell
Plumbing can now also be properly mapped in without breaking anything
Plumbing component now uses the normal overlay systeem instead of being a weird exception

You can now add the /datum/element/undertile element to instantly make something hidable under tiles when appropriate.
2020-03-16 20:37:59 +13:00
ShizCalev
7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
AnturK
e3fca45a78 Fix a few small runtimes (#49352)
Nothing special here, mostly sanity.
Defib hud is awful, needs rewrite.
2020-02-16 00:40:11 -08:00
thebleh
93c96e89d7 Shows defib icon on corpses with soul (#49138)
* show defib icon on revivable corpses

* update medhud in observer Destroy()
2020-02-04 07:26:10 +01:00
Rob Bailey
62d1a3941c tgui-next ntos card console (#48938)
About The Pull Request

A PR now several weeks in the making that spiraled ridiculously out of control for something not many even use.
What else is new in NTOS hell?
I spent several days doing nothing but playing escape from tarkov so this took longer than expected I valiantly spent all night and day working on this, and barely finished it before The Deadline
the card ntos program was split into three programs, manifest, job management, and id card modification. It didn't make much sense for them all to be the same program imo, and made the project a bit more managable.

Airlock electronics saw some improvements as well since it uses this new access control section as well.

Yet again some new functionality and improvements to core components. Buttons now have an "altSelected" feature where instead of changing the color it adds a small white marker, among some other things.

There were a couple of small changes in inconsequential ways in other places, and datacore was refactored a tiny bit. Probably some other stuff I don't remember.

I would replace the old card console with a modular computer right now, but I know a few people actually use this program and want a bit of time to iron out bugs and inconsistencies before replacing the main job console with it.
Changelog

🆑
add: tgui-next NTOS card console, job manager, and crew manifest
tweak: airlock electronics interface is a little fancier

/🆑
2020-02-01 20:47:36 +13:00
MrPerson
f7eb2c905b Unicode awareness Part 2 -- copytext() (#48512)
* Unicode support Part 2 -- copytext()

This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.

I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````

with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.

This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.

* Makes the code functional

* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.

* Removes ninjaspeak since it's unused
2020-01-18 13:07:22 +13:00
spookydonut
3195ceaa22 Update SpacemanDMM suite to 1.2 (#48785)
* Update SpacemanDMM suite to 1.2

* Fix new lint errors
2020-01-16 11:49:39 -05:00
Emmett Gaines
53024590de Can pass refactor (#48659)
* Makes all CanPass procs call parent

* Makes CanPass more extendable and gives the mover a say in the matter

* Replace CanPass with CanAllowThrough to use the new system

Regex replace `(?<!proc)/CanPass\(` => `/CanAllowThrough(`

* Simple optimization pass
2020-01-08 21:31:49 +01:00
AnturK
c06a1324b3 Another bunch of runtime fixes. (#48315)
* Pipe init runtime

* Modular computer explosion runtime.

* Waterbottle thrown by explosion runtime.

* Spark runtime. Should systems continue after deletion ?

* restore ghost appearance runtime

* parallax update timer runtime.

* borg unbuckling runtime

* surgery cancel runtime. FALSE is not a null.

* relic self deletion runtime.

* dog collar runtime

* Another part of that buckled_mobs robot runtime.

* Let's go over all of these

* free ()

Co-Authored-By: MrPerson <spamtaffic@gmail.com>

Co-authored-by: MrPerson <spamtaffic@gmail.com>
2019-12-21 18:28:19 +01:00
Buggy123
6d4d152ad1 Moves "Observe" verb to ghost category 2019-12-15 02:49:59 -05:00
nemvar
f87f7091aa Fixes lightgeist runtime (#48116)
* Silences lightgeist runtime

* Fixes it properly

* death instead of delete
2019-12-06 11:51:17 +01:00
skoglol
ad0d270d58 Cleans up observer mind on control transfer, ghosting, DNR, suicide (#47826)
* Fixes admin ghost drag

* Covers more cases

* And assume control
2019-11-18 17:59:47 +00:00
skoglol
b20f151c0c Some ghost improvements (#47700)
* Ghost face direction and restoring ghost name.

* name wont reset

* Overrides canface
2019-11-13 17:52:00 -08:00
AnturK
c20b4d5ab2 Replaces lentext with length (#47585) 2019-11-07 11:42:33 -05:00