Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
e790d8c
Основа
L343-CJ Apr 26, 2026
21589f8
нейрослоп говорит умные вещи
L343-CJ Apr 26, 2026
1c27451
Merge branch 'master220' into proc_holders
L343-CJ Apr 26, 2026
fc74c09
микрофикс
L343-CJ Apr 26, 2026
1e6de2f
Merge branch 'proc_holders' of https://github.com/L343-CJ/Hueta into …
L343-CJ Apr 26, 2026
0e9cfa5
трейты в глобалварс
L343-CJ Apr 26, 2026
155df5b
линтер
L343-CJ Apr 26, 2026
b5f8dc3
папка spells в модулях
L343-CJ Apr 28, 2026
5f3f068
забыл
L343-CJ Apr 28, 2026
97edf40
гендерайз_декод
L343-CJ Apr 28, 2026
23a5a20
великое переселение народов
L343-CJ Apr 28, 2026
9baa1d0
Merge branch 'master220' into proc_holders
L343-CJ Apr 28, 2026
67e8e8e
вроде добавил кулдовн хендлер
L343-CJ May 1, 2026
f403fd8
Merge branches 'proc_holders' and 'proc_holders' of https://github.co…
L343-CJ May 1, 2026
05493be
Revert "вроде добавил кулдовн хендлер"
L343-CJ May 2, 2026
b83cdeb
Revert "великое переселение народов"
L343-CJ May 2, 2026
1d68adb
Перенос базовых типов заклинаний из spell_types
L343-CJ May 10, 2026
54f79d6
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ May 11, 2026
ffc43bf
завоз линтера
L343-CJ May 11, 2026
1710224
еще линтер
L343-CJ May 11, 2026
5a67bfa
правки и первый спелл
L343-CJ May 16, 2026
9c33a76
макросы
L343-CJ May 16, 2026
e6c1908
GLOB.teleportlocs и спелл area_teleport
L343-CJ May 22, 2026
b57102e
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ May 22, 2026
5278da8
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ May 22, 2026
e1b91e7
magic_missile & blink
L343-CJ May 26, 2026
cb222cd
banana touch, no clothes and honk missle
L343-CJ May 26, 2026
996499f
Изменение логики элемента
L343-CJ May 26, 2026
92707d4
mutation spell & linters
L343-CJ May 26, 2026
e781741
убрал говно с элементом + починил тест(наверное)
L343-CJ May 26, 2026
c93901d
завооз
L343-CJ May 27, 2026
e72d190
священник + пачка спеллов
L343-CJ May 30, 2026
2f73c2a
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ May 30, 2026
60906ab
бладкравлы
L343-CJ May 30, 2026
3aacf95
линтер
L343-CJ May 30, 2026
c9250a7
спеллы конструктов + vv
L343-CJ Jun 3, 2026
3780ce6
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ Jun 3, 2026
0cb2ac5
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ Jun 3, 2026
8b7ade2
конструкты часть 2
L343-CJ Jun 3, 2026
cade0aa
забыл убрать фастлоад
L343-CJ Jun 3, 2026
e59249f
Контракты дьвола
L343-CJ Jun 5, 2026
4fb1c84
линтер
L343-CJ Jun 5, 2026
f95f73a
заклинание лича
L343-CJ Jun 5, 2026
9ce4312
молния мага
L343-CJ Jun 5, 2026
a83f778
touch спеллы
L343-CJ Jun 7, 2026
e1e2262
сука фаст лоад забыл
L343-CJ Jun 7, 2026
ca91afb
Merge branch 'master220' into proc_holders
L343-CJ Jun 7, 2026
aa0df14
lavaland spells
L343-CJ Jun 7, 2026
6bf4d16
завоз оставшихся спеллов мага
L343-CJ Jun 9, 2026
0630713
забыл
L343-CJ Jun 9, 2026
97c0cab
Merge branch 'master220' into proc_holders
L343-CJ Jun 9, 2026
49692f5
линтер
L343-CJ Jun 9, 2026
109eab8
линтер точно все
L343-CJ Jun 9, 2026
9ca6a48
книги мага
L343-CJ Jun 14, 2026
36899cd
Merge remote-tracking branch 'upstream/master220' into proc_holders
L343-CJ Jun 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions code/__DEFINES/action.dm
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,12 @@
#define AB_CHECK_CONSCIOUS (1<<3)
///Action button checks if user is incapacitated (weakened/stunned/stamcrited/paralyzed/sleeping)
#define AB_CHECK_INCAPACITATED (1<<4)
///Action button checks if user is jaunting
#define AB_CHECK_PHASED (1<<5)
///Action button checks if user is currently in turf contents
#define AB_CHECK_TURF (1<<5)
#define AB_CHECK_TURF (1<<6)
///Action button checks if it should be given to new mob, after mind transfer
#define AB_TRANSFER_MIND (1<<6)
#define AB_TRANSFER_MIND (1<<7)

