From 25bb0998d9ddae5f0dd352ac95686e955bb82899 Mon Sep 17 00:00:00 2001 From: John-Candlebury Date: Sun, 18 Aug 2024 10:11:52 -0600 Subject: [PATCH] Isolation Protocol Player Buffs --- .../Isolation-Protocol/EOC/balance_eoc.json | 26 +++++++++++++++++++ .../Player/Perks/enchantments.json | 6 +++++ .../Isolation-Protocol/Player/traits.json | 2 +- data/mods/Isolation-Protocol/ui.json | 6 ++--- 4 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 data/mods/Isolation-Protocol/EOC/balance_eoc.json diff --git a/data/mods/Isolation-Protocol/EOC/balance_eoc.json b/data/mods/Isolation-Protocol/EOC/balance_eoc.json new file mode 100644 index 0000000000000..53f58b96c3333 --- /dev/null +++ b/data/mods/Isolation-Protocol/EOC/balance_eoc.json @@ -0,0 +1,26 @@ +[ + { + "type": "effect_on_condition", + "id": "ISO_REGEN_CLOCK", + "recurrence": "15 seconds", + "global": true, + "condition": { "math": [ "u_monsters_nearby('radius': 10, 'attitude': 'hostile')", "==", "0" ] }, + "effect": [ + { "math": [ "u_hp('torso')", "+=", "2" ] }, + { "math": [ "u_hp('head')", "+=", "2" ] }, + { "math": [ "u_hp('arm_l')", "+=", "2" ] }, + { "math": [ "u_hp('arm_r')", "+=", "2" ] }, + { "math": [ "u_hp('leg_l')", "+=", "2" ] }, + { "math": [ "u_hp('leg_r')", "+=", "2" ] }, + { "math": [ "u_pain()", "-=", "4" ] } + ] + }, + { + "type": "effect_on_condition", + "id": "ISO_PAIN_CEILING", + "eoc_type": "EVENT", + "required_event": "character_takes_damage", + "condition": { "math": [ "u_pain()", ">", "40" ] }, + "effect": [ { "math": [ "u_pain()", "=", "40" ] } ] + } +] diff --git a/data/mods/Isolation-Protocol/Player/Perks/enchantments.json b/data/mods/Isolation-Protocol/Player/Perks/enchantments.json index 7889564aa3c35..1647ae4acc321 100644 --- a/data/mods/Isolation-Protocol/Player/Perks/enchantments.json +++ b/data/mods/Isolation-Protocol/Player/Perks/enchantments.json @@ -5,6 +5,12 @@ "condition": "ALWAYS", "values": [ { "value": "RANGED_DAMAGE", "multiply": -0.25 } ] }, + { + "type": "enchantment", + "id": "iso_pain_adjust", + "condition": "ALWAYS", + "values": [ { "value": "PAIN", "multiply": { "math": [ "u_pain() > 40 ? -1 : -0.4" ] } } ] + }, { "type": "enchantment", "id": "iso_ench_deliverator", diff --git a/data/mods/Isolation-Protocol/Player/traits.json b/data/mods/Isolation-Protocol/Player/traits.json index d496e9e0b70a8..63b43d8ffb6bc 100644 --- a/data/mods/Isolation-Protocol/Player/traits.json +++ b/data/mods/Isolation-Protocol/Player/traits.json @@ -5,7 +5,7 @@ "name": "Lab Diver", "points": 0, "description": "Secret anchor point trait for gameplay enchantments. Mod will break if you purify this trait.", - "enchantments": [ "iso_ranged_adjust" ], + "enchantments": [ "iso_ranged_adjust", "iso_pain_adjust" ], "starting_trait": false, "player_display": false, "purifiable": false, diff --git a/data/mods/Isolation-Protocol/ui.json b/data/mods/Isolation-Protocol/ui.json index 7d1ed11c7fef6..71e4618fba8b7 100644 --- a/data/mods/Isolation-Protocol/ui.json +++ b/data/mods/Isolation-Protocol/ui.json @@ -37,7 +37,7 @@ { "id": "iso_danger", "type": "widget", - "label": "Ambient normality:", + "label": "Ambient normality", "style": "text", "clauses": [ { @@ -65,7 +65,7 @@ "text": "Distorted", "color": "dark_gray", "condition": { - "and": [ { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", ">=", "15" ] }, { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", "<", "15" ] } ] + "and": [ { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", ">=", "15" ] }, { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", "<", "20" ] } ] } }, { @@ -73,7 +73,7 @@ "text": "Unstable", "color": "magenta", "condition": { - "and": [ { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", ">=", "20" ] }, { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", "<", "20" ] } ] + "and": [ { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", ">=", "20" ] }, { "math": [ "u_ISO_CURRENT_LEVEL_DANGER", "<", "25" ] } ] } }, {