Commit Graph

577 Commits

Author SHA1 Message Date
Akrilla 84dfa1f56a Agent card automatically assigns your account number on first time use + change it anytime (#45032)
* Force contract ransom ID message

* Agent cards get set account number on first time user + anytime change

* actually an account + remove/add to bankcard list

* space
2019-07-08 22:44:52 +10: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
XDTM d834ae0364 Abductor chem dispenser (#44659)
About The Pull Request

Adds an abductor chem dispenser, buyable for 2 points from the abductor rewards console.
Buying it spawns a beacon, which can be activated in hand to drop it and spawn the dispenser after 3 seconds if the tile is free of obstructions.
The dispenser contains all the reagents of a fully upgraded, emagged dispenser plus plasma and uranium.
Why It's Good For The Game

More tools for abductors means more possible abductor shenanigans, and personally i'm all for making the no-murderbone antag as fun as possible.
Changelog

cl XDTM
add: Abductors can now buy a special chem dispenser for 2 points. The machine is delivered as a beacon which can be used when standing on any free tile to spawn it.
/cl
2019-07-05 09:37:49 +12:00
wesoda25 8a98c41af8 Fix soulstone purification issues (#44790)
You can no longer infinitely purify a soulstone.
Cultists can't use purified soulstones anymore.
2019-07-04 14:35:13 -07:00
Akrilla b2b91a2875 Contract tweaks (#44869)
* Payment generation rework and no repeated target

* Blacklist

* Remove pod explosion

* contractor baton

* darker highlight

* Slight increase for the higher paying contracts

* Victims get healing injected to bring them out of soft crit/crit

* pod send fix

* Text changes

* More text tweaks

* New baton - custom sprite/sound

* Better sound - fixes

* Stutter

* text

* classic_baton rework

* attack silicons still, and only show charging for new baton

* Properly attack/stun silicons where appropriate

* . list
2019-07-03 22:32:40 +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
skoglol aa37ae0c9f Add variety in virus cures, more consistent difficulty scaling (#44798)
Now picks from a bigger list for each level, for a bit of variety and
to avoid all random diseases sharing the same cure.

Makes the higher levels harder than previously, while adding a more
consistent increase in difficulty of getting a hold of virus cures.

List is now:
1 - Copper, Silver, Iodine, Iron, Carbon
2 - Potassium, Ethanol, Lithium, Silicon, Bromine
3 - Table salt, Sugar, Orange juice, Tomato juice, Milk
4 - Spaceacillin, Saline-glucose solution, Epinephrine, Charcoal
5 - Oil, Synaptizine, Mannitol, Space drugs, Cryptobiolin
6 - Phenol, Inacusiate, Oculine, Antihol
7 - Leporazine, Mindbreaker toxin, Corazone
8 - Pax, Happiness, Ephedrine
9 - Lipolicide, Salicyclic acid
10 - Haloperidol, Aranesp, Diphenhydramine
11 - Modafinil, Anacea

Level 1 and 2 have simple chems, some can be gotten through grinding
stuff.
3 has kitchen/bar/hydro stuff
4 has stuff easily found in medbay or medbay vendors
5 has three chem drugs
6 has five chem drugs
7 has slightly harder drugs
8 is drug themed, has drawbacks
9 is a bit harder again
10 are worse, has fairly bad drawbacks so eat sparingly.
11 are hard to make, anacea has chem purging and some slight tox
damage.

Will need a wiki update.
Why It's Good For The Game

Makes high virus resistance more favorable, and creates some need for
some obscure chems.
2019-07-02 16:56:43 -07:00
ShizCalev 6e44bd3a93 Merge pull request #44796 from kingofkosmos/addswarningspans
Adds warning-spans
2019-07-02 00:47:43 -04:00
SpacePrius fe6aa97f29 Fix hivemind awakening logs (#44882)
Allows admins to see when vessels have been awoken and also lists
their objective in the game log.

Fixed bug where hivemind vessel awakening would not be logged.
Fixed bug where awoken hivemind vessel objectives would not be logged.
Slightly modified the deadchat text for awakening.

Signed-off-by: Space Prius <bubba041102@gmail.com>
2019-06-30 19:50:24 -07:00
YakumoChen 461191d2bd Nar'Sie plush can't invoke now (#44858)
* heresy

removes is_invoker from narsie, removes redundant hugbox version

* double heresy

remove var
2019-06-30 15:25:54 -04:00
AnturK 89438fae72 Fix a few reagent runtimes (#44824) 2019-06-27 21:42:50 -07:00
kingofkosmos c969f6d3eb Merge branch 'master' into addswarningspans 2019-06-27 15:12:54 +03:00
XDTM 49e7b39a97 Adds and modifies abductor glands (#44741)
* New abductor glands

* Adds and modifies abductor glands

* proc fix
2019-06-27 11:38:17 +02:00
kingofkosmos ec5c82029a * "Is already...", "Can not...", "Not when..." etc. 2019-06-27 06:15:43 +03:00
Tad Hardesty 0f0604575f Add return type annotations to some procs 2019-06-25 23:03:38 -07:00
Tad Hardesty b07065a477 Add additional type annotations to lists 2019-06-25 22:48:10 -07:00
kingofkosmos ebf787a97a * "You should..." and "You must..." 2019-06-26 06:13:32 +03: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
nemvar c1fb454367 arcane (#44716) 2019-06-25 15:30:50 +02:00
ShizCalev f471aff225 Merge pull request #44773 from 123chess456/master
Adds Mx. as a non-binary changeling honorific
2019-06-25 01:12:56 -04:00
tralezab 6a696d043a Repaths /obj/machinery/computer/shuttle/pirate/hunter to /obj/machinery/computer/shuttle/hunter (#44706) 2019-06-24 09:40:56 -04:00
123chess456 65f3d4e138 adds nonbinary changelings 2019-06-23 19:32:42 -04:00
Fikou 1d7b508e6d UFO cow abduction (#44656)
* cowfast

* cowabduction

* now??
2019-06-23 21:42:58 +02:00
Akrilla eba239656f Contract QoL and fixes (#44705)
* QoL and location bugfix

* QoL and bugfixes

* Further fixes

* Name fix

* Text changes

* revert delay

* Same fix for returning

* description update

* New TC generation

* Slight delay for ransom cut, so they can hear the beep

* Give a written guide

* Third item

Alright I'm sold, let's try it

* Forgot to add text changes in line with the new item

* Merge conflict

* In datum
2019-06-22 19:13:06 +02:00
nemvar 40cb7b3b2c Fixes cult teleport rune teleporting ghosts and cameras and jaunting slaughter demons. (#44632)
* welp

* h

* fixes teleport rune

* demons get out
2019-06-22 02:29:40 -04:00
vuonojenmustaturska 2c784b29a4 Examine fixes (#44688)
* blob

* do this instead

* blob examine stuff
2019-06-22 01:20:13 -04:00
ShizCalev aeb1c47328 Merge pull request #44663 from XDTM/CtrlAlertMind
Hypnosis and Abductor mind control now have alerts
2019-06-20 18:14:18 -04: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
XDTM b5f1d36287 Hypnosis and Abductor mind control now have alerts 2019-06-19 18:28:44 +02:00
ShizCalev 983c5144e8 Fixes revenants getting hit by projectiles (#44617) 2019-06-18 23:26:39 -04:00
FrankFo 645156ff60 De-linkifies names in deadchat_broadcast(), makes deadsay css class default (#44600)
* De-linkifies names in deadchat_broadcast(), makes deadsay css class default too

* Makes the source argument come after message, since it is optional

* Removes excess </span>
2019-06-18 22:49:02 +02:00
py01 ace1a0b390 Hivemind ability changes (#44436)
* fixes reclaim on dead hiveminds

* adds exnendo hand min range var

* replaces hive warp with telekinetic hands, no inhand sprites added yet

* changes hive_shock to sensory effects, no sleep

* syntax fix

* adds new curse variant

* sensory overload power modifier, heart attack replaced with necropolis curse variant

* hivedrain removes stam dmg

* does curse subtype in more sane way

* changes circadian sleep to knockdown

* spell path and icon path changes

* shock channel, pin weaker on hives, cooldown changes

* telekinetic hand inhand sprites

* adds message to teople surrounding mind contol victim on cancel

* hivemind icon changes

* nightmare changes

* removes stun on mc end

* hivemind forcewall lasts longer

* prevents negative power values on shock

* chages nightmare duration and effect

* hive shock changes

* userdanger message on mind control end so people see it

* fixes merge

* removes control change

* removes unneeded var

* typo

* fixes me commiting the wrong shit

* syntax fix
2019-06-18 08:56:01 +02:00
YPOQ 6cc41accb0 Fixes revenants getting hit by projectiles 2019-06-17 19:47:37 -06:00
oranges 71aa703f5a Merge pull request #44500 from XDTM/TrueMetabolization
Liver removal/failure now also stops passive reagent effects
2019-06-18 11:49:33 +12:00
Akrilla 041680be63 [READY] Syndicate Contracts (#44420)
* Emag bounty computer to show contract connection

* Corrupted text helper

* WIP on corrupted text

* Randomly corrupt text when looking at connect screen

* Barebones accessible Syndicate bounties screen

* Contract barebones and Synd UI work

* Further text changes, antag checks

* Further UI changes, full contract generation with areas/target

* dropoff point checks, and move to uplink item for requesting bounties

* WIP contract uplink item

* Contract uplink and continued contract improvements

* Completed contract uplink, and continued contract work

* Droppod WIP

* Further droppod work

* Mob WIP

* Further mob WIP

* No mob

* Callback for putting in mob

* Further WIP with pod checks

* Better location picking and signal fix

* Further pod changes, WIP of payouts

* Overall finished payment/contract system

* Code cleanup


Revert changes to bounty console


Remove debug messages

* Small refactor

* Add kit with set and randomised items.

* Fix box

* Very minor flavor text for inserting into pod, plus roundend text

* Pod return sound

* Contract uplink slight styling changes

* We don't keep giving telecrystals until they literally can't hold anymore

* Ship them off to ninja base instead

* Nerf bring them dead, but give a nice boost for bring them alive

Overall this is a nerf, so we also throw in an agent card to the bundle

* Ship them back

* Minor text changes and slight TC change

* Always give the black and red variant space suit

* Error sounds

* Dropoff area locator

There's sometimes duplicates, i.e. security office - but only one of them will work. This shows you where to go.

* Small fixes

* Bugfix, further changing of TC

* Ransom wip

* Ransom system

* Few changes

* Properly pay for ransoms and appropriate logic for dropoffs

* Terminal sounds

* Talk on command channel when ransom is given, or if they were too late

* Change to announce system

* Announcements/auto pay ransom

* Proper wait

* Name pods properly

* Don't send blacklisted items

* fix

* Improvements

* Announcements are less huge...

* Not a file...

* Improvement

* Drop them not in a wall

* Halves eye blur and styles payment vend

* No memes allowed
2019-06-17 20:32:46 +02:00
vuonojenmustaturska f9472145c3 Fix missing descriptions from the electromagnetic web blob strain (#44553) 2019-06-16 19:04:36 -04:00
Arkatos1 41fbcfb7c8 Jump to Node Blob ability now shows areas where each blob node is located (#44547)
Previously the ability was showing a chemical of each Blob node,
which I consider quite unnecessary and redundant.

QoL change for Blobs, as they might lose track of which node was
located where, especially if they managed to considerably expand
across the station.
2019-06-16 11:42:43 -07:00
RandolfTheMeh d26de58ff5 Exclude the Narsie rune from scribe time reduction (#44495)
Simple check that's thrown when scribing runes. If you're on runed tiles,
and not scribing the Nar'Sie rune, its scribe time is cut in half.
Nar'Sie rune is therefore exempt. First PR, I've tested the code to
ensure that the Nar'Sie rune takes the full 50 seconds regardless of
tile, and that other runes are left untouched.

Given the movement speed reductions, a 25 second timer on the Nar'Sie
rune scribing means that on larger stations you will only just have
reached the summon location by the time it's done. To make the end game
for cult more balanced across stations, and with the recent movement
speed reductions, the Nar'Sie rune is locked at its intended scribe time,
with no means of reduction.
2019-06-14 12:26:43 -07:00
nemvar 74c8498c08 [Ready]Gives ashwalkers an antag datum (#44396)
* welp

* Savages, savages, barely even human.

* Savages, savages, barely even human

* You didn't see this

* h

* bee gone

* FFS, I mixed up my... ugh

* savage

* removed test line

* Turns ashwalkers into antags

* fuck

* hjjg

* fixes stupid

* g

* h2

* Damn...

* There we go?

* If it compiles, we can ship it

* Forgot the actually remove the thingy
2019-06-14 19:48:12 +02:00
XDTM 8a1dc7ec6b Liver removal/failure now also stops passive reagent effects 2019-06-13 13:26:59 +02:00
vuonojenmustaturska 0254559eca Replaces hear_intercept with signals, refactors MOVABLE_HEAR, touches up nanites and to_chat (#44391)
hear_intercept is removed in favor of having the things that care register for the COMSIG_MOVABLE_HEAR signal instead.

The signal has been changed to be like the speech one with an args list.

Nanite datums no longer register for the hearing signal just in case, only the voice sensor nanite program does.

Dead code has been removed from to_chat, the savefile/sound checks being just-in-case boilerplate checks made during the conversion to to_chat, the replacetexts sidestepping a byond bug that was fixed in 512.1420.
2019-06-10 10:43:12 +12:00
Emmett Gaines 45ec62931d Finally removes the signal redirect component (#44251) 2019-06-09 17:25:50 -04:00
YPOQ 654c4bc779 Fixes cult constructs not being able to invoke runes (#44318) 2019-06-08 13:36:35 +02:00
skoglol c163ba599d Blood brother alert now has sound and bigger text (#44293)
* Makes the blood brother antag alert more obvious.

* added css class
2019-06-08 13:23:28 +02:00
GLACoding d160202bf7 Changes to mind checks (#44344) 2019-06-07 11:05:13 -04:00
YPOQ ae95e19fc0 Fixes strained muscles not doing stamina damage (#44323) 2019-06-06 05:46:30 -04: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
ShizCalev 30fd6ddeac Merge pull request #44280 from kingofkosmos/spanendingfixes
Adds missing </span>'s.
2019-06-04 05:50:50 -04:00