Paste #44174: Untitled Paste

Date: 2017/09/05 21:24:07 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


Umbra:
    type: assignment
    actions:
        on assignment:
        - trigger name:proximity state:true radius:40
    interact scripts:
    - 10 UmbraInteract

UmbraInteract:
    type: interact
    debug: false
    steps:
        1:
            proximity trigger:
                move:
                    script:
                    - if <player.health.is[OR_LESS].than[8.0]> {
                        - ^teleport <npc> <p@5f26036c-a9db-4db0-8517-68bcc0d11dff.location>
                        - ^playsound <npc.location> sound:ENTITY_ENDERMEN_TELEPORT pitch:1 volume:10
                        - ^cast heal power:3 <player> hide_particles
                    }
                    - if <npc.flag[Guard].is[MORE].than[1]> {
                        - if <server.flag[UmbraTarget].size.is[OR_MORE].than[1]> {
                            - ^cast increase_damage power:10 duration:9999s <npc> hide_particles
                            - ^adjust <npc> item:magma
                            - ^adjust <npc> speed:2.0
                            - ^adjust <npc> attack_range:4.5
                            - ^teleport <npc> <server.flag[UmbraTarget].get[1].location>
                            - ^playsound <npc.location> sound:ENTITY_ENDERMEN_TELEPORT pitch:1 volume:10
                            - ^attack <npc> target:<server.flag[UmbraTarget].get[1]>
                        }
                        else {
                            - if <npc.has_effect[increase_damage]> {
                                - ^attack <npc> target:cancel
                                - ^cast increase_damage duration:0 <npc>
                                - ^adjust <npc> item:air
                                - ^adjust <npc> speed:1.0
                                - ^adjust <npc> attack_range:3.0625
                            }
                        }
                    }
                    - if <npc.flag[Active].is[MORE].than[1]> {
                        - if <npc.location.points_between[<p@5f26036c-a9db-4db0-8517-68bcc0d11dff.location>].size> >= 31 {
                            - ^teleport <npc> <p@5f26036c-a9db-4db0-8517-68bcc0d11dff.location>
                            - ^playsound <npc.location> sound:ENTITY_ENDERMEN_TELEPORT pitch:1 volume:10
                        }
                        - if <npc.location.points_between[<p@5f26036c-a9db-4db0-8517-68bcc0d11dff.location>].size> >= 7 {
                            - ^follow followers:<npc> target:<player> speed:0.8
                        }
                        else {
                            - ^follow followers:<npc> stop
                        }
                    }

            click trigger:
                script:
                - ^inventory open d:in@UmbraInventory

UmbraPriority:
    type: world
    debug: false
    events:
        on entity damages player:
          - if <player.name> == "ZinGBear" {
            - if <context.damager> == "Umbra" {
                - ^determine cancelled
            }
            - ^flag server UmbraTarget:<context.damager>
          }
        on entity killed by enderman:
          - if <server.flag[UmbraTarget].size.is[OR_MORE].than[1]> {
            - ^flag server UmbraTarget:!
          }
        on player clicks UmbraFollowItem in UmbraInventory:
          - if <n@Umbra.flag[Active].is[OR_MORE].than[1]> {
            - ^flag <n@Umbra> Active:!
            - ^narrate "Follow: <&c>Deactivated"
          }
          else {
            - ^flag <n@Umbra> Active:2
            - ^narrate "Follow: <&a>Activated"
          }
          - ^determine cancelled
        on player clicks UmbraAttackItem in UmbraInventory:
          - if <n@Umbra.flag[Guard].is[OR_MORE].than[1]> {
            - ^flag <n@Umbra> Guard:!
            - ^narrate "Guard: <&c>Deactivated"
          }
          else {
            - ^flag <n@Umbra> Guard:2
            - ^narrate "Guard: <&a>Activated"
          }
          - ^determine cancelled
        on player clicks UmbraChestItem in UmbraInventory:
          - ^inventory open d:in@ZinGBearChestArchive
          - ^determine cancelled
        on player clicks UmbraEffectsItem in UmbraInventory:
          - ^inventory open d:in@EffectsInventory
          - ^determine cancelled
        on player clicks UmbraEnderItem in UmbraInventory:
          - ^inventory open d:<player.enderchest>
          - ^determine cancelled
        on player clicks UmbraWorkbenchItem in UmbraInventory:
          - ^execute as_player "workbench"
          - ^determine cancelled
        on player clicks ZinGBearFurnaceArchiveItem in UmbraInventory:
          - ^inventory open d:in@ZinGBearFurnaceArchiveInventory
          - ^determine cancelled
        on player clicks UmbraHomesItem in UmbraInventory:
          - ^inventory open d:in@ZinGBearHomes
          - ^determine cancelled
        on player clicks UmbraWarpsItem in UmbraInventory:
          - ^inventory open d:in@ZinGBearWarps
          - ^determine cancelled
        on player clicks UmbraTestItem in UmbraInventory:
          - ^adjust <player> interact_with:l@-258,75,-940,world
          - ^determine cancelled
        on player clicks UmbraExitItem in UmbraInventory:
          - ^inventory close
          - ^determine cancelled
        on player clicks ReturnUmbraInventoryItem in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:in@UmbraInventory
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem1 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-29,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem2 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-28,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem3 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-27,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem4 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-26,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem5 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-24,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem6 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-23,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem7 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-22,29,-396,world.inventory>
          - ^determine cancelled
        on player clicks ZinGBearFurnaceItem8 in ZinGBearFurnaceArchiveInventory:
          - ^inventory open d:<l@-21,29,-396,world.inventory>
          - ^determine cancelled

