Files
Bubberstation/code/modules/surgery/cavity_implant.dm
T
grungussussandGitHub 58501dce77 Reorganizes the sound folder (#86726)
## About The Pull Request

<details>

- renamed ai folder to announcer

-- announcer --
- moved vox_fem to announcer
- moved approachingTG to announcer

- separated the ambience folder into ambience and instrumental
-- ambience --

- created holy folder moved all related sounds there
- created engineering folder and moved all related sounds there
- created security folder and moved ambidet there
- created general folder and moved ambigen there
- created icemoon folder and moved all icebox-related ambience there
- created medical folder and moved all medbay-related ambi there
- created ruin folder and moves all ruins ambi there
- created beach folder and moved seag and shore there
- created lavaland folder and moved related ambi there
- created aurora_caelus folder and placed its ambi there
- created misc folder and moved the rest of the files that don't have a
specific category into it

-- instrumental --

- moved traitor folder here
- created lobby_music folder and placed our songs there (title0 not used
anywhere? - server-side modification?)

-- items --

- moved secdeath to hailer
- moved surgery to handling

-- effects --

- moved chemistry into effects
- moved hallucinations into effects
- moved health into effects
- moved magic into effects

-- vehicles --

- moved mecha into vehicles


created mobs folder

-- mobs --

- moved creatures folder into mobs
- moved voice into mobs

renamed creatures to non-humanoids
renamed voice to humanoids

-- non-humanoids--

created cyborg folder
created hiss folder
moved harmalarm.ogg to cyborg

-- humanoids --




-- misc --

moved ghostwhisper to misc
moved insane_low_laugh to misc

I give up trying to document this.

</details>

- [X] ambience
- [x] announcer
- [x] effects
- [X] instrumental
- [x] items
- [x] machines
- [x] misc 
- [X] mobs
- [X] runtime
- [X] vehicles

- [ ] attributions

## Why It's Good For The Game

This folder is so disorganized that it's vomit inducing, will make it
easier to find and add new sounds, providng a minor structure to the
sound folder.

## Changelog
🆑 grungussuss
refactor: the sound folder in the source code has been reorganized,
please report any oddities with sounds playing or not playing
server: lobby music has been repathed to sound/music/lobby_music
/🆑
2024-09-23 22:24:50 -07:00

84 lines
3.4 KiB
Plaintext

/datum/surgery/cavity_implant
name = "Cavity implant"
possible_locs = list(BODY_ZONE_CHEST)
steps = list(
/datum/surgery_step/incise,
/datum/surgery_step/retract_skin,
/datum/surgery_step/clamp_bleeders,
/datum/surgery_step/incise,
/datum/surgery_step/handle_cavity,
/datum/surgery_step/close)
GLOBAL_LIST_INIT(heavy_cavity_implants, typecacheof(list(/obj/item/transfer_valve)))
//handle cavity
/datum/surgery_step/handle_cavity
name = "implant item"
accept_hand = 1
implements = list(/obj/item = 100)
repeatable = TRUE
time = 32
preop_sound = 'sound/items/handling/surgery/organ1.ogg'
success_sound = 'sound/items/handling/surgery/organ2.ogg'
var/obj/item/item_for_cavity
/datum/surgery_step/handle_cavity/tool_check(mob/user, obj/item/tool)
if(tool.tool_behaviour == TOOL_CAUTERY || istype(tool, /obj/item/gun/energy/laser))
return FALSE
return !tool.get_temperature()
/datum/surgery_step/handle_cavity/preop(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
var/obj/item/bodypart/chest/target_chest = target.get_bodypart(BODY_ZONE_CHEST)
item_for_cavity = target_chest.cavity_item
if(tool)
display_results(
user,
target,
span_notice("You begin to insert [tool] into [target]'s [target_zone]..."),
span_notice("[user] begins to insert [tool] into [target]'s [target_zone]."),
span_notice("[user] begins to insert [tool.w_class > WEIGHT_CLASS_SMALL ? tool : "something"] into [target]'s [target_zone]."),
)
display_pain(target, "You can feel something being inserted into your [target_zone], it hurts like hell!")
else
display_results(
user,
target,
span_notice("You check for items in [target]'s [target_zone]..."),
span_notice("[user] checks for items in [target]'s [target_zone]."),
span_notice("[user] looks for something in [target]'s [target_zone]."),
)
/datum/surgery_step/handle_cavity/success(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery = FALSE)
var/obj/item/bodypart/chest/target_chest = target.get_bodypart(BODY_ZONE_CHEST)
if(tool)
if(item_for_cavity || ((tool.w_class > WEIGHT_CLASS_NORMAL) && !is_type_in_typecache(tool, GLOB.heavy_cavity_implants)) || HAS_TRAIT(tool, TRAIT_NODROP) || isorgan(tool))
to_chat(user, span_warning("You can't seem to fit [tool] in [target]'s [target_zone]!"))
return FALSE
else
display_results(
user,
target,
span_notice("You stuff [tool] into [target]'s [target_zone]."),
span_notice("[user] stuffs [tool] into [target]'s [target_zone]!"),
span_notice("[user] stuffs [tool.w_class > WEIGHT_CLASS_SMALL ? tool : "something"] into [target]'s [target_zone]."),
)
user.transferItemToLoc(tool, target, TRUE)
target_chest.cavity_item = tool
return ..()
else
if(item_for_cavity)
display_results(
user,
target,
span_notice("You pull [item_for_cavity] out of [target]'s [target_zone]."),
span_notice("[user] pulls [item_for_cavity] out of [target]'s [target_zone]!"),
span_notice("[user] pulls [item_for_cavity.w_class > WEIGHT_CLASS_SMALL ? item_for_cavity : "something"] out of [target]'s [target_zone]."),
)
display_pain(target, "Something is pulled out of your [target_zone]! It hurts like hell!")
user.put_in_hands(item_for_cavity)
target_chest.cavity_item = null
return ..()
else
to_chat(user, span_warning("You don't find anything in [target]'s [target_zone]."))
return FALSE