mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-21 20:20:33 +01:00
Organs update 3
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
/obj/item/organ/internal/alien
|
||||
origin_tech = "biotech=5"
|
||||
icon = 'icons/effects/blood.dmi'
|
||||
icon_state = "xgibmid2"
|
||||
var/list/alien_powers = list()
|
||||
|
||||
@@ -30,6 +29,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/plasmavessel
|
||||
name = "plasma vessel"
|
||||
icon_state = "plasma"
|
||||
origin_tech = "biotech=5;plasma=2"
|
||||
w_class = 3
|
||||
zone = "chest"
|
||||
@@ -48,6 +48,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/plasmavessel/large
|
||||
name = "large plasma vessel"
|
||||
icon_state = "plasma_large"
|
||||
w_class = 4
|
||||
storedPlasma = 200
|
||||
max_plasma = 500
|
||||
@@ -59,6 +60,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/plasmavessel/small
|
||||
name = "small plasma vessel"
|
||||
icon_state = "plasma_small"
|
||||
w_class = 2
|
||||
storedPlasma = 100
|
||||
max_plasma = 150
|
||||
@@ -66,6 +68,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/plasmavessel/small/tiny
|
||||
name = "tiny plasma vessel"
|
||||
icon_state = "plasma_tiny"
|
||||
w_class = 1
|
||||
max_plasma = 100
|
||||
alien_powers = list(/obj/effect/proc_holder/alien/transfer)
|
||||
@@ -100,6 +103,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/hivenode
|
||||
name = "hive node"
|
||||
icon_state = "hivenode"
|
||||
zone = "head"
|
||||
slot = "hivenode"
|
||||
origin_tech = "biotech=5;magnets=4;bluespace=3"
|
||||
@@ -117,6 +121,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/resinspinner
|
||||
name = "resin spinner"
|
||||
icon_state = "stomach-x"
|
||||
zone = "mouth"
|
||||
slot = "resinspinner"
|
||||
origin_tech = "biotech=5;materials=4"
|
||||
@@ -125,6 +130,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/acid
|
||||
name = "acid gland"
|
||||
icon_state = "acid"
|
||||
zone = "mouth"
|
||||
slot = "acidgland"
|
||||
origin_tech = "biotech=5;materials=2;combat=2"
|
||||
@@ -133,6 +139,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/neurotoxin
|
||||
name = "neurotoxin gland"
|
||||
icon_state = "neurotox"
|
||||
zone = "mouth"
|
||||
slot = "neurotoxingland"
|
||||
origin_tech = "biotech=5;combat=5"
|
||||
@@ -141,6 +148,7 @@
|
||||
|
||||
/obj/item/organ/internal/alien/eggsac
|
||||
name = "egg sac"
|
||||
icon_state = "eggsac"
|
||||
zone = "groin"
|
||||
slot = "eggsac"
|
||||
w_class = 4
|
||||
|
||||
@@ -57,6 +57,10 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds
|
||||
RefreshInfectionImage()
|
||||
|
||||
if(stage == 5 && prob(50))
|
||||
for(var/datum/surgery/S in owner.surgeries)
|
||||
if(S.location == "chest" && istype(S.get_surgery_step(), /datum/surgery_step/manipulate_organs))
|
||||
AttemptGrow(0)
|
||||
return
|
||||
AttemptGrow()
|
||||
|
||||
|
||||
@@ -79,10 +83,8 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds
|
||||
stage = 4 // Let's try again later.
|
||||
return
|
||||
|
||||
if(owner.lying)
|
||||
owner.overlays += image('icons/mob/alien.dmi', loc = owner, icon_state = "burst_lie")
|
||||
else
|
||||
owner.overlays += image('icons/mob/alien.dmi', loc = owner, icon_state = "burst_stand")
|
||||
var/overlay = image('icons/mob/alien.dmi', loc = owner, icon_state = "burst_lie")
|
||||
owner.overlays += overlay
|
||||
spawn(6)
|
||||
var/atom/xeno_loc = owner
|
||||
if(!gib_on_success)
|
||||
@@ -94,6 +96,9 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds
|
||||
if(gib_on_success)
|
||||
owner.stomach_contents += new_xeno
|
||||
owner.gib()
|
||||
else
|
||||
owner.adjustBruteLoss(40)
|
||||
owner.overlays -= overlay
|
||||
qdel(src)
|
||||
|
||||
|
||||
|
||||
@@ -119,5 +119,5 @@
|
||||
/obj/item/organ/internal/brain/alien
|
||||
name = "alien brain"
|
||||
desc = "We barely understand the brains of terrestial animals. Who knows what we may find in the brain of such an advanced species?"
|
||||
icon_state = "brain-alien"
|
||||
icon_state = "brain-x"
|
||||
origin_tech = "biotech=7"
|
||||
@@ -50,9 +50,12 @@
|
||||
msg += "It isn't responding to anything around it; it seems to be asleep.\n"
|
||||
msg += "</span>"
|
||||
|
||||
if (digitalcamo)
|
||||
if(digitalcamo)
|
||||
msg += "It is moving its body in an unnatural and blatantly unsimian manner.\n"
|
||||
|
||||
if(!getorgan(/obj/item/organ/internal/brain))
|
||||
msg += "<span class='deadsay'>It appears that it's brain is missing...</span>\n"
|
||||
|
||||
msg += "*---------*</span>"
|
||||
|
||||
user << msg
|
||||
@@ -280,7 +280,8 @@
|
||||
if(istype(H.glasses, /obj/item/clothing/glasses/hud/health) || istype(CIH,/obj/item/organ/internal/cyberimp/eyes/hud/medical))
|
||||
var/implant_detect
|
||||
for(var/obj/item/organ/internal/cyberimp/CI in internal_organs)
|
||||
implant_detect += "[name] is modified with a [CI.name].<br>"
|
||||
if(CI.status == ORGAN_ROBOTIC)
|
||||
implant_detect += "[name] is modified with a [CI.name].<br>"
|
||||
if(implant_detect)
|
||||
msg += "Detected cybernetic modifications:<br>"
|
||||
msg += implant_detect
|
||||
|
||||
@@ -80,8 +80,12 @@
|
||||
|
||||
if(origin)
|
||||
origin.transfer_to(M)
|
||||
if(origin.changeling)
|
||||
origin.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/humanform(null)
|
||||
if(!origin.changeling)
|
||||
M.make_changeling()
|
||||
if(origin.changeling.can_absorb_dna(M, owner))
|
||||
origin.changeling.add_profile(owner, M)
|
||||
|
||||
origin.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/humanform(null)
|
||||
M.key = origin.key
|
||||
owner.gib()
|
||||
|
||||
|
||||
@@ -252,25 +252,44 @@
|
||||
OpenFire()
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelord/death(gibbed)
|
||||
new /obj/item/asteroid/hivelord_core(src.loc)
|
||||
new /obj/item/organ/internal/hivelord_core(src.loc)
|
||||
mouse_opacity = 1
|
||||
..(gibbed)
|
||||
|
||||
/obj/item/asteroid/hivelord_core
|
||||
/obj/item/organ/internal/hivelord_core
|
||||
name = "hivelord remains"
|
||||
desc = "All that remains of a hivelord, it seems to be what allows it to break pieces of itself off without being hurt... its healing properties will soon become inert if not used quickly."
|
||||
icon = 'icons/obj/food/food.dmi'
|
||||
icon_state = "boiledrorocore"
|
||||
icon_state = "roro core 2"
|
||||
flags = NOBLUDGEON
|
||||
slot = "hivecore"
|
||||
force = 0
|
||||
var/inert = 0
|
||||
|
||||
/obj/item/asteroid/hivelord_core/New()
|
||||
spawn(1200)
|
||||
inert = 1
|
||||
desc = "The remains of a hivelord that have become useless, having been left alone too long after being harvested."
|
||||
/obj/item/organ/internal/hivelord_core/New()
|
||||
..()
|
||||
spawn(2400)
|
||||
if(!owner)
|
||||
inert = 1
|
||||
desc = "The remains of a hivelord that have become useless, having been left alone too long after being harvested."
|
||||
|
||||
/obj/item/asteroid/hivelord_core/attack(mob/living/M, mob/living/user)
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
/obj/item/organ/internal/hivelord_core/on_life()
|
||||
..()
|
||||
if(inert)
|
||||
return
|
||||
|
||||
owner.adjustBruteLoss(-1)
|
||||
owner.adjustFireLoss(-1)
|
||||
owner.adjustOxyLoss(-2)
|
||||
if(ishuman(owner))
|
||||
var/mob/living/carbon/human/H = owner
|
||||
var/datum/reagent/blood/B = locate() in H.vessel.reagent_list //Grab some blood
|
||||
var/blood_volume = round(H.vessel.get_reagent_amount("blood"))
|
||||
if(B && blood_volume < 560 && blood_volume)
|
||||
B.volume += 2 // Fast blood regen
|
||||
|
||||
/obj/item/organ/internal/hivelord_core/afterattack(atom/target, mob/user, proximity_flag)
|
||||
if(proximity_flag && ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
if(inert)
|
||||
user << "<span class='notice'>[src] have become inert, its healing properties are no more.</span>"
|
||||
return
|
||||
@@ -286,6 +305,9 @@
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
/obj/item/organ/internal/hivelord_core/prepare_eat()
|
||||
return null
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelordbrood
|
||||
name = "hivelord brood"
|
||||
desc = "A fragment of the original Hivelord, rallying behind its original. One isn't much of a threat, but..."
|
||||
@@ -591,7 +613,7 @@
|
||||
/obj/item/asteroid/fugu_gland
|
||||
name = "wumborian fugu gland"
|
||||
desc = "The key to the wumborian fugu's ability to increase its mass arbitrarily, this disgusting remnant can apply the same effect to other creatures, giving them great strength."
|
||||
icon = 'icons/obj/mining.dmi'
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "fugu_gland"
|
||||
flags = NOBLUDGEON
|
||||
w_class = 3
|
||||
|
||||
Reference in New Issue
Block a user