UmbraInventory:
    type: inventory
    title: Umbra
    size: 27
    slots:
    - "[i@UmbraFollowItem] [i@UmbraAttackItem] [] [] [] [] [] [] []"
    - "[i@UmbraEffectsItem] [i@UmbraHomesItem] [i@UmbraWarpsItem] [] [] [] [] [] [i@UmbraTestItem]"
    - "[] [] [] [] [i@ZinGBearFurnaceArchiveItem] [i@UmbraWorkbenchItem] [i@UmbraEnderItem] [i@UmbraChestItem] [i@UmbraExitItem]"

ZinGBearFurnaceArchiveInventory:
    type: inventory
    title: Furnaces
    size: 9
    slots:
    - "[i@ZinGBearFurnaceItem1] [i@ZinGBearFurnaceItem2] [i@ZinGBearFurnaceItem3] [i@ZinGBearFurnaceItem4] [i@ZinGBearFurnaceItem5] [i@ZinGBearFurnaceItem6] [i@ZinGBearFurnaceItem7] [i@ZinGBearFurnaceItem8] [i@ReturnUmbraInventoryItem]"

UmbraFollowItem:
    type: item
    material: ender_pearl
    display name: Follow On/Off

UmbraAttackItem:
    type: item
    material: eye_of_ender
    display name: Attack On/Off

UmbraChestItem:
    type: item
    material: chest
    display name: Open The Archive

UmbraEffectsItem:
    type: item
    material: potion
    display name: Open Effects List

UmbraExitItem:
    type: item
    material: barrier
    display name: Exit Umbra Inventory

UmbraEnderItem:
    type: item
    material: ender_chest
    display name: Open Enderchest

UmbraWorkbenchItem:
    type: item
    material: workbench
    display name: Open 

ZinGBearFurnaceArchiveItem:
    type: item
    material: furnace
    display name: Open Furnace Archive

UmbraHomesItem:
    type: item
    material: smooth_brick
    display name: Open Homes List

UmbraWarpsItem:
    type: item
    material: concrete,3
    display name: Open Warps List

UmbraTestItem:
    type: item
    material: nether_star
    display name: Testing Item

ZinGBearFurnaceItem1:
    type: item
    material: furnace
    display name: Furnace 1

ZinGBearFurnaceItem2:
    type: item
    material: furnace
    display name: Furnace 2

ZinGBearFurnaceItem3:
    type: item
    material: furnace
    display name: Furnace 3

ZinGBearFurnaceItem4:
    type: item
    material: furnace
    display name: Furnace 4

ZinGBearFurnaceItem5:
    type: item
    material: furnace
    display name: Furnace 5

ZinGBearFurnaceItem6:
    type: item
    material: furnace
    display name: Furnace 6

ZinGBearFurnaceItem7:
    type: item
    material: furnace
    display name: Furnace 7

ZinGBearFurnaceItem8:
    type: item
    material: furnace
    display name: Furnace 8