Navigation Menu

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-opening of [PORT] Full Heretic Overhaul #8343

Merged
merged 87 commits into from May 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
b576ce3
void path - working
Ivniinvi Mar 18, 2022
0bf9fba
nowitcompiles
Ivniinvi Mar 18, 2022
d21f44f
more things worky
Ivniinvi Mar 19, 2022
a74ab52
morethingswork
Ivniinvi Mar 20, 2022
230317e
prready
Ivniinvi Mar 20, 2022
0137821
kapuwascomplaining
Ivniinvi Mar 20, 2022
900be40
Praying that this resolves conflicts
CydiaLamiales Jan 21, 2023
77ca169
fixes-some-leftover-errors
CydiaLamiales Jan 21, 2023
0db7482
what-newlines-linters-go-away
CydiaLamiales Jan 21, 2023
57ed0b4
will-this-fix
CydiaLamiales Jan 21, 2023
c90607e
icon-update
CydiaLamiales Jan 21, 2023
1f4b105
Merge branch 'master' into hereticstwo
CydiaLamiales Jan 22, 2023
68bb8c8
duplicate-definition-begone
CydiaLamiales Jan 22, 2023
4562498
ipc-heretics-now-become-human-and-rust-grasp-fix
CydiaLamiales Jan 22, 2023
e689afe
several-spell-related-fixes
CydiaLamiales Jan 26, 2023
fac1ae1
Merge branch 'BeeStation:master' into hereticstwo
CydiaLamiales Jan 26, 2023
259475f
adjust-sight-verb-for-raw-prophet
CydiaLamiales Jan 26, 2023
8c36c0b
some-fixes
CydiaLamiales Jan 26, 2023
2e41667
more-mansus-grasp-fixes-woo
CydiaLamiales Jan 27, 2023
692577b
commented-code-removal
CydiaLamiales Jan 27, 2023
419ea5e
tgui-wrap-fix
CydiaLamiales Jan 28, 2023
409ab26
snouts
CydiaLamiales Jan 30, 2023
9d6ea63
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Jan 30, 2023
6fd0690
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Jan 30, 2023
eb6f003
Merge branch 'master' into hereticstwo
CydiaLamiales Feb 1, 2023
b974d80
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Feb 22, 2023
b1c7d2d
Merge branch 'hereticstwo' of https://github.com/CydiaLamiales/BeeSta…
CydiaLamiales Feb 22, 2023
53f5c11
Merge branch 'BeeStation:master' into hereticstwo
CydiaLamiales Feb 24, 2023
9568271
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 7, 2023
dd5979a
removed-void-loop-override
CydiaLamiales Mar 7, 2023
d26113e
removed-a-space
CydiaLamiales Mar 7, 2023
4a54368
removed-snowstorm-define
CydiaLamiales Mar 7, 2023
0ac4d8f
removed-useless-doubled-code
CydiaLamiales Mar 7, 2023
8aa5f15
scrubbed-unnecessary-comment
CydiaLamiales Mar 7, 2023
8fef26b
renamed-eldritch-to-heretic
CydiaLamiales Mar 7, 2023
acf051c
more-eldritch-renaming
CydiaLamiales Mar 7, 2023
cbc0637
another-rename
CydiaLamiales Mar 7, 2023
0ed9b41
oops-forgot-to-rename-this
CydiaLamiales Mar 7, 2023
9697ff8
overlays-work
CydiaLamiales Mar 7, 2023
7c57b2b
reverted-cultdagger-action
CydiaLamiales Mar 7, 2023
0b6fb73
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 10, 2023
5f463a8
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 11, 2023
f502884
515-compat
CydiaLamiales Mar 11, 2023
7e55fe6
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 16, 2023
49e0e20
better-path-names
CydiaLamiales Mar 16, 2023
471297c
sound-null-check
CydiaLamiales Mar 16, 2023
4b5d3d9
corrosion_curse_messages
CydiaLamiales Mar 16, 2023
7957d26
neutralizer-better-text
CydiaLamiales Mar 16, 2023
6daddcb
rune-on-rwall
CydiaLamiales Mar 16, 2023
c153a53
add-line-back
CydiaLamiales Mar 16, 2023
f7e75f7
ipc-revert
CydiaLamiales Mar 16, 2023
bf61f86
wall_runes_restoration
CydiaLamiales Mar 16, 2023
8e66cbc
better_linked_mobs_list
CydiaLamiales Mar 16, 2023
d0bb33a
Update code/modules/antagonists/heretic/heretic_antag.dm
CydiaLamiales Mar 16, 2023
32c9483
so_that_ipc_change_was_necessary
CydiaLamiales Mar 16, 2023
0fe3e8d
Merge branch 'hereticstwo' of https://github.com/CydiaLamiales/BeeSta…
CydiaLamiales Mar 16, 2023
c1c910c
better_forge_objectives_proc_name
CydiaLamiales Mar 16, 2023
04abfbe
one-less-sound
CydiaLamiales Mar 16, 2023
91b6680
better-heretic-comment
CydiaLamiales Mar 16, 2023
a39ec39
raw_prophet_action_instead_of_verb
CydiaLamiales Mar 16, 2023
7dadb67
renaming-from-eldrich-to-heretic
CydiaLamiales Mar 16, 2023
effc8ad
removes_clothing_traits
CydiaLamiales Mar 16, 2023
8b980a5
alternative-mode-rename
CydiaLamiales Mar 16, 2023
4c6d1fc
dissipate-is-back
CydiaLamiales Mar 16, 2023
2ca131e
smol-grasp-buff
CydiaLamiales Mar 17, 2023
3ecb41a
void-runtime-solution
CydiaLamiales Mar 17, 2023
516df7d
sickly-blade-force-bump-from-17-to-24
CydiaLamiales Mar 17, 2023
46f682c
text-for-needing-a-focus-for-casting-spells
CydiaLamiales Mar 17, 2023
0e5b312
removed-the-ability-to-hijack
CydiaLamiales Mar 18, 2023
cd078f5
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 19, 2023
df56b8b
better-influence-generation
CydiaLamiales Mar 24, 2023
2d4f9a5
proper-item-stack-support
CydiaLamiales Mar 24, 2023
9ea0057
legcuff-drop
CydiaLamiales Mar 24, 2023
8984c08
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Mar 27, 2023
2c9876c
damage_flags
CydiaLamiales Mar 27, 2023
d84ca16
focus-rework
CydiaLamiales Mar 27, 2023
df74e38
component-rework
CydiaLamiales Mar 27, 2023
e4a06f5
forgot-about-the-callback-thing
CydiaLamiales Mar 27, 2023
02910ee
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Apr 5, 2023
5c5421c
Merge branch 'master' into hereticstwo
CydiaLamiales Apr 6, 2023
ee5251b
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Apr 15, 2023
23b503d
Merge branch 'hereticstwo' of https://github.com/CydiaLamiales/BeeSta…
CydiaLamiales Apr 15, 2023
299634a
icons-merge_conflict_fix
CydiaLamiales Apr 20, 2023
710695f
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales Apr 20, 2023
5c2018d
adds-the-void-cloak-icons-back
CydiaLamiales Apr 20, 2023
8ac5014
Merge branch 'master' of https://github.com/CydiaLamiales/BeeStation-…
CydiaLamiales May 7, 2023
9c6d068
fixy
CydiaLamiales May 7, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1,454 changes: 1,454 additions & 0 deletions _maps/templates/heretic_sacrifice_template.dmm

