mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-29 23:17:28 +01:00
Polaris Hook Removal Part 1 (#18672)
* starting cleanup * thankyou vsc very cool * resleeving mind signal * id card modifier signals * fix * borgifying mob signal * button and brain * death * explosions, mob init * oooop * semantic * payment account revoke and status * missed hook listener * wip for now * fixes * round signals * only remaining * doppler arrays behave with z levels * audible message it is * wizard spells applied correctly to mind datum
This commit is contained in:
@@ -1,11 +1,5 @@
|
||||
GLOBAL_LIST_EMPTY(prevent_respawns)
|
||||
|
||||
/hook/death/proc/quit_notify(mob/dead)
|
||||
if(ishuman(dead))
|
||||
to_chat(dead,span_notice("You're dead! If you don't intend to continue playing this round as this character, please use the <b>Quit This Round</b> verb in the OOC tab to free your job slot. Otherwise, you can use the <b>Notify Transcore</b> verb to let medical know you need resleeving, or <b>Find Auto Resleever</b> verb to be taken to an auto resleever, which you can click on to be resleeved automatically after a time."))
|
||||
|
||||
return TRUE
|
||||
|
||||
/mob/observer/dead/verb/cleanup()
|
||||
set name = "Quit This Round"
|
||||
set category = "OOC.Game"
|
||||
|
||||
@@ -72,6 +72,8 @@
|
||||
if(stat == DEAD)
|
||||
return 0
|
||||
SEND_SIGNAL(src, COMSIG_MOB_DEATH, gibbed)
|
||||
SEND_GLOBAL_SIGNAL(COMSIG_GLOB_MOB_DEATH, src, gibbed)
|
||||
|
||||
if(src.loc && istype(loc,/obj/belly) || istype(loc,/obj/item/dogborg/sleeper)) deathmessage = "no message" //VOREStation Add - Prevents death messages from inside mobs
|
||||
facing_dir = null
|
||||
|
||||
|
||||
@@ -79,11 +79,22 @@
|
||||
|
||||
remove_verb(src, /mob/living/carbon/proc/release_control)
|
||||
|
||||
callHook("death", list(src, gibbed))
|
||||
|
||||
// Handle vorny
|
||||
if(isbelly(loc))
|
||||
//Were they digesting and we have a mind you can update?
|
||||
//Technically allows metagaming by allowing buddies to turn on digestion for like 2 seconds
|
||||
// to finish off critically wounded friends to avoid resleeving sickness, but like
|
||||
// *kill those people* ok?
|
||||
var/obj/belly/in_belly = loc
|
||||
if(in_belly.digest_mode == DM_DIGEST || in_belly.digest_mode == DM_SELECT)
|
||||
mind?.vore_death = TRUE
|
||||
soulcatcher_on_mob_death()
|
||||
if(istype(loc, /obj/item/clothing/shoes))
|
||||
mind?.vore_death = TRUE
|
||||
|
||||
// Let them know we died!
|
||||
to_chat(src, span_notice("You're dead! If you don't intend to continue playing this round as this character, please use the <b>Quit This Round</b> verb in the OOC tab to free your job slot. Otherwise, you can use the <b>Notify Transcore</b> verb to let medical know you need resleeving, or <b>Find Auto Resleever</b> verb to be taken to an auto resleever, which you can click on to be resleeved automatically after a time."))
|
||||
|
||||
if(mind)
|
||||
var/area/A = get_area(src)
|
||||
if(!(A?.flag_check(AREA_BLOCK_SUIT_SENSORS)) && isbelly(loc))
|
||||
|
||||
@@ -12,25 +12,6 @@
|
||||
|
||||
. = ..()
|
||||
|
||||
//Surprisingly this is only called for humans, but whatever!
|
||||
/hook/death/proc/digestion_check(var/mob/living/carbon/human/H, var/gibbed)
|
||||
//Not in a belly? Well, too bad!
|
||||
if(!isbelly(H.loc))
|
||||
return TRUE
|
||||
|
||||
//What belly!
|
||||
var/obj/belly/B = H.loc
|
||||
|
||||
//Were they digesting and we have a mind you can update?
|
||||
//Technically allows metagaming by allowing buddies to turn on digestion for like 2 seconds
|
||||
// to finish off critically wounded friends to avoid resleeving sickness, but like
|
||||
// *kill those people* ok?
|
||||
if(B.digest_mode == DM_DIGEST || B.digest_mode == DM_SELECT)
|
||||
H.mind?.vore_death = TRUE
|
||||
|
||||
//Hooks need to return true otherwise they're considered having failed
|
||||
return TRUE
|
||||
|
||||
//For making sure that if a mob is able to be joined by ghosts, that ghosts can't join it if it dies
|
||||
/mob/living/simple_mob/death()
|
||||
..()
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
GLOBAL_LIST_EMPTY(empty_playable_ai_cores)
|
||||
|
||||
/hook/roundstart/proc/spawn_empty_ai()
|
||||
for(var/obj/effect/landmark/start/S in GLOB.landmarks_list)
|
||||
if(S.name != JOB_AI)
|
||||
continue
|
||||
if(locate(/mob/living) in S.loc)
|
||||
continue
|
||||
GLOB.empty_playable_ai_cores += new /obj/structure/AIcore/deactivated(get_turf(S))
|
||||
|
||||
return 1
|
||||
|
||||
/mob/living/silicon/ai/verb/store_core()
|
||||
set name = "Store Core"
|
||||
set category = "OOC.Game"
|
||||
|
||||
@@ -177,12 +177,6 @@
|
||||
|
||||
//INCOMPLETE and not ready, no sprites other than tall and basically useless, also lacking a belly
|
||||
|
||||
//Add ourselves to the borg list
|
||||
/hook/startup/proc/Modular_Borg_init_standardhound()
|
||||
//robot_modules["Honk-Hound"] = /obj/item/robot_module/robot/clerical/honkborg - done in station_vr modular chomp for ordering reasons
|
||||
robot_module_types += "Standard-Hound" //Add ourselves to global
|
||||
return 1
|
||||
|
||||
/obj/item/robot_module/robot/standard/hound
|
||||
name = "Standard-Hound"
|
||||
sprites = list(
|
||||
|
||||
@@ -3,19 +3,6 @@
|
||||
|
||||
// code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm //tag so it shows up in gitsearch
|
||||
|
||||
/*
|
||||
What Borgs are available is sadly handled in the above file in the proc
|
||||
|
||||
/hook/startup/proc/robot_modules_vr()
|
||||
robot_modules["Medihound"] = /obj/item/robot_module/robot/medihound
|
||||
robot_modules["K9"] = /obj/item/robot_module/robot/knine
|
||||
robot_modules["ERT"] = /obj/item/robot_module/robot/ert
|
||||
robot_modules["Janihound"] = /obj/item/robot_module/robot/scrubpup
|
||||
robot_modules["Sci-borg"] = /obj/item/robot_module/robot/science
|
||||
robot_modules["Pupdozer"] = /obj/item/robot_module/robot/engiedog
|
||||
return 1
|
||||
*/
|
||||
|
||||
/obj/item/robot_module/robot/booze
|
||||
name = "BoozeHound robot module"
|
||||
channels = list("Service" = 1)
|
||||
|
||||
@@ -1,9 +1,3 @@
|
||||
/* //Uncomment the exploration modules in code\global.dm
|
||||
/hook/startup/proc/Modular_Borg_init_Exploration()
|
||||
robot_modules["Exploration"] = /obj/item/robot_module/robot/exploration //add to array
|
||||
robot_module_types += "Exploration" //Add to global list
|
||||
return 1
|
||||
*/
|
||||
//Explo doggos
|
||||
/obj/item/robot_module/robot/exploration
|
||||
name = "exploration robot module"
|
||||
|
||||
@@ -75,6 +75,7 @@
|
||||
zone_sel = null
|
||||
|
||||
/mob/Initialize(mapload)
|
||||
SEND_GLOBAL_SIGNAL(COMSIG_GLOB_MOB_CREATED, src)
|
||||
GLOB.mob_list += src
|
||||
if(stat == DEAD)
|
||||
GLOB.dead_mob_list += src
|
||||
|
||||
@@ -185,7 +185,7 @@
|
||||
O.fuzzy = B.fuzzy
|
||||
O.custom_speech_bubble = B.custom_speech_bubble
|
||||
|
||||
callHook("borgify", list(O))
|
||||
SEND_GLOBAL_SIGNAL(COMSIG_GLOB_BORGIFY, O)
|
||||
|
||||
spawn(0) // Mobs still instantly del themselves, thus we need to spawn or O will never be returned
|
||||
qdel(src)
|
||||
|
||||
Reference in New Issue
Block a user