[MIRROR] Afterattack is dead, long live Afterattack (#28128)

* Afterattack is dead, long live Afterattack

* wew

* fixes

---------

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
2024-06-15 04:02:11 +02:00
committed by GitHub
co-authored by MrMelbert Gandalf
parent dd14cc7644
commit b540aaf8ab
246 changed files with 3261 additions and 3288 deletions
@@ -41,7 +41,6 @@ GLOBAL_LIST_INIT(integrated_circuit_signal_ids, generate_circuit_signal_list())
COMSIG_ITEM_AFTERATTACK = list(cancel_attack, target, user),
COMSIG_ITEM_ATTACK_SECONDARY = list(secondary_cancel_attack, secondary_continue_attack, target, user),
COMSIG_ITEM_PRE_ATTACK_SECONDARY = list(secondary_cancel_attack, secondary_continue_attack, target, user),
COMSIG_ITEM_AFTERATTACK_SECONDARY = list(secondary_cancel_attack, secondary_continue_attack, target, user),
COMSIG_ITEM_ATTACK_SELF = list(cancel_attack, user),
COMSIG_ITEM_ATTACK_SELF_SECONDARY = list(cancel_attack, user),
)
+5 -8
View File
@@ -41,22 +41,19 @@
signal = add_output_port("Scanned", PORT_TYPE_SIGNAL)
/obj/item/circuit_component/wiremod_scanner/register_shell(atom/movable/shell)
RegisterSignal(shell, COMSIG_ITEM_AFTERATTACK, PROC_REF(handle_afterattack))
RegisterSignal(shell, COMSIG_ITEM_INTERACTING_WITH_ATOM, PROC_REF(handle_interaction))
/obj/item/circuit_component/wiremod_scanner/unregister_shell(atom/movable/shell)
UnregisterSignal(shell, COMSIG_ITEM_AFTERATTACK)
UnregisterSignal(shell, COMSIG_ITEM_INTERACTING_WITH_ATOM)
/**
* Called when the shell item attacks something
*/
/obj/item/circuit_component/wiremod_scanner/proc/handle_afterattack(atom/source, atom/target, mob/user, proximity_flag)
/obj/item/circuit_component/wiremod_scanner/proc/handle_interaction(atom/source, mob/user, atom/target, ...)
SIGNAL_HANDLER
if(!proximity_flag)
return
source.balloon_alert(user, "scanned object")
playsound(source, get_sfx(SFX_TERMINAL_TYPE), 25, FALSE)
playsound(source, SFX_TERMINAL_TYPE, 25, FALSE)
attacker.set_output(user)
attacking.set_output(target)
signal.set_output(COMPONENT_SIGNAL)
return COMPONENT_AFTERATTACK_PROCESSED_ITEM
return ITEM_INTERACT_SUCCESS