Commit Graph

84 Commits

Author SHA1 Message Date
CRITAWAKETS
dba95083a0 Makes HMS (and uncurable severity diseases) actually uncurable. (#76291)
This PR makes HMS and any other diseases set to uncurable severity (only
HMS counts right now) actually uncurable through either aheal or viral
bonding.

Well, simply put, you shouldn't be able to cure quirks. Viral bonding
doesn't technically "cure" the disease but makes you into a carrier for
something that doesn't spread, which has been fixed.
2023-07-10 22:13:32 +00:00
ChungusGamer666
f07b74ea90 Moves species brutemod and burnmod to be handled by bodyparts (#76060)
## About The Pull Request

Title.
Brute modifier and burn modifier are now handled by bodyparts. Cold
modifier and heat modifier are still handled by species, though
mmmmmaybe I'll make a PR addressing those later, yes?

## Why It's Good For The Game

Medical abominations will have even more consistent behavior!
Also bloating the species datum less is kinda good.

## Changelog

🆑
refactor: Species brute and burn damage modifiers are now handled by
bodyparts, instead of being universal. Go ham at the surgical bay.
/🆑
2023-06-17 18:46:27 +02:00
Zephyr
ecbcef778d Refactors Regenerate Organs, and a few organ helpers (#74219)
## About The Pull Request

Refactors regenerate organs to be slightly more intelligent in handling
organ changes and replacements.
Noteably:
- We don't remove organs that were modified by the owner; such as
changing out your heart for a cybernetic
- We early break out of the for loop if they aren't supposed to have an
organ there and remove it
- We check for the organ already being correct, and just healing it and
continuing if it is

Also changes the names of some of the organ helpers into snake_case
### Mapping March
Ckey to receive rewards: N/A

## Why It's Good For The Game
## Changelog

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-03-26 17:54:36 +01:00
san7890
bf6f81a9b5 Implements AddTraits and RemoveTraits procs for adding/removing multiple traits + swag unit test (#74037)
On the tin, doing it like this means we can reduce our overall line
fingerprint whenever we have to add two or more traits from the same
source on the same target. Especially helps when we get to the 4+ range
of traits, a breath of fresh air even.

Doesn't mean we have to do for loops, as that's already handled within
the define as well. I replaced some of the checks with `length()`
checks, let me know if I should switch it over to something else (maybe
`islist()`)? We stack_trace whenever we're not passed a list reference
on purpose, and sometimes var/lists are null by default (or just empty,
making this redundant).
## Why It's Good For The Game

I commonly feel the urge to write "use `AddTraits()`" or something in
reviews, then am sad when I remember it doesn't exist. I will no longer
be sad.

Can ensure a lot more trait safety as well by using static lists- when
both ADD_TRAIT_LIST and REMOVE_TRAIT_LIST re-use the same list, you are
confident (from a static point of view) that everything that you want to
be adding/removing works.

I may have missed a few things where this could be used, but both macros
implemented in this PR still use the same framework that was being used
in the last four years- so stuff won't break if left untouched. Just a
nifty new tool for developers.

also fixed up some code in the area, numerous bugs were found and
exploded
2023-03-18 01:57:06 +00:00
Zephyr
069de4f336 Moth Wing Reconstruction surgery works (#73486)
## About The Pull Request

Moth wings only allow themselves to be healed if the proc is called with
HEAL_ORGAN or HEAL_LIMB
So we just make the surgery force healing
## Why It's Good For The Game

Resolves https://github.com/tgstation/tgstation/issues/73485
## Changelog
🆑
fix: Moth wings can now correctly be healed
/🆑
2023-02-18 14:18:06 -07:00
SuperSlayer
5cb8a9843b Makes nerve splicing surgery reduce stamina damage (#72661)
## About The Pull Request

Makes nerve splicing surgery also reduce stamina damage by 20% (amount
of stun/stamina reduction can be changed if requested).

## Why It's Good For The Game

Most of stun sources now come from stamina damage, so this surgery is
kinda useless in most cases. This PR makes it more usefull in the
current combat system, while not making it too OP.

## Changelog

🆑
balance: Nerve splicing surgery now additionaly reduces stamina damage
taken by 20%
/🆑
2023-01-20 18:16:56 +00:00
John Willard
3b0794eca9 Surgery code improvements (#71182)
## About The Pull Request

* Changes a lot of things about surgeries to hopefully bring it up to
more modern code standards.
* Removes a ton of single-letter vars used in checking surgeries on
people.
* Makes use of continue/break in for() loops.
* Properly documents the vars on surgeries
* Turns 'ignore clothes', 'self operating', 'lying required', 'require
limb' and 'require real limb' from vars into surgery flags
* Removes a lot re-defines of target_mobtype being set to human, as
that's the base anyways.
* Also tries to organize the vars on each surgery a bit.
* Makes the surgery initiator hopefully a little bit more sane
* Removes the surgery's can_cancel and stomach pump's
accumulated_experience vars, as they were entirely unused.

## Why It's Good For The Game

I looked at surgery code and couldn't stand it, this is hopefully
helping bring it to something we can stand.
This however doesn't touch the individual surgery steps.

## Changelog

im exhausted i don't know if this has in-game effects
2022-11-20 23:22:46 -08:00
lizardqueenlexi
588779256e Surgery computers tell which tool to use. (#70973)
## About The Pull Request


![image](https://user-images.githubusercontent.com/105025397/199194075-d1a3b42a-5c2e-4a02-84d1-84b4be2b601b.png)

All surgery step names, displayed in the surgical computer, will now
show which tool to use for that step in parentheses. In cases where
multiple tools have a 100% success chance, all are listed; if no tool
has a 100% chance then the "correct" one is shown.

Surgery computers will never display "alternate" tools for surgeries
(those with a lower success chance), but this shouldn't be a problem.
Surgical computers are _usually_ in places with surgical tools at hand,
and NanoTrasen wouldn't want to encourage doing brain surgery with a
screwdriver. Y'know, probably.
## Why It's Good For The Game

Firstly, this change is particularly helpful to new players. If you have
little experience with surgery, it's not always clear which tool you're
meant to use for which step. This is especially true for some of the
odder surgeries - if you didn't already know, it's not clear at all that
"brainwash" means "use a hemostat". While there are certainly guides on
the wiki, it's nice to have as much information provided in-game as
possible.

Secondly, this change brings consistency. A _small_ number of surgical
steps (healing broken bones, namely) already do this! I see no reason
why this shouldn't be extended to the remaining surgical steps,
especially because it's not particularly obtrusive to the surgery
computer interface.
## Changelog
🆑
qol: Made surgical computers tell you what tool to use for the current
surgical step.
/🆑

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-11-04 01:00:12 -07:00
Time-Green
7db523ec3e The Great Species Dedatumming 2: Makes external organs operable (#68877)
Finally makes external organs (horns, moth wings, antennae etc.) operable!
Also adds a new surgery: feature manipulation. It's a shorter version of organ manipulation that only lets you operate on species features. Note that organ manipulation can operate only on internal organs.
2022-08-10 21:33:52 +03:00
Mooshimi
b09f3868f8 individual LOG_GAME (#68683)
About The Pull Request

    replaces a ton of log_game with user.log_message so the log is added to individual and global logs.
    adds a few logs for individual LOG_VICTIM, LOG_ATTACK etc logging.
    adds logging for bluespace launchpad's tele coords being changed.
    took the word "has" out of log_combat, as it's extra and just lengthens the log.

Why It's Good For The Admins

It's extremely laggy to open game.txt so an alternative is individual game logs
Changelog

cl
admin: A lot of game logs will now also be in individual game logs, for convenience in log diving.
admin: Added logging for bluespace launchpad x and y offset changes, which go to individual game logs.
admin: Attack logs will now be slightly shorter, one useless word was removed.
/cl
2022-08-05 09:32:02 +12:00
ShizCalev
7082dc4254 Fixes surgical moth wing reconstruction trying to repair not moth wings. (#68774)
Fixes moth wing repair surgery runtime
2022-07-28 00:54:22 +03:00
Kapu1178
6d470992cb This tail refactor turned into an organ refactor. Funny how that works. (#67017)
* Fuck you (refactors ur tails)

* Errors

* Wow. Pain.

* Fixes up probably everything

* finish up here

* Fixes hard del maybe

* original owner hard del

* garbage collection runtime

* suck my peen byond

* Mapped tails

* motherfucker.

* motherrfucker. again.

* Whooopppppsie

* yeah bad idea

* Turns out external organs literally just sat in nullspace forever if their parent was deleted, and didnt Remove() themselves, causing harddels.

* So anyways I repathed all organs

* Fixes

* really.

* unit test... test

* unit test-test but it passes linters this time because im a moh-ron

* I've lost track of what im doing at this point

* Hopefully fixes hard del?

* meh

* Update code/datums/dna.dm

* things n stuff

* repath from master pull
2022-05-30 21:18:34 -07:00
nmajask
64d5de009c Revives "Adds sound effects to surgeries" (#65578)
* Adds surgical sounds

Rough implementation as I don't have too much time tonight.

* Fixed falure_sound

Fixed a typo

* Removed the lists

Removed the lists and added sounds to revival surgery, stuff will probably break

* Fixes the playsounds still using pick

* Added sounds to more surgeries

Added sounds to four more surgeries
2022-03-25 20:07:00 -04:00
AnturK
41e02e5e39 Fixes issues found by new switch lints (#64766)
Very nice addition to sdmm.
2022-02-11 01:50:02 -08:00
Jeremiah
1052bc19ed TGUI input box conversions 1 (#63313) 2021-12-11 14:21:35 -08:00
itseasytosee
f51000f506 Repaths knives to not all be children of the kitchen knife. (#62035)
Basically makes the code less dumb, took a long time. I worked hard to make sure there were no unintended effects (minus the fact you can no longer get spoons from the experimentor). No player-facing effects

I thought it looked weird that all cultist and combat knives were subtypes of the kitchen knives
2021-10-15 15:28:01 -07:00
FlamingLily
c5a110308d Surgery pain messages and screaming in agony (#61252)
Adds (purely flavourful) unique pain messages to surgery steps, with a 30% chance for forced screaming in agonizing pain

Messages are things like "You feel a horrible stabbing in your chest" and w/ever.

Also see Skyrat-SS13/Skyrat-tg#5899
2021-09-15 13:30:49 +01:00
Couls
6ec7391ee2 restore removed individual logs and place them under LOG_VICTIM category (#61256)
it turns out that admins use the removed information in #61179 for faster live in-round logging, I've restored that information under a LOG_VICTIM category that should not interfere with mind-reading and ling absorb text
2021-09-07 18:39:09 +01:00
MrMelbert
b3e8eebdc9 Kills /obj/item/melee/transforming, replaces it with a transforming weapon component (#60761)
This PR kills off the transforming subtype of /obj/item/melee and replaces it with a component to handle the transforming behavior, /datum/component/transforming.

The transforming component handles updating the variables of an item when it's transformed. Things like force, sharpness, whetstone force bonus, and attack verbs. Similar to the two-handed component, but instead of transforming into a two-hander it remains a one handed weapon.

The "nemesis" behavior (dealing addition damage to certain factions) of the transforming subtype was moved to the cleaving saw only, since it was the only transforming item that used it. In the future, this can be made into a bespoke element/component as well.

The following weapons and items have been updated to use this component:

    Energy Swords / Sabers / Bananium Energy Sword
    Energy Circular Saw
    Energy Dagger
    Energy Axe
    Toy Energy Sword
    Holographic Energy Sword
    Switchblade
    Advanced Medical Tools (Laser scalpel, Mechanical Pinches, Searing Tool)
    Advanced Engineering Tools (Hand Drill, Jaws of Life / Syndicate Jaws of Life)
    Combat Wrench
    Cleaving Saw
    Telescopic Batons / Contractor Batons
    Roasting Stick
    Telescopic Riot Shield
    Energy Shield / Bananium Energy Shield

This PR also touches up the code around the various above items.
2021-08-23 11:45:54 -07:00
Time-Green
8a7f258171 The Great Species Dedatumming: External feature organs, part 1 (#59981)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-07-08 08:27:19 -07:00
Y0SH1M4S73R
63e33bd709 Makes mutant bodyparts and mutcolors into editable genetic traits (plus a whole shitload of otherwise out of scope code improvements because I just HAD to touch old code) (#59636)
I noticed that various nonhuman body features can't be changed using genetics. I corrected this by adding a block to character genomes allowing you to edit features in the DNA console.
2021-06-20 16:20:09 -03:00
Watermelon914
375a20e49b Refactors most spans into span procs (#59645)
Converts most spans into span procs. Mostly used regex for this and sorted out any compile time errors afterwards so there could be some bugs.
Was initially going to do defines, but ninja said to make it into a proc, and if there's any overhead, they can easily be changed to defines.

Makes it easier to control the formatting and prevents typos when creating spans as it'll runtime if you misspell instead of silently failing.
Reduces the code you need to write when writing spans, as you don't need to close the span as that's automatically handled by the proc.

(Note from Lemon: This should be converted to defines once we update the minimum version to 514. Didn't do it now because byond pain and such)
2021-06-14 13:03:53 -07:00
FlamingLily
5a0d8209cb Muscled Veins and Gastrectomy (#59291) 2021-05-25 19:54:04 +02:00
FlamingLily
3958db8d27 Cleans up surgery and organ code. (#59068)
About The Pull Request

Scrubs those filthy single letter variables out of surgery and organ code.
Replaces a few 0s and 1s with FALSE and TRUE where relevant
Normalises and cleans up surgery step lists and surgical implements lists.
Replaces a whole lotta for loops with for x as anything in y lops

This is my first PR (upstream anyway) so I encourage you to treat my code with as much confidence as I treat it, which is to say none, because there's a strong chance I've totally broken everything.

But it compiles!
Why It's Good For The Game

code improvement, follows contributing guidelines.
Changelog

🆑 FlamingLily
code: Cleanup of surgery and organ code
/🆑
2021-05-22 19:49:47 +12:00
John Willard
126d1eeb72 Defines some traits and cleans it out a little (#57389) 2021-03-04 13:37:52 -08:00
Timberpoes
e85cf07b96 Mirror logging for brainwashing and hypnosis in the player panel and attack logs. (#56515)
Hypnosis and brainwashing now have entries in the Player Panel logging
under attack and entries in the attack logs.

Mirrors some logging that would otherwise just be in the game logs.
From an admin-perspective, issues where you'd want to check
brainwashing/hypnosis tend to go hand-in-hand with issues relating to
attack logs as opposed to game logs.
2021-01-31 20:21:38 +00:00
Qustinnus
f66ca34626 Refactors monkeys into a species (#55614)
Changes monkeys from carbon subtype to species.
2020-12-30 16:30:15 +01:00
Ryll Ryll
9b62c86f4d Fixes disabled limbs from compound fractures, only robotic limbs can be disabled by pure damage now (#54922) 2020-11-16 14:54:32 -08:00
Timberpoes
c07d14a1fc Wingfeex feex 2020-09-14 02:06:27 +01:00
Ryll Ryll
dfcd304dcc Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability (#52534)
* adds wound armor to helmets + such, nerfs standard head resist

* dismember + wound species balance, retitle traits
2020-07-30 01:18:57 -03:00
Time-Green
f47dc74029 Renames instabitaluri to syntflesh (#52523)
* Renames instabitulari to synthflesh

* Recommits Jared Foggles correction
2020-07-28 00:05:21 +03:00
Maurukas
a5aa02bad2 resolve conflicts with dissection removal 2020-07-11 09:51:14 -07:00
Maurukas
97afe271f8 unassuming 2020-07-10 16:21:27 -07:00
Maurukas
d5bd6777ab aheals, suggested logic cleanup 2020-07-10 16:21:27 -07:00
Maurukas
98a0f966fb Add Jared's suggestion
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-07-10 16:21:27 -07:00
Maurukas
b539bfce0b shift start burnt wings
Moths who enter NT employment with burnt wings may not take advantage of this surgery, receiving "Plain" wings.
2020-07-10 16:21:27 -07:00
Maurukas
17386990ce add wing reconstruction
Adds surgical reconstruction of moth wings.
2020-07-10 16:21:26 -07:00
Jared-Fogle
418bd80a6b Remove healing skill (#52005)
* Remove healing skill

* Remove dissection from tech web
2020-07-07 10:10:12 -04:00
nemvar
b87f65d95e Converts ALL typepaths to lowercase (#51642)
* Case of lower

* More changes

* Ruins the nice 420 diff, brainfart when doing the second batch of conversions

* More changes

* Next batch. I think

* Converts even more paths

* Restarts bots

* Capital Free Zone

* Come on travis, do something

* Renames areas

* Bots, please stop dying

* Updates CONTRIBUTING.md and updates a few paths I missed.

* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
2020-06-17 20:47:57 -03:00
ATH1909
d0e39bbfe6 fixes the targeting of the cortex bioware surgeries (#50719)
* fixes the targeting of the cortex bioware surgeries

* Update code/modules/surgery/advanced/bioware/cortex_imprint.dm

Co-authored-by: XDTM <heliumt@yahoo.it>

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: XDTM <heliumt@yahoo.it>
2020-05-02 22:38:41 +02:00
XDTM
a4c838b8b2 Fixes Cortex Folding Surgery (#50414)
* gps

* Fixes cortex folding

* manual revert

* other manual revert

Co-authored-by: spookydonut <github@spooksoftware.com>
2020-04-06 20:35:51 -04:00
XDTM
d8640110e4 [Ready]Adds more Bioware Surgeries (#49621)
* Adds more adv surgeries

* Update cortex_folding.dm

* Update cortex_imprint.dm

* fixes define

* fix double trauma gain

* Update code/modules/surgery/advanced/bioware/cortex_folding.dm

Co-Authored-By: Rohesie <rohesie@gmail.com>

* Update code/modules/surgery/advanced/bioware/cortex_folding.dm

Co-Authored-By: Rohesie <rohesie@gmail.com>

* Update code/modules/surgery/advanced/bioware/cortex_folding.dm

Co-Authored-By: Rohesie <rohesie@gmail.com>

* Only minor trauma immunity

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-04-01 09:38:59 -04:00
spookydonut
880280ed48 Revival surgery is no longer an advanced surgery (#49489)
* Update revival.dm

* Update medical_designs.dm

* Update all_nodes.dm

* Moves the surgery out of advanced folder

* dme

Co-authored-by: spookydonut <github@spooksoftware.com>
2020-03-05 20:36:21 +08:00
nightred
15452cac44 [READY] Two Handed Component (#49422)
About The Pull Request

For an item to be two handed just add this handy component.

All existing two handed items have been converted to use this component.
Why It's Good For The Game

It has components and signals, and now you can make items two handed so simply.

/obj/item/shockpaddles/ComponentInitialize()
	. = ..()
	AddComponent(/datum/component/two_handed)
2020-03-04 11:26:01 +13:00
moo
bb3d562d01 Cobbduceus: Surgery Skill XP/Step Buffs (#49196)
* 💉

* 🐣

* excels help

* waaa_fb

* fixed lobotomy skill

* waaa_fb2
2020-02-14 19:17:27 +01:00
moo
4022d0c427 Bumps up Surgery XP gains, Fixes Surgery XP Gains, Fixes Surgery Failure Bug (#48231)
* works on my machine

* saving is a sin 1% of the time!

* works... on... my... machine...?

* i can't test this but it worked on my machine too

Co-Authored-By: Bobbahbrown <bobbahbrown@gmail.com>

* more testing /w TW

* caps XP gain (per iteration) for TW

* no skinnies

Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
2020-01-02 23:48:15 +01:00
ShizCalev
8efa6479ce Adds cell deletion handling for stunbatons (#48108) 2019-12-06 12:20:24 +01:00
moo
964b3d65d5 Cobbduceus: Healing lvl? (Medical Skill) (#47538)
* b

* helps to commit huh

* math is hard

* parenthesis are even harder

* Update code/datums/skills/_skill.dm

Co-Authored-By: Bobbahbrown <bobbahbrown@gmail.com>

* removes efficiency... or efficacy 😏

* baby sha... i mean files
2019-11-21 04:49:24 +00:00
spookydonut
2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
81Denton
6b1161ecd9 Cleans up revive related procs (#47025)
* Cleans up revive related procs

* h

* fuck

* Fixes proc arguments

* Further fixes

* Unfucks line endings
2019-10-22 15:16:13 -07:00