[MIRROR] Completely removes proc_holders from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code. [MDB IGNORE] (#14666)

* Completely removes `proc_holders` from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code.

* our changes

* yes

* 0

* Update blackmesa.dmm

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
This commit is contained in:
SkyratBot
2022-07-01 21:33:30 +02:00
committed by GitHub
parent f507824ee7
commit c68fea7cba
405 changed files with 12842 additions and 11487 deletions

View File

@@ -80,8 +80,6 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
/// Stored pAI in the computer
var/obj/item/paicard/inserted_pai = null
var/datum/action/item_action/toggle_computer_light/light_butt
/obj/item/modular_computer/Initialize(mapload)
. = ..()
@@ -95,7 +93,8 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
soundloop = new(src, enabled)
UpdateDisplay()
if(has_light)
light_butt = new(src)
add_item_action(/datum/action/item_action/toggle_computer_light)
update_appearance()
register_context()
Add_Messenger()
@@ -116,19 +115,10 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
if(istype(inserted_pai))
QDEL_NULL(inserted_pai)
if(istype(light_butt))
QDEL_NULL(light_butt)
physical = null
return ..()
/obj/item/modular_computer/ui_action_click(mob/user, actiontype)
if(istype(actiontype, light_butt))
toggle_flashlight()
else
..()
/obj/item/modular_computer/pre_attack_secondary(atom/A, mob/living/user, params)
if(active_program?.tap(A, user, params))
user.do_attack_animation(A) //Emulate this animation since we kill the attack in three lines
@@ -558,6 +548,13 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
enabled = 0
update_appearance()
/obj/item/modular_computer/ui_action_click(mob/user, actiontype)
if(istype(actiontype, /datum/action/item_action/toggle_computer_light))
toggle_flashlight()
return
return ..()
/**
* Toggles the computer's flashlight, if it has one.
*