Large diffs are not rendered by default.

62 changes: 51 additions & 11 deletions beestation.dme
Expand Up @@ -836,6 +836,7 @@
#include "code\datums\weather\weather_types\floor_is_lava.dm"
#include "code\datums\weather\weather_types\radiation_storm.dm"
#include "code\datums\weather\weather_types\snow_storm.dm"
#include "code\datums\weather\weather_types\void_storm.dm"
#include "code\datums\wires\_wires.dm"
#include "code\datums\wires\airalarm.dm"
#include "code\datums\wires\airlock.dm"
Expand Down Expand Up @@ -1791,16 +1792,6 @@
#include "code\modules\antagonists\devil\sintouched\sintouched.dm"
#include "code\modules\antagonists\devil\true_devil\_true_devil.dm"
#include "code\modules\antagonists\devil\true_devil\inventory.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_antag.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_book.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_effects.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_items.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_knowledge.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_magic.dm"
#include "code\modules\antagonists\eldritch_cult\eldritch_monster_antag.dm"
#include "code\modules\antagonists\eldritch_cult\knowledge\ash_lore.dm"
#include "code\modules\antagonists\eldritch_cult\knowledge\flesh_lore.dm"
#include "code\modules\antagonists\eldritch_cult\knowledge\rust_lore.dm"
#include "code\modules\antagonists\ert\ert.dm"
#include "code\modules\antagonists\fugitive\fugitive.dm"
#include "code\modules\antagonists\fugitive\fugitive_outfits.dm"
Expand All @@ -1814,6 +1805,54 @@
#include "code\modules\antagonists\gang\gang_hud.dm"
#include "code\modules\antagonists\greentext\greentext.dm"
#include "code\modules\antagonists\guardian\guardian.dm"
#include "code\modules\antagonists\heretic\heretic_antag.dm"
#include "code\modules\antagonists\heretic\heretic_focus.dm"
#include "code\modules\antagonists\heretic\heretic_knowledge.dm"
#include "code\modules\antagonists\heretic\heretic_living_heart.dm"
#include "code\modules\antagonists\heretic\heretic_monsters.dm"
#include "code\modules\antagonists\heretic\influences.dm"
#include "code\modules\antagonists\heretic\rust_effect.dm"
#include "code\modules\antagonists\heretic\transmutation_rune.dm"
#include "code\modules\antagonists\heretic\items\crucifix.dm"
#include "code\modules\antagonists\heretic\items\eldritch_flask.dm"
#include "code\modules\antagonists\heretic\items\forbidden_book.dm"
#include "code\modules\antagonists\heretic\items\heretic_armor.dm"
#include "code\modules\antagonists\heretic\items\heretic_blades.dm"
#include "code\modules\antagonists\heretic\items\heretic_necks.dm"
#include "code\modules\antagonists\heretic\items\madness_mask.dm"
#include "code\modules\antagonists\heretic\knowledge\ash_lore.dm"
#include "code\modules\antagonists\heretic\knowledge\flesh_lore.dm"
#include "code\modules\antagonists\heretic\knowledge\general_side.dm"
#include "code\modules\antagonists\heretic\knowledge\rust_lore.dm"
#include "code\modules\antagonists\heretic\knowledge\side_ash_flesh.dm"
#include "code\modules\antagonists\heretic\knowledge\side_flesh_void.dm"
#include "code\modules\antagonists\heretic\knowledge\side_rust_ash.dm"
#include "code\modules\antagonists\heretic\knowledge\side_void_rust.dm"
#include "code\modules\antagonists\heretic\knowledge\starting_lore.dm"
#include "code\modules\antagonists\heretic\knowledge\void_lore.dm"
#include "code\modules\antagonists\heretic\knowledge\sacrifice_knowledge\sacrifice_buff.dm"
#include "code\modules\antagonists\heretic\knowledge\sacrifice_knowledge\sacrifice_knowledge.dm"
#include "code\modules\antagonists\heretic\knowledge\sacrifice_knowledge\sacrifice_map.dm"
#include "code\modules\antagonists\heretic\knowledge\sacrifice_knowledge\sacrifice_moodlets.dm"
#include "code\modules\antagonists\heretic\magic\aggressive_spread.dm"
#include "code\modules\antagonists\heretic\magic\ash_ascension.dm"
#include "code\modules\antagonists\heretic\magic\ash_jaunt.dm"
#include "code\modules\antagonists\heretic\magic\blood_cleave.dm"
#include "code\modules\antagonists\heretic\magic\blood_siphon.dm"
#include "code\modules\antagonists\heretic\magic\eldritch_blind.dm"
#include "code\modules\antagonists\heretic\magic\eldritch_emplosion.dm"
#include "code\modules\antagonists\heretic\magic\eldritch_shapeshift.dm"
#include "code\modules\antagonists\heretic\magic\eldritch_telepathy.dm"
#include "code\modules\antagonists\heretic\magic\flesh_ascension.dm"
#include "code\modules\antagonists\heretic\magic\madness_touch.dm"
#include "code\modules\antagonists\heretic\magic\manse_link.dm"
#include "code\modules\antagonists\heretic\magic\mansus_grasp.dm"
#include "code\modules\antagonists\heretic\magic\nightwatcher_rebirth.dm"
#include "code\modules\antagonists\heretic\magic\rust_wave.dm"
#include "code\modules\antagonists\heretic\magic\void_phase.dm"
#include "code\modules\antagonists\heretic\magic\void_pull.dm"
#include "code\modules\antagonists\heretic\structures\carving_knife.dm"
#include "code\modules\antagonists\heretic\structures\mawed_crucible.dm"
#include "code\modules\antagonists\highlander\highlander.dm"
#include "code\modules\antagonists\hivemind\hivemind.dm"
#include "code\modules\antagonists\hivemind\hivemind_overlays.dm"
Expand Down Expand Up @@ -2781,7 +2820,7 @@
#include "code\modules\mob\living\simple_animal\constructs.dm"
#include "code\modules\mob\living\simple_animal\corpse.dm"
#include "code\modules\mob\living\simple_animal\damage_procs.dm"
#include "code\modules\mob\living\simple_animal\eldritch_demons.dm"
#include "code\modules\mob\living\simple_animal\heretic_monsters.dm"
#include "code\modules\mob\living\simple_animal\kalo.dm"
#include "code\modules\mob\living\simple_animal\parrot.dm"
#include "code\modules\mob\living\simple_animal\shade.dm"
Expand Down Expand Up @@ -3499,6 +3538,7 @@
#include "code\modules\spells\spell_types\blind.dm"
#include "code\modules\spells\spell_types\bloodcrawl.dm"
#include "code\modules\spells\spell_types\charge.dm"
#include "code\modules\spells\spell_types\cluwnecurse.dm"
#include "code\modules\spells\spell_types\cone_spells.dm"
#include "code\modules\spells\spell_types\conjure.dm"
#include "code\modules\spells\spell_types\construct_spells.dm"
Expand Down
24 changes: 20 additions & 4 deletions code/__DEFINES/antagonists.dm
Expand Up @@ -75,12 +75,28 @@
///It is faster as a macro than a proc
#define IS_HERETIC(mob) (mob.mind?.has_antag_datum(/datum/antagonist/heretic))
#define IS_HERETIC_MONSTER(mob) (mob.mind?.has_antag_datum(/datum/antagonist/heretic_monster))
/// Checks if the given mob is either a heretic or a heretic monster.
#define IS_HERETIC_OR_MONSTER(mob) (IS_HERETIC(mob) || IS_HERETIC_MONSTER(mob))

