diff --git a/data/mods/Magiclysm/effects/eoc_game_start.json b/data/mods/Magiclysm/effects/eoc_game_start.json index 3d42a601eea5e..687d577012546 100644 --- a/data/mods/Magiclysm/effects/eoc_game_start.json +++ b/data/mods/Magiclysm/effects/eoc_game_start.json @@ -12,14 +12,20 @@ "id": "EOC_DRUID_SHIFTER_GIVE_FORM_2", "effect": [ { - "run_eoc_selector": [ "EOC_DRUID_SHIFTER_GIVE_FORM_BEAR", "EOC_DRUID_SHIFTER_GIVE_FORM_DEER", "EOC_DRUID_SHIFTER_GIVE_FORM_RAVEN" ], + "run_eoc_selector": [ + "EOC_DRUID_SHIFTER_GIVE_FORM_BEAR", + "EOC_DRUID_SHIFTER_GIVE_FORM_COUGAR", + "EOC_DRUID_SHIFTER_GIVE_FORM_DEER", + "EOC_DRUID_SHIFTER_GIVE_FORM_RAVEN" + ], "title": "Which form did you learn how to shift into?", - "names": [ "Bear Form", "Deer Form", "Raven Form" ], - "keys": [ "a", "b", "c" ], + "names": [ "Bear Form", "Cougar Form", "Deer Form", "Raven Form" ], + "keys": [ "a", "b", "c", "d" ], "descriptions": [ - "You learned how to transform into a bear", - "You learned how to transform into a deer", - "You learned how to transform into a raven" + "You learned how to transform into a bear.", + "You learned how to transform into a cougar.", + "You learned how to transform into a deer.", + "You learned how to transform into a raven." ] } ] @@ -29,6 +35,11 @@ "id": "EOC_DRUID_SHIFTER_GIVE_FORM_BEAR", "effect": [ { "u_add_trait": "DRUID_SHIFTER_BEAR_FORM" } ] }, + { + "type": "effect_on_condition", + "id": "EOC_DRUID_SHIFTER_GIVE_FORM_COUGAR", + "effect": [ { "u_add_trait": "DRUID_SHIFTER_COUGAR_FORM" } ] + }, { "type": "effect_on_condition", "id": "EOC_DRUID_SHIFTER_GIVE_FORM_DEER", diff --git a/data/mods/Magiclysm/effects/eoc_transformations.json b/data/mods/Magiclysm/effects/eoc_transformations.json index 8d1e020b2a31b..2e90a5322660f 100644 --- a/data/mods/Magiclysm/effects/eoc_transformations.json +++ b/data/mods/Magiclysm/effects/eoc_transformations.json @@ -2,7 +2,11 @@ { "type": "effect_on_condition", "id": "EOC_DRUID_SHIFTER_BEAR_FORM_activated", - "condition": { "not": { "u_has_any_trait": [ "DRUID_SHIFTER_DEER_FORM_TRAITS", "DRUID_SHIFTER_RAVEN_FORM_TRAITS" ] } }, + "condition": { + "not": { + "u_has_any_trait": [ "DRUID_SHIFTER_COUGAR_FORM_TRAITS", "DRUID_SHIFTER_DEER_FORM_TRAITS", "DRUID_SHIFTER_RAVEN_FORM_TRAITS" ] + } + }, "effect": [ { "run_eocs": [ @@ -30,6 +34,7 @@ ] }, { "u_add_trait": "DRUID_SHIFTER_BEAR_FORM_TRAITS" }, + { "u_add_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "u_message": "Your body shifts and expands as fur sprouts from your skin and your mouth and teeth lengthen.", "type": "good" @@ -56,6 +61,7 @@ "type": "neutral" }, { "u_lose_trait": "DRUID_SHIFTER_BEAR_FORM_TRAITS" }, + { "u_lose_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "math": [ "u_val('mana')", "=", "u_transformed_mana" ] }, { "switch": { "math": [ "u_preshift_size" ] }, @@ -87,10 +93,113 @@ "//": "This is necessary because calling u_deactivate_trait from within the trait EoC does not work", "effect": { "u_deactivate_trait": "DRUID_SHIFTER_BEAR_FORM" } }, + { + "type": "effect_on_condition", + "id": "EOC_DRUID_SHIFTER_COUGAR_FORM_activated", + "condition": { + "not": { + "u_has_any_trait": [ "DRUID_SHIFTER_BEAR_FORM_TRAITS", "DRUID_SHIFTER_DEER_FORM_TRAITS", "DRUID_SHIFTER_RAVEN_FORM_TRAITS" ] + } + }, + "effect": [ + { + "run_eocs": [ + { + "id": "EOC_DRUID_SHIFTER_COUGAR_FORM_activated_2", + "condition": { "not": { "u_has_trait": "DRUID_SHIFTER_COUGAR_FORM_TRAITS" } }, + "effect": [ + { + "run_eocs": [ + { + "id": "EOC_DRUID_SHIFTER_COUGAR_FORM_activated_3", + "condition": { "math": [ "u_val('mana')", ">=", "50" ] }, + "effect": [ + { "u_assign_activity": "ACT_GENERIC_EOC", "duration": 2.5 }, + { "math": [ "u_transformed_mana", "=", "u_val('mana') - 50" ] }, + { "math": [ "u_preshift_size", "=", "u_val('size')" ] }, + { + "switch": { "math": [ "u_preshift_size" ] }, + "cases": [ + { "case": 1, "effect": [ { "math": [ "u_calories()", "/=", "4" ] } ] }, + { "case": 2, "effect": [ { "math": [ "u_calories()", "/=", "2" ] } ] }, + { "case": 3, "effect": [ ] }, + { "case": 4, "effect": [ { "math": [ "u_calories()", "*=", "1.5" ] } ] }, + { "case": 5, "effect": [ { "math": [ "u_calories()", "*=", "3" ] } ] } + ] + }, + { "u_add_trait": "DRUID_SHIFTER_COUGAR_FORM_TRAITS" }, + { "u_add_trait": "DRUID_SHIFTER_MANA_REDUCER" }, + { "if": { "not": { "u_has_trait": "FELINE_LEAP" } }, "then": { "u_add_trait": "FELINE_LEAP" } }, + { + "u_message": "Your body shifts and warps as fur sprouts from your skin, whiskers from your nose, and claws and fangs from your fingers and mouth.", + "type": "good" + } + ], + "false_effect": [ + { "u_message": "You don't have enough mana to transform into a cougar.", "type": "bad" }, + { "queue_eocs": "EOC_DRUID_SHIFTER_COUGAR_FORM_deactivate_future", "time_in_future": 0 } + ] + } + ] + } + ], + "false_effect": [ + { + "run_eocs": [ + { + "id": "EOC_DRUID_SHIFTER_COUGAR_FORM_deactivated", + "condition": { "u_has_trait": "DRUID_SHIFTER_COUGAR_FORM_TRAITS" }, + "effect": [ + { "u_assign_activity": "ACT_GENERIC_EOC", "duration": 2.5 }, + { + "u_message": "Your body shifts and your fur disappears as you return to your humanoid form.", + "type": "neutral" + }, + { "u_lose_trait": "DRUID_SHIFTER_COUGAR_FORM_TRAITS" }, + { "u_lose_trait": "DRUID_SHIFTER_MANA_REDUCER" }, + { + "if": { "not": { "u_has_trait": "THRESH_FELINE" } }, + "then": { "u_lose_trait": "FELINE_LEAP" } + }, + { "math": [ "u_val('mana')", "=", "u_transformed_mana" ] }, + { + "switch": { "math": [ "u_preshift_size" ] }, + "cases": [ + { "case": 1, "effect": [ { "math": [ "u_calories()", "*=", "4" ] } ] }, + { "case": 2, "effect": [ { "math": [ "u_calories()", "*=", "2" ] } ] }, + { "case": 3, "effect": [ ] }, + { "case": 4, "effect": [ { "math": [ "u_calories()", "/=", "1.5" ] } ] }, + { "case": 5, "effect": [ { "math": [ "u_calories()", "/=", "3" ] } ] } + ] + } + ] + } + ] + } + ] + } + ] + } + ], + "false_effect": [ + { "u_message": "You cannot transform into a cougar if you are already in an animal form.", "type": "mixed" }, + { "queue_eocs": "EOC_DRUID_SHIFTER_COUGAR_FORM_deactivate_future", "time_in_future": 0 } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_DRUID_SHIFTER_COUGAR_FORM_deactivate_future", + "//": "This is necessary because calling u_deactivate_trait from within the trait EoC does not work", + "effect": { "u_deactivate_trait": "DRUID_SHIFTER_COUGAR_FORM" } + }, { "type": "effect_on_condition", "id": "EOC_DRUID_SHIFTER_DEER_FORM_activated", - "condition": { "not": { "u_has_any_trait": [ "DRUID_SHIFTER_BEAR_FORM_TRAITS", "DRUID_SHIFTER_RAVEN_FORM_TRAITS" ] } }, + "condition": { + "not": { + "u_has_any_trait": [ "DRUID_SHIFTER_BEAR_FORM_TRAITS", "DRUID_SHIFTER_COUGAR_FORM_TRAITS", "DRUID_SHIFTER_RAVEN_FORM_TRAITS" ] + } + }, "effect": [ { "run_eocs": [ @@ -118,6 +227,7 @@ ] }, { "u_add_trait": "DRUID_SHIFTER_DEER_FORM_TRAITS" }, + { "u_add_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "u_message": "Your body shifts and warps as your fingers and feet fuse into hooves and majestic antlers sprout from your head.", "type": "good" @@ -144,6 +254,7 @@ "type": "neutral" }, { "u_lose_trait": "DRUID_SHIFTER_DEER_FORM_TRAITS" }, + { "u_lose_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "math": [ "u_val('mana')", "=", "u_transformed_mana" ] }, { "switch": { "math": [ "u_preshift_size" ] }, @@ -178,7 +289,11 @@ { "type": "effect_on_condition", "id": "EOC_DRUID_SHIFTER_RAVEN_FORM_activated", - "condition": { "not": { "u_has_any_trait": [ "DRUID_SHIFTER_BEAR_FORM_TRAITS", "DRUID_SHIFTER_DEER_FORM_TRAITS" ] } }, + "condition": { + "not": { + "u_has_any_trait": [ "DRUID_SHIFTER_BEAR_FORM_TRAITS", "DRUID_SHIFTER_COUGAR_FORM_TRAITS", "DRUID_SHIFTER_DEER_FORM_TRAITS" ] + } + }, "effect": [ { "run_eocs": [ @@ -207,6 +322,7 @@ ] }, { "u_add_trait": "DRUID_SHIFTER_RAVEN_FORM_TRAITS" }, + { "u_add_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "u_message": "Your body shifts and changes as you concentrate and you take wing as a raven.", "type": "good" @@ -233,6 +349,7 @@ "type": "neutral" }, { "u_lose_trait": "DRUID_SHIFTER_RAVEN_FORM_TRAITS" }, + { "u_lose_trait": "DRUID_SHIFTER_MANA_REDUCER" }, { "math": [ "u_spell_level('druid_raven_form_fly_upward')", "=", "-1" ] }, { "math": [ "u_val('mana')", "=", "u_transformed_mana" ] }, { @@ -264,16 +381,5 @@ "id": "EOC_DRUID_SHIFTER_RAVEN_FORM_deactivate_future", "//": "This is necessary because calling u_deactivate_trait from within the trait EoC does not work", "effect": { "u_deactivate_trait": "DRUID_SHIFTER_RAVEN_FORM" } - }, - { - "type": "effect_on_condition", - "id": "EOC_DRUID_SHIFTER_RAVEN_FORM_ASCEND", - "condition": "u_is_outside", - "effect": [ - { "u_location_variable": { "context_val": "raven_form_fly_up_location" }, "z_adjust": 1, "outdoor_only": true }, - { "u_message": "Your wings carry you upward.", "type": "good" }, - { "u_teleport": { "context_val": "raven_form_fly_up_location" } } - ], - "false_effect": [ { "u_message": "You cannot fly up with a ceiling above you!", "type": "bad" } ] } ] diff --git a/data/mods/Magiclysm/mutations/magical.json b/data/mods/Magiclysm/mutations/magical.json index cf298135ec809..737d87f3d1120 100644 --- a/data/mods/Magiclysm/mutations/magical.json +++ b/data/mods/Magiclysm/mutations/magical.json @@ -17,13 +17,13 @@ "type": "mutation", "id": "DRUID_SHIFTER_BEAR_FORM_TRAITS", "name": { "str": "Bear Form" }, - "points": 99, + "points": 98, "description": "You are a bear. This provides the actual effects of bear form. Should not be player-visible", "valid": false, "starting_trait": false, "purifiable": false, "player_display": false, - "//": "The second enchantment takes into account the effects of the mutations added by the first enchantment, whose own enchantments do not transfer over due to bug #74994. If that bug is fixed, it can be deleted.", + "//": "The second enchantment takes into account the effects of the mutations added by the first enchantment, whose own enchantments do not transfer over due to bug #74984. If that bug is fixed, it can be deleted.", "enchantments": [ { "condition": "ALWAYS", @@ -36,8 +36,7 @@ { "value": "NIGHT_VIS", "add": 5 }, { "value": "MELEE_DAMAGE", "multiply": 0.4 }, { "value": "CLIMATE_CONTROL_HEAT", "add": 25 }, - { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 }, - { "value": "MAX_MANA", "multiply": -1000 } + { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 } ], "mutations": [ "FANGS", "MUZZLE_BEAR", "TAIL_STUB", "PAWS_LARGE", "URSINE_FUR", "URSINE_EARS", "PRED3" ] }, @@ -67,6 +66,70 @@ "override_look": { "id": "mon_bear", "tile_category": "monster" }, "integrated_armor": [ "integrated_claws_st", "integrated_fangs", "integrated_ursine_fur" ] }, + { + "type": "mutation", + "id": "DRUID_SHIFTER_COUGAR_FORM", + "name": { "str": "Form of the Stalking Hunter" }, + "points": 0, + "description": "You can transform yourself into a cougar and stalk your enemies.", + "starting_trait": false, + "purifiable": false, + "valid": false, + "active": true, + "activated_is_setup": true, + "activated_eocs": [ "EOC_DRUID_SHIFTER_COUGAR_FORM_activated" ], + "deactivated_eocs": [ "EOC_DRUID_SHIFTER_COUGAR_FORM_deactivated" ] + }, + { + "type": "mutation", + "id": "DRUID_SHIFTER_COUGAR_FORM_TRAITS", + "name": { "str": "Cougar Form" }, + "points": 98, + "description": "You are a cougar. This provides the actual effects of cougar form. Should not be player-visible.", + "starting_trait": false, + "purifiable": false, + "valid": false, + "player_display": false, + "//": "The second enchantment takes into account the effects of the mutations added by the first enchantment, whose own enchantments do not transfer over due to bug #74984. If that bug is fixed, it can be deleted.", + "enchantments": [ + { + "condition": "ALWAYS", + "values": [ + { "value": "SPEED", "multiply": 0.2 }, + { "value": "RANGE", "multiply": -1 }, + { "value": "DEXTERITY", "add": 4 }, + { "value": "NIGHT_VIS", "add": 11 }, + { "value": "MELEE_DAMAGE", "multiply": 0.2 }, + { "value": "CLIMATE_CONTROL_HEAT", "add": 25 }, + { "value": "FOOTSTEP_NOISE", "multiply": -0.6 }, + { "value": "MOVECOST_OBSTACLE_MOD", "multiply": -0.5 }, + { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 } + ], + "mutations": [ "FANGS", "TAIL_LONG", "PAWS", "FELINE_FUR", "FELINE_EARS", "PRED3", "WHISKERS", "FELINE_LEAP" ] + }, + { + "condition": "ALWAYS", + "values": [ + { "value": "HEARING_MULT", "multiply": 0.25 }, + { "value": "COMBAT_CATCHUP", "multiply": 2 }, + { "value": "DODGE_CHANCE", "add": 5 } + ] + }, + { + "condition": { "and": [ { "u_has_flag": "QUADRUPED_CROUCH" }, { "u_has_flag": "QUADRUPED_RUN" }, { "not": "u_can_drop_weapon" } ] }, + "values": [ { "value": "MOVE_COST", "multiply": -0.15 } ], + "ench_effects": [ { "effect": "natural_stance", "intensity": 1 }, { "effect": "quadruped_full", "intensity": 1 } ] + }, + { "condition": { "u_has_move_mode": "run" }, "values": [ { "value": "MOVE_COST", "multiply": -0.25 } ] }, + { + "condition": "u_has_weapon", + "values": [ { "value": "MELEE_DAMAGE", "multiply": -1 }, { "value": "RANGE", "multiply": -1 } ] + } + ], + "flags": [ "MUTE", "PRED3", "QUADRUPED_CROUCH", "QUADRUPED_RUN", "TOUGH_FEET", "TEMPORARY_SHAPESHIFT" ], + "override_look": { "id": "mon_cougar", "tile_category": "monster" }, + "integrated_armor": [ "integrated_fangs", "integrated_feline_fur", "integrated_claws" ] + }, { "type": "mutation", "id": "DRUID_SHIFTER_DEER_FORM", @@ -85,7 +148,7 @@ "type": "mutation", "id": "DRUID_SHIFTER_DEER_FORM_TRAITS", "name": { "str": "Deer Form" }, - "points": 99, + "points": 98, "description": "You are a deer. This provides the actual effects of deer form. Should not be player-visible", "valid": false, "starting_trait": false, @@ -100,8 +163,7 @@ { "value": "MOVE_COST", "multiply": -0.5 }, { "value": "DEXTERITY", "add": 3 }, { "value": "NIGHT_VIS", "add": 6 }, - { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 }, - { "value": "MAX_MANA", "multiply": -1000 } + { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 } ], "skills": [ { "value": "dodge", "add": 2 } ], "mutations": [ "ANTLERS", "HOOVES" ] @@ -146,7 +208,7 @@ "purifiable": false, "valid": false, "player_display": false, - "//": "The second enchantment, as well as bodytemp modifiers, takes into account the effects of the mutations added by the first enchantment, whose own enchantments do not transfer over due to bug #74994. If that bug is fixed, it can be deleted.", + "//": "The second enchantment, as well as bodytemp modifiers, takes into account the effects of the mutations added by the first enchantment, whose own enchantments do not transfer over due to bug #74984. If that bug is fixed, it can be deleted.", "bodytemp_modifiers": [ 300, 800 ], "enchantments": [ { @@ -158,8 +220,7 @@ { "value": "DEXTERITY", "add": 8 }, { "value": "PERCEPTION", "add": 4 }, { "value": "NIGHT_VIS", "add": 4 }, - { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 }, - { "value": "MAX_MANA", "multiply": -1000 } + { "value": "CRAFTING_SPEED_MULTIPLIER", "multiply": -1000 } ], "ench_effects": [ { "effect": "effect_druid_shifter_raven_form_levitation", "intensity": 1 } ], "skills": [ { "value": "dodge", "add": 6 } ], @@ -182,5 +243,16 @@ ], "flags": [ "LEVITATION", "MUTE", "NO_SPELLCASTING", "TEMPORARY_SHAPESHIFT", "SHAPESHIFT_SIZE_TINY" ], "override_look": { "id": "mon_raven", "tile_category": "monster" } + }, + { + "type": "mutation", + "id": "DRUID_SHIFTER_MANA_REDUCER", + "name": { "str": "Mana Reducer Druid Forms" }, + "points": 0, + "description": "Prevents you from regenerating mana while in druid shapeshifting form. You should never actually see this.", + "starting_trait": false, + "purifiable": false, + "valid": false, + "enchantments": [ { "condition": "ALWAYS", "values": [ { "value": "MAX_MANA", "multiply": -1000 } ] } ] } ] diff --git a/data/mods/Magiclysm/obsolete/eocs.json b/data/mods/Magiclysm/obsolete/eocs.json index 31c31880415f2..484047b2b86be 100644 --- a/data/mods/Magiclysm/obsolete/eocs.json +++ b/data/mods/Magiclysm/obsolete/eocs.json @@ -100,5 +100,16 @@ { "u_remove_item_with": "aura_druid_waterwalk" }, { "u_message": "As you leave the water, your spell fades.", "type": "bad" } ] + }, + { + "type": "effect_on_condition", + "id": "EOC_DRUID_SHIFTER_RAVEN_FORM_ASCEND", + "condition": "u_is_outside", + "effect": [ + { "u_location_variable": { "context_val": "raven_form_fly_up_location" }, "z_adjust": 1, "outdoor_only": true }, + { "u_message": "Your wings carry you upward.", "type": "good" }, + { "u_teleport": { "context_val": "raven_form_fly_up_location" } } + ], + "false_effect": [ { "u_message": "You cannot fly up with a ceiling above you!", "type": "bad" } ] } ]