Commit Graph

239 Commits

Author SHA1 Message Date
SkyratBot
e768cef297 [MIRROR] /obj/screen --> /atom/movable/screen (#1646)
* /obj/screen --> /atom/movable/screen

* Update storage.dm

* Update radial.dm

* a

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-11 04:12:50 +01:00
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
96d5d8a319 [MIRROR] Fix verbs tab not getting updated in certain instances (#937)
* Fix verbs tab not getting updated in certain instances (#53876)

There are a number of methods of assuming direct control of mobs or giving other players direct control. I have made sure these now appropriately update verbs.

Shamelessly ripped the functionality from /mob/dead/observer/verb/reenter_corpse() - It seemed to do what I wanted to accomplish in the same context.

I couldn't find any other method to refresh the verbs tab.

* Fix verbs tab not getting updated in certain instances

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-23 13:55:50 +01:00
SkyratBot
496811ef6c [MIRROR] Optimize stat panel and fix guardian verbs (#804)
* 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>

* Optimize stat panel and fix guardian verbs

Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
2020-09-15 09:17:31 +02:00
SkyratBot
adcb876d0b [MIRROR] Adds better feedback related to husks (#769)
* Adds better feedback related to husks (#53599)

Husks currently have basically zero ingame feedback other than the grey sprite. It should be abundantly obvious when somebody is a husk, given that it's such a huge physical change that it changes the sprite. This PR adds examine text to husks, and adds a message to the health scanner. The regular scanner will only tell you that they are a husk, the advanced scanner will tell you if they were husked by burns or by "extreme fluid loss" AKA lings (but burnt takes precedence so you can still burn your ling corpses to a crisp to help hide your tracks). The defib now also gives a message specifically for husks instead of a generic "tissue damage" message which normally means brute/burn damage.

I also updated the description of sythflesh and rezadone to mention that they can restore burnt husks, and replaced some hardcoded "burn" with the BURN constant.

* Adds better feedback related to husks

Co-authored-by: msgerbs <msgerbs@users.noreply.github.com>
2020-09-13 02:58:40 +02:00
SkyratBot
ec09510459 Bools and returns super-pr (#53221) (#565)
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is

Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
2020-08-30 05:12:59 +02:00
SkyratBot
ee324ab3c2 [MIRROR] Cleanup up all instances of using var/ definitions in proc parameters. (#240)
* Cleanup up all instances of using var/ definitions in proc parameters. (#52728)

* var/list cleanup

* The rest of the owl

* plushvar bad

* Can't follow my own advice.

* Cleanup up all instances of using var/ definitions in proc parameters.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-07 18:26:21 +01:00
skoglol
4d53731658 Merge pull request #52377 from Ryll-Ryll/antag
All antag types are now recognized for admin chat
2020-07-24 00:14:07 -04:00
LemonInTheDark
d3f9b70c0f Adds a message modification packet to saycode to allow for unordered parsing of operator chars, like ;, #, :, or % (#51790) 2020-07-18 18:18:23 +02: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
jdawg1290
62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03: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
kingofkosmos
79c5a80ca0 Visible_messages verb time tenses changed to present. 2020-03-16 14:55:25 +02:00
spookydonut
beca456c0f Add new lints (#49751)
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
2020-03-09 22:13:48 -07:00
ShizCalev
df81c5be4a Fixes blindfolds not properly counting as being blind 2020-02-24 01:10:34 -05:00
MrPerson
273464ae65 Include ~ and ` too 2020-01-26 02:18:38 -06:00
MrPerson
e022407b81 Makes stuttering ignore some punctuation
Fixes #48983
2020-01-25 16:00:36 -06: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
ShizCalev
ea56f83e58 Caltrop / glass / lightbulb crossing fixes 2020-01-03 04:47:06 -05:00
AnturK
c20b4d5ab2 Replaces lentext with length (#47585) 2019-11-07 11:42:33 -05:00
nemvar
c38a7a3bb5 Removes a bunch of var/ in procs (#46946)
* Removes a bunch of /var in procs

* reset this

* Why wasn't this already?
2019-10-10 04:20:27 -07:00
spookydonut
62b3fffe3b Removes unneeded client checks on GLOB.player_list contents (#46445)
About The Pull Request

All mobs in GLOB.player_list have clients attached and there is in fact a fair amount of code that is working fine without checking client on things in player_list. This pr just removes a bunch of checks for client when iterating over player_list.
2019-09-16 16:48:50 +12:00
kingofkosmos
df1fecc58c Adds notice-span to visible_messages with no spans (#46044)
About The Pull Request

Adds 'notice' span class to all visible_messages which had no span class, making all those black messages blue.
Why It's Good For The Game

This should help differentiate action-messages from talking-messages in the chat. More actions will be blue, thus black talking-messages should pop out more.
2019-08-26 20:50:00 +12:00
moo
98765bae0a Dissection Examine + Logic Fix + Ayy (#45807)
clDissectby
add: Examining a dissected body will provide insight on the highest tier performed.
fix: You can do ayy dissection now if you get the tech
fix: FINALLY fixed the surgery logic correctly
/cl
2019-08-12 11:39:25 +12:00
nemvar
02251be5ac Turns Gibberish code into something that's not gibberish (#45753) 2019-08-09 11:32:32 +12:00
oranges
800f24393d Convert some code docs into the auto doc format (#45101)
* Document datum, area,atom and some of the mob code

* Update

* Documented mob_helpers poorly

* Brief treatise on mob movement iself

* sdfasdf

* Add title to treaties

* Move readme file for say

* more say stuff for mobs

* Document login and status procs

* Add some goddan links like a boss

* Document some atom vars
2019-07-11 11:39:56 -04:00
nemvar
53d4c3f25a Refactor mob can_see_reagents (#44934)
Turns the scan_reagents var into a clothing flag.
2019-07-04 00:09:01 -07:00
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
AnturK
69ac935bde Upgrades policy config + policy verb. (#44296)
* Upgrades policy config + policy verb.

* Better example and proper default value.

* hr on top

* Cleanup
2019-06-10 11:51:25 -04:00
py01
a0ae838acd Radio jammers jam the radio more (#44313)
* replaces radio jammer text replacement function

* radio jammers stop all radios now

* documentation, fixes range check on radio jammer
2019-06-08 13:31:07 +02:00
actioninja
0bdeb6c070 fixes gay baby jail 2019-06-04 14:12:02 -07:00
Rob Bailey
8958287246 [s] Prevents a certain kind of antag-rolling abuse. (#44056)
About The Pull Request

Currently there's a very easy way of making it so that if you don't roll antag, you aren't playing the game and can just go observe and hope for ghostroles.
Have every job set to never, have return back to lobby if preference unavailable set, and antags enabled.
if you roll antag, you get a job or the antag, if you don't, back to lobby.
If you think this is a good idea and go do this, know it's against the rules and if you get caught you'll be banned.

What this PR does is validate that you have at least one job enabled before ever even adding you to the pool of potential players, if you have "return to lobby" set. If this happens, you'll get a notification and an admin will be notified if you also had antags on.
Either of the other "my pref was unavailable options" you can have all jobs set to never just like before and you'll get your random role.
Why It's Good For The Game

Prevents some abuse that can easily be closed on the game code end.
2019-05-24 13:57:37 +12:00
ExcessiveUseOfCobblestone
5b688dca86 Update mob_helpers.dm 2019-05-17 15:55:34 -04:00
vuonojenmustaturska
fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
Militaires
3f4007a3b8 Fixes runtime from attempting checking armor on missing bodypart, improves ran_zone selection mechanism (#43222)
* Fixes runtime from attempting checking armor on missing bodypart, changes how ran_zone selects a zone.

* Update code/modules/mob/mob_helpers.dm

pickweight ran_zone is no longer percentage-based

Co-Authored-By: Militaires <ahmedosama2001@gmail.com>

* adds check to second return too

* look how they massacred my boy
2019-03-25 11:29:09 -04:00
ShizCalev
ebe3cb2442 Improve grammar on prosthetic limb repair message (#43204)
Repairing robotic limbs attached to yourself will no longer refer to you
in the third person.
2019-03-20 15:46:05 -07:00
Denton
24c71eb7a7 Reduces sound volume for some ghost notifications 2019-01-03 10:49:41 +01:00
Tad Hardesty
0ed8c3113e Fix orbit links on events 2018-12-22 14:42:03 -08:00
Jack Edge
76fda7a551 Abductor scientists can examine glands to determine what they do
🆑 coiax
add: Abductor scientists, or people who have had training similar to an
abductor's scientist will be able to examine alien glands to determine
their scientific purpose.
/🆑

Had a lot of fun making up dumb sciencey sounding explanations for the
glands.

Removes the "scientist" var from the species datum, don't need that
anymore.

TRAIT_ABDUCTOR_TRAINING and TRAIT_ABDUCTOR_SCIENTIST_TRAINING are the
important key traits here, assigned in the antag datum. Being an
abductor doesn't give you experience with all their tools, after all.

TRAIT_SURGEON (another trait the ayy scientist has) gives you access to
all surgeries, rather than a more snowflake-style species check.
2018-12-07 18:06:10 +00:00
ShizCalev
9997f956b0 Fixes ODing on crank/other chems, viruses, and other things damaging/healing robotic limbs. (#41593)
cl ShizCalev
fix: Fixed chem OD's causing damage to robotic limbs.
fix: Fixed wood golems repairing robotic limbs every tick of life()
fix: Fixed vampires repairing robotic limbs every tick of life()...
fix: Fixed shadowpeople healing robotic limbs every tick of life()
fix: Fixed poppeople healing robotic limbs every tick of life()
fix: Fixed adjustBruteLoss and adjustFireLoss not properly discriminating for limb status types.
tweak: Fixed bibles healing robotic limbs, because your false deity can't fix SCIENCE.
fix: Fixed the Starlight Condensation, Nocturnal Regeneration, Tissue Hydration, Regenerative Coma, and Radioactive Resonance virus symptoms repairing robotic limbs.
/cl

Gonna be away the next two weeks, so if there's anything major after today just go ahead and close it and I'll fix it when I get back.
2018-12-02 20:12:22 +13:00
ShizCalev
43768593c8 Fixes posibrains becoming unusable if the old mob suicided. (#41336) 2018-11-07 23:36:40 -05:00
ShizCalev
c167d37121 Fixes admin damage editting not logging the target's real name / key. (#41318)
* Fixes admin damage editting not logging the target's real name / key.

* few more areas
2018-11-06 14:10:20 -05:00
MrDoomBringer
16be1163c0 Gives random events a ghost follow link (#40727)
Also improves the code for anomalies a bit

cl MrDoomBringer
tweak: Random Events now have a follow link for ghosts!
/cl

Untested, and anomalies are broken right now but that takes like 2 seconds to fix
2018-10-27 13:11:48 +13:00
AnturK
199339d994 Surgery cleanup (#40788)
* Surgery cleanup

* Proper mobtype
2018-10-12 04:42:48 -04:00
XDTM
d9e691f393 [Ready] [Reviewed] Nanites 2 (#37922)
* Adds programmable nanites to robotics

* Oh yeah i might want to actually PR the files

* nanite injectors, nanite printer, nanite analyzer

* We're back

* remove some reagent stuff

* more removal

* those too

* cool icons!

* might pass travis now

* lotsa code

* tgui fixes/misc fixes

* WE'RE FUNCTIONAL BOYS

* some ui stuff

* Misc fixes, cloud update, access nanites

* activation check

* stuff

* preparing for new chamber sprite

* Physical backups, sensor nanite programs

* techweb sensor nanites

* fix

* include

* fix again

* revert

* blinding nanites

* minor change

* minor tweaks

* makes minor shocks interfere with nanites

* fix

* split trigger file into the others, for consistency

* cleanup, added mindshield nanites to techwebs

* include n all

* how'd that even happen

* Fixed HUD, readded missing remote icon, added nanite scanner, health analyzers can now detect nanites, added stealth program

* cost tweaks

* better term

* new icon! by MrDoomBringer

* icons/tweaks

* tgui build

* boards

* fix

* fixes implants not updating mindshield status

* move implant hud to living

* new remote sprite

* scanner sprite

* biotype checks

* some nerfs

* new open chamber sprite

* Fixes mindshield implants not updating the HUD, fixes uninstalling always removing the first program, adds 25% and 75% health sensors

* correction

* nerfs antistun nanites

* fixes scanners and minor tweaks

* fixes revs with mindshield

* oh yeah haha

* Fixes wonky techweb

* Moves pyro program to weapon node

* Adds defib program and some investigate logging

* mistype

* fix

* fix2

* save your files before committing

* emps can desync from cloud

* pretty outdated

* Cloud backups are now tied to the cloud consoles; you can no longer build a new console to access existing backups.

* UI fix

* more fix

* okay fix for real

* tested and working

* Extra Settings rework, sensor nanites vastly better

* non-unique glitches

* Public chamber, extra settings rework, new sensors, speech program

* Mute and mind control nanites

* mind control into hazard

* better description

* fixes

* fixes relay nanites

* fixes TK access

* mind control costs less

* UI update

* removed pointless code bit

* tgui build

* compiles

* dammit

* paralysis keeps victim upright

* Adds sounds to consoles

* some feedback for some subtle effects

* new chem lore

* Viral nanite customization

* fix

* tgui build

* Added mitosis nanites

* removes glitched nanites from techwebs

* Added flesh eating nanites, poison nanites, hallucination nanites

* ,

* #traviscoding

* Adds memory leak, renames nanite roam node to nanite smart

* Voice sensor + some techweb desc tweaks

* hallucination and Hear() fix

* changes signal registering to the new method

* 75% done, i think

* should be all

* more fix

* more changes

* okay should be fine now

* ninja

* inheritance

* i don't care about originality!

* line endings

* line endings 2

* maybe

* fixes program installation

* new review

* line endings?

* line endings??

* line endings???

* wait do i even use this

* fixes public nanite chamber cloud id

* maint overlay for chambers

* args doesn't work well here

* antiabuse checks

* compile tho

* fixes locked remotes

* disk renaming

* skull echo nanites

* self scan program

* Condenses a lot of sensors into a few generic but customizable versions

* fixes machinery runtimes. Hacky, but a proper fix would likely require a refactor of machinery typing.

* forgot to save

* empty

* metastation nanite lab

* Removes duplicate APC

* fix for nanite chamber

* Raise max programs

* UI Tweaks, aggr. replication rebalance, minor fixes

* let's not do that again

* Fixes nanites meta merge conflict

* Merge conflict v2

* fuck this HDD is slow

* What the fuck did you just fucking say about me, you little leaf? I'll have you know I graduated top of my class in the Lawyer School, and I've been involved in numerous secret DMCA raids. I am trained in law violations warfare and you are nothing to me but just another target. I will wipe you the fuck out with precision the likes of which has never been seen before on BYOND, mark my fucking words. You think you can get away with changing the code? Think again, fucker. As we speak I am contacting my secret network of attorneys in the Fox and your IP is being traced right now so you better prepare for an outstanding warrant, maggot. The storm that wipes out the pathetic little thing you call your leaked code. You're fucking done, kid. I can file for an injunction anywhere, anytime, and I can take legal actions in over seven hundred ways, and that's just with my bare hands. Not only am I extensively trained in unarmed combat, but I have access to the entire arsenal of the Florida Statute and I will use it to its full extent to wipe your miserable ass off the face of Canada, you little shit. If only you could have known what unholy retribution your little "clever" action was about to bring down upon you, maybe you would have held your fucking tongue. But you couldn't, you didn't, and now you're paying the price, you goddamn idiot. I will send you to spend time in a Florida State Penitentiary if you ever decide to travel from Canada to the U.S. You're fucking done, kiddo.

* Adds virus symptoms that interact with nanites

* Fixes spreading nanites being more infective the more protection the victims have

* Review plus public chamber tweak

* . = ..()

* ball

* cloud

* . = ..()

* always press save all before committing

* missed a couple
2018-08-20 14:46:04 +03:00
Patrick Chieppe
2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
vuonojenmustaturska
14148f823a Allow players to un-ignore previously ignored popups for ghostroles, and ignore notifications with no ignore button (#38990)
Added a new ghost verb that lets you change your ignore settings, allowing previously ignored popups to be un-ignored and notifications without an ignore button to be ignored
2018-07-09 15:24:10 -04:00