#define PATH_SIDE "Side"
/// Define for the heretic faction applied to heretics and heretic mobs.
#define FACTION_HERETIC "heretics"

// Heretic path defines.
#define HERETIC_PATH_START "Heretic Start Path"
#define HERETIC_PATH_SIDE "Heretic Side Path"
#define HERETIC_PATH_ASH "Heretic Ash Path"
#define HERETIC_PATH_RUST "Heretic Rust Path"
#define HERETIC_PATH_FLESH "Heretic Flesh Path"
#define HERETIC_PATH_VOID "Heretic Void Path"

/// Defines are used in /proc/has_living_heart() to report if the heretic has no heart period, no living heart, or has a living heart.
#define HERETIC_NO_HEART_ORGAN -1
#define HERETIC_NO_LIVING_HEART 0
#define HERETIC_HAS_LIVING_HEART 1

/// A define used in ritual priority for heretics.
#define MAX_KNOWLEDGE_PRIORITY 100

#define PATH_ASH "Ash"
#define PATH_RUST "Rust"
#define PATH_FLESH "Flesh"

/// How much does it cost to reroll strains?
#define BLOB_REROLL_COST 40
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/colors.dm
Expand Up @@ -29,6 +29,7 @@
#define COLOR_HALF_TRANSPARENT_BLACK "#0000007A"
#define COLOR_RED "#FF0000"
#define COLOR_RED_LIGHT "#FF3333"
#define COLOR_DARK_RED "#A50824"
#define COLOR_MAROON "#800000"
#define COLOR_YELLOW "#FFFF00"
#define COLOR_OLIVE "#808000"
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/configuration.dm
Expand Up @@ -47,6 +47,7 @@
#define TARGET_GIMMICK_OBJ_FILE "[STRING_DIRECTORY]/target_gimmick_objectives.txt"
#define SPLASH_DESC_FILE "splash.json"
#define MEDIEVAL_SPEECH_FILE "medieval_speech.json"
#define HERETIC_INFLUENCE_FILE "heretic_influences.json"