///Action button triggered with right click
#define TRIGGER_SECONDARY_ACTION (1<<0)
Expand Down
66 changes: 66 additions & 0 deletions code/__DEFINES/dcs/signals/signal_actions.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
// Action signals

///from base of datum/action/proc/Trigger(): (datum/action)
#define COMSIG_ACTION_TRIGGER "action_trigger"
// Return to block the trigger from occurring
#define COMPONENT_ACTION_BLOCK_TRIGGER (1<<0)
/// From /datum/action/Grant(): (mob/grant_to)
#define COMSIG_ACTION_GRANTED "action_grant"
/// From /datum/action/Grant(): (datum/action)
#define COMSIG_MOB_GRANTED_ACTION "mob_action_grant"
/// From /datum/action/Remove(): (mob/removed_from)
#define COMSIG_ACTION_REMOVED "action_removed"
/// From /datum/action/Remove(): (datum/action)
#define COMSIG_MOB_REMOVED_ACTION "mob_action_removed"
/// From /datum/action/apply_button_overlay()
#define COMSIG_ACTION_OVERLAY_APPLY "action_overlay_applied"
// TODO: spaghetti write comment here
#define COMSIG_ACTION_BUTTON_UPDATE "action_button_update"
#define COMSIG_ACTION_UPDATE_INTERRUPT (1<<0)


// Cooldown action signals

/// From base of /datum/action/cooldown/proc/PreActivate(), sent to the action owner: (datum/action/cooldown/activated)
#define COMSIG_MOB_ABILITY_STARTED "mob_ability_base_started"
/// Return to block the ability from starting / activating
#define COMPONENT_BLOCK_ABILITY_START (1<<0)
/// From base of /datum/action/cooldown/proc/PreActivate(), sent to the action owner: (datum/action/cooldown/finished)
#define COMSIG_MOB_ABILITY_FINISHED "mob_ability_base_finished"

/// From base of /datum/action/cooldown/proc/set_statpanel_format(): (list/stat_panel_data)
#define COMSIG_ACTION_SET_STATPANEL "ability_set_statpanel"

// Specific cooldown action signals

/// From base of /datum/action/cooldown/mob_cooldown/blood_warp/proc/blood_warp(): ()
#define COMSIG_BLOOD_WARP "mob_ability_blood_warp"
/// From base of /datum/action/cooldown/mob_cooldown/charge/proc/do_charge(): ()
#define COMSIG_STARTED_CHARGE "mob_ability_charge_started"
/// From base of /datum/action/cooldown/mob_cooldown/charge/proc/do_charge(): ()
#define COMSIG_FINISHED_CHARGE "mob_ability_charge_finished"
/// From base of /datum/action/cooldown/mob_cooldown/lava_swoop/proc/swoop_attack(): ()
#define COMSIG_SWOOP_INVULNERABILITY_STARTED "mob_swoop_invulnerability_started"
/// From base of /datum/action/cooldown/mob_cooldown/lava_swoop/proc/swoop_attack(): ()
#define COMSIG_LAVA_ARENA_FAILED "mob_lava_arena_failed"

/// From /datum/action/vehicle/sealed/mecha/mech_toggle_safeties/proc/update_action_icon(): ()
#define COMSIG_MECH_SAFETIES_TOGGLE "mech_safeties_toggle"

/// From /datum/action/vehicle/sealed/mecha//mob_exit(): ()
#define COMSIG_MECHA_MOB_EXIT "mecha_mob_exit"

/// From /datum/action/cooldown/mob_cooldown/assume_form/proc/assume_appearances(), sent to the action owner: (atom/movable/target)
#define COMSIG_ACTION_DISGUISED_APPEARANCE "mob_ability_disguise_appearance"

/// From /datum/action/cooldown/manual_heart/Activate(): ()
#define COMSIG_HEART_MANUAL_PULSE "heart_manual_pulse"

