Ports tgstation loom changes, and durathred golems.

This commit is contained in:
Ghommie
2019-11-29 05:34:17 +01:00
parent 8cec8fa506
commit e6484a22a8
13 changed files with 133 additions and 22 deletions
+1 -1
View File
@@ -195,7 +195,7 @@
name = "Loom"
desc = "A large pre-made loom."
cost = 1000
contains = list(/obj/structure/loom)
contains = list(/obj/structure/loom/unanchored)
crate_name = "loom crate"
crate_type = /obj/structure/closet/crate/large
@@ -1043,6 +1043,21 @@
/mob/living/carbon/human/species/golem/plastic
race = /datum/species/golem/plastic
/mob/living/carbon/human/species/golem/bronze
race = /datum/species/golem/bronze
/mob/living/carbon/human/species/golem/cardboard
race = /datum/species/golem/cardboard
/mob/living/carbon/human/species/golem/leather
race = /datum/species/golem/leather
/mob/living/carbon/human/species/golem/bone
race = /datum/species/golem/bone
/mob/living/carbon/human/species/golem/durathread
race = /datum/species/golem/durathread
/mob/living/carbon/human/species/golem/clockwork
race = /datum/species/golem/clockwork
@@ -661,6 +661,12 @@
if(health >= 0)
if(src == M)
if(has_status_effect(STATUS_EFFECT_CHOKINGSTRAND))
to_chat(src, "<span class='notice'>You attempt to remove the durathread strand from around your neck.</span>")
if(do_after(src, 35, null, src))
to_chat(src, "<span class='notice'>You succesfuly remove the durathread strand.</span>")
remove_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
return
var/to_send = ""
visible_message("[src] examines [p_them()]self.", \
"<span class='notice'>You check yourself for injuries.</span>")
@@ -1537,6 +1537,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
target.lastattacker = user.real_name
target.lastattackerckey = user.ckey
user.dna.species.spec_unarmedattacked(user, target)
if(user.limb_destroyer)
target.dismembering_strike(user, affecting.body_zone)
@@ -1550,6 +1551,9 @@ GLOBAL_LIST_EMPTY(roundstart_race_names)
else if(target.lying)
target.forcesay(GLOB.hit_appends)
/datum/species/proc/spec_unarmedattacked(mob/living/carbon/human/user, mob/living/carbon/human/target)
return
/datum/species/proc/disarm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style)
// CITADEL EDIT slap mouthy gits and booty
var/aim_for_mouth = user.zone_selected == "mouth"
@@ -944,6 +944,21 @@
grab_sound = 'sound/weapons/whipgrab.ogg'
attack_sound = 'sound/weapons/whip.ogg'
/datum/species/golem/durathread
name = "Durathread Golem"
id = "durathread golem"
prefix = "Durathread"
limbs_id = "d_golem"
special_names = list("Boll","Weave")
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES)
fixed_mut_color = null
inherent_traits = list(TRAIT_NOBREATH, TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER)
info_text = "As a <span class='danger'>Durathread Golem</span>, your strikes will cause those your targets to start choking, but your woven body won't withstand fire as well."
/datum/species/golem/durathread/spec_unarmedattacked(mob/living/carbon/human/user, mob/living/carbon/human/target)
. = ..()
target.apply_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
/datum/species/golem/bone
name = "Bone Golem"
id = "bone golem"
+1 -1
View File
@@ -98,7 +98,7 @@
var/datum/gas_mixture/breath
if(!getorganslot(ORGAN_SLOT_BREATHING_TUBE))
if(health <= HEALTH_THRESHOLD_FULLCRIT || (pulledby && pulledby.grab_state >= GRAB_KILL) || (lungs && lungs.organ_flags & ORGAN_FAILING))
if(health <= HEALTH_THRESHOLD_FULLCRIT || (pulledby && pulledby.grab_state >= GRAB_KILL) || HAS_TRAIT(src, TRAIT_MAGIC_CHOKE) || (lungs && lungs.organ_flags & ORGAN_FAILING))
losebreath++ //You can't breath at all when in critical or when being choked, so you're going to miss a breath
else if(health <= crit_threshold)
+2 -1
View File
@@ -85,7 +85,8 @@
/obj/item/stack/tile/bronze = /datum/species/golem/bronze,
/obj/item/stack/sheet/cardboard = /datum/species/golem/cardboard,
/obj/item/stack/sheet/leather = /datum/species/golem/leather,
/obj/item/stack/sheet/bone = /datum/species/golem/bone)
/obj/item/stack/sheet/bone = /datum/species/golem/bone,
/obj/item/stack/sheet/cotton/durathread = /datum/species/golem/durathread)
if(istype(I, /obj/item/stack))
var/obj/item/stack/O = I