/// Force the log directory to be something specific in the data/logs folder
#define OVERRIDE_LOG_DIRECTORY_PARAMETER "log-directory"
Expand Down
15 changes: 14 additions & 1 deletion code/__DEFINES/dcs/signals/signals_mob/signals_human.dm
Expand Up @@ -9,4 +9,17 @@
#define COMSIG_HUMAN_ATTACKED "carbon_attacked" //hit by something that checks shields.

//Heretics stuff
#define COMSIG_HUMAN_VOID_MASK_ACT "void_mask_act"
#define COMSIG_HERETIC_MASK_ACT "void_mask_act"
/// From /obj/item/melee/touch_attack/mansus_fist/on_mob_hit : (mob/living/source, mob/living/target)
#define COMSIG_HERETIC_MANSUS_GRASP_ATTACK "mansus_grasp_attack"
/// Default behavior is to use a charge, so return this to blocks the mansus fist from being consumed after use.
#define COMPONENT_BLOCK_CHARGE_USE (1<<0)

/// From /obj/item/melee/sickly_blade/afterattack (with proximity) : (mob/living/source, mob/living/target)
#define COMSIG_HERETIC_BLADE_ATTACK "blade_attack"
/// From /obj/item/melee/sickly_blade/afterattack (without proximity) : (mob/living/source, mob/living/target)
#define COMSIG_HERETIC_RANGED_BLADE_ATTACK "ranged_blade_attack"
///called from /obj/effect/proc_holder/spell/cast_check (src)
#define COMSIG_MOB_PRE_CAST_SPELL "mob_cast_spell"
/// Return to cancel the cast from beginning.
#define COMPONENT_CANCEL_SPELL (1<<0)
2 changes: 2 additions & 0 deletions code/__DEFINES/is_helpers.dm
Expand Up @@ -230,6 +230,8 @@ GLOBAL_LIST_INIT(heavyfootmob, typecacheof(list(

#define isitem(A) (istype(A, /obj/item))

#define isstack(A) (istype(A, /obj/item/stack))

#define isgrenade(A) (istype(A, /obj/item/grenade))

#define islandmine(A) (istype(A, /obj/effect/mine))
Expand Down
4 changes: 2 additions & 2 deletions code/__DEFINES/maps.dm
Expand Up @@ -60,7 +60,7 @@ require only minor tweaks.
// boolean - weather types that occur on the level
#define ZTRAIT_ASHSTORM "Weather_Ashstorm"
#define ZTRAIT_ACIDRAIN "Weather_Acidrain"

#define ZTRAIT_VOIDSTORM "Weather_Voidstorm"
/// number - bombcap is multiplied by this before being applied to bombs
#define ZTRAIT_BOMBCAP_MULTIPLIER "Bombcap Multiplier"

Expand Down Expand Up @@ -89,9 +89,9 @@ require only minor tweaks.
#define ZTRAITS_SPACE list(ZTRAIT_LINKAGE = SELFLOOPING, ZTRAIT_DYNAMIC_LEVEL = TRUE)
#define ZTRAITS_LAVALAND list(\
ZTRAIT_MINING = TRUE, \
ZTRAIT_ASHSTORM = TRUE, \
ZTRAIT_LAVA_RUINS = TRUE, \
ZTRAIT_BOMBCAP_MULTIPLIER = 2, \
ZTRAIT_ASHSTORM = TRUE, \
ZTRAIT_BASETURF = /turf/open/lava/smooth/lava_land_surface)
#define ZTRAITS_REEBE list(ZTRAIT_REEBE = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 0.5)
#define DL_NAME "name"
Expand Down
2 changes: 2 additions & 0 deletions code/__DEFINES/obj_flags.dm
Expand Up @@ -34,6 +34,7 @@
#define NO_PIXEL_RANDOM_DROP (1<<13) //if dropped, it wont have a randomized pixel_x/pixel_y
#define WAS_THROWN (1<<14) //if the item was thrown and shouldn't have the drop_item animation applied
#define ISWEAPON (1<<15) //! If this item should hit living mobs when used on harm intent
#define EXAMINE_SKIP (1<<16) //! Examine will not read out this item

// Flags for the clothing_flags var on /obj/item/clothing

Expand Down Expand Up @@ -61,6 +62,7 @@
#define ORGAN_EXTERNAL (1<<3) //Was this organ implanted/inserted/etc, if true will not be removed during species change.
#define ORGAN_VITAL (1<<4) //Currently only the brain
#define ORGAN_EDIBLE (1<<5) //is a snack? :D
#define ORGAN_UNREMOVABLE (1<<6) //Can't be removed using surgery

/// Flags for the pod_flags var on /obj/structure/closet/supplypod

Expand Down
7 changes: 7 additions & 0 deletions code/__DEFINES/traits.dm
Expand Up @@ -267,6 +267,13 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai

#define TRAIT_AI_BAGATTACK "bagattack" // This atom can ignore the "is on a turf" check for simple AI datum attacks, allowing them to attack from bags or lockers as long as any other conditions are met

/// Allows heretics to cast their spells.
#define TRAIT_ALLOW_HERETIC_CASTING "allow_heretic_casting"
/// Designates a heart as a living heart for a heretic.
#define TRAIT_LIVING_HEART "living_heart"
/// Prevents stripping this equipment
#define TRAIT_NO_STRIP "no_strip"

//quirk traits
#define TRAIT_ALCOHOL_TOLERANCE "alcohol_tolerance"
#define TRAIT_AGEUSIA "ageusia"
Expand Down
3 changes: 3 additions & 0 deletions code/__HELPERS/cmp.dm
Expand Up @@ -136,3 +136,6 @@ GLOBAL_VAR_INIT(cmp_field, "name")

/proc/cmp_mob_realname_dsc(mob/A,mob/B)
return sorttext(A.real_name,B.real_name)

/proc/cmp_heretic_knowledge(datum/heretic_knowledge/knowledge_a, datum/heretic_knowledge/knowledge_b)
return initial(knowledge_b.priority) - initial(knowledge_a.priority)
2 changes: 1 addition & 1 deletion code/_onclick/item_attack.dm
Expand Up @@ -147,7 +147,7 @@
// Click parameters is the params string from byond Click() code, see that documentation.
/obj/item/proc/afterattack(atom/target, mob/user, proximity_flag, click_parameters)
SEND_SIGNAL(src, COMSIG_ITEM_AFTERATTACK, target, user, proximity_flag, click_parameters)
SEND_SIGNAL(user, COMSIG_MOB_ITEM_AFTERATTACK, target, user, proximity_flag, click_parameters)
SEND_SIGNAL(user, COMSIG_MOB_ITEM_AFTERATTACK, target, src, proximity_flag, click_parameters)
itsmeow marked this conversation as resolved.
Show resolved Hide resolved


/obj/item/proc/get_clamped_volume()
Expand Down
2 changes: 1 addition & 1 deletion code/datums/components/mood.dm
Expand Up @@ -25,7 +25,7 @@
RegisterSignal(parent, COMSIG_MOVABLE_ENTERED_AREA, PROC_REF(check_area_mood))

RegisterSignal(parent, COMSIG_MOB_HUD_CREATED, PROC_REF(modify_hud))
RegisterSignal(parent, COMSIG_HUMAN_VOID_MASK_ACT, PROC_REF(direct_sanity_drain))
RegisterSignal(parent, COMSIG_HERETIC_MASK_ACT, PROC_REF(direct_sanity_drain))
var/mob/living/owner = parent
if(owner.hud_used)
modify_hud()
Expand Down
9 changes: 9 additions & 0 deletions code/datums/components/storage/concrete/pockets.dm
Expand Up @@ -108,3 +108,12 @@
/obj/item/reagent_containers/food/drinks/bottle/molotov,
/obj/item/reagent_containers/food/drinks/drinkingglass,
/obj/item/ammo_box/a762))

