From 480b4db2e1fc20b178e10c829cc87bcbd28984c0 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Fri, 28 Apr 2017 21:11:31 -0500 Subject: [PATCH] Cult Construct Non-Balance Update --- code/_onclick/hud/_defines.dm | 4 +++ code/_onclick/hud/constructs.dm | 18 +++++++++++ code/_onclick/hud/constructs.dm.rej | 25 ++++++++++++++++ code/_onclick/hud/screen_objects.dm | 6 ++++ .../mob/living/simple_animal/constructs.dm | 28 ++++++++++++++++-- .../living/simple_animal/constructs.dm.rej | 9 ++++++ .../living/simple_animal/hostile/statue.dm | 2 +- icons/mob/screen_construct.dmi | Bin 0 -> 12327 bytes tgstation.dme | 1 + 9 files changed, 90 insertions(+), 3 deletions(-) create mode 100644 code/_onclick/hud/constructs.dm create mode 100644 code/_onclick/hud/constructs.dm.rej create mode 100644 code/modules/mob/living/simple_animal/constructs.dm.rej create mode 100644 icons/mob/screen_construct.dmi diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 90c953a110..8c62d68963 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -111,6 +111,10 @@ #define ui_alienplasmadisplay "EAST-1:28,CENTER-2:15" #define ui_alien_queen_finder "EAST-1:28,CENTER-3:15" +//constructs +#define ui_construct_pull "EAST,CENTER-2:15" +#define ui_construct_health "EAST,CENTER:15" //same as borgs and humans + // AI #define ui_ai_core "SOUTH:6,WEST" diff --git a/code/_onclick/hud/constructs.dm b/code/_onclick/hud/constructs.dm new file mode 100644 index 0000000000..dc3cea7f99 --- /dev/null +++ b/code/_onclick/hud/constructs.dm @@ -0,0 +1,18 @@ + +/datum/hud/construct + ui_style_icon = 'icons/mob/screen_construct.dmi' + +/datum/hud/construct/New(mob/owner) + ..() + pull_icon = new /obj/screen/pull() + pull_icon.icon = ui_style_icon + pull_icon.update_icon(mymob) + pull_icon.screen_loc = ui_pull_resist + static_inventory += pull_icon + + healths = new /obj/screen/healths/construct() + infodisplay += healths + +/mob/living/simple_animal/hostile/construct/create_mob_hud() + if(client && !hud_used) + hud_used = new /datum/hud/construct(src) diff --git a/code/_onclick/hud/constructs.dm.rej b/code/_onclick/hud/constructs.dm.rej new file mode 100644 index 0000000000..1ea29cde32 --- /dev/null +++ b/code/_onclick/hud/constructs.dm.rej @@ -0,0 +1,25 @@ +diff a/code/_onclick/hud/constructs.dm b/code/_onclick/hud/constructs.dm (rejected hunks) +@@ -1,18 +1,18 @@ + + /datum/hud/constructs + ui_style_icon = 'icons/mob/screen_construct.dmi' +- ++ + /datum/hud/constructs/New(mob/owner) + ..() + pull_icon = new /obj/screen/pull() +- pull_icon.icon = ui_style_icon ++ pull_icon.icon = 'icons/mob/screen_construct.dmi' + pull_icon.update_icon(mymob) +- pull_icon.screen_loc = ui_pull_resist ++ pull_icon.screen_loc = ui_construct_pull + static_inventory += pull_icon +- ++ + healths = new /obj/screen/healths/construct() + infodisplay += healths +- ++ + /mob/living/simple_animal/hostile/construct/create_mob_hud() + if(client && !hud_used) + hud_used = new /datum/hud/constructs(src) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 81754efc93..bfab19ba5f 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -532,6 +532,12 @@ screen_loc = ui_health mouse_opacity = 0 +/obj/screen/healths/construct + icon = 'icons/mob/screen_construct.dmi' + icon_state = "artificer_health0" + screen_loc = ui_construct_health + mouse_opacity = 0 + /obj/screen/healthdoll name = "health doll" screen_loc = ui_healthdoll diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index edb12a3fef..b879f1baf6 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -14,7 +14,8 @@ stop_automated_movement = 1 status_flags = CANPUSH attack_sound = 'sound/weapons/punch1.ogg' - see_in_dark = 7 + see_in_dark = 7 + lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) 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 @@ -83,7 +84,11 @@ /mob/living/simple_animal/hostile/construct/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) return 0 - + +/mob/living/simple_animal/hostile/construct/adjustHealth(amount, updating_health = TRUE, forced = FALSE) + . = ..() + if(updating_health) + update_health_hud() /////////////////Juggernaut/////////////// /mob/living/simple_animal/hostile/construct/armored @@ -268,3 +273,22 @@ /mob/living/simple_animal/hostile/construct/harvester/hostile //actually hostile, will move around, hit things AIStatus = AI_ON environment_smash = 1 //only token destruction, don't smash the cult wall NO STOP + + + +/////////////////////////////ui stuff///////////////////////////// + +/mob/living/simple_animal/hostile/construct/update_health_hud() + if(hud_used) + if(health >= maxHealth) + hud_used.healths.icon_state = "[icon_state]_health0" + else if(health > maxHealth*0.8) + hud_used.healths.icon_state = "[icon_state]_health2" + else if(health > maxHealth*0.6) + hud_used.healths.icon_state = "[icon_state]_health3" + else if(health > maxHealth*0.4) + hud_used.healths.icon_state = "[icon_state]_health4" + else if(health > maxHealth*0.2) + hud_used.healths.icon_state = "[icon_state]_health5" + else + hud_used.healths.icon_state = "[icon_state]_health6" \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/constructs.dm.rej b/code/modules/mob/living/simple_animal/constructs.dm.rej new file mode 100644 index 0000000000..d200533753 --- /dev/null +++ b/code/modules/mob/living/simple_animal/constructs.dm.rej @@ -0,0 +1,9 @@ +diff a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm (rejected hunks) +@@ -35,7 +35,6 @@ + + /mob/living/simple_animal/hostile/construct/Initialize() + . = ..() +- updateglow() + update_health_hud() + for(var/spell in construct_spells) + AddSpell(new spell(null)) diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm index 455f893a5c..a810d3fd67 100644 --- a/code/modules/mob/living/simple_animal/hostile/statue.dm +++ b/code/modules/mob/living/simple_animal/hostile/statue.dm @@ -220,7 +220,7 @@ else target.lighting_alpha = LIGHTING_PLANE_ALPHA_VISIBLE name = "Toggle Nightvision \[ON]" - target.update_sight() + target.update_sight() /mob/living/simple_animal/hostile/statue/sentience_act() faction -= "neutral" diff --git a/icons/mob/screen_construct.dmi b/icons/mob/screen_construct.dmi new file mode 100644 index 0000000000000000000000000000000000000000..82dbe19cf65bdc3b3ffb964a5515b95f0edd226a GIT binary patch literal 12327 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 S0saF3L|4m5vqIz1%l`%K2^yOK literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index 1647912f6c..f1439e8d5e 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -137,6 +137,7 @@ #include "code\_onclick\hud\blob_overmind.dm" #include "code\_onclick\hud\blobbernauthud.dm" #include "code\_onclick\hud\clockwork_marauder.dm" +#include "code\_onclick\hud\constructs.dm" #include "code\_onclick\hud\devil.dm" #include "code\_onclick\hud\drones.dm" #include "code\_onclick\hud\fullscreen.dm"