Condensed single fantasy items into one file

This commit is contained in:
SatinIsle
2023-09-22 22:27:38 +01:00
parent dd43657b59
commit a851fdbed7
12 changed files with 395 additions and 387 deletions
@@ -304,15 +304,14 @@
var/blood_volume = H.vessel.get_reagent_amount("blood")
var/blood_percent = round((blood_volume / H.species.blood_volume)*100)
var/blood_type = H.dna.b_type
var/blood_reagent = H.species.blood_reagents
if(blood_volume <= H.species.blood_volume*H.species.blood_level_danger)
dat += "<span class='danger'><i>Warning: Blood Level CRITICAL: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</i></span><br>"
dat += "<span class='danger'><i>Warning: Blood Level CRITICAL: [blood_percent]% [blood_volume]cl. Type: [blood_type]</i></span><br>"
else if(blood_volume <= H.species.blood_volume*H.species.blood_level_warning)
dat += "<span class='danger'><i>Warning: Blood Level VERY LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</i></span><br>"
dat += "<span class='danger'><i>Warning: Blood Level VERY LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]</i></span><br>"
else if(blood_volume <= H.species.blood_volume*H.species.blood_level_safe)
dat += "<span class='danger'>Warning: Blood Level LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</span><br>"
dat += "<span class='danger'>Warning: Blood Level LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]</span><br>"
else
dat += "<span class='notice'>Blood Level Normal: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</span><br>"
dat += "<span class='notice'>Blood Level Normal: [blood_percent]% [blood_volume]cl. Type: [blood_type]</span><br>"
dat += "<span class='notice'>Subject's pulse: <font color='[H.pulse == PULSE_THREADY || H.pulse == PULSE_NONE ? "red" : "blue"]'>[H.get_pulse(GETPULSE_TOOL)] bpm.</font></span><br>" // VORE Edit: Missed a linebreak here.
if(istype(H.species, /datum/species/xenochimera)) // VOREStation Edit Start: Visible feedback for medmains on Xenochimera.
if(H.stat == DEAD && H.revive_ready == REVIVING_READY && !H.hasnutriment())
@@ -373,11 +372,5 @@
origin_tech = list(TECH_MAGNET = 7, TECH_BIO = 8)
icon_state = "health3"
/obj/item/device/healthanalyzer/scroll //reports all of the above, as well as name and quantity of nonmed reagents in stomach
name = "scroll of divination"
desc = "An unusual scroll that appears to report all of the details of a person's health when waved near them. Oddly, it seems to have a little metal chip up near the handles..."
advscan = 3
origin_tech = list(TECH_MAGNET = 7, TECH_BIO = 8)
icon_state = "health_scroll"
#undef DEFIB_TIME_LIMIT //VOREStation addition
@@ -295,10 +295,3 @@
/obj/item/weapon/surgical/bone_clamp/alien
icon = 'icons/obj/abductor.dmi'
toolspeed = 0.75
/obj/item/weapon/surgical/bone_clamp/alien/magic
icon = 'icons/obj/abductor.dmi'
toolspeed = 0.75
icon_state = "bone_boneclamp"
name = "bone bone clamp"
desc = "A bone clamp made of bones for fixing bones using bones, it feels strangely adept. In fact, it doesn't really feel like actual bone at all..."
@@ -54,12 +54,6 @@
toolspeed = 0.1
origin_tech = list(TECH_COMBAT = 4, TECH_ENGINEERING = 4)
/obj/item/weapon/tool/crowbar/alien/magic
name = "sentient crowbar"
desc = "A crowbar with a green gem set in it and a green ribbon tied to it, it floats lightly by itself and appears to be able to pry on its own. It almost feels like there is some sort of anti gravity generator running in it..."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_crowbar)
icon_state = "crowbar_sentient"
/obj/item/weapon/tool/crowbar/hybrid
name = "strange crowbar"
desc = "A crowbar whose head seems to phase in and out of view."
@@ -87,13 +87,6 @@
toolspeed = 0.1
random_color = FALSE
/obj/item/weapon/tool/screwdriver/alien/magic
name = "vintage screwdriver of revolving"
desc = "A vintage screwdriver that spins as fast as a drill with little aid, it has a red gem on the handle. It oddly sounds like a drill too..."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_screwdriver)
icon = 'icons/obj/abductor.dmi'
icon_state = "screwdriver_old"
/obj/item/weapon/tool/screwdriver/hybrid
name = "strange screwdriver"
desc = "A strange conglomerate of a screwdriver."
@@ -434,13 +434,6 @@
origin_tech = list(TECH_PHORON = 5 ,TECH_ENGINEERING = 5)
always_process = TRUE
/obj/item/weapon/weldingtool/alien/magic
name = "bellows of flame"
desc = "A set of bellows that have a yellow gem on the spout, they emit flames when pressed. Oddly seems to have a faint phoron smell to it..."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_welder)
icon = 'icons/obj/abductor.dmi'
icon_state = "bellows"
/obj/item/weapon/weldingtool/alien/process()
if(get_fuel() <= get_max_fuel())
reagents.add_reagent("fuel", 1)
@@ -80,12 +80,6 @@
origin_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4)
random_color = FALSE
/obj/item/weapon/tool/wirecutters/alien/magic
name = "secateurs of organisation"
desc = "Extremely sharp secateurs, fitted with a glowing blue gem, said to be magically enhanced for speed. There seems to be a little whirring sound coming from beneath that gem..."
icon = 'icons/obj/abductor.dmi'
icon_state = "cutters_magic"
/obj/item/weapon/tool/wirecutters/cyborg
name = "wirecutters"
desc = "This cuts wires. With science."
@@ -73,13 +73,6 @@
toolspeed = 0.1
origin_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 5)
/obj/item/weapon/tool/wrench/alien/magic
name = "pliers of molding"
desc = "A set of pliers that seems to mold to the shape of their target, housing a pink gem. Oddly seems to have a slightly slimey texture at the metal..."
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_wrench)
icon = 'icons/obj/abductor.dmi'
icon_state = "pliers"
/obj/item/weapon/tool/wrench/power
name = "hand drill"
desc = "A simple powered hand drill. It's fitted with a bolt bit."
@@ -385,57 +385,3 @@
if(!anchored)
to_chat(user,"<span class='notice'> The bed isn't secured.</span>")
return
// Bath
/obj/structure/bed/bath
name = "wash tub"
desc = "A wooden tub that can be filled with water for washing yourself."
icon_state = "bath"
base_icon = "bath"
flags = OPENCONTAINER
var/amount_per_transfer_from_this = 5
/obj/structure/bed/bath/update_icon()
if(reagents.total_volume < 1)
icon_state = "bath"
else if(reagents.total_volume < 50)
icon_state = "bath1"
else if(reagents.total_volume < 150)
icon_state = "bath2"
else if(reagents.total_volume < 301)
icon_state = "bath3"
return // Doesn't care about material or anything else.
/obj/structure/bed/bath/attackby(obj/item/I, mob/user)
if(istype(I, /obj/item/weapon/mop) || istype(I, /obj/item/weapon/soap)) //VOREStation Edit - "Allows soap and rags to be used on mopbuckets"
if(reagents.total_volume < 1)
to_chat(user, "<span class='warning'>\The [src] is out of water!</span>")
else
reagents.trans_to_obj(I, 5)
to_chat(user, "<span class='notice'>You wet \the [I] in \the [src].</span>")
playsound(src, 'sound/effects/slosh.ogg', 25, 1)
if(istype(I, /obj/item/weapon/reagent_containers/glass))
update_icon()
return
else if(istype(I, /obj/item/weapon/grab))
var/obj/item/weapon/grab/G = I
var/mob/living/affecting = G.affecting
if(has_buckled_mobs()) //Handles trying to buckle someone else to a chair when someone else is on it
to_chat(user, "<span class='notice'>\The [src] already has someone buckled to it.</span>")
return
user.visible_message("<span class='notice'>[user] attempts to buckle [affecting] into \the [src]!</span>")
if(do_after(user, 20, G.affecting))
affecting.loc = loc
spawn(0)
if(buckle_mob(affecting))
affecting.visible_message(\
"<span class='danger'>[affecting.name] is buckled to [src] by [user.name]!</span>",\
"<span class='danger'>You are buckled to [src] by [user.name]!</span>",\
"<span class='notice'>You hear metal clanking.</span>")
qdel(I)
/obj/structure/bed/bath/New()
create_reagents(300)
..()
@@ -124,62 +124,6 @@
else
to_chat(user, "<span class='notice'>You need a tighter grip.</span>")
/obj/structure/toilet/wooden
name = "wooden toilet"
desc = "It's basically a hole in a box with a bucket inside. This one seems remarkably clean."
icon_state = "toilet3"
open = 1
/obj/structure/toilet/wooden/attack_hand(mob/living/user as mob)
return //No lid
/obj/structure/toilet/wooden/attackby(obj/item/I as obj, mob/living/user as mob) //simpler interactions
if(istype(I, /obj/item/weapon/grab))
user.setClickCooldown(user.get_attack_speed(I))
var/obj/item/weapon/grab/G = I
if(isliving(G.affecting))
var/mob/living/GM = G.affecting
if(G.state>1)
if(!GM.loc == get_turf(src))
to_chat(user, "<span class='notice'>[GM.name] needs to be on the toilet.</span>")
return
if(open && !swirlie)
user.visible_message("<span class='danger'>[user] starts to give [GM.name] a swirlie!</span>", "<span class='notice'>You start to give [GM.name] a swirlie!</span>")
swirlie = GM
if(do_after(user, 30, GM))
user.visible_message("<span class='danger'>[user] gives [GM.name] a swirlie!</span>", "<span class='notice'>You give [GM.name] a swirlie!</span>", "You hear a toilet flushing.")
if(!GM.internal)
GM.adjustOxyLoss(5)
swirlie = null
else
user.visible_message("<span class='danger'>[user] slams [GM.name] into the [src]!</span>", "<span class='notice'>You slam [GM.name] into the [src]!</span>")
GM.adjustBruteLoss(5)
else
to_chat(user, "<span class='notice'>You need a tighter grip.</span>")
if(cistern && !istype(user,/mob/living/silicon/robot)) //STOP PUTTING YOUR MODULES IN THE TOILET.
if(I.w_class > 3)
to_chat(user, "<span class='notice'>\The [I] does not fit.</span>")
return
if(w_items + I.w_class > 5)
to_chat(user, "<span class='notice'>The cistern is full.</span>")
return
user.drop_item()
I.loc = src
w_items += I.w_class
to_chat(user, "You carefully place \the [I] into the cistern.")
return
/obj/structure/toilet/wooden/New()
open = 1 //just to make sure it works
icon_state = "toilet3"
return
/obj/structure/toilet/wooden/update_icon()
return
/obj/structure/urinal
name = "urinal"
desc = "The HU-452, an experimental urinal."