diff --git a/data/mods/Magiclysm/effect_on_conditions/miscellaneous.json b/data/mods/Magiclysm/effect_on_conditions/miscellaneous.json new file mode 100644 index 0000000000000..eb12b0b98df65 --- /dev/null +++ b/data/mods/Magiclysm/effect_on_conditions/miscellaneous.json @@ -0,0 +1,16 @@ +[ + { + "type": "effect_on_condition", + "id": "EOC_STARE", + "condition": { "or": [ { "u_has_worn_with_flag": "DIMENSIONAL_ANCHOR" }, { "npc_has_flag": "DIMENSIONAL_ANCHOR" } ] }, + "effect": { "u_message": "You feel a strange reverberation across your body.", "type": "warning" }, + "false_effect": { "run_eocs": [ "EOC_STARE1" ] } + }, + { + "type": "effect_on_condition", + "id": "EOC_STARE1", + "condition": { "u_has_worn_with_flag": "MAGICAL_MIND_PROTECTION" }, + "effect": { "u_message": "You sense trying to enter your mind, but your magic protects you!", "type": "warning" }, + "false_effect": { "run_eocs": [ "EOC_STARE2" ] } + } +] diff --git a/data/mods/Magiclysm/effects/effects.json b/data/mods/Magiclysm/effects/effects.json index 834c0318b5155..a3b08158fff4a 100644 --- a/data/mods/Magiclysm/effects/effects.json +++ b/data/mods/Magiclysm/effects/effects.json @@ -1614,7 +1614,8 @@ { "u_remove_item_with": "magic_lamp" }, { "u_remove_item_with": "technomancer_summoned_radio" }, { "u_remove_item_with": "technomancer_welder" }, - { "u_remove_item_with": "technomancer_far_sight_lens" } + { "u_remove_item_with": "technomancer_far_sight_lens" }, + { "u_remove_item_with": "thought_shield_item" } ] }, { @@ -1779,7 +1780,9 @@ { "u_remove_item_with": "force_magical_armor" }, { "u_remove_item_with": "subzero_talons" }, { "u_remove_item_with": "aura_cold_energy" }, - { "u_remove_item_with": "pocket_sun" } + { "u_remove_item_with": "pocket_sun" }, + { "u_remove_item_with": "thought_shield_item" }, + { "u_remove_item_with": "thought_shield_plus_item" } ] }, { diff --git a/data/mods/Magiclysm/flags.json b/data/mods/Magiclysm/flags.json new file mode 100644 index 0000000000000..7423f7e96ab80 --- /dev/null +++ b/data/mods/Magiclysm/flags.json @@ -0,0 +1,7 @@ +[ + { + "id": "MAGICAL_MIND_PROTECTION", + "type": "json_flag", + "info": "Your magic protects your mind against assault." + } +] diff --git a/data/mods/Magiclysm/items/ethereal_items.json b/data/mods/Magiclysm/items/ethereal_items.json index 3e859e5dfafcf..d777fba7affba 100644 --- a/data/mods/Magiclysm/items/ethereal_items.json +++ b/data/mods/Magiclysm/items/ethereal_items.json @@ -1235,7 +1235,8 @@ "TRADER_AVOID", "PSYSHIELD_PARTIAL", "UNBREAKABLE", - "ALLOWS_NATURAL_ATTACKS" + "ALLOWS_NATURAL_ATTACKS", + "MAGICAL_MIND_PROTECTION" ] }, { @@ -1270,7 +1271,8 @@ "PSYSHIELD_PARTIAL", "PORTAL_PROOF", "UNBREAKABLE", - "ALLOWS_NATURAL_ATTACKS" + "ALLOWS_NATURAL_ATTACKS", + "MAGICAL_MIND_PROTECTION" ] }, { diff --git a/data/mods/MindOverMatter/effectoncondition/eoc_misc.json b/data/mods/MindOverMatter/effectoncondition/eoc_misc.json index e1c99e15c47c2..0b64dd59dedd7 100644 --- a/data/mods/MindOverMatter/effectoncondition/eoc_misc.json +++ b/data/mods/MindOverMatter/effectoncondition/eoc_misc.json @@ -258,8 +258,8 @@ { "type": "effect_on_condition", "id": "EOC_STARE1", - "condition": { "u_has_effect": "effect_telepathic_psi_armor" }, - "effect": { "u_message": "You sense trying to enter your mind, but you repel!", "type": "warning" }, + "condition": { "or": [ { "u_has_effect": "effect_telepathic_psi_armor" }, { "u_has_flag": "TEEPSHIELD" } ] }, + "effect": { "u_message": "You sense trying to enter your mind, but you repel it!", "type": "warning" }, "false_effect": { "run_eocs": [ "EOC_STARE2" ] } }, { diff --git a/data/mods/MindOverMatter/mod_interactions/magiclysm/effects.json b/data/mods/MindOverMatter/mod_interactions/magiclysm/effects.json new file mode 100644 index 0000000000000..8155eebc9824d --- /dev/null +++ b/data/mods/MindOverMatter/mod_interactions/magiclysm/effects.json @@ -0,0 +1,11 @@ +[ + { + "type": "effect_type", + "id": "effect_item_mind_protection", + "//": "Hidden effect, used as an item buff", + "name": [ "" ], + "desc": [ "" ], + "rating": "good", + "flags": [ "TEEPSHIELD" ] + } +] diff --git a/data/mods/MindOverMatter/mod_interactions/magiclysm/eoc_misc.json b/data/mods/MindOverMatter/mod_interactions/magiclysm/eoc_misc.json new file mode 100644 index 0000000000000..c9949957d61be --- /dev/null +++ b/data/mods/MindOverMatter/mod_interactions/magiclysm/eoc_misc.json @@ -0,0 +1,16 @@ +[ + { + "type": "effect_on_condition", + "id": "EOC_STARE1", + "condition": { "u_has_worn_with_flag": "MAGICAL_MIND_PROTECTION" }, + "effect": { "u_message": "You sense trying to enter your mind, but your magic protects you!", "type": "warning" }, + "false_effect": { "run_eocs": [ "EOC_STARE1_5" ] } + }, + { + "type": "effect_on_condition", + "id": "EOC_STARE1_5", + "condition": { "or": [ { "u_has_effect": "effect_telepathic_psi_armor" }, { "u_has_flag": "TEEPSHIELD" } ] }, + "effect": { "u_message": "You sense trying to enter your mind, but you repel it!", "type": "warning" }, + "false_effect": { "run_eocs": [ "EOC_STARE2" ] } + } +] diff --git a/data/mods/MindOverMatter/mod_interactions/magiclysm/item_overrides.json b/data/mods/MindOverMatter/mod_interactions/magiclysm/item_overrides.json new file mode 100644 index 0000000000000..7da394a225857 --- /dev/null +++ b/data/mods/MindOverMatter/mod_interactions/magiclysm/item_overrides.json @@ -0,0 +1,32 @@ +[ + { + "id": "thought_shield_item", + "name": { "str_sp": "thought shields" }, + "type": "TOOL_ARMOR", + "copy-from": "thought_shield_item", + "relic_data": { + "passive_effects": [ + { + "has": "WORN", + "condition": "ALWAYS", + "ench_effects": [ { "effect": "effect_item_mind_protection", "intensity": 1 } ] + } + ] + } + }, + { + "id": "thought_shield_plus_item", + "name": { "str_sp": "thought suit" }, + "type": "TOOL_ARMOR", + "copy-from": "thought_shield_plus_item", + "relic_data": { + "passive_effects": [ + { + "has": "WORN", + "condition": "ALWAYS", + "ench_effects": [ { "effect": "effect_item_mind_protection", "intensity": 1 } ] + } + ] + } + } +]