code/__DEFINES/dcs/attack_chain_signals.dm
ITEM_INTERACT_COMPLETE | Cancel the rest of the attack chain, indicating success. |
---|---|
ITEM_INTERACT_SKIP_TO_AFTER_ATTACK | Skip pre-attack and attack/attack_by, going straight to after_attack. |
COMSIG_INTERACT_TARGET | Sent when this atom is clicked on by a mob with an item. |
COMSIG_INTERACT_USER | Sent to a mob clicking on an atom with an item. |
COMSIG_INTERACTING | Sent to an item clicking on an atom. |
COMSIG_INTERACT_RANGED | /atom/proc/ranged_item_interaction |
COMSIG_INTERACTING_RANGED | /atom/proc/ranged_item_interaction |
COMSIG_ACTIVATE_SELF | /obj/item/proc/activate_self -> mob/user |
COMPONENT_CANCEL_ATTACK_CHAIN | Cancel the attack chain entirely. |
COMPONENT_SKIP_ATTACK | Skip this attack step, continuing for the next one to happen. |
COMPONENT_SKIP_AFTERATTACK | Skip after_attacks (while allowing for e.g. attack_by). |
COMSIG_PRE_ATTACK | /obj/item/proc/pre_attack -> atom/target, mob/user, params |
COMSIG_ATTACK | /obj/item/proc/attack -> mob/living/target, mob/living/user |
COMSIG_ATTACK_OBJ | /obj/item/proc/attack_obj -> obj/attacked, mob/user |
COMSIG_ATTACK_OBJ_LIVING | /obj/item/proc/attack_obj -> obj/attacked |
COMSIG_ATTACK_BY | [/atom/proc/attackby] -> obj/item/weapon, mob/living/user, params |
COMSIG_AFTER_ATTACK | [/obj/item/proc/afterattack] -> atom/target, mob/user, params |
COMSIG_AFTER_ATTACKED_BY | [/obj/item/proc/afterattack] -> obj/item/weapon, mob/user, proximity_flag, params |
CONTINUE_ATTACK | Continue the attack chain, i.e. allow other signals to respond. |
FINISH_ATTACK | Do not continue the attack chain. |
COMSIG_TOOL_ATTACK | [/obj/item/proc/tool_attack_chain] -> atom/tool, mob/user |
Define Details
COMPONENT_CANCEL_ATTACK_CHAIN
Cancel the attack chain entirely.
COMPONENT_SKIP_AFTERATTACK
Skip after_attacks (while allowing for e.g. attack_by).
COMPONENT_SKIP_ATTACK
Skip this attack step, continuing for the next one to happen.
COMSIG_ACTIVATE_SELF
/obj/item/proc/activate_self -> mob/user
COMSIG_AFTER_ATTACK
[/obj/item/proc/afterattack] -> atom/target, mob/user, params
COMSIG_AFTER_ATTACKED_BY
[/obj/item/proc/afterattack] -> obj/item/weapon, mob/user, proximity_flag, params
COMSIG_ATTACK
/obj/item/proc/attack -> mob/living/target, mob/living/user
COMSIG_ATTACK_BY
[/atom/proc/attackby] -> obj/item/weapon, mob/living/user, params
COMSIG_ATTACK_OBJ
/obj/item/proc/attack_obj -> obj/attacked, mob/user
COMSIG_ATTACK_OBJ_LIVING
/obj/item/proc/attack_obj -> obj/attacked
COMSIG_INTERACTING
Sent to an item clicking on an atom.
/atom/proc/item_interaction -> mob/living/user, atom/target, list/modifiers
COMSIG_INTERACTING_RANGED
/atom/proc/ranged_item_interaction
COMSIG_INTERACT_RANGED
/atom/proc/ranged_item_interaction
COMSIG_INTERACT_TARGET
Sent when this atom is clicked on by a mob with an item.
/atom/proc/item_interaction -> mob/living/user, obj/item/tool, list/modifiers
COMSIG_INTERACT_USER
Sent to a mob clicking on an atom with an item.
/atom/proc/item_interaction -> atom/target, obj/item/tool, list/modifiers
COMSIG_PRE_ATTACK
/obj/item/proc/pre_attack -> atom/target, mob/user, params
COMSIG_TOOL_ATTACK
[/obj/item/proc/tool_attack_chain] -> atom/tool, mob/user
CONTINUE_ATTACK
Continue the attack chain, i.e. allow other signals to respond.
FINISH_ATTACK
Do not continue the attack chain.
ITEM_INTERACT_COMPLETE
Cancel the rest of the attack chain, indicating success.
ITEM_INTERACT_SKIP_TO_AFTER_ATTACK
Skip pre-attack and attack/attack_by, going straight to after_attack.