Skip to content

Commit

Permalink
[MoM] Feral telekinetics can't throw you with telekinesis if you have…
Browse files Browse the repository at this point in the history
… Inertial Barrier up and vice versa (CleverRaven#72874)

* Initial commit

* Kick tests
  • Loading branch information
Standing-Storm authored Apr 7, 2024
1 parent 70ef397 commit ef0aebc
Show file tree
Hide file tree
Showing 6 changed files with 44 additions and 14 deletions.
8 changes: 8 additions & 0 deletions data/mods/MindOverMatter/effects/effects_items.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,5 +39,13 @@
"desc": [ "" ],
"removes_effects": [ "psi_blind", "psi_deaf", "effect_telepathic_primal_terror", "psi_dazed" ],
"flags": [ "PSYSHIELD_PROTECT" ]
},
{
"id": "effect_shield_belt_telekin_protection",
"type": "effect_type",
"//": "Blank to hide effect",
"name": [ "" ],
"desc": [ "" ],
"flags": [ "TELEKIN_SHIELD" ]
}
]
20 changes: 18 additions & 2 deletions data/mods/MindOverMatter/items/armor/belt.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,22 @@
"volume_encumber_modifier": 0.35
}
],
"relic_data": { "charge_info": { "recharge_type": "periodic", "time": "60 s", "regenerate_ammo": true } },
"relic_data": {
"passive_effects": [
{
"has": "WORN",
"condition": "ACTIVE",
"ench_effects": [ { "effect": "effect_shield_belt_telekin_protection", "intensity": 1 } ],
"values": [
{ "value": "ARMOR_CUT", "add": -15 },
{ "value": "ARMOR_BASH", "add": -8 },
{ "value": "ARMOR_STAB", "add": -20 },
{ "value": "ARMOR_BULLET", "add": -40 }
]
}
],
"charge_info": { "recharge_type": "periodic", "time": "60 s", "regenerate_ammo": true }
},
"//": "Recharge time is 60 seconds due to bug #48019, making it actually 30 seconds. Reduce to 30 seconds if that ever gets fixed."
},
{
Expand All @@ -60,7 +75,8 @@
"passive_effects": [
{
"has": "WORN",
"condition": "ALWAYS",
"condition": "ACTIVE",
"ench_effects": [ { "effect": "effect_shield_belt_telekin_protection", "intensity": 1 } ],
"values": [
{ "value": "ARMOR_CUT", "add": -15 },
{ "value": "ARMOR_BASH", "add": -8 },
Expand Down
4 changes: 2 additions & 2 deletions data/mods/MindOverMatter/monsters/feral_lab_psychics.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"default_faction": "science",
"looks_like": "chud",
"bodytype": "human",
"species": [ "FERAL" ],
"species": [ "FERAL", "TELEKIN_PUSHPULL_NULL" ],
"volume": "62500 ml",
"weight": "81500 g",
"hp": 85,
Expand Down Expand Up @@ -83,7 +83,7 @@
"uncanny_dodgeable": true,
"blockable": false,
"effects_require_dmg": false,
"condition": { "not": { "u_has_effect": "effect_psi_null" } },
"condition": { "and": [ { "not": { "u_has_effect": "effect_psi_null" } }, { "not": { "npc_has_flag": "TELEKIN_SHIELD" } } ] },
"hit_dmg_u": "%1$s stares at you and a powerful force hurls you through the air!",
"hit_dmg_npc": "%1$s stares at <npcname> and a powerful force hurls them through the air!",
"miss_msg_u": "%s stares at you, and you feel a crushing pressure for a moment before the feeling vanishes!",
Expand Down
12 changes: 6 additions & 6 deletions data/mods/MindOverMatter/monsters/feral_psychics.json
Original file line number Diff line number Diff line change
Expand Up @@ -1129,7 +1129,7 @@
"default_faction": "zombie",
"looks_like": "chud",
"bodytype": "human",
"species": [ "FERAL" ],
"species": [ "FERAL", "TELEKIN_PUSHPULL_NULL" ],
"volume": "62500 ml",
"weight": "81500 g",
"hp": 84,
Expand Down Expand Up @@ -1166,7 +1166,7 @@
"type": "spell",
"spell_data": { "id": "telekinetic_pull_monster", "min_level": 2 },
"cooldown": 15,
"condition": { "not": { "u_has_effect": "effect_psi_null" } },
"condition": { "and": [ { "not": { "u_has_effect": "effect_psi_null" } }, { "not": { "npc_has_flag": "TELEKIN_SHIELD" } } ] },
"monster_message": "%1$s stares at %3$s and %3$s is lifted up and pulled towards them!"
},
{
Expand Down Expand Up @@ -1195,7 +1195,7 @@
"uncanny_dodgeable": true,
"blockable": false,
"effects_require_dmg": false,
"condition": { "not": { "u_has_effect": "effect_psi_null" } },
"condition": { "and": [ { "not": { "u_has_effect": "effect_psi_null" } }, { "not": { "npc_has_flag": "TELEKIN_SHIELD" } } ] },
"hit_dmg_u": "%1$s stares at you and a powerful force hurls you through the air!",
"hit_dmg_npc": "%1$s stares at <npcname> and a powerful force hurls them through the air!",
"miss_msg_u": "%s stares at you, and you feel a crushing pressure for a moment before the feeling vanishes!",
Expand Down Expand Up @@ -1227,7 +1227,7 @@
"default_faction": "zombie",
"looks_like": "chud",
"bodytype": "human",
"species": [ "FERAL" ],
"species": [ "FERAL", "TELEKIN_PUSHPULL_NULL" ],
"volume": "62500 ml",
"weight": "81500 g",
"hp": 84,
Expand Down Expand Up @@ -1263,7 +1263,7 @@
"type": "spell",
"spell_data": { "id": "telekinetic_pull_monster", "min_level": 3 },
"cooldown": 10,
"condition": { "not": { "u_has_effect": "effect_psi_null" } },
"condition": { "and": [ { "not": { "u_has_effect": "effect_psi_null" } }, { "not": { "npc_has_flag": "TELEKIN_SHIELD" } } ] },
"monster_message": "%1$s stares at %3$s and %3$s is lifted up and pulled towards them!"
},
{
Expand Down Expand Up @@ -1296,7 +1296,7 @@
"dodgeable": false,
"uncanny_dodgeable": true,
"blockable": false,
"condition": { "not": { "u_has_effect": "effect_psi_null" } },
"condition": { "and": [ { "not": { "u_has_effect": "effect_psi_null" } }, { "not": { "npc_has_flag": "TELEKIN_SHIELD" } } ] },
"hit_dmg_u": "%1$s stares at you and a powerful force hurls you through the air!",
"hit_dmg_npc": "%1$s stares at <npcname> and a powerful force hurls them through the air!",
"miss_msg_u": "%s stares at you, and you feel a crushing pressure for a moment before the feeling vanishes!",
Expand Down
6 changes: 6 additions & 0 deletions data/mods/MindOverMatter/monsters/species_new.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
"description": "a being immune to psionics",
"//": "This is an extra species to attach to any monster that is supposed to be immune to psionics--it will prevent them from being targeted by psionic powers. If the monster is supposed to be fully immune, they will still need appropriate monster flags or armor against psionic damage types to prevent them from being caught in the AoE of powers targeted elsewhere."
},
{
"type": "SPECIES",
"id": "TELEKIN_PUSHPULL_NULL",
"description": "a being immune to being thrown telekinetically",
"//": "This is an extra species to attach to any monster that is supposed to be immune to telekinetic push or pull. Immunity to telekinetic damage is handled by flags."
},
{
"type": "SPECIES",
"id": "YRAX_CONSTRUCT",
Expand Down
8 changes: 4 additions & 4 deletions data/mods/MindOverMatter/powers/telekinesis.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
"base_casting_time": 50,
"final_casting_time": 10,
"casting_time_increment": -4,
"ignored_monster_species": [ "PSI_NULL" ]
"ignored_monster_species": [ "PSI_NULL", "TELEKIN_PUSHPULL_NULL" ]
},
{
"id": "telekinetic_push",
Expand Down Expand Up @@ -79,7 +79,7 @@
"base_casting_time": 50,
"final_casting_time": 10,
"casting_time_increment": -4,
"ignored_monster_species": [ "PSI_NULL" ]
"ignored_monster_species": [ "PSI_NULL", "TELEKIN_PUSHPULL_NULL" ]
},
{
"id": "telekinetic_noise",
Expand Down Expand Up @@ -172,7 +172,7 @@
"base_casting_time": 75,
"final_casting_time": 30,
"casting_time_increment": -3,
"ignored_monster_species": [ "PSI_NULL" ]
"ignored_monster_species": [ "PSI_NULL", "TELEKIN_PUSHPULL_NULL" ]
},
{
"id": "telekinetic_momentum",
Expand Down Expand Up @@ -313,7 +313,7 @@
},
"min_range": 1,
"max_range": 1,
"ignored_monster_species": [ "PSI_NULL" ]
"ignored_monster_species": [ "PSI_NULL", "TELEKIN_PUSHPULL_NULL" ]
},
{
"id": "telekinetic_strength",
Expand Down

0 comments on commit ef0aebc

Please sign in to comment.