/// From /datum/action/cooldown/mob_cooldown/capture_photo/Activate():
#define COMSIG_ACTION_PHOTO_CAPTURED "action_photo_captured"

/// From /datum/action/vehicle/ridden/wheelchair/bell/Trigger():
#define COMSIG_WHEELCHAIR_BELL_RANG "wheelchair_bell_rang"

/// From /datum/action/cooldown/spell/touch/lay_on_hands/proc/determine_if_this_hurts_instead(), sent to the /mob/living/carbon/hurtguy: (/mob/living/carbon/mendicant)
#define COMSIG_ON_LAY_ON_HANDS "mob_ability_lay_on_hands"

@dageavtobusnick dageavtobusnick Apr 26, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Касаемо всех этих сигналов. Если ты добавляешь сигнал, он должен где-то отправляться. Мертвые сигналы - выстрел в хуй.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Я пока добавлял весь файл с сигналом магии, если после переноса не нужны будут удалю

19 changes: 0 additions & 19 deletions code/__DEFINES/dcs/signals/signals_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,25 +32,6 @@
///from datum/species/on_species_loss(): (datum/species/lost_species)
#define COMSIG_SPECIES_LOSS "species_loss"

// /datum/action signals
///from base of datum/action/proc/Trigger(): (datum/action)
#define COMSIG_ACTION_TRIGGER "action_trigger"
#define COMPONENT_ACTION_BLOCK_TRIGGER (1<<0)
/// From /datum/action/Grant(): (mob/grant_to)
#define COMSIG_ACTION_GRANTED "action_grant"
/// From /datum/action/Grant(): (datum/action)
#define COMSIG_MOB_GRANTED_ACTION "mob_action_grant"
/// From /datum/action/Remove(): (mob/removed_from)
#define COMSIG_ACTION_REMOVED "action_removed"
/// From /datum/action/Remove(): (datum/action)
#define COMSIG_MOB_REMOVED_ACTION "mob_action_removed"
/// From /datum/action/apply_button_overlay()
#define COMSIG_ACTION_OVERLAY_APPLY "action_overlay_applied"
// TODO: spaghetti write comment here
#define COMSIG_ACTION_BUTTON_UPDATE "action_button_update"
#define COMSIG_ACTION_UPDATE_INTERRUPT (1<<0)
/// From base of /datum/action/cooldown/proc/set_statpanel_format(): (list/stat_panel_data)
#define COMSIG_ACTION_SET_STATPANEL "ability_set_statpanel"
/// From /datum/action/innate/borer/make_larvae/Activate (turf/turf)
#define COMSIG_BORER_REPRODUCE "borer_reproduced"
///from /datum/action/armguard_hidden_blade/Trigger(): ()
Expand Down
10 changes: 10 additions & 0 deletions code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,16 @@
///from base of /obj/item/bodypart/proc/attach_limb(): (new_limb, special) allows you to fail limb attachment
#define COMSIG_LIVING_ATTACH_LIMB "living_attach_limb"
#define COMPONENT_NO_ATTACH (1<<0)
///From /proc/wabbajack(): (randomize_type)
#define COMSIG_LIVING_PRE_WABBAJACKED "living_mob_wabbajacked"
/// Return to stop the rest of the wabbajack from triggering.
#define STOP_WABBAJACK (1<<0)
///From mob/living/proc/on_wabbajack(): (mob/living/new_mob)
#define COMSIG_LIVING_ON_WABBAJACKED "living_wabbajacked"
/// From /datum/status_effect/shapechange_mob/on_apply(): (mob/living/shape)
#define COMSIG_LIVING_SHAPESHIFTED "living_shapeshifted"
/// From /datum/status_effect/shapechange_mob/after_unchange(): (mob/living/caster)
#define COMSIG_LIVING_UNSHAPESHIFTED "living_unshapeshifted"

/// From /mob/living/update_offsets(animate) : (new_x, new_y, new_w, new_z, animate)
#define COMSIG_LIVING_UPDATE_OFFSETS "living_update_offsets"
8 changes: 7 additions & 1 deletion code/__DEFINES/dcs/signals/signals_mob/signals_mob_main.dm
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@

