Paste #29658: Mob Arena Menu

Date: 2016/02/04 00:16:15 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


MobArenaMenu_Events:
    type: world
    events:

        on player clicks in MobArenaMenu_Menu:
        - determine cancelled passively
        - inventory close d:<context.inventory>
        - if <context.item.scriptname||false> == "ChessMenu_Close" {
            - queue clear
        }
        - announce "<context.item.display_name.after[<&a>]>"
        - execute as_player "ma join <context.item.display_name.after[<&a>]>"

        on player drags in MobArenaMenu_Menu:
        - determine cancelled

        on player clicks MobArenaMenu_Close in MobArenaMenu_Menu:
        - determine cancelled passively
        - inventory close d:<context.inventory>

MobArenaMenu_Menu:
  type: inventory 
  inventory: CHEST
  title: <&8>Mob Arena Menu
  size: 9
  definitions: 
    MA1: i@MobArenaMenu_Item1
    MA2: i@MobArenaMenu_Item2
    MA3: i@MobArenaMenu_Item3
    MA4: i@MobArenaMenu_Item4
    MA5: i@MobArenaMenu_Item5
    MA6: i@MobArenaMenu_Item6
    MA7: i@MobArenaMenu_Item7
    MA8: i@MobArenaMenu_Item8
    Close: i@MobArenaMenu_Close
  slots: 
    - "[MA1] [MA2] [MA3] [MA4] [MA5] [MA6] [MA7] [MA8] [Close]"

# <&chr[00C5]> Å
# <&chr[00D8]> Ø
# <&chr[00C6]> Æ
# <&chr[00E6]> æ
# <&chr[00F8]> ø
# <&chr[00E5]> å

MobArenaMenu_Proc:
    type: procedure
    definitions: arenaID|line
    debug: false
    script:
    - if <def[line]> == 1 {
        - if <mobarena.list_arenas.size> < <def[arenaID]> {
            - determine "STAINED_GLASS_PANE,15"
        }
        else {
            - if <mobarena.list_arenas.get[<def[arenaID]>].status> == open {
                - determine lime_wool
            }
            else {
                - determine yellow_wool
            }
        }
    }
    - if <mobarena.list_arenas.size> < <def[arenaID]> {
        - determine "<&8>"
    }
    - if <def[line]> == 2 {
        - determine "<&a><mobarena.list_arenas.get[<def[arenaID]>].name>"
    }
    else if <def[line]> == 3 {
        - determine "<&7>Status<&co> <&b><mobarena.list_arenas.get[<def[arenaID]>].status>"
    }
    else if <def[line]> == 4 {
        - determine "<&7>Spillere i Arenaen<&co> <&b><mobarena.list_arenas.get[<def[arenaID]>].players.in_arena.size>"
    }
    else {
        - determine "<&c>Line not found"
    }
    - determine ""

MobArenaMenu_Command:
    type: command
    name: mamenu
    description: Menu for MobArena
    usage: /mamenu
    aliases:
    - mobarenamenu
    script:
    - inventory open d:in@MobArenaMenu_Menu

MobArenaMenu_Item1:
    type: item
    material: <proc[MobArenaMenu_Proc].context[1|1]>
    display name: <proc[MobArenaMenu_Proc].context[1|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[1|3]>
    - <proc[MobArenaMenu_Proc].context[1|4]>

MobArenaMenu_Item2:
    type: item
    material: <proc[MobArenaMenu_Proc].context[2|1]>
    display name: <proc[MobArenaMenu_Proc].context[2|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[2|3]>
    - <proc[MobArenaMenu_Proc].context[2|4]>

MobArenaMenu_Item3:
    type: item
    material: <proc[MobArenaMenu_Proc].context[3|1]>
    display name: <proc[MobArenaMenu_Proc].context[3|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[3|3]>
    - <proc[MobArenaMenu_Proc].context[3|4]>

MobArenaMenu_Item4:
    type: item
    material: <proc[MobArenaMenu_Proc].context[4|1]>
    display name: <proc[MobArenaMenu_Proc].context[4|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[4|3]>
    - <proc[MobArenaMenu_Proc].context[4|4]>

MobArenaMenu_Item5:
    type: item
    material: <proc[MobArenaMenu_Proc].context[5|1]>
    display name: <proc[MobArenaMenu_Proc].context[5|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[5|3]>
    - <proc[MobArenaMenu_Proc].context[5|4]>

MobArenaMenu_Item6:
    type: item
    material: <proc[MobArenaMenu_Proc].context[6|1]>
    display name: <proc[MobArenaMenu_Proc].context[6|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[6|3]>
    - <proc[MobArenaMenu_Proc].context[6|4]>

MobArenaMenu_Item7:
    type: item
    material: <proc[MobArenaMenu_Proc].context[7|1]>
    display name: <proc[MobArenaMenu_Proc].context[7|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[7|3]>
    - <proc[MobArenaMenu_Proc].context[7|4]>

MobArenaMenu_Item8:
    type: item
    material: <proc[MobArenaMenu_Proc].context[8|1]>
    display name: <proc[MobArenaMenu_Proc].context[8|2]>
    lore:
    - <proc[MobArenaMenu_Proc].context[8|3]>
    - <proc[MobArenaMenu_Proc].context[8|4]>

MobArenaMenu_Close:
    type: item
    material: BARRIER
    display name: <&a>Luk Menu