mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 04:27:35 +01:00
Species now have their innate actions GC (#19212)
This commit is contained in:
@@ -118,7 +118,6 @@
|
||||
prefix = "Plasma"
|
||||
special_names = list("Flood", "Fire", "Bar", "Man")
|
||||
var/boom_warning = FALSE
|
||||
var/datum/action/innate/ignite/ignite
|
||||
|
||||
/datum/species/golem/plasma/handle_life(mob/living/carbon/human/H)
|
||||
if(H.bodytemperature > 750)
|
||||
@@ -143,11 +142,11 @@
|
||||
/datum/species/golem/plasma/on_species_gain(mob/living/carbon/C, datum/species/old_species)
|
||||
..()
|
||||
if(ishuman(C))
|
||||
ignite = new
|
||||
var/datum/action/innate/ignite/ignite = new()
|
||||
ignite.Grant(C)
|
||||
|
||||
/datum/species/golem/plasma/on_species_loss(mob/living/carbon/C)
|
||||
if(ignite)
|
||||
for(var/datum/action/innate/ignite/ignite in C.actions)
|
||||
ignite.Remove(C)
|
||||
..()
|
||||
|
||||
@@ -434,7 +433,6 @@
|
||||
special_names = list("Crystal", "Polycrystal")
|
||||
unarmed_type = /datum/unarmed_attack/golem/bluespace
|
||||
|
||||
var/datum/action/innate/unstable_teleport/unstable_teleport
|
||||
var/teleport_cooldown = 100
|
||||
var/last_teleport = 0
|
||||
var/tele_range = 6
|
||||
@@ -488,12 +486,12 @@
|
||||
/datum/species/golem/bluespace/on_species_gain(mob/living/carbon/C, datum/species/old_species)
|
||||
..()
|
||||
if(ishuman(C))
|
||||
unstable_teleport = new
|
||||
var/datum/action/innate/unstable_teleport/unstable_teleport = new()
|
||||
unstable_teleport.Grant(C)
|
||||
last_teleport = world.time
|
||||
|
||||
/datum/species/golem/bluespace/on_species_loss(mob/living/carbon/C)
|
||||
if(unstable_teleport)
|
||||
for(var/datum/action/innate/unstable_teleport/unstable_teleport in C.actions)
|
||||
unstable_teleport.Remove(C)
|
||||
..()
|
||||
|
||||
|
||||
@@ -77,11 +77,10 @@
|
||||
"is frying their own circuits!",
|
||||
"is blocking their ventilation port!")
|
||||
|
||||
var/datum/action/innate/change_monitor/monitor
|
||||
|
||||
/datum/species/machine/on_species_gain(mob/living/carbon/human/H)
|
||||
..()
|
||||
monitor = new()
|
||||
var/datum/action/innate/change_monitor/monitor = new()
|
||||
monitor.Grant(H)
|
||||
for(var/datum/atom_hud/data/human/medical/medhud in GLOB.huds)
|
||||
medhud.remove_from_hud(H)
|
||||
@@ -92,7 +91,7 @@
|
||||
|
||||
/datum/species/machine/on_species_loss(mob/living/carbon/human/H)
|
||||
..()
|
||||
if(monitor)
|
||||
for(var/datum/action/innate/change_monitor/monitor in H.actions)
|
||||
monitor.Remove(H)
|
||||
for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds)
|
||||
diag_hud.remove_from_hud(H)
|
||||
|
||||
@@ -40,8 +40,6 @@
|
||||
|
||||
optional_body_accessory = FALSE
|
||||
|
||||
var/datum/action/innate/cocoon/cocoon
|
||||
|
||||
suicide_messages = list(
|
||||
"is attempting to nibble their antenna off!",
|
||||
"is twisting their own abdomen!",
|
||||
@@ -53,7 +51,7 @@
|
||||
|
||||
/datum/species/moth/on_species_gain(mob/living/carbon/human/H)
|
||||
..()
|
||||
cocoon = new()
|
||||
var/datum/action/innate/cocoon/cocoon = new()
|
||||
cocoon.Grant(H)
|
||||
RegisterSignal(H, COMSIG_LIVING_FIRE_TICK, .proc/check_burn_wings)
|
||||
RegisterSignal(H, COMSIG_LIVING_AHEAL, .proc/on_aheal)
|
||||
@@ -62,7 +60,8 @@
|
||||
|
||||
/datum/species/moth/on_species_loss(mob/living/carbon/human/H)
|
||||
..()
|
||||
cocoon.Remove(H)
|
||||
for(var/datum/action/innate/cocoon/cocoon in H.actions)
|
||||
cocoon.Remove(H)
|
||||
UnregisterSignal(H, COMSIG_LIVING_FIRE_TICK)
|
||||
UnregisterSignal(H, COMSIG_LIVING_AHEAL)
|
||||
UnregisterSignal(H, COMSIG_HUMAN_CHANGE_BODY_ACCESSORY)
|
||||
|
||||
@@ -56,17 +56,15 @@
|
||||
"is twisting their own neck!",
|
||||
"is holding their breath!")
|
||||
|
||||
var/datum/action/innate/tail_lash/lash
|
||||
|
||||
|
||||
/datum/species/unathi/on_species_gain(mob/living/carbon/human/H)
|
||||
..()
|
||||
lash = new
|
||||
var/datum/action/innate/tail_lash/lash = new()
|
||||
lash.Grant(H)
|
||||
|
||||
/datum/species/unathi/on_species_loss(mob/living/carbon/human/H)
|
||||
..()
|
||||
if(lash)
|
||||
for(var/datum/action/innate/tail_lash/lash in H.actions)
|
||||
lash.Remove(H)
|
||||
|
||||
/datum/action/innate/tail_lash
|
||||
|
||||
Reference in New Issue
Block a user