Paste #30783: Untitled Paste

Date: 2016/02/25 06:21:15 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


RankedGUI:
    type: assignment  
    actions:  
        on click:  
        - inventory open d:in@GUIInfo 
RankedGUIInfo:
  type: inventory
  inventory: chest
  title: "<&b><&l>Color Guide 2.0"
  size: 45
  definitions:
    border: i@border_item
    return_button: i@return_button_item
    1v1s: i@1v1s_item
    leaderboard: i@leaderboard_item
    rating: i@rating_item
  slots:
    - "[border] [border] [border] [border] [border] [border] [border] [border] [border]" 
    - "[border] [] [] [] [] [] [] [] [border]" 
    - "[border] [] [1v1s] [] [leaderboard] [] [Rating] [] [border]" 
    - "[border] [] [] [] [] [] [] [] [border]" 
    - "[border] [border] [border] [border] [border] [border] [border] [border] [return_button]" 



Ranked_GUI_Inventory_World:
  type: world
  events:
    on player clicks in RankedGUIInfo:
    - determine cancelled 

    on player clicks border_item in RankedGUIInfo:
    - narrate "<&6> Ranked Duels created by Alphatrooper." 
    on player clicks 1v1s_item in RankedGUIInfo:
    - if <server.flag[1v1_players].contains[<player>]> {
      - flag server 1v1_players:<-:<player>
      - narrate "<&c>You left the Ranked 1V1 queue." 
      - if <def[player]> == none 
      - queue clear
    }
    else {
    - define player <server.flag[1v1_players].get[1]||none>
    - flag server 1v1_players:->:<player>
    - narrate "<&a>You are now queued for Ranked 1V1."
    }
    on player damages player: 
    - flag <context.entity> combat_timer_for_logger d:10s
    - flag server 1v1_players:<-:<player>

    on server flag 1v1_players changed:
    - if <player.has_flag[combat_timer_for_logger]> {
      - narrate "<&a>Get out of combat!"
      - queue clear
    }
    - if <server.flag[1v1_players].as_list.size> >= 2 { 
      - flag <def[player]> pInventory:<server.flag[1v1_players].get[1].inventory.list_contents.full> 
      - flag <def[player]> pHelmet:<server.flag[1v1_players].get[1].inventory.equipment.helmet> 
      - flag <def[player]> pChestplate:<server.flag[1v1_players].get[1].inventory.equipment.chestplate> 
      - flag <def[player]> pLeggings:<server.flag[1v1_players].get[1].inventory.equipment.leggings> 
      - flag <def[player]> pBoots:<server.flag[1v1_players].get[1].inventory.equipment.boots>
      - flag <def[player]> pLocation:<server.flag[1v1_players].get[1].player.location>
      - inventory clear d:<server.flag[1v1_players].get[1].inventory> 
      - equip <def[player]> head:i@air chest:i@air legs:i@air boots:i@air 
      - flag <server.flag[1v1_players].get[2]> pInventory:<server.flag[1v1_players].get[2].inventory.list_contents.full> 
      - flag <server.flag[1v1_players].get[2]> pHelmet:<server.flag[1v1_players].get[2].inventory.equipment.helmet> 
      - flag <server.flag[1v1_players].get[2]> pChestplate:<server.flag[1v1_players].get[2].inventory.equipment.chestplate> 
      - flag <server.flag[1v1_players].get[2]> pLeggings:<server.flag[1v1_players].get[2].inventory.equipment.leggings> 
      - flag <server.flag[1v1_players].get[2]> pBoots:<server.flag[1v1_players].get[2].inventory.equipment.boots>
      - flag <server.flag[1v1_players].get[2]> pLocation:<server.flag[1v1_players].get[2].player.location> 
      - inventory clear d:<server.flag[1v1_players].get[2].inventory> 
      - equip <server.flag[1v1_players].get[2]> head:i@air chest:i@air legs:i@air boots:i@air 
      - teleport <player> <l@1,80,1,flat>
      }
    on player dies in 1V1Arena:
    - Determine "NO_DROPS_OR_XP"
    - flag <context.damager> 1V1Winner
    - flag <player.name> 1V1Loser
    - announce "<&6><&l> <player.flag[1v1winner]> <&a>just won in a 1V1 vs. <player.flag[1V1Loser]>!"


    on player clicks retur:<n_button_item in GUIInfo: 
    - inventory close 
    on player clicks leaderboard in RankedGUIInfo:
    - narrate "<&6><&l>Ranked Duel Leaderboards:" 
    on player clicks rating in RankedGUIInfo:
    - narrate "<&6><&l>Your personal rating is:" 

border_item:
    type: item 
    material: i@black_stained_glass_pane 
    display name: <white><&sp> 

1v1s_item:
    type: item 
    material: i@diamond_sword 
    display name: <&c>1V1 

return_button_item:
    type: item 
    material: i@redstone_torch_on 
    display name: "<&6><&l>Close Menu" 

Leaderboard_item:
    type: item 
    material: i@book 
    display name: "<&6><&l>Leaderboards" 

Rating_item:
    type: item 
    material: i@paper 
    display name: "<&a>Personal Rating:" 

# To give back inventory after game finished
# - adjust <player> inventory_contents:<player.flag[pInventory]>
# use <player.equipment> to take equipment instead of 4.
# then  - adjust <player> equipment:
# on player death in <area>
# - Determine: "NO_DROPS_OR_XP"
# if statement to prevent joining multiple times [1v1_players]
# to check if player is in queue - if <server.flag[1v1_players].contains[<player>]>
# tp back player to his location flag <player.location>