mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-09 22:25:46 +01:00
Adds a New Ruin - Abandoned Clockwork Monastery (#27636)
* Construction * tick * tock * ting * Update clockwork_cult_site.dmm * Update clockwork_cult_site.dmm * clockwork construct * Update paradise.dme * Update clockwork_constructs * continuation * Update clockwork_cult_site.dmm * finalization phase * Update clockwork_constructs.dm * update * Update config.toml * Send the dmm to prison for being illegal * Update space_ruins.dm * Update space_ruins.dm * Update space_ruins.dm * Update code/modules/mob/living/simple_animal/clockwork_constructs.dm Co-authored-by: warriorstar-orion <orion@snowfrost.garden> Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com> * Update code/modules/mob/living/simple_animal/clockwork_constructs.dm Co-authored-by: warriorstar-orion <orion@snowfrost.garden> Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com> * update based on code review * Update config.toml * Coggers * New shiny lava * Update clockwork_monastery.dmm * Update lights.dm * Update clockwork_monastery.dmm * Update clockwork_monastery.dmm * Update clockwork_monastery.dmm --------- Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com> Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
This commit is contained in:
@@ -0,0 +1,123 @@
|
||||
#define MARAUDER_SHIELD_MAX 4
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder
|
||||
name = "clockwork marauder"
|
||||
desc = "A brass machine of destruction,"
|
||||
icon = 'icons/mob/clockwork_mobs.dmi'
|
||||
icon_state = "clockwork_marauder"
|
||||
icon_living = "clockwork_marauder"
|
||||
icon_dead = "clockwork_marauder_dead"
|
||||
a_intent = INTENT_HARM
|
||||
stop_automated_movement = TRUE
|
||||
see_in_dark = 8
|
||||
health = 140
|
||||
maxHealth = 140
|
||||
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
|
||||
minbodytemp = 0
|
||||
initial_traits = list(TRAIT_FLYING)
|
||||
move_resist = MOVE_FORCE_OVERPOWERING
|
||||
mob_size = MOB_SIZE_LARGE
|
||||
pass_flags = PASSTABLE
|
||||
damage_coeff = list("brute" = 1, "fire" = 1, "tox" = 0, "clone" = 0, "stamina" = 0, "oxy" = 0)
|
||||
obj_damage = 80
|
||||
melee_damage_lower = 24
|
||||
melee_damage_upper = 24
|
||||
attacktext = "slices"
|
||||
attack_sound = 'sound/weapons/bladeslice.ogg'
|
||||
chat_color = "#CAA25B"
|
||||
retreat_distance = 2 // Dodge in and out of combat.
|
||||
faction = list("hostile") // We hate Nar'sie here, but no clockcult yet.
|
||||
pressure_resistance = 100
|
||||
universal_speak = TRUE
|
||||
AIStatus = AI_OFF
|
||||
loot = list(/obj/item/food/ectoplasm, /obj/item/clockwork/component/geis_capacitor/fallen_armor)
|
||||
del_on_death = TRUE
|
||||
deathmessage = "collapses in a shattered heap."
|
||||
var/playstyle_string = "<b>You are a Marauder, an instrument of destruction built to fight those that oppose the will of Ratvar. \
|
||||
You are a highly effective melee combatent but are vulnerable to holy weapons. \
|
||||
You can block up to 4 ranged attacks with your shield. It requires a welder to be repaired.</b>"
|
||||
var/list/construct_spells = list(/datum/spell/night_vision)
|
||||
var/shield_health = MARAUDER_SHIELD_MAX
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/Initialize(mapload)
|
||||
. = ..()
|
||||
name = "[name] ([rand(1, 1000)])"
|
||||
set_light(2, 3, l_color = LIGHT_COLOR_FIRE)
|
||||
for(var/spell in construct_spells)
|
||||
AddSpell(new spell(null))
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/death(gibbed)
|
||||
new /obj/effect/temp_visual/cult/sparks(get_turf(src))
|
||||
playsound(src, 'sound/effects/pylon_shatter.ogg', 40, TRUE)
|
||||
return ..()
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/attacked_by__legacy__attackchain(obj/item/I, mob/living/user)
|
||||
if(istype(I, /obj/item/nullrod))
|
||||
adjustFireLoss(15)
|
||||
if(shield_health > 0)
|
||||
damage_shield()
|
||||
playsound(src,'sound/hallucinations/veryfar_noise.ogg', 40, 1)
|
||||
|
||||
if((I.tool_behaviour == TOOL_WELDER) && (user.a_intent == INTENT_HELP))
|
||||
welder_act(user, I)
|
||||
return
|
||||
. = ..()
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/bullet_act(obj/item/projectile/Proj)
|
||||
if(shield_health > 0)
|
||||
damage_shield()
|
||||
to_chat(src, "<span class='danger'>Your shield blocks the attack!</span>")
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/proc/damage_shield()
|
||||
shield_health--
|
||||
playsound(src, 'sound/magic/clockwork/anima_fragment_attack.ogg', 60, TRUE)
|
||||
if(shield_health == 0)
|
||||
to_chat(src, "<span class='userdanger'>Your shield breaks!</span>")
|
||||
to_chat(src, "<span class='danger'>You require a welding tool to repair your damaged shield!</span>")
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/welder_act(mob/living/user, obj/item/I)
|
||||
if(health >= maxHealth && shield_health >= MARAUDER_SHIELD_MAX)
|
||||
to_chat(user, "<span class='notice'>[src] has no damage to repair.</span>")
|
||||
return
|
||||
|
||||
playsound(loc, 'sound/items/welder.ogg', 150, TRUE)
|
||||
adjustBruteLoss(-10)
|
||||
user.visible_message(
|
||||
"<span class='notice'>You repair some of [src]'s damage.</span>",
|
||||
"<span class='notice'>[user] repairs some of [src]'s damage.</span>"
|
||||
)
|
||||
if(shield_health < MARAUDER_SHIELD_MAX)
|
||||
shield_health ++
|
||||
playsound(src, 'sound/magic/charge.ogg', 60, TRUE)
|
||||
return TRUE
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/narsie_act()
|
||||
visible_message(
|
||||
"<span class='danger'>[src] is instantly crushed by an unholy aura!</span>",
|
||||
"<span class='userdanger'>The uncaring gaze of a dark god looks down upon you for a single moment, and your shell is instantly pulverized into dust!</span>"
|
||||
)
|
||||
gib()
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/electrocute_act(shock_damage, source, siemens_coeff = 1, flags = NONE)
|
||||
return FALSE
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/Life(seconds, times_fired)
|
||||
if(holy_check(src))
|
||||
throw_alert("holy_fire", /atom/movable/screen/alert/holy_fire, override = TRUE)
|
||||
visible_message(
|
||||
"<span class='danger'>[src] slowly crumbles to dust in this holy place!</span>", \
|
||||
"<span class='danger'>Your shell burns as you crumble to dust in this holy place!</span>"
|
||||
)
|
||||
playsound(loc, 'sound/items/welder.ogg', 150, TRUE)
|
||||
adjustBruteLoss(maxHealth/8)
|
||||
else
|
||||
clear_alert("holy_fire", clear_override = TRUE)
|
||||
return ..()
|
||||
|
||||
/mob/living/simple_animal/hostile/clockwork_construct/clockwork_marauder/hostile
|
||||
AIStatus = AI_ON
|
||||
environment_smash = ENVIRONMENT_SMASH_STRUCTURES
|
||||
|
||||
#undef MARAUDER_SHIELD_MAX
|
||||
@@ -865,6 +865,13 @@
|
||||
name = "Lava Field Observations"
|
||||
info = "<center>Asteroid Core Observation Log 306</center><hr><br><i>We took some additional samples of the deep layers of the molten core of the asteroid. Undetermined trace elements were able to be identified in the solution. Its possible this is how the plasma remains so stable at these temperatures. None of our current filter methods have been able to properly extract it as of yet, but we're certain a breakthrough is on the horizon. We did it before, we can do it again.</i>"
|
||||
|
||||
/obj/item/paper/clockwork_cult_message
|
||||
name = "Old handwritten note"
|
||||
info = "<center>To any brothers and sisters that journey here from beyond the system:</center><br><br>\
|
||||
The Nar'Sien dogs have failed, and we have gleaned the method by which we can awake His divine mechanism. The spark shall be turned into lightning and the gears shall once again turn.<br><br>\
|
||||
We go now to purge the dogs from the hole we know they hide within, and then The Eminance shall then call us back to Reebe so that we may begin preperations for His awakening.<br><br>\
|
||||
The guardians shall protect the monastery in our stead. Make use of its supplies and prepare for our return, together we shall all finalize His vison."
|
||||
|
||||
/obj/item/paper/zombie_cure
|
||||
name = "paper - 'Research on Zombies'"
|
||||
|
||||
|
||||
@@ -331,6 +331,7 @@
|
||||
glow_icon_state = "clockwork_tube"
|
||||
base_state = "clockwork_tube"
|
||||
deconstruct_type = /obj/machinery/light_construct/clockwork
|
||||
brightness_color = "#ffbb8d"
|
||||
|
||||
/obj/machinery/light/clockwork/small
|
||||
icon_state = "clockwork_bulb1"
|
||||
|
||||
@@ -210,12 +210,15 @@
|
||||
|
||||
//Components: Used in scripture.
|
||||
/obj/item/clockwork/component
|
||||
name = "arbitrary clockwork component"
|
||||
desc = "A strange artifact and powerful of Ratvar that should not exist. Make an issue report to GitHub if you see this."
|
||||
icon = 'icons/obj/clockwork_objects.dmi'
|
||||
icon_state = "dread_ipad" // So it's visible.
|
||||
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
||||
|
||||
/obj/item/clockwork/component/belligerent_eye
|
||||
name = "belligerent eye"
|
||||
desc = "A brass construct with a rotating red center. It's as though it's looking for something to hurt."
|
||||
icon = 'icons/obj/clockwork_objects.dmi'
|
||||
icon_state = "belligerent_eye"
|
||||
|
||||
/obj/item/clockwork/component/belligerent_eye/blind_eye
|
||||
@@ -224,13 +227,70 @@
|
||||
icon_state = "blind_eye"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
/obj/item/clockwork/component/belligerent_eye/lens_gem
|
||||
name = "lens gem"
|
||||
desc = "A tiny pinkish gem. It catches the light oddly, almost glowing."
|
||||
icon_state = "lens_gem"
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
light_range = 1.4
|
||||
light_power = 0.4
|
||||
light_color = "#F42B9D"
|
||||
|
||||
/obj/item/clockwork/component/vanguard_cogwheel
|
||||
name = "vanguard_cogwheel"
|
||||
desc = "A sturdy brass cog with a faintly glowing blue gem in its center."
|
||||
icon_state = "vanguard_cogwheel"
|
||||
|
||||
/obj/item/clockwork/component/vanguard_cogwheel/onyx_prism
|
||||
name = "onyx prism"
|
||||
desc = "An onyx prism with a small aperture. It's very heavy."
|
||||
icon_state = "onyx_prism"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
/obj/item/clockwork/component/geis_capacitor
|
||||
name = "geis capacitor"
|
||||
desc = "A curiously cold brass doodad. It seems as though it really doesn't appreciate being held."
|
||||
icon_state = "geis_capacitor"
|
||||
|
||||
/obj/item/clockwork/component/geis_capacitor/fallen_armor
|
||||
name = "fallen armor"
|
||||
desc = "Lifeless chunks of armor. They're designed in a strange way and won't fit on you."
|
||||
icon = 'icons/obj/clockwork_objects.dmi'
|
||||
icon_state = "fallen_armor"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
/obj/item/clockwork/component/geis_capacitor/antennae
|
||||
name = "mania motor antennae"
|
||||
desc = "A pair of dented and bent antennae. They constantly emit a static hiss."
|
||||
icon_state = "mania_motor_antennae"
|
||||
|
||||
/obj/item/clockwork/component/replicant_alloy
|
||||
name = "replicant alloy"
|
||||
desc = "A seemingly strong but very malleable chunk of metal. It seems as though it wants to be molded into something greater."
|
||||
icon_state = "replicant_alloy"
|
||||
|
||||
/obj/item/clockwork/component/replicant_alloy/smashed_anima_fragment
|
||||
name = "smashed anima fragment"
|
||||
desc = "Shattered chunks of metal. Damaged beyond repair and completely unusable."
|
||||
icon_state = "smashed_anime_fragment"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
/obj/item/clockwork/component/replicant_alloy/replication_plate
|
||||
name = "replication plate"
|
||||
desc = "A flat, heavy disc of metal with a triangular formation on its surface."
|
||||
icon_state = "replication_plate"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
/obj/item/clockwork/component/hierophant_ansible
|
||||
name = "hierophant ansible"
|
||||
desc = "Some sort of transmitter? It seems as though it's trying to say something."
|
||||
icon_state = "hierophant_ansible"
|
||||
|
||||
/obj/item/clockwork/component/hierophant_ansible/obelisk
|
||||
name = "obelisk prism"
|
||||
desc = "A prism that occasionally glows brightly. It seems not-quite there."
|
||||
icon_state = "obelisk_prism"
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
|
||||
//Ratvarian spear
|
||||
/obj/item/clockwork/weapon/ratvarian_spear
|
||||
name = "ratvarian spear"
|
||||
|
||||
Reference in New Issue
Block a user