diff --git a/data/mods/MindOverMatter/PowerDescriptionSpoilers.md b/data/mods/MindOverMatter/PowerDescriptionSpoilers.md index abc172fed16f9..cf97353ec0732 100644 --- a/data/mods/MindOverMatter/PowerDescriptionSpoilers.md +++ b/data/mods/MindOverMatter/PowerDescriptionSpoilers.md @@ -1516,7 +1516,7 @@ Powers causing telepathic damage have a 5% chance to down the target, a 33% chan *Duration*: Instant
*Stamina Cost*: 10000, minus 200 per level to a minimum of 6000
*Channeling Time*: 200 moves, minus 5.5 moves per level to a minimum of 75. Attunement takes 8 hours, minus 20 minutes per power level of Gateway to a minimum of 30 minutes
-*Effects*: Transport yourself through the Nether to an attuned location. This power works at any distance. You may have a number of destinations simultaneously equal to 1 + 1 per 3 levels of Gateway (2.5 levels if you have the Good Memory trait, 4 levels if you have the Forgetful trait).
+*Effects*: Transport yourself through the Nether to an attuned location. This power works at any distance. You may have a number of destinations simultaneously equal to 1 + 1 per 3 levels of Gateway (2.5 levels if you have the Good Memory trait, 4 levels if you have the Forgetful trait). You can always teleport yourself, and can carry 10L of gear, plus 7.5L per power level.
*Prerequisites*: Farstep 10, Loci Establishment 6
diff --git a/data/mods/MindOverMatter/powers/teleportation_eoc.json b/data/mods/MindOverMatter/powers/teleportation_eoc.json index 23304135b2a2f..639f6febb29a5 100644 --- a/data/mods/MindOverMatter/powers/teleportation_eoc.json +++ b/data/mods/MindOverMatter/powers/teleportation_eoc.json @@ -1,4 +1,21 @@ [ + { + "type": "effect_on_condition", + "id": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER", + "effect": [ + { "math": [ "u_teleport_total_carried_volume = 0" ] }, + { + "u_run_inv_eocs": "all", + "search_data": [ { "condition": { "math": [ "n_volume() > 0" ] } } ], + "true_eocs": [ + { + "id": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER_ADD_VOLUME", + "effect": [ { "math": [ "u_teleport_total_carried_volume", "+=", "n_volume()" ] } ] + } + ] + } + ] + }, { "type": "effect_on_condition", "id": "EOC_TELEPORT_ITEM_APPORT", @@ -231,6 +248,16 @@ } ] }, + { + "type": "effect_on_condition", + "id": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH", + "effect": [ + { + "u_message": "You attempt to teleport to your destination, but your skin merely tingles and nothing happens. You're carrying too much.", + "type": "bad" + } + ] + }, { "type": "effect_on_condition", "id": "EOC_TELEPORTER_ATTUNING_MESSAGE", @@ -252,7 +279,24 @@ { "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_SELECTOR", + "condition": { + "and": [ + { "not": { "u_has_worn_with_flag": "DIMENSIONAL_ANCHOR" } }, + { "not": { "u_has_flag": "DIMENSIONAL_ANCHOR" } }, + { "not": { "u_has_flag": "TELEPORT_LOCK" } } + ] + }, "effect": [ + { "run_eocs": "EOC_TELEPORT_SELF_CARRIED_VOLUME_CHECKER" }, + { + "if": { + "math": [ + "u_teleport_total_carried_volume <= ( ( ( u_spell_level('teleport_gateway') * 7500 ) + 10000 ) * scaling_factor( u_val('intelligence') ) * u_nether_attunement_power_scaling )" + ] + }, + "then": [ { "math": [ "u_teleport_total_carried_volume = 1" ] } ], + "else": [ { "math": [ "u_teleport_total_carried_volume = -1" ] } ] + }, { "run_eoc_selector": [ "EOC_TELEPORT_GATEWAY_SELECTOR_01", @@ -294,7 +338,8 @@ "hide_failing": true, "allow_cancel": true } - ] + ], + "false_effect": [ { "u_message": "You feel a strange, inward force.", "type": "bad" } ] }, { "type": "effect_on_condition", @@ -327,7 +372,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_01", "condition": { "math": [ "has_var(u_gateway_destination_1)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_1" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_1" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -386,7 +437,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_02", "condition": { "math": [ "has_var(u_gateway_destination_2)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_2" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_2" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -445,7 +502,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_03", "condition": { "math": [ "has_var(u_gateway_destination_3)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_3" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_3" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -504,7 +567,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_04", "condition": { "math": [ "has_var(u_gateway_destination_4)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_4" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_4" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -563,7 +632,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_05", "condition": { "math": [ "has_var(u_gateway_destination_5)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_5" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_5" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -622,7 +697,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_06", "condition": { "math": [ "has_var(u_gateway_destination_6)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_6" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_6" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -681,7 +762,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_07", "condition": { "math": [ "has_var(u_gateway_destination_7)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_7" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_7" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -740,7 +827,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_08", "condition": { "math": [ "has_var(u_gateway_destination_8)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_8" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_8" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -799,7 +892,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_09", "condition": { "math": [ "has_var(u_gateway_destination_9)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_9" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_9" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition", @@ -858,7 +957,13 @@ "type": "effect_on_condition", "id": "EOC_TELEPORT_GATEWAY_TELEPORT_10", "condition": { "math": [ "has_var(u_gateway_destination_10)" ] }, - "effect": [ { "u_teleport": { "u_val": "gateway_destination_10" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ] + "effect": [ + { + "if": { "math": [ "u_teleport_total_carried_volume >= 0" ] }, + "then": [ { "u_teleport": { "u_val": "gateway_destination_10" } }, { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE" } ], + "else": [ { "run_eocs": "EOC_TELEPORTER_GATEWAY_MESSAGE_CARRYING_TOO_MUCH" } ] + } + ] }, { "type": "effect_on_condition",