for-if-I-stand-I-stand-by-his-will-alone

This commit is contained in:
Fox McCloud
2019-10-03 19:52:03 -04:00
parent 99a6ee7827
commit 20c4cf0a08
123 changed files with 336 additions and 267 deletions
@@ -133,52 +133,41 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \
flags = NOBLUDGEON
w_class = WEIGHT_CLASS_NORMAL
layer = MOB_LAYER
var/static/list/can_strengthen_clothing
/obj/item/stack/sheet/animalhide/goliath_hide/Initialize(mapload)
. = ..()
if(!can_strengthen_clothing)
can_strengthen_clothing = typecacheof(list(
var/static/list/goliath_platable_armor_typecache = typecacheof(list(
/obj/item/clothing/suit/space/hardsuit/mining,
/obj/item/clothing/head/helmet/space/hardsuit/mining,
/obj/item/clothing/suit/hooded/explorer,
/obj/item/clothing/head/hooded/explorer,
/obj/item/clothing/head/helmet/space/plasmaman/mining
))
/obj/item/clothing/head/helmet/space/plasmaman/mining))
/obj/item/stack/sheet/animalhide/goliath_hide/afterattack(atom/target, mob/user, proximity_flag)
if(proximity_flag)
if(is_type_in_typecache(target, can_strengthen_clothing))
var/obj/item/clothing/C = target
var/current_armor = C.armor
if(current_armor["melee"] < 60)
current_armor["melee"] = min(current_armor["melee"] + 10, 60)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>")
use(1)
if(!proximity_flag)
return
if(is_type_in_typecache(target, goliath_platable_armor_typecache))
var/obj/item/clothing/C = target
var/list/current_armor = C.armor
if(current_armor["melee"] < 60)
current_armor["melee"] = min(current_armor["melee"] + 10, 60)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>")
use(1)
else
to_chat(user, "<span class='warning'>You can't improve [C] any further!</span>")
else if(istype(target, /obj/mecha/working/ripley))
var/obj/mecha/working/ripley/D = target
if(D.hides < 3)
D.hides++
D.armor["melee"] = min(D.armor["melee"] + 10, 70)
D.armor["bullet"] = min(D.armor["bullet"] + 5, 50)
D.armor["laser"] = min(D.armor["laser"] + 5, 50)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>")
D.update_icon()
if(D.hides == 3)
D.desc = "Autonomous Power Loader Unit. It's wearing a fearsome carapace entirely composed of goliath hide plates - its pilot must be an experienced monster hunter."
else
to_chat(user, "<span class='info'>You can't improve [C] any further.</span>")
return
if(istype(target, /obj/mecha/working/ripley))
var/obj/mecha/D = target
if(D.icon_state != "ripley-open")
to_chat(user, "<span class='info'>You can't add armour onto the mech while someone is inside!</span>")
return
var/list/damage_absorption = D.damage_absorption
if(damage_absorption["brute"] > 0.3)
damage_absorption["brute"] = max(damage_absorption["brute"] - 0.1, 0.3)
damage_absorption["bullet"] = damage_absorption["bullet"] - 0.05
damage_absorption["fire"] = damage_absorption["fire"] - 0.05
damage_absorption["laser"] = damage_absorption["laser"] - 0.025
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>")
use(1)
D.overlays += image("icon"="mecha.dmi", "icon_state"="ripley-g-open")
D.desc = "Autonomous Power Loader Unit. Its armour is enhanced with some goliath hide plates."
if(damage_absorption["brute"] == 0.3)
D.overlays += image("icon"="mecha.dmi", "icon_state"="ripley-g-full-open")
D.desc = "Autonomous Power Loader Unit. It's wearing a fearsome carapace entirely composed of goliath hide plates - the pilot must be an experienced monster hunter."
else
to_chat(user, "<span class='warning'>You can't improve [D] any further!</span>")
return
use(1)
else
to_chat(user, "<span class='warning'>You can't improve [D] any further!</span>")
/obj/item/stack/sheet/animalhide/ashdrake
name = "ash drake hide"