Commit Graph

1666 Commits

Author SHA1 Message Date
Qustinnus
b33d1c49a3 [READY] Floydmats (Datum materials) & custom toolboxes (#45118)
* Initial work

* more

* ass

* wsedfwedff

* asss

* test

* stuff

* fuck

* sss

a

* kms

* asdadwedwdfwefwef

* start

* test

* dwwdew

* ewefwfef

* Redemption machine (#8)

* Redemption machine

* Removes debug messages

* changes

* fuckmyshitup

* coin mint works with new material shenanigans (#10)

* Auto stash before merge of "materials" and "origin/materials"

* woops

* furnace (#11)

* autolathe manufacturing of toolboxes

* eggs in a basket

* some small changes

* matcolors

* documentation

* more documentation and effects

* done

* Color man bad (#12)

* fixes designs

* ass

* more fixes

* fuck me

* firestacks adder

* epic fixes

* fixes designs

* DONE DIDDILY DOO

* removes category macro

* ch-ch-ch-changes

* fixes some stuff

* Fixes display of ore values (#9)

* Redemption machine

* Removes debug messages

* Re-adds value display

* Replaces the fire stacking component with an element instead (#13)

* fixes examine

* fixes ligma bugs

* double ligma boofus

* fix

* misses some defines

* fixes ORM

* Update code/datums/components/material_container.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* fixes

* Makes glass objects weaker (#14)

* Makes glass objects weaker

* uses correct proc

* fixes shit

* honk honk

* better

* oh shit oh fuck

* fixes

* fuck ORMs

* fixes the biogen

* documentation

* ass (#15)

* component

* changes

* ass

* ass

* doc

* Auto stash before merge of "materials-plasmacomponent" and "origin/materials-plasmacomponent"

* fixes rounding

* fixed
2019-07-24 11:27:01 -04:00
Akrilla
92b100a2d7 PDA now accepts ID card when in inventory (#45037)
* id card pda

* cleanup
2019-07-12 19:14:32 +02:00
AnturK
1c0112c7e9 Fixes gps runtime. 2019-07-08 12:11:05 +02:00
XDTM
499d605323 Fix swappers not working (#45027) 2019-07-07 20:58:57 -07:00
XDTM
4d6159966a Add Quantum Spin Inverter, aka Swapper (#44866)
Adds the Quantum Spin Inverter device to the science protolathe under
the Miniaturized Bluespace node. Basically a remote that swaps the
user with its connected twin, along with any movable containers, like
lockers.

Another fancy teleportation gadget to use in some creative way. An
important element it has is that it teleports its containers as well,
meaning that for example you can hide it in a box inside a bag
somewhere, and trigger its twin when someone picks it up for an easy
kidnapping.
2019-07-05 16:16:47 -07:00
RandolfTheMeh
e9dab4c665 Universal Organ Damage system (#44710)
About The Pull Request

So organ damage is a thing now associated with general object of organ, meaning all organs inherit a damage variable, failing boolean, healing variable, and maxHealth variable. The proc applyOrganDamage takes in the damage and organ path, applying damage/healing to said organ. While an organ is in use, it heals a small amount over time (granted the organ is not failing), with this fraction being set by the healing variable.

This also reworks preexisting organ damage systems to function more so on the universal organ damage system, the liver specifically. So much code exists in regards to eyes/blindness and ears/deafness that I'll need to go ahead and take a longer time combing through the code to get everything that can reasonably be tied to those two organs and their level of damage reworked to function off of the organ damage system, as opposed to just a trait add/remove system.

Lastly, this slightly reworks scanners, since now you need to check for every organ in the body. Since organs are stored as "the [organ]" with the method I used to get them, the phrasing on the medical scanner was changed to make more sense given it now has to say something along the lines of "severe/minor damage detected within [the organ]". I'll likely add another proc if I cannot find a way to get the organ's max health during this operation, since a static number determining minor/severe damage does not work when an organ's max health is less than the typical 100 points (as is the case with eyes).
Why It's Good For The Game

Every organ can be damaged, though not every damaged organ does anything right now. Damaged livers do the same thing as they did previously, and damaged eyes develop varying levels of vision impairments. The benefits to this PR are more for future coding projects than it is for the game currently, with no foreseeable changes to the way it's played currently.
Changelog

cl
code: Universal Organ Damage variables and procs
/cl
2019-07-05 09:40:30 +12:00
Nick
a8197eb3dd Citations (#44853)
* Citations Step 1 - New Datacore Stuff

* Committing before merging with master

* Initial work on PDA messaging

* Adds support for automated PDA messages

This is just a flag that, when set, replaces the standard (Reply) href with a static "automated message" message

* Citations now generate PDA messages

The target of a citation will be notified via PDA message

* Escaping some non-optimal characters in PDA messages

* Creates a public warrant computer

Initial framework. Computer machine and circuit. Adds it to the DME.

* We're gonna flipflop on this for a while

* Removing unneeded functions

This is a read-only terminal, so we don't need to have all this code for managing entries and updating fields

* Whoops

So this is why byond was warning me about unused vars

* Need some help

Pushing this commit because I got this into a state where it doesn't work right

* Adds support to pay fines!

* Map changes. Adds a warrant console to the hallway outside the brig and law office on Box.

* Adds some checks to fine creation

* Aaaaand more work on paying citations

* Paying citations works! The money goes into the defense budget!

* More functionality and usability changes

* Adds warrant consoles to the rest of the maps

* Cleaning up text

* Rewrote warrant computer to be more up to date.

* Fines are capped to 1000 credits

* Requested changes

* Citations can now be paid with holochips and warrant consoles don't require your ID to be inserted.

* Fines can be paid from security record consoles, and more feedback messages

* Citation payments now actually go into the defense budget for real

* Removing even more unused code!

* Removes unused code (emp_act and ID handling)

* More unused code for the unused code gods

* ID card reference is now just fetching attached name.

* remove simple mob typepath kthx for the remove simple mob typepath kthx gods

* one usr, many M
2019-07-03 20:19:05 +02:00
oranges
64460ae3ca Merge pull request #44825 from AutomaticFrenzy/patch/lints
In advance of eventually adding SpacemanDMM's linter to Travis, fix everything it can currently detect.

Some lists, including global lists, are given types so that L[i].foo expressions can be checked.

Some procs are given a new form of return type annotation so that DuplicateObject(O).forceMove()-type invocations can be checked.

Open to syntax suggestions on the return type annotations, and on whether the preprocessor strategy makes sense.

Return type syntax is currently roughly:

    <typepath> | <paramname>([_])*(.type)?
2019-07-03 19:31:11 +12:00
kingofkosmos
c969f6d3eb Merge branch 'master' into addswarningspans 2019-06-27 15:12:54 +03:00
kingofkosmos
ec5c82029a * "Is already...", "Can not...", "Not when..." etc. 2019-06-27 06:15:43 +03:00
kingofkosmos
d7dd679b5a Fix span endings (#44812)
Adds a slash to instances of <span>" --> </span>".
2019-06-26 15:11:03 -07:00
Tad Hardesty
ba95173289 Fix keyword argument warnings 2019-06-26 01:59:57 -07:00
kingofkosmos
6bbb64e2cf * more warnings 2019-06-25 21:46:21 +03:00
kingofkosmos
fb9731492c * extra spaces removed from "span class = '" --> "span class='"
* warning-spans added to cases of "You need..."
2019-06-25 21:03:25 +03:00
AnturK
dd93afec90 Fixes harmonica warning. (#44701)
* Fixes harmonica warning.

* Yep
2019-06-22 01:43:47 -04:00
Shaps
8954265573 Agender fixes (#44597)
Credits to Europaisch for help finding all the records stuff

Fixes a few issues I was not aware of with my initial PR

* Being agender is now a distinct DNA value (fixes agender spessmen
  turning female when having their DNA referenced, like during cloning
  and some rudimentary transformations)
* Neatens up preference code, more in line with previous code, fixes
  an issue with male underwear not surviving preference loading and
  defaulting to female underwear
* Allows agender spessmen to change their facial hair with mirrors
* Change medical, personnel, and security records from sex to gender
  and add "Other" option (they currently display "plural" even for
  agendered species like ethereals)
* The -san honorific now applies to plural gender instead of just
  neuter with the Chinese Cartoons admin secret (highly important)

I have never really played genetics and only tested the DNA code with
cloning and rudimentary transformations while still in a body (which
causes it to reference the old body's DNA, like with cloning). Please
let me know if there's a better way to do this and/or if this is apt
to create issues.
2019-06-19 13:59:39 -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
Emmett Gaines
45ec62931d Finally removes the signal redirect component (#44251) 2019-06-09 17:25:50 -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
vuonojenmustaturska
2d74a86353 [READY] Cleans up saycode by removing random hook stubs and using a signal where relevant (#44320)
About The Pull Request

This PR removes speech message and span hooks from dna, mutations, pierrot throat disease, species, tongues, masks, hats, held items, brain traumas and a carbon proc overload handling tonguelessness.

Tonguelessness is now handled by tongue removal registering for the speech signal and the hook being deregistered by having a tongue put in.

Also cleans up some /atom/movable/proc/get_spans() overloads that called the empty parent or overloaded the parent to do the exact same thing as the parent proc did.

Also cleans up calls to radio.talk_into() where the caller would often, as a result of copypasta, provide the proc with fresh copies of the proc's default values for proc args, and makes say_quote() better by giving it a default spans value so that none of the callers have to provide the same default one.
Why It's Good For The Game
Changelog

cl Naksu
code: Cleaned up saycode
/cl

* start with this

* oh man this looks so good

* hats are dead

* /obj/item/proc/speechModification is dead

* brain traumas and get_held_item_speechspans() are dead

* these should be static

* unfortunately we still need this

* /mob/living/carbon/treat_message(message) is kill

* clean up get_spans()

* dunk get_spans, modifies_speech for brain traumas, some superfluous static stuff

* move stuff around

* return values
2019-06-06 18:35:06 +12:00
Emmett Gaines
c3f95024b2 Gets rid of the GetComponent macros (#44220)
* Removes the GetComponent macros

* Regex replacement for GET_COMPONENT

Search: `GET_COMPONENT\( *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = GetComponent($2)`

* Regex replacement for GET_COMPONENT_FROM

Search: `GET_COMPONENT_FROM\( *(.+?) *, *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = $3.GetComponent($2)`
2019-06-04 17:39:58 +02:00
kingofkosmos
1bf60bbe06 Adds missing </span>'s. 2019-06-02 21:29:14 +03:00
vuonojenmustaturska
6a106bc877 Remove reagent ids and use typepaths where applicable (#44166)
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
2019-05-31 21:57:26 +12:00
Time-Green
d0cd38fd58 [Ready]DNA sequencer now uses a popup (#43853)
The genetic sequencer will now give you only the list of mutations something has. You can then use it in-hand to select one of the mutations and view the sequence. It's on a 20 second cooldown.

Breaks people just running around, scanning a bunch of people and then using a script to get it all done at once. This change hardly obstructs people that use it the way that it was intended.

cl
tweak: The genetic sequencer has been reworked. Use it in-hand to view the sequence
/cl
2019-05-30 20:35:20 +12:00
JJRcop
bab214e892 PDA Message Server can be constructed (#43961)
About The Pull Request

I made a machine board for the PDA message server and added it to the telecomms techweb node. To keep the usefulness of the machine's password, a player built message server won't work until 15 minutes after construction. I've also converted a lot of magic numbers to defines, and changed the departmentType var on request consoles into a bitflag.

I'm open to ideas other than a time gate when it comes to keeping the server password's usefulness.
Why It's Good For The Game

You can't build a Message Server right now. If it's destroyed, PDAs may be knocked out for the rest of the round.
Changelog

cl JJRcop
add: You can now build a new PDA messaging server if you lose it.
tweak: Requests console messages no longer work if the messaging server is offline. Emergency alerts will still function in that case as long as the rest of telecomms is online.

/cl
2019-05-27 22:23:59 +12:00
skoglol
5316926510 Fixes some missing adjancency checks. (#44020) 2019-05-21 11:43:35 +02:00
vuonojenmustaturska
a844611ff4 removes an explicit uplink component check in favor of a signal in detomatix carts (#44023)
* yeets a GET_COMPONENT_FROM

* signal rather than component

* Update code/game/objects/items/devices/PDA/virus_cart.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>
2019-05-20 19:43:42 -04:00
RaveRadbury
ade1a97e7c [READY] pAI HUD Overhaul (#43741)
* Initial overhaul work and some fixes.

Running into a bug with getting healthanalyzer variables to pass.

Signed-off-by: RaveRadbury <risforradbury@gmail.com>

* Fixes some typos, shortens a message

* Update pai.dm

* Prevents pAI OS from coming up in other windows.

* Moved around some camera stuff, trying to fix lost pAI zoom

* Fixes pAI zoom, adds camera flash

* PAI buttons grey out if they need software first

* Better greying out of buttons in PAI

* Removes unimplemented HUD stuff

* Should make pAI Host Scan require being held (like DNA check)

* Includes host scan as a greyed out hud

* Improved button loop

* Fixes pda icon off-set

* Fixed inconsistent indentation

* Replaces outdated and innacurate checks for scans

Thanks to Cobblestone for the help

* Refactor pAI hud button grey out

* Changes browse to browser

* cleans up the code, gets rid of an error

* Removes indent from #undef

* Removes an unneeded text-align:right
2019-05-18 23:06:29 +02:00
Rob Bailey
106cd26fc0 Small audio fixes (#43883)
* pure file fixes

* beep pitch fix

* duump eet
2019-05-11 18:09:00 +02:00
vuonojenmustaturska
fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
RaveRadbury
188f77b493 [READY] Fixes pAI radio disabling (#43634)
* Untangles code that was trying too hard.

It tried to use "wires" to handle both wires and it didn't work.

* Adds two variables to make it all work.

* dropped an else

* Found out how I dropped an else. Fixed

* Changes can_tx and can_rx to longer names

* more descriptive var names

* How did I miss these deletions?

* Then I don't move the ", geeze.

* Adds Cobblestone's suggested code.
2019-04-25 08:19:13 +02:00
RaveRadbury
8dcfdff576 [READY] pAI's have headsets and can use encryption keys (#43603)
* pAI's have little AI headsets and can use encryption keys.

* pAI's now spawn radio AND headset.

Reverted radio code and changed new variables to the new headset var

* Undid the comment out of radio code.

As far as I can tell this isn't working properly though. Tried testing it locally and can't enable/disable radio as pAI or master.

* Removed redundant null keyslots.

* Final version

It should all work.

# Conflicts:
#	code/game/objects/items/devices/radio/headset.dm
#	code/modules/mob/living/silicon/pai/pai.dm

* Merge

* Mergies

* Update code/modules/mob/living/silicon/pai/pai.dm

Co-Authored-By: RaveRadbury <3204033+RaveRadbury@users.noreply.github.com>
2019-04-24 11:30:27 -04:00
bgobandit
0f7f29e3b2 Intercoms/radios show the frequency they're set to on examine. (#43669) 2019-04-23 09:54:47 -04:00
RaveRadbury
9a7eabbacc Change 'return' to 'return menu' so it works now (#43631) 2019-04-17 14:27:19 -04:00
William Wallace
a944c2a362 Ghosts can analyze gas mixes and some new objects can be analyzed (#43502)
* Ghosts can analyze gas mixes and some new objects can be analyzed

* Replace show_air_status_to with atmosanalyzer_scan
2019-04-16 21:46:36 +12:00
RaveRadbury
cc0c7ea306 Expands service channel access to HoP-reporting jobs. (#43601)
* Gave service headsets to jobs that report to HoP (not assistants, obviously). Created a headset and encryptionkey for lawyers that is sec service (similar to genetics)

* Typo

* Less copypasta more sensemaking
2019-04-16 21:36:32 +12:00
RaveRadbury
3d0d8afd48 pAI cards update on availability while in inventory (#43587)
pAI cards will now provide updates about available personalities even
when in a player's inventory. Improves the pAI matchmaking system, making
personalities more likely to be noticed and downloaded.
2019-04-14 21:49:25 -07:00
RaveRadbury
369933d541 pAIs eject into hands (#43592)
Currently pAIs cannot be configured for DNA and secondary directives
while inside a PDA. If I need to eject my pAI from my PDA, why would I
want to drop it on the floor, especially when it hasn't been configured?

An activated pAI is too valuable to drop from your PDA directly to the
ground.
2019-04-14 21:41:48 -07:00
Rob Bailey
930e9dc501 [READY] Darkmode fixes (#43252)
* better darkmode v1

* ever better colors

* slightly improved tip color + fixed scrolly bug

* updates skin.dmf as well as some small color tweaks

* slightly tweaked more readable info and admin shit

* span_class fix

* merges ooc fixes

* whoops

* MC and ticket screen fix

* no default darkmode

* skin fixes

* more obnoxious adminpm

* more obnoxious adminshit

* skin revert to ensure proper light theme.

* prevents weirdness with default whiteness
2019-03-22 08:56:17 +13:00
Tad Hardesty
745dbdbbf1 Fix a use of src in a global proc, some kwargs (#43154) 2019-03-19 12:05:34 -04:00
4dplanner
34a90c6af9 makes quantisation level for chemistry finer (#43135)
* Quantises liver purging

* Moves quantisation to holder procs

* Finer quantisation

* Scanners display to 3dp
2019-03-18 11:02:35 -04:00
ShizCalev
1ebbab60ec Fix slippery oil never initializing, move some Initialize() to ComponentInitialize() (#43129) 2019-03-16 19:09:47 -07:00
ShizCalev
a46376e22d Merge pull request #43128 from Lett1/firebotpdafix
Adds firebots to robotics pda remote
2019-03-15 17:04:36 -04:00
4dplanner
8773ca52ce Quantises liver purging (#43027)
* Quantises liver purging

* Moves quantisation to holder procs
2019-03-15 11:29:06 -04:00
Strommer Kilian
6d10fb67d6 And also to the rd and atmos pdas 2019-03-14 21:08:58 +01:00
Strommer Kilian
82b3a6d607 Add firebot access to the ce and captains pdas 2019-03-14 21:06:59 +01:00
Strommer Kilian
b323f40481 Update cart.dm 2019-03-12 08:04:19 +01:00
Tad Hardesty
1433e48eba Fix some proc calls with bad keyword arguments 2019-03-09 12:56:19 -08:00
Tad Hardesty
990e2c7bc2 Fix a few junk type annotations (#42985) 2019-03-07 10:58:05 +01:00
Unit2E
9fa337156e makes powersinks dense when anchored (#43023) 2019-03-06 16:03:35 -05:00