Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 111 additions & 0 deletions _maps/RandomRuins/LavaRuins/lavaland_surface_elite_tumor.dmm
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/lavaland/surface/outdoors)
"b" = (
/obj/structure/elite_tumor,
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
/area/lavaland/surface/outdoors)
"c" = (
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
/area/lavaland/surface/outdoors)

(1,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
(3,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
(4,1,1) = {"
a
a
a
c
c
c
a
a
a
"}
(5,1,1) = {"
a
a
a
c
b
c
a
a
a
"}
(6,1,1) = {"
a
a
a
c
c
c
a
a
a
"}
(7,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
(8,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
(9,1,1) = {"
a
a
a
a
a
a
a
a
a
"}
7 changes: 7 additions & 0 deletions code/_onclick/hud/lavaland_elite.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/datum/hud/lavaland_elite
ui_style = 'icons/mob/screen_slime.dmi'

/datum/hud/lavaland_elite/New(mob/living/simple_animal/hostile/asteroid/elite)
..()
healths = new /obj/screen/healths/lavaland_elite()
infodisplay += healths
6 changes: 6 additions & 0 deletions code/_onclick/hud/screen_objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -641,6 +641,12 @@
screen_loc = ui_slime_health
mouse_opacity = MOUSE_OPACITY_TRANSPARENT

/obj/screen/healths/lavaland_elite
icon = 'icons/mob/screen_elite.dmi'
icon_state = "elite_health0"
screen_loc = ui_health
mouse_opacity = MOUSE_OPACITY_TRANSPARENT

/obj/screen/healthdoll
name = "health doll"
screen_loc = ui_healthdoll
Expand Down
4 changes: 4 additions & 0 deletions code/datums/mood_events/generic_positive_events.dm
Original file line number Diff line number Diff line change
Expand Up @@ -147,3 +147,7 @@
description = "<span class='nicegreen'>That work of art was so great it made me believe in the goodness of humanity. Says a lot in a place like this.</span>\n"
mood_change = 4
timeout = 4 MINUTES

/datum/mood_event/hope_lavaland
description = "<span class='nicegreen'>What a peculiar emblem. It makes me feel hopeful for my future.</span>\n"
mood_change = 5
11 changes: 10 additions & 1 deletion code/datums/ruins/lavaland.dm
Original file line number Diff line number Diff line change
Expand Up @@ -428,4 +428,13 @@
description = "Abandon All Hope Ye Who Enter Here."
suffix = "kinggoatboss.dmm"
always_place = TRUE
allow_duplicates = FALSE
allow_duplicates = FALSE

/datum/map_template/ruin/lavaland/elite_tumor
name = "Pulsating Tumor"
id = "tumor"
description = "A strange tumor which houses a powerful beast..."
suffix = "lavaland_surface_elite_tumor.dmm"
cost = 5
always_place = TRUE
allow_duplicates = TRUE
14 changes: 9 additions & 5 deletions code/modules/mob/living/carbon/human/human_defense.dm
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
if(!d_type)
return 0
var/protection = 0
var/list/body_parts = list(head, wear_mask, wear_suit, w_uniform, back, gloves, shoes, belt, s_store, glasses, ears, wear_id) //Everything but pockets. Pockets are l_store and r_store. (if pockets were allowed, putting something armored, gloves or hats for example, would double up on the armor)
var/list/body_parts = list(head, wear_mask, wear_suit, w_uniform, back, gloves, shoes, belt, s_store, glasses, ears, wear_id, wear_neck) //Everything but pockets. Pockets are l_store and r_store. (if pockets were allowed, putting something armored, gloves or hats for example, would double up on the armor)
for(var/bp in body_parts)
if(!bp)
continue
Expand Down Expand Up @@ -119,16 +119,20 @@
if (istype(I, /obj/item/shield))
var/obj/item/shield/S = I
return S.on_shield_block(src, AM, attack_text, damage, attack_type)
return 1
return TRUE
if(wear_suit)
var/final_block_chance = wear_suit.block_chance - (CLAMP((armour_penetration-wear_suit.armour_penetration)/2,0,100)) + block_chance_modifier
if(wear_suit.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type))
return 1
return TRUE
if(w_uniform)
var/final_block_chance = w_uniform.block_chance - (CLAMP((armour_penetration-w_uniform.armour_penetration)/2,0,100)) + block_chance_modifier
if(w_uniform.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type))
return 1
return 0
return TRUE
if(wear_neck)
var/final_block_chance = wear_neck.block_chance - (CLAMP((armour_penetration-wear_neck.armour_penetration)/2,0,100)) + block_chance_modifier
if(wear_neck.hit_reaction(src, AM, attack_text, final_block_chance, damage, attack_type))
return TRUE
return FALSE

/mob/living/carbon/human/proc/check_block()
if(mind)
Expand Down
Loading