Commit Graph

64 Commits

Author SHA1 Message Date
DGamerL
378630370f Refactors custom_pain to work on organs instead of on mobs (#23160)
* Wolf request

* Update code/modules/mob/living/carbon/human/human_organs.dm

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>

---------

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2023-11-12 19:45:26 +00:00
LiberatedWaveMan
e09be2b54e You got a fuckin' problem mate? Adds the glass shiv (attempt 2) (#22416)
* Redoes the Shiv PR, adds shiv (ready to go)

* Update code/modules/crafting/recipes.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update code/modules/crafting/recipes.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Update kitchen.dm

---------

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
2023-09-19 22:47:53 +01:00
Luc
327add6348 Converts two-handedness/wielding to a component (#21619)
* initial checkin

* Add everything but maps

* update paths

* Patches some minor bugs across twohanded things

* remove a stowaway

* Update code/__DEFINES/dcs/signals.dm

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Contra review

* Fix kc

* hopefully fix file perms

* Fix file perms

* revert line-endings

* uh?

* Trying once again to fix file formats

* henri review 1

* henri review 2

* update from master

* Removes override that breaks modsuits

* re-add reference

---------

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
2023-09-01 22:06:59 +01:00
Henri215
dc75a748f1 Fixing common spelling mistakes part 3 (#20870)
* Fixing common spelling mistakes part 3

* collectable

* another collectable

* part 3.2

* "</span>."

* A bunch more fixes
2023-04-22 09:44:27 +02:00
Vi3trice
20c437f7d2 linters do your magic (#19263) 2022-10-10 20:58:41 +02:00
Luc
346a1b8142 Yet Another Surgery Refactor (#18325)
* Initial commit

Fixes up surgery.dm
Adds some tool behavior

* More basic changes

* Checkpointing: this is a little gross right now

* Add signal COMPONENT_CANCEL_ATTACK_CHAIN

* Cleans up surgery initiator

* Mostly gets surgery (and canceling it) working

* Add abstract proxy surgery steps

Also adds them to organ manipulation

* Clean up most existing surgeries

* Rework organ openness, adds define for aborting a beginstep

* surgery works again, also implements retry defines

* fix surgery computer

* add limb repair to synth implant removal

* retry implant checks

* Clean up abductor surgeries as well as some other things

* A lot
- Reworks organ manipulation to use a series of surgery steps instead
- Fixes some runtimes with open hands
- Lets mito zero out the germ level while treating necrosis
- Adds a debug surgery tool

* add debug surgery tool, note some TODOs for later

* Add conditional check for surgeries repeating

* update surgery retry logic to make it more of a bonus

* Lets abductors automatically retry any failed surgery steps

* Rework robotic surgery to use abstract/proxy steps

* Bunch of bugfixes and more!
- Limb reattachment works properly now, you can just slap a limb onto a person
- If the limb isn't robotic, it'll be useless until the surgery is finished with a hemostat, though it might be enough to get the patient out of the OR.

* Remove more now-implicit checks

* Slight reorganization

* more fixes across the board

* Remove unused variable

* Trying not to lose my mind here
- Does away with can_run() entirely
- Cleans up visible messages in code
- begin steps should now all have ..() afterwards
- slime bone surgery should be fixed now
- more docs

* Robotic  surgery is stoppable with a crowbar, all surgery can_start now checks parent

* Fix some broken robotic typepaths

* Typepath fixes, do away with some last TODOs

* Forgor

* Last cleanups before we go gold

* jk lol

* Make early surgery termination clearer

* More "last" cleanups

* Fixes tool flags, surgery initiation

- Fixes surgery not being startable by sharp objects
- Moves surgical tool flags to item traits

* Clean up surgery cancellation, especially for borgos

* I think this should GC better

* Apply suggestions from code review

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>

* Status is now step number

* Add a 20% chance to find nothing during organ manipulation

* Improve documentation, make forced_surgery a normal arg

* Charlie's reviews

* Why are abductors like this

* Little more verification, ensuring limb augmentation and organ manip healing work properly

* Fix torso organ manip being unfinishable

* Fix cavity implants, open-hand/any item steps

* Make sharp objects not try to start an operation with help intent

* Comments, quick target fix

* Re-order list so advanced bruise pack is pulled first

* Make surgical gripper function like an open hand

* Make mito only use one unit per organ for now

* Check if user is on operable surface before trying to operate

* Reduce admin logging

* Fix some bugs that appeared during the testmerge
- you can no longer start robotic surgeries with a scalpel (lol)
- you can now cancel surgeries on the first step after I fixed some bugs that I introduced (woo hoo)
- Synthetic limb attachment is now combined into a single startable surgery step, though still retains the fun flavor of both

* Swats some more bugs
- (hopefully) fixes a huge source of runtimes where we tried to check if we could run surgeries before checking if the surgery used an organ
- In doing so, moves the logic for determining if a surgery can start to the mob-level
- Fixes robotic reattachment surgery not working

* multi-bug drifting???

- Fixes a bug where a branching surgery with an any tool option could possibly override a step with a matching tool
- Fixes some intermediate surgeries failing due to not having specified possible_locs

* A few more fixes
- Fixes any surgery tool steps again
- Fixes cavity surgery again

* Hopefully fixes getting stuck in robotic organ manip

* Remove extra parent call

* Steel review

* Steel review

* Fix spacing for possible locs

* Roundstart traits

* Advanced surgical traits and other hal fixes

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>
2022-09-16 18:48:43 +01:00
alex-gh
fc2b99bd51 Surgery refactors (#18183)
* Remove dead code

* Refactor magic numbers to defines
2022-07-05 21:20:38 +02:00
Charlie
31b336da64 minor external organ refactor (#16183)
Co-authored-by: SabreML <57483089+SabreML@users.noreply.github.com>
Co-authored-by: dearmochi <1496804+dearmochi@users.noreply.github.com>
2021-12-01 22:17:44 +01:00
Nokko
cf2145a953 Another spelling fix in surgery (#12885)
Fixed misspelling in surgery saw fail step
2020-01-07 14:46:47 -05:00
Nokko
4af6e8a243 Fix minor spelling error in surgery
```diff
-- KOM-RAD's hand slips, tearing blood vessals and causing massive bleeding in Vampy The Vampiric Clown's lower body with the hemostat!
++ KOM-RAD's hand slips, tearing blood vessels and causing massive bleeding in Vampy The Vampiric Clown's lower body with the hemostat!
```
2019-12-11 21:41:45 -08:00
Fox McCloud
27ebe7a6fe Standardized Robotic Organ Checking--Removes Mechassited Organs 2018-07-07 21:33:42 -04:00
Fox McCloud
8b05cce9f3 Pain Refactor and Tweaks 2018-05-23 14:54:54 -04:00
Fox McCloud
8c7b543415 The Great Conflictening 2.0: Removes /obj/item/device 2018-04-25 23:07:35 -04:00
tigercat2000
c03621c508 Completely Overhaul Logging
This is a merged port from /tg/station and Virgo on logging standards.
The diary has been replaced with GLOB.world_game_log, diaryofmeanpeople
is gone (because it wasn't actually used) and a whole bunch of logging
procs have been changed to optimize Splunk.
2018-04-19 15:07:59 -08:00
Fox McCloud
5c4aa9b3fd Removes All Weapons 2018-04-15 16:25:56 -04:00
uraniummeltdown
75e177b7a9 renames receive_damage() for animations to receiving_damage()
renames take_damage() for organs to receive_damage()
renames Deconstruct() to deconstruct() for atmos objects
obj_integrity, max_integrity, integrity_failure vars moved to /obj level, obj_integrity = max_integrity on New()
2017-12-28 00:32:54 +05:00
TDSSS
1e7575afde Adjusted ghetto surgery tool chances to keep ghetto surgery chances overall roughly equal. Also added rigsuit removal to list of surgeries that don't care about pain. 2017-10-15 15:28:25 -07:00
Fox-McCloud
02f74932e2 Fixes IPC and Diona Knockdown Immunity 2017-07-20 21:01:55 -04:00
Fox-McCloud
93abbe25a4 BURNNNNNNN 2017-07-15 23:43:51 -04:00
Fox-McCloud
cb35d1f6e9 Binsult.ogg 2017-07-15 12:12:59 -04:00
Fox-McCloud
05a24da2e8 The Most Non-Edgey PR Ever 2017-07-01 19:48:43 -04:00
Crazy Lemon
893fd2178e Merge pull request #6896 from pinatacolada/greasyhandsforrealsies
Dirty surgery rooms more prone to infections and ghetto surgery internal organ disinfection and dead limb revival
2017-04-26 18:51:10 -07:00
pinatacolada
eafa00f4b7 Dirty surgery rooms more prone to infections and ghetto surgery internal organ disinfection and dead limb revival
Combination of #6743 and #6479, because I am a pro mlg git user, who
would never have issues with the master branch no sir

Doing surgery with another person watching, even if they don't wear a
mask, doesn't warrant an infection either, but beyond that you are
pushing your luck

However, doing surgery in this scenario:

![why would you even do this](http://puu.sh/u7kLj/f3a444e1e9.jpg)
Resulted in acute infections to the heart and lungs.

So, recap:
-Wash your hands, wash your tools if needed, clean your room, wear a
mask and nothing bad happens.
You can even invite a friend to watch over
-Do brain surgery in a blood filled room with 11 clowns honking and
breathing cooties down your patient, and it's just bad
//-Letting your patient go without closing the incisions is also bad why
would you even do that (NOT WORKING ATM)
Allows to use a droppers, bottle, drinking glasses, drinking bottles.
beakers, sprays, or if you are brave
enough, an entire bucket, to treat internal organ infections with
alcohol. The more alcoholic the thing is the more it disinfects. This is
an available option during organ manipulation, at the time where you can
apply trauma kits and etc, so you can for instance apply a trauma kit
and then drip a bottle of vodka over someone's liver to treat infection.

Also adds a debridement surgery to revive dead EXTERNAL organs. Same
list of utensils as the previous, lets you apply mithocolide on a dead
limb or chest to make it unded. Surgery steps are incision, scalpel,
applying a reagent container, cauterize.

🆑 pinatacolada
add: dirty surgery environments get you nasty infections
add: ghetto surgery internal organ disinfection with alcohol
add: dead limb revival surgery step
/🆑
2017-03-23 15:10:28 +00:00
Fox-McCloud
9e94f2ceeb Fixes Power Tools Materials and Recators Laser Scalpels 2017-03-09 02:08:42 -05:00
TheDZD
f5577b4a8f add_logs() un-fuckery 2016-08-29 17:27:56 -04:00
Crazylemon64
4326b9383e Abductor surgery, Face repair, now all work again 2016-08-22 11:42:01 -07:00
TheDZD
db3a13a1d1 Merge pull request #5453 from Crazylemon64/ipc_surgery_fix
Makes IPC surgery much more reliable.
2016-08-17 20:15:53 -04:00
Crazylemon64
7d2983b4bf Makes IPC surgery much more reliable, object insertion surgery
works better now, and `can_use` is actually called now.
2016-08-14 18:12:23 -07:00
Tigercat2000
258f477eb3 /tg/ mecha - Part 1
Start of porting the /tg/station mecha update.
This commit only cleans up the code and adds the proper dependencies for
the mecha.

 - Removes relative pathing from /datum/events
 - Updated Process_Spacemove() to use
   atom/movable/proc/get_spacemove_backup()
   - Basically just makes launching off of unanchored objects in space an
     OOP behaviour
 - Removed styling atrocities and relative pathing from most of the mecha files.
  - Notable exceptions:
   - code/game/mecha/mech_bay.dm
   - code/game/mecha/mech_fabricator.dm
   - code/game/mecha/mecha_construction_paths.dm
   - code/game/mecha/mecha_parts.dm
   - code/game/mecha/mecha_wreckage.dm
   - code/game/mecha/paintkits.dm
 - Removed dyndomove/dyndoattackby/dyndobulletact. No more icky dynamic
   calls. Replaced by specific code for the 3 modules that used it.
 - Refactored module cooldown. It now uses addtimer, and power usage is
   hooked directly into the cooldown calls.
 - Added atom/movable/proc/has_buckled_mobs(). Currently not that useful,
   but, necessary for porting the multi-buckling system from /tg/.
 - Split code/game/mecha/equipment/tools/tools.dm into multiple files.
 - Removed snowflake behaviour from exosuit drill. It now calls
   turf.drill_act(src).
  - Different from /tg/: Allows you to drill any wall/floor normally.
 - Drill no longer gibs mobs. It deals 80 organ damage instead.
 - Drill can be used to harvest dead mobs.
 - Removed all global_iterator systems from mecha and mecha equipment.
   Everything now uses object processing.
 - Mecha now have a turn sound variable and step sound variable. Updated
   all subtypes to use these instead of snowflake domove procs.
 - Removed mecha_do_after, mecha now uses the normal do_after.
 - Removed enter_after, same as above.
 - /obj/mecha/Process_Spacemove no longer strangely calls the user's
   spacemove.
 - /obj/mecha/return_pressure now uses return_air instead of copypasted
   cabin air detection.
 - Same for /obj/mecha/return_temperature
 - Added /obj/mecha/Exited. Basically, properly clears occupant refs,
   even if they teleport out/otherwise exit improperly.
 - Added hooks for mecha action buttons; Didn't implement them yet.
 - Moved mecha UI to code/game/mecha/mecha_topic.dm
 - Fixed turfs not updating atmos when ChangeTurf(/turf/space) is used.
 - Updated visible_message and audible_message. Both now use
   get_mobs_in_view() to ensure that mobs inside containers can see
   messages.
 - Removed /obj/item/mecha_parts/mecha_equipment/tool subtype. It had no
   use. Any subtypes are now just subtypes of
   /obj/item/mecha_parts/mecha_equipment.
2016-08-12 06:14:00 -07:00
Tigercat2000
71e5344a98 Mass replace 2016-07-07 19:34:02 -07:00
Fox-McCloud
f7ad204ff0 mech drills 2016-03-24 00:26:57 -04:00
Fox-McCloud
6eb2a73c9d Ports Dental Implants 2016-03-22 19:15:49 -04:00
Fox-McCloud
4316775c1a Surgery Tweaks 2016-03-04 21:47:41 -05:00
Aurorablade
d532473e89 gibs rustled, limbs logged 2016-02-14 00:00:38 -05:00
Aurorablade
12b3ccb2e2 why 2016-02-04 23:57:11 -05:00
Aurorablade
c4d151ce34 you buy organ, yaya?
Is fresh.
2016-01-30 21:37:55 -05:00
Aurorablade
b2881bdc94 Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into OrganRefactor 2016-01-26 21:17:25 -05:00
Aurorablade
53f410272a home streach. 2016-01-26 20:53:13 -05:00
Fox-McCloud
f5220f7ce3 Assault Surplus Create and Knife Refactor 2016-01-22 10:04:24 -05:00
Aurorablade
cc8f402a4d progress
xeno organ abiltys not working on insert (on non xeno mob)
Limb attachment for robot parts being stupid
2016-01-21 20:42:32 -05:00
Aurorablade
678a2e9f4e commit so i can go bugfix and do other things
besides code in organs...tell me what i did wrong!
2016-01-09 00:05:25 -05:00
Aurorablade
2623f75e0d progress 2016-01-06 23:43:12 -05:00
Aurorablade
92e15c1b2a BREAK ALL THE THINGS 2015-12-31 01:23:44 -05:00
Markolie
1b10a3013c Surgery update 2015-10-01 23:10:16 +02:00
Markolie
d18b18b5b4 Syndicate borg update, add medical syndicate borg, energy sword refactor 2015-10-01 04:21:24 +02:00
Markolie
e6408b96c2 IPC overhaul 2015-08-15 23:52:26 +02:00
Fox-McCloud
f6058e9c50 Researchable Surgical Tools Port 2015-05-26 18:52:09 -04:00
ZomgPonies
91e8b909c0 Squish Squash 2015-04-04 14:27:53 -04:00
DZD
1d009e9c91 Destroy AI chance and Cling surgery
- Decreased destroy objective chance from 10% to 4% for clings and
traitors. Should be so slightly rarer than hijack, so you should stop
seeing it every round.
- Changeling arm blades can be used as ghetto circular saws, this will
help changelings with their debrain objectives a bit, a ghetto scalpel
is easily found in the form of a glass shard already.
2015-02-10 08:45:23 -05:00
Fox-McCloud
74bbb57a41 Dismemberment Fixes 2015-01-31 03:14:26 -05:00