From 3d076264bd9fe19ec05f05ee3be57d5bb5e27e12 Mon Sep 17 00:00:00 2001 From: "Kortgstation@gmail.com" Date: Wed, 16 Jan 2013 04:17:45 +0000 Subject: [PATCH] Made golems a bit faster so they're not so godawful to play. Made the adamantine core create a golem creation rune (and sends a notice to all ghosts that a rune has been created in whatever location) The rune lights up when a ghost is hovering over it. When someone clicks the rune, it'll pull a ghost hovering over it to make the golem instead of a random one. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5558 316c924e-a436-60f5-8080-3fe189b3f50e --- .../mob/living/carbon/metroid/metroid.dm | 59 +++++++++++++++++- code/modules/reagents/Chemistry-Recipes.dm | 17 +---- icons/obj/rune.dmi | Bin 3217 -> 3778 bytes 3 files changed, 58 insertions(+), 18 deletions(-) diff --git a/code/modules/mob/living/carbon/metroid/metroid.dm b/code/modules/mob/living/carbon/metroid/metroid.dm index 5357bd3864..2e189204d8 100644 --- a/code/modules/mob/living/carbon/metroid/metroid.dm +++ b/code/modules/mob/living/carbon/metroid/metroid.dm @@ -923,12 +923,12 @@ mob/living/carbon/slime/var/temperature_resistance = T0C+75 gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS - slowdown = 3.0 + slowdown = 1.0 flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT flags = FPRINT | TABLEPASS | ONESIZEFITSALL | STOPSPRESSUREDMAGE - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS | HEAD max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECITON_TEMPERATURE - cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS + cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS | HEAD min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECITON_TEMPERATURE canremove = 0 armor = list(melee = 80, bullet = 20, laser = 20, energy = 10, bomb = 0, bio = 0, rad = 0) @@ -977,11 +977,64 @@ mob/living/carbon/slime/var/temperature_resistance = T0C+75 color = "dermal" name = "golem's head" desc = "a golem's head" + canremove = 0 + unacidable = 1 flags = FPRINT | TABLEPASS | STOPSPRESSUREDMAGE heat_protection = HEAD max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECITON_TEMPERATURE armor = list(melee = 80, bullet = 20, laser = 20, energy = 10, bomb = 0, bio = 0, rad = 0) +/obj/effect/golemrune + anchored = 1 + desc = "a strange rune used to create golems. It glows when spirits are nearby." + name = "rune" + icon = 'icons/obj/rune.dmi' + icon_state = "golem" + unacidable = 1 + layer = TURF_LAYER + + New() + ..() + processing_objects.Add(src) + for(var/mob/dead/observer/G in player_list) + if(G.client) + G << "Golem rune created in area [src.loc.name] " + + process() + var/mob/dead/observer/ghost + for(var/mob/dead/observer/O in src.loc) + if(!O.client) continue + if(O.mind && O.mind.current && O.mind.current.stat != DEAD) continue + ghost = O + break + if(ghost) + icon_state = "golem2" + else + icon_state = "golem" + + attack_hand(mob/living/user as mob) + var/mob/dead/observer/ghost + for(var/mob/dead/observer/O in src.loc) + if(!O.client) continue + if(O.mind && O.mind.current && O.mind.current.stat != DEAD) continue + ghost = O + break + if(!ghost) + user << "The rune fizzles uselessly. There is no spirit nearby." + return + var/mob/living/carbon/human/G = new /mob/living/carbon/human + G.dna.mutantrace = "adamantine" + G.real_name = text("Adamantine Golem ([rand(1, 1000)])") + G.equip_to_slot_or_del(new /obj/item/clothing/under/golem(G), slot_w_uniform) + G.equip_to_slot_or_del(new /obj/item/clothing/suit/golem(G), slot_wear_suit) + G.equip_to_slot_or_del(new /obj/item/clothing/shoes/golem(G), slot_shoes) + G.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/golem(G), slot_wear_mask) + G.equip_to_slot_or_del(new /obj/item/clothing/gloves/golem(G), slot_gloves) + G.equip_to_slot_or_del(new /obj/item/clothing/head/space/golem(G), slot_head) + G.loc = src.loc + G.key = ghost.key + G << "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. Serve [user], and assist them in completing their goals at any cost." + del (src) //////////////////////////////Old shit from metroids/RoRos, and the old cores, would not take much work to re-add them//////////////////////// /* diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm index a005b4651a..6c7e287d47 100644 --- a/code/modules/reagents/Chemistry-Recipes.dm +++ b/code/modules/reagents/Chemistry-Recipes.dm @@ -1255,21 +1255,8 @@ datum required_container = /obj/item/slime_extract/adamantine required_other = 1 on_reaction(var/datum/reagents/holder) - var/mob/living/carbon/human/G = new /mob/living/carbon/human - G.dna.mutantrace = "adamantine" - G.real_name = text("Adamantine Golem ([rand(1, 1000)])") - G.equip_to_slot_or_del(new /obj/item/clothing/under/golem(G), slot_w_uniform) - G.equip_to_slot_or_del(new /obj/item/clothing/suit/golem(G), slot_wear_suit) - G.equip_to_slot_or_del(new /obj/item/clothing/shoes/golem(G), slot_shoes) - G.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/golem(G), slot_wear_mask) - G.equip_to_slot_or_del(new /obj/item/clothing/gloves/golem(G), slot_gloves) - G.equip_to_slot_or_del(new /obj/item/clothing/head/space/golem(G), slot_head) - G.loc = get_turf_loc(holder.my_atom) - var/list/candidates = get_alien_candidates() - var/candidate = pick(candidates) - G.key = candidate - G << "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. Serve the one created you, and assist them in completing their goals at any cost." - + var/obj/effect/golemrune/Z = new /obj/effect/golemrune + Z.loc = get_turf_loc(holder.my_atom) //////////////////////////////////////////FOOD MIXTURES//////////////////////////////////// tofu diff --git a/icons/obj/rune.dmi b/icons/obj/rune.dmi index d0bd47d6858ff40abe682df524dea7bcb24a828f..6c7bc23ced56271af83495382a20c23f99e32cf4 100644 GIT binary patch literal 3778 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 delta 3213 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