This commit is contained in:
silicons
2020-11-21 23:32:10 -07:00
parent 86b584fab5
commit 5a127f6cb5
2 changed files with 12 additions and 6 deletions
+1 -1
View File
@@ -79,7 +79,7 @@
no_destination_swap = TRUE
var/static/list/dumb_rev_heads = list()
/obj/machinery/computer/shuttle/mining/common
/obj/machinery/computer/shuttle/mining/common
name = "lavaland shuttle console"
desc = "Used to call and send the lavaland shuttle."
req_access = list()
+11 -5
View File
@@ -27,13 +27,17 @@ GLOBAL_LIST_INIT(innate_ability_typepaths, all_innate_ability_typepaths())
/mob/proc/grant_ability_from_source(list/abilities, source)
if(!islist(abilities))
abilities = list(abilities)
LAZYINITLIST(ability_actions)
LAZYINITLIST(innate_abilities)
to_chat(world, "DEBUG: granting list [english_list(abilities)]")
for(var/ability in abilities)
LAZYINITLIST(innate_abilities)
LAZYINITLIST(innate_abilities[ability])
innate_abilities[ability] |= source
to_chat(world, "DEBG: granting [ability]")
if(ability_actions[ability])
return
var/datum/action/innate/ability/A = ability_actions[ability] = new GLOB.innate_ability_typepaths[ability]
continue
var/datum/action/innate/ability/A = new GLOB.innate_ability_typepaths[ability]
ability_actions[ability] = A
A.Grant(src)
/**
@@ -42,9 +46,11 @@ GLOBAL_LIST_INIT(innate_ability_typepaths, all_innate_ability_typepaths())
/mob/proc/remove_ability_from_source(list/abilities, source)
if(!islist(abilities))
abilities = list(abilities)
if(!length(innate_abilities))
return
for(var/ability in abilities)
if(!innate_abilities || !length(innate_abilities[ability]))
return
if(!length(innate_abilities[ability]))
continue
innate_abilities[ability] -= source
if(!length(innate_abilities[ability]))
innate_abilities -= ability