Merge pull request #19213 from coiax/no-cache-alert

Servants of Ratvar get an alert if they have no tinkerer's cache
This commit is contained in:
Joan Lung
2016-07-09 08:17:08 -04:00
committed by GitHub
5 changed files with 20 additions and 0 deletions
+8
View File
@@ -240,6 +240,14 @@ or shoot a gun to move around via Newton's 3rd Law of Motion."
icon_state = "blobbernaut_nofactory"
alerttooltipstyle = "blob"
// CLOCKCULT
/obj/screen/alert/nocache
name = "No Tinkerer's Cache"
desc = "In order to share components and unlock higher tier \
scripture, a tinkerer's cache must be constructed somewhere \
in the world. Try to place it somewhere accessible, yet hidden."
icon_state = "nocache"
//GUARDIANS
/obj/screen/alert/cancharge
@@ -119,6 +119,7 @@ This file's folder contains:
if(istype(ticker.mode, /datum/game_mode/clockwork_cult))
var/datum/game_mode/clockwork_cult/C = ticker.mode
C.present_tasks(M) //Memorize the objectives
cache_check(M)
return 1
/proc/remove_servant_of_ratvar(mob/living/M, silent = FALSE)
@@ -138,6 +139,7 @@ This file's folder contains:
M.languages_understood &= ~RATVAR
M.update_action_buttons_icon() //because a few clockcult things are action buttons and we may be wearing/holding them, we need to update buttons
M.attack_log += "\[[time_stamp()]\] <span class='brass'>Has renounced the cult of Ratvar!</span>"
M.clear_alert("nocache")
for(var/datum/action/innate/function_call/F in M.actions) //Removes any bound Ratvarian spears
qdel(F)
for(var/datum/action/innate/hierophant/H in M.actions) //Removes any communication actions
@@ -159,12 +159,16 @@
clockwork_caches++
scripture_unlock_alert(scripture_states)
SetLuminosity(2,1)
for(var/i in all_clockwork_mobs)
cache_check(i)
/obj/structure/clockwork/cache/Destroy()
var/list/scripture_states = get_scripture_states()
clockwork_caches--
scripture_unlock_alert(scripture_states)
STOP_PROCESSING(SSobj, src)
for(var/i in all_clockwork_mobs)
cache_check(i)
return ..()
/obj/structure/clockwork/cache/destroyed()
@@ -197,6 +197,12 @@
AM.say(message)
AM.languages_spoken = old_languages_spoken
/proc/cache_check(mob/M)
if(!clockwork_caches)
M.throw_alert("nocache", /obj/screen/alert/nocache)
else
M.clear_alert("nocache")
/*
The Ratvarian Language
Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 39 KiB