///from base of obj/allowed(mob/M): (/obj) returns bool, if TRUE the mob has id access to the obj
#define COMSIG_MOB_ALLOWED "mob_allowed"
///from base of mob/can_cast_magic(): (mob/user, magic_flags, charge_cost)
#define COMSIG_MOB_RESTRICT_MAGIC "mob_cast_magic"
///from base of mob/anti_magic_check(): (mob/user, magic, holy, tinfoil, chargecost, self, protection_sources)
#define COMSIG_MOB_RECEIVE_MAGIC "mob_receive_magic"
#define COMPONENT_BLOCK_MAGIC (1<<0)
Expand Down Expand Up @@ -203,11 +205,15 @@
/// from base of /client/proc/set_eye() : (atom/old_eye, atom/new_eye)
#define COMSIG_CLIENT_SET_EYE "client_set_eye"
/// from /mob/proc/change_mob_type() : ()
#define COMSIG_PRE_MOB_CHANGED_TYPE "pre_mob_changed_type"
#define COMPONENT_BLOCK_MOB_CHANGE (1<<0)
/// from /mob/proc/change_mob_type() : ()
#define COMSIG_MOB_CHANGED_TYPE "mob_changed_type"

/// From /obj/item/melee/baton/baton_effect(): (datum/source, mob/living/user, /obj/item/melee/baton)
#define COMSIG_MOB_BATONED "mob_batoned"

/// A mob has just equipped an item. Called on [/mob] from base of [/obj/item/equipped()]: (/obj/item/equipped_item, slot)
#define COMSIG_MOB_EQUIPPED_ITEM "mob_equipped_item"
/// A mob has just unequipped an item.
#define COMSIG_MOB_UNEQUIPPED_ITEM "mob_unequipped_item"
/// From base of /mob/proc/update_held_items
Expand Down
5 changes: 0 additions & 5 deletions code/__DEFINES/dcs/signals/signals_object.dm
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,6 @@
#define COMSIG_ITEM_DROPPED "item_drop"
///from base of obj/item/pickup(): (/mob/taker)
#define COMSIG_ITEM_PICKUP "item_pickup"
///return a truthy value to prevent ensouling, checked in /obj/effect/proc_holder/spell/lichdom/cast(): (mob/user)
#define COMSIG_ITEM_IMBUE_SOUL "item_imbue_soul"
///called before marking an object for retrieval, checked in /obj/effect/proc_holder/spell/summonitem/cast() : (mob/user)
#define COMSIG_ITEM_MARK_RETRIEVAL "item_mark_retrieval"
#define COMPONENT_BLOCK_MARK_RETRIEVAL (1<<0)
///from base of obj/item/hit_reaction(): (list/args)
#define COMSIG_ITEM_HIT_REACT "item_hit_react"
#define COMPONENT_BLOCK_SUCCESSFUL (1 << 0)
Expand Down
126 changes: 126 additions & 0 deletions code/__DEFINES/dcs/signals/signals_spell.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
// Signals sent to or by spells

// Generic spell signals


/// Sent from /datum/action/cooldown/spell/before_cast() to the caster: (datum/action/cooldown/spell/spell, atom/cast_on)
#define COMSIG_MOB_BEFORE_SPELL_CAST "mob_spell_pre_cast"
/// Sent from /datum/action/cooldown/spell/before_cast() to the spell: (atom/cast_on)
#define COMSIG_SPELL_BEFORE_CAST "spell_pre_cast"
/// Return to prevent the spell cast from continuing.
#define SPELL_CANCEL_CAST (1 << 0)
/// Return from before cast signals to prevent the spell from giving off sound or invocation.
#define SPELL_NO_FEEDBACK (1 << 1)
/// Return from before cast signals to prevent the spell from going on cooldown before aftercast.
#define SPELL_NO_IMMEDIATE_COOLDOWN (1 << 2)

/// Sent to an mob when a [/datum/action/cooldown/spell] calls try_invoke() to the caster: (datum/action/cooldown/spell/spell, feedback)
#define COMSIG_MOB_TRY_INVOKE_SPELL "try_invoke_spell"
/// The spell gets canceled
#define SPELL_INVOCATION_FAIL SPELL_CANCEL_CAST
/// The spell always succeeds to invoke regardless of following checks
#define SPELL_INVOCATION_ALWAYS_SUCCEED (1 << 1)

/// Sent from /datum/action/cooldown/spell/set_click_ability() to the caster: (datum/action/cooldown/spell/spell)
#define COMSIG_MOB_SPELL_ACTIVATED "mob_spell_active"
/// Same as spell_cancel_cast, as they're able to be used interchangeably
#define SPELL_CANCEL_ACTIVATION SPELL_CANCEL_CAST