/datum/component/storage/concrete/pockets/void_cloak
quickdraw = TRUE
max_items = 3

/datum/component/storage/concrete/pockets/void_cloak/Initialize()
. = ..()
var/static/list/exception_cache = typecacheof(list(/obj/item/clothing/neck/heretic_focus,/obj/item/codex_cicatrix))
exception_hold = exception_cache
5 changes: 4 additions & 1 deletion code/datums/elements/strippable.dm
Expand Up @@ -163,6 +163,9 @@
if(isnull(item))
return FALSE

if(HAS_TRAIT(item, TRAIT_NO_STRIP))
return FALSE

source.visible_message(
"<span class='warning'>[user] tries to remove [source]'s [item.name].</span>",
"<span class='userdanger'>[user] tries to remove your [item.name].</span>",
Expand Down Expand Up @@ -380,7 +383,7 @@
continue

var/obj/item/item = item_data.get_item(owner)
if(isnull(item))
if(isnull(item) || (HAS_TRAIT(item, TRAIT_NO_STRIP)))
items[strippable_key] = result
continue

Expand Down
6 changes: 6 additions & 0 deletions code/datums/looping_sounds/weather.dm
Expand Up @@ -45,3 +45,9 @@
start_length = 130
end_sound = 'sound/weather/ashstorm/inside/weak_end.ogg'
volume = 30

/datum/looping_sound/void_loop
mid_sounds = list('sound/ambience/VoidsEmbrace.ogg'=1)
mid_length = 1669 // exact length of the music in ticks
volume = 100
extra_range = 30
4 changes: 4 additions & 0 deletions code/datums/mutations/touch.dm
Expand Up @@ -35,15 +35,19 @@
C.dropItemToGround(C.get_inactive_held_item())
C.confused += 15
C.visible_message("<span class='danger'>[user] electrocutes [target]!</span>","<span class='userdanger'>[user] electrocutes you!</span>")
use_charge(user)
itsmeow marked this conversation as resolved.
Show resolved Hide resolved
return ..()
else
user.visible_message("<span class='warning'>[user] fails to electrocute [target]!</span>")
use_charge(user)
itsmeow marked this conversation as resolved.
Show resolved Hide resolved
return ..()
else if(isliving(target))
var/mob/living/L = target
L.electrocute_act(15, user, 1, FALSE, FALSE, FALSE, FALSE)
L.visible_message("<span class='danger'>[user] electrocutes [target]!</span>","<span class='userdanger'>[user] electrocutes you!</span>")
use_charge(user)
return ..()
else
to_chat(user,"<span class='warning'>The electricity doesn't seem to affect [target]...</span>")
use_charge(user)
return ..()
2 changes: 0 additions & 2 deletions code/datums/soullink.dm
Expand Up @@ -19,8 +19,6 @@
sharedSoullinks = null
return ..()



//Keeps track of a Mob->Mob (potentially Player->Player) connection
//Can be used to trigger actions on one party when events happen to another
//Eg: shared deaths
Expand Down
47 changes: 47 additions & 0 deletions code/datums/status_effects/buffs.dm
Expand Up @@ -605,3 +605,50 @@
/datum/status_effect/antimagic/on_remove()
REMOVE_TRAIT(owner, TRAIT_ANTIMAGIC, MAGIC_TRAIT)
owner.visible_message("<span class='warning'>[owner]'s dull aura fades away...</span>")

/datum/status_effect/crucible_soul
id = "Blessing of Crucible Soul"
status_type = STATUS_EFFECT_REFRESH
duration = 15 SECONDS
examine_text = "<span class='notice'>They don't seem to be all here.</span>"
alert_type = /atom/movable/screen/alert/status_effect/crucible_soul
var/turf/location

/datum/status_effect/crucible_soul/on_apply()
to_chat(owner,"<span class='notice'>You phase through reality, nothing is out of bounds!</span>")
owner.alpha = 180
owner.pass_flags |= PASSCLOSEDTURF | PASSTRANSPARENT | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB
location = get_turf(owner)
return TRUE

/datum/status_effect/crucible_soul/on_remove()
to_chat(owner,"<span class='notice'>You regain your physicality, returning you to your original location...</span>")
owner.alpha = initial(owner.alpha)
owner.pass_flags &= ~(PASSCLOSEDTURF | PASSTRANSPARENT | PASSGRILLE | PASSMACHINE | PASSSTRUCTURE | PASSTABLE | PASSMOB)
owner.forceMove(location)
location = null

/datum/status_effect/duskndawn
id = "Blessing of Dusk and Dawn"
status_type = STATUS_EFFECT_REFRESH
duration = 60 SECONDS
alert_type =/atom/movable/screen/alert/status_effect/duskndawn

/datum/status_effect/duskndawn/on_apply()
ADD_TRAIT(owner,TRAIT_XRAY_VISION,type)
owner.update_sight()
return TRUE

/datum/status_effect/duskndawn/on_remove()
REMOVE_TRAIT(owner,TRAIT_XRAY_VISION,type)
owner.update_sight()

/atom/movable/screen/alert/status_effect/crucible_soul
name = "Blessing of Crucible Soul"
desc = "You phased through reality. You are halfway to your final destination..."
icon_state = "crucible"

/atom/movable/screen/alert/status_effect/duskndawn
name = "Blessing of Dusk and Dawn"
desc = "Many things hide beyond the horizon. With Owl's help I managed to slip past Sun's guard and Moon's watch."
icon_state = "duskndawn"