Paste #61913: Edit of P#61912 - Inspect script

Date: 2019/11/10 12:24:58 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


Inspect:
  type: world
  events:
    on player damages entity:
    - if <context.damager.item_in_hand.display> CONTAINS "Inspect target":
      - determine cancelled passively
      - narrate targets:<context.damager> "<&3>-----------------------------------------------------"
      - narrate targets:<context.damager> "<&e>Inspecting <&c><context.entity.name>:"
      - narrate targets:<context.damager> "<&c><&l>Health Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Health: <&a><context.entity.health.round_to[2]><&e>/<&2><context.entity.health_max.round_to[2]>"
      - narrate targets:<context.damager> "<&b>- <&9>Health Percentage: <&a><context.entity.health_percentage>"
      - narrate targets:<context.damager> "<&b>- <&9>Health State: <&a><context.entity.formatted_health.to_titlecase>"
      - narrate targets:<context.damager> "<&c><&l>Physical Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Speed: <&a><context.entity.speed>"
      - narrate targets:<context.damager> "<&c><&l>Combat Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage: <&a><context.entity.weapon_damage>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage to you: <&a><context.entity.weapon_damage[<context.damager>]>"
      - if <context.entity.type> == Player:
        - narrate targets:<context.damager> "<&b>- <&9>Melee attack speed: <&a><context.entity.attack_cooldown_max_duration.formatted>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage you'll deal: <&a><context.damager.weapon_damage[<context.entity>]>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage that will be absorbed: <&a><context.damager.weapon_damage.sub[<context.damager.weapon_damage[<context.entity>]>]>"
      - narrate targets:<context.damager> "<&b>- <&9>Armor: <&a><context.entity.armor_bonus>"
      - if <context.entity.equipment> != "li@i@air|i@air|i@air|i@air":
        - narrate targets:<context.damager> "<&c><&l>Equipment Info:"
      - if <context.entity.item_in_hand> != i@air:
        - if <context.entity.item_in_hand.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Main hand item: <&a><context.entity.item_in_hand.material.name>"
        - if <context.entity.item_in_hand.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Main hand item: <&a><context.entity.item_in_hand.display>"
        - if <context.entity.item_in_hand.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Main hand item durability: <&a><context.entity.item_in_hand.durability><&e>/<&a><context.entity.item_in_hand.max_durability>"
        - if <context.entity.item_in_hand.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Main hand item enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.item_in_offhand> != i@air:
        - if <context.entity.item_in_offhand.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Off hand item: <&a><context.entity.item_in_offhand.material.name>"
        - if <context.entity.item_in_offhand.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Off hand item: <&a><context.entity.item_in_offhand.display>"
        - if <context.entity.item_in_offhand.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Off hand item durability: <&a><context.entity.item_in_offhand.durability><&e>/<&a><context.entity.item_in_hand.max_durability>"
        - if <context.entity.item_in_offhand.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Off hand item enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.helmet> != i@air:
        - if <context.entity.equipment.helmet.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Helmet: <&a><context.entity.equipment.helmet.material.name>"
        - if <context.entity.equipment.helmet.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Helmet: <&a><context.entity.equipment.helmet.display>"
        - if <context.entity.equipment.helmet.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Helmet durability: <&a><context.entity.equipment.helmet.durability><&e>/<&a><context.entity.equipment.helmet.max_durability>"
        - if <context.entity.equipment.helmet.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Helmet enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.chestplate> != i@air:
        - if <context.entity.equipment.Chestplate.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Chestplate: <&a><context.entity.equipment.chestplate.material.name>"
        - if <context.entity.equipment.Chestplate.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Chestplate: <&a><context.entity.equipment.chestplate.display>"
        - if <context.entity.equipment.chestplate.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Chestplate durability: <&a><context.entity.equipment.chestplate.durability><&e>/<&a><context.entity.equipment.chestplate.max_durability>"
        - if <context.entity.equipment.chestplate.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Chestplate enchantments: <&a><context.entity.equipment.chestplate.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.leggings> != i@air:
        - if <context.entity.equipment.Leggings.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Leggings: <&a><context.entity.equipment.leggings.material.name>"
        - if <context.entity.equipment.Leggings.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Leggings: <&a><context.entity.equipment.leggings.display>"
        - if <context.entity.equipment.leggings.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Leggings durability: <&a><context.entity.equipment.helmet.durability><&e>/<&a><context.entity.equipment.leggings.max_durability>"
        - if <context.entity.equipment.leggings.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Leggings enchantments: <&a><context.entity.equipment.leggings.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.boots> != i@air:
        - if <context.entity.equipment.Boots.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Boots: <&a><context.entity.equipment.helmet.material.name>"
        - if <context.entity.equipment.Boots.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Boots: <&a><context.entity.equipment.boots.display>"
        - if <context.entity.equipment.boots.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Boots durability: <&a><context.entity.equipment.boots.durability><&e>/<&a><context.entity.equipment.boots.max_durability>"
        - if <context.entity.equipment.boots.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Boots enchantments: <&a><context.entity.equipment.boots.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.has_effect>:
        - narrate targets:<context.damager> "<&c><&l>Potion Info:"
        - narrate targets:<context.damager> "<&5><&l>*<&5> Type Level Duration"
        - foreach <context.entity.list_effects> as:potions:
          - narrate "<&5>- <&a><[potions].split[,].get[1]> <&e><[potions].split[,].get[2]> <&a><duration[<[potions].split[,].get[3]>t].formatted>" targets:<context.damager>
      - narrate targets:<context.damager> "<&3>-----------------------------------------------------"
      - stop
    - if <context.damager.item_in_offhand.display> CONTAINS "Inspect target":
      - determine cancelled passively
      - narrate targets:<context.damager> "<&3>-----------------------------------------------------"
      - narrate targets:<context.damager> "<&e>Inspecting <&c><context.entity.name>:"
      - narrate targets:<context.damager> "<&c><&l>Health Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Health: <&a><context.entity.health.round_to[2]><&e>/<&2><context.entity.health_max.round_to[2]>"
      - narrate targets:<context.damager> "<&b>- <&9>Health Percentage: <&a><context.entity.health_percentage>"
      - narrate targets:<context.damager> "<&b>- <&9>Health State: <&a><context.entity.formatted_health.to_titlecase>"
      - narrate targets:<context.damager> "<&c><&l>Physical Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Speed: <&a><context.entity.speed>"
      - narrate targets:<context.damager> "<&c><&l>Combat Info:"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage: <&a><context.entity.weapon_damage>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage to you: <&a><context.entity.weapon_damage[<context.damager>]>"
      - if <context.entity.type> == Player:
        - narrate targets:<context.damager> "<&b>- <&9>Melee attack speed: <&a><context.entity.attack_cooldown_max_duration.formatted>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage you'll deal: <&a><context.damager.weapon_damage[<context.entity>]>"
      - narrate targets:<context.damager> "<&b>- <&9>Melee attack damage that will be absorbed: <&a><context.damager.weapon_damage.sub[<context.damager.weapon_damage[<context.entity>]>]>"
      - narrate targets:<context.damager> "<&b>- <&9>Armor: <&a><context.entity.armor_bonus>"
      - if <context.entity.equipment> != "li@i@air|i@air|i@air|i@air":
        - narrate targets:<context.damager> "<&c><&l>Equipment Info:"
      - if <context.entity.item_in_hand> != i@air:
        - if <context.entity.item_in_hand.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Main hand item: <&a><context.entity.item_in_hand.material.name>"
        - if <context.entity.item_in_hand.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Main hand item: <&a><context.entity.item_in_hand.display>"
        - if <context.entity.item_in_hand.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Main hand item durability: <&a><context.entity.item_in_hand.durability><&e>/<&a><context.entity.item_in_hand.max_durability>"
        - if <context.entity.item_in_hand.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Main hand item enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.item_in_offhand> != i@air:
        - if <context.entity.item_in_offhand.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Off hand item: <&a><context.entity.item_in_offhand.material.name>"
        - if <context.entity.item_in_offhand.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Off hand item: <&a><context.entity.item_in_offhand.display>"
        - if <context.entity.item_in_offhand.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Off hand item durability: <&a><context.entity.item_in_offhand.durability><&e>/<&a><context.entity.item_in_hand.max_durability>"
        - if <context.entity.item_in_offhand.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Off hand item enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.helmet> != i@air:
        - if <context.entity.equipment.helmet.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Helmet: <&a><context.entity.equipment.helmet.material.name>"
        - if <context.entity.equipment.helmet.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Helmet: <&a><context.entity.equipment.helmet.display>"
        - if <context.entity.equipment.helmet.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Helmet durability: <&a><context.entity.equipment.helmet.durability><&e>/<&a><context.entity.equipment.helmet.max_durability>"
        - if <context.entity.equipment.helmet.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Helmet enchantments: <&a><context.entity.equipment.helmet.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.chestplate> != i@air:
        - if <context.entity.equipment.Chestplate.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Chestplate: <&a><context.entity.equipment.chestplate.material.name>"
        - if <context.entity.equipment.Chestplate.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Chestplate: <&a><context.entity.equipment.chestplate.display>"
        - if <context.entity.equipment.chestplate.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Chestplate durability: <&a><context.entity.equipment.chestplate.durability><&e>/<&a><context.entity.equipment.chestplate.max_durability>"
        - if <context.entity.equipment.chestplate.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Chestplate enchantments: <&a><context.entity.equipment.chestplate.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.leggings> != i@air:
        - if <context.entity.equipment.Leggings.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Leggings: <&a><context.entity.equipment.leggings.material.name>"
        - if <context.entity.equipment.Leggings.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Leggings: <&a><context.entity.equipment.leggings.display>"
        - if <context.entity.equipment.leggings.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Leggings durability: <&a><context.entity.equipment.helmet.durability><&e>/<&a><context.entity.equipment.leggings.max_durability>"
        - if <context.entity.equipment.leggings.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Leggings enchantments: <&a><context.entity.equipment.leggings.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.equipment.boots> != i@air:
        - if <context.entity.equipment.Boots.has_display.not>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Boots: <&a><context.entity.equipment.helmet.material.name>"
        - if <context.entity.equipment.Boots.has_display>:
          - narrate targets:<context.damager> "<&b>- <&b><&l>Boots: <&a><context.entity.equipment.boots.display>"
        - if <context.entity.equipment.boots.max_durability> >= 0:
          - narrate targets:<context.damager> "<&b>- <&9>Boots durability: <&a><context.entity.equipment.boots.durability><&e>/<&a><context.entity.equipment.boots.max_durability>"
        - if <context.entity.equipment.boots.enchantments> != li@:
          - narrate targets:<context.damager> "<&b>- <&9>Boots enchantments: <&a><context.entity.equipment.boots.enchantments.with_levels.separated_by[<&e>|<&a>]>"
      - if <context.entity.has_effect>:
        - narrate targets:<context.damager> "<&c><&l>Potion Info:"
        - narrate targets:<context.damager> "<&5><&l>*<&5> Type Level Duration"
        - foreach <context.entity.list_effects> as:potions:
          - narrate "<&5>- <&a><[potions].split[,].get[1]> <&e><[potions].split[,].get[2]> <&a><duration[<[potions].split[,].get[3]>t].formatted>" targets:<context.damager>
      - narrate targets:<context.damager> "<&3>-----------------------------------------------------"
      - stop