/// Sent from /datum/action/cooldown/spell/cast() to the caster: (datum/action/cooldown/spell/spell, atom/cast_on)
#define COMSIG_MOB_CAST_SPELL "mob_cast_spell"
/// Sent from /datum/action/cooldown/spell/cast() to the spell: (atom/cast_on)
#define COMSIG_SPELL_CAST "spell_cast"
// Sent from /datum/action/cooldown/spell/after_cast() to the caster: (datum/action/cooldown/spell/spell, atom/cast_on)
#define COMSIG_MOB_AFTER_SPELL_CAST "mob_after_spell_cast"
/// Sent from /datum/action/cooldown/spell/after_cast() to the spell: (atom/cast_on)
#define COMSIG_SPELL_AFTER_CAST "spell_after_cast"
/// Sent from /datum/action/cooldown/spell/reset_spell_cooldown() to the spell: ()
#define COMSIG_SPELL_CAST_RESET "spell_cast_reset"
/// Sent from /datum/action/cooldown/spell/proc/invocation() to the mob: (datum/source, /datum/action/cooldown/spell/spell, list/invocation)
#define COMSIG_MOB_PRE_INVOCATION "spell_pre_invocation"
///index for the invocation message string
#define INVOCATION_MESSAGE 1
///index for the invocation type string
#define INVOCATION_TYPE 2
///index for the invocation garble probability number
#define INVOCATION_GARBLE_PROB 3

// Spell type signals

// Pointed projectiles
// Sent from /datum/action/cooldown/spell/pointed/projectile/fire_projectile() to the caster: (datum/action/cooldown/spell/spell, atom/cast_on, obj/projectile/to_fire)
#define COMSIG_MOB_SPELL_PROJECTILE "mob_spell_projectile"
/// Sent from /datum/action/cooldown/spell/pointed/projectile/on_cast_hit: (atom/firer, atom/target, atom/hit, angle, hit_limb)
#define COMSIG_SPELL_PROJECTILE_HIT "spell_projectile_hit"

// AOE spells
/// Sent from /datum/action/cooldown/spell/aoe/cast: (list/atoms_affected, atom/caster)
#define COMSIG_SPELL_AOE_ON_CAST "spell_aoe_cast"

// Cone spells
/// Sent from /datum/action/cooldown/spell/cone/cast: (list/atoms_affected, atom/caster)
#define COMSIG_SPELL_CONE_ON_CAST "spell_cone_cast"
/// Sent from /datum/action/cooldown/spell/cone/do_cone_effects: (list/atoms_affected, atom/caster, level)
#define COMSIG_SPELL_CONE_ON_LAYER_EFFECT "spell_cone_cast_effect"

// Touch spells
/// Sent from /datum/action/cooldown/spell/touch/do_hand_hit: (atom/hit, mob/living/carbon/caster, obj/item/melee/touch_attack/hand)
#define COMSIG_SPELL_TOUCH_HAND_HIT "spell_touch_hand_cast"
/// Sent from /datum/action/cooldown/spell/touch/cast: (mob/living/carbon/cast_on)
#define COMSIG_TOUCH_HANDLESS_CAST "spell_touch_handless_cast"
/// Return this to prevent the hand spawning/unspawning
#define COMPONENT_CAST_HANDLESS (1<<0)

// Jaunt Spells
/// Sent from datum/action/cooldown/spell/jaunt/before_cast, before the mob enters jaunting as a pre-check: (datum/action/cooldown/spell/spell)
#define COMSIG_MOB_PRE_JAUNT "spell_mob_pre_jaunt"
#define COMPONENT_BLOCK_JAUNT (1<<0)
/// Sent from datum/action/cooldown/spell/jaunt/enter_jaunt, to the mob jaunting: (obj/effect/dummy/phased_mob/jaunt, datum/action/cooldown/spell/spell)
#define COMSIG_MOB_ENTER_JAUNT "spell_mob_enter_jaunt"
/// Set from /obj/effect/dummy/phased_mob after the mob is ejected from its contents: (obj/effect/dummy/phased_mob/jaunt, mob/living/unjaunter)
#define COMSIG_MOB_EJECTED_FROM_JAUNT "spell_mob_eject_jaunt"
/// Sent from datum/action/cooldown/spell/jaunt/exit_jaunt, after the mob exited jaunt: (datum/action/cooldown/spell/spell)
#define COMSIG_MOB_AFTER_EXIT_JAUNT "spell_mob_after_exit_jaunt"
/// Sent from /obj/effect/dummy/phased_mob/proc/phased_check when moving to the holder object: (/obj/effect/dummy/phased_mob, mob/living/phaser, turf/newloc)
#define COMSIG_MOB_PHASED_CHECK "mob_phased_check"
/// Return this to cancel the phased move
#define COMPONENT_BLOCK_PHASED_MOVE (1 << 0)

/// Sent from/datum/action/cooldown/spell/jaunt/bloodcrawl/slaughter_demon/try_enter_jaunt,
/// to any unconscious / critical mobs being dragged when the jaunter enters blood:
/// (datum/action/cooldown/spell/jaunt/bloodcrawl/crawl, mob/living/jaunter, obj/effect/decal/cleanable/blood)
#define COMSIG_LIVING_BLOOD_CRAWL_PRE_CONSUMED "living_pre_consumed_by_bloodcrawl"
/// Sent from/datum/action/cooldown/spell/jaunt/bloodcrawl/slaughter_demon/consume_victim,
/// to the victim being consumed by the slaughter demon.
/// (datum/action/cooldown/spell/jaunt/bloodcrawl/crawl, mob/living/jaunter)
#define COMSIG_LIVING_BLOOD_CRAWL_CONSUMED "living_consumed_by_bloodcrawl"
/// Return at any point to stop the bloodcrawl "consume" process from continuing.
#define COMPONENT_STOP_CONSUMPTION (1 << 0)

// Signals for specific spells

// Lichdom
/// Sent from /datum/action/cooldown/spell/lichdom/cast(), to the item being imbued: (datum/action/cooldown/spell/spell, mob/user)
#define COMSIG_ITEM_IMBUE_SOUL "item_imbue_soul"
/// Return to stop the cast and prevent the soul imbue
#define COMPONENT_BLOCK_IMBUE (1 << 0)

/// Sent from /datum/action/cooldown/spell/aoe/knock/cast(), to every nearby turf (for connect loc): (datum/action/cooldown/spell/aoe/knock/spell, mob/living/caster)
#define COMSIG_ATOM_MAGICALLY_UNLOCKED "atom_magic_unlock"

// Instant Summons
/// Sent from /datum/action/cooldown/spell/summonitem/cast(), to the item being marked for recall: (datum/action/cooldown/spell/spell, mob/user)
#define COMSIG_ITEM_MARK_RETRIEVAL "item_mark_retrieval"
/// Return to stop the cast and prevent the item from being marked
#define COMPONENT_BLOCK_MARK_RETRIEVAL (1 << 0)
///When an object is retrieved by a magic recall spell. This will apply to all containers, mobs, etc. that are pulled by the spell.
#define COMSIG_MAGIC_RECALL "magic_recall"


// Charge
/// Sent from /datum/action/cooldown/spell/charge/cast(), to the item in hand being charged: (datum/action/cooldown/spell/spell, mob/user)
#define COMSIG_ITEM_MAGICALLY_CHARGED "item_magic_charged"
/// Return if an item was successful recharged
#define COMPONENT_ITEM_CHARGED (1 << 0)
/// Return if the item had a negative side effect occur while recharging
#define COMPONENT_ITEM_BURNT_OUT (1 << 1)
5 changes: 5 additions & 0 deletions code/__DEFINES/is_helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,8 @@ GLOBAL_VAR_INIT(refid_filter, TYPEID(filter(type="angular_blur")))

#define is_cash(A) (istype(A, /obj/item/coin) || istype(A, /obj/item/stack/spacecash))

#define is_door(A) (istype(A, /obj/machinery/door))

#define is_airlock(A) (istype(A, /obj/machinery/door/airlock))

#define is_camera(A) (istype(A, /obj/item/camera))
Expand Down Expand Up @@ -439,3 +441,6 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(

#define is_cargo_shelf(A) (istype(A, /obj/structure/cargo_shelf))
#define is_crate(A) (istype(A, /obj/structure/closet/crate))

#define is_closet(A) (istype(A, /obj/structure/closet))
#define is_secure_closet(A) (istype(A, /obj/structure/closet/secure_closet))
Loading
Loading