Paste #29942: Untitled Paste

Date: 2016/02/08 08:40:29 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


CustomQuestGUI:
    type: assignment  
    actions:  
        on click:  
        - inventory open d:in@QuestGUI
QuestGUI:
  type: inventory
  inventory: chest
  title: "<&6><&l>Quest Master"
  size: 63
  definitions:
    border: i@border_item
    return_button: i@return_button
    CreeperQuest: i@CreeperQuest
    PlayerQuest: i@Playerquest
  slots:
    - "[border] [border] [border] [border] [border] [border] [border] [border] [border]" 
    - "[border] [] [PlayerQuest] [] [] [] [] [] [border]" 
    - "[border] [] [CreeperQuest] [] [] [] [] [] [border]" 
    - "[border] [] [] [] [] [] [] [] [border]" 
    - "[] [] [] [] [] [] [] [] [] " 
    - "[] [] [] [] [] [] [] [] [] "
    - "[border] [border] [border] [border] [border] [border] [border] [return_button]" 


GUI_Inventory_World:
  type: world
  events:
    on player clicks in QuestGUI:
    - determine cancelled

    on player clicks PlayerQuest in QuestGUI:
    - if <player.has_flag[npc_engaged]> queue clear 
      - if <player.flag[kill_player_quest_weekly_cooldown].is_expired.not> { 
      - narrate "<&6>Highlord: <&7><&o>You can repeat this quest in <player.flag[kill_player_quest_weekly_cooldown].expiration.formatted>" 
      - queue clear 
    } 
    - flag player npc_engaged 
    - if <player.flag[kill_player_quest_weekly_count]||0> >= 30 { 
      - narrate "<&6>Highlord: <&7><&o>Great work! Here's your reward!" 
      - give xp quantity:1000
      - narrate "<&2>$5000 has been added to your account."
      - give money qty:5000
      - flag <player> kill_player_quest_weekly_count:!    
      - flag <player> kill_player_quest_weekly:! 
      - flag <player> kill_player_quest_weekly_cooldown duration:168h
      - queue clear 
    } 
    - if <player.flag[kill_player_quest_weekly_cooldown]||false> { 
      - queue clear 
    }
    - flag player kill_player_quest_weekly 
    - flag player kill_player_quest_weekly_count:0.round
    - narrate "<player.flag[kill_player_quest_weekly_count].round||0> players!"

    on player kills player: 
    - flag <context.damager.as_player> kill_player_quest_weekly_count:++ 
    - narrate "<&a>You have killed <player.flag[kill_player_quest_weekly_count].round> players!"
    - if <context.damager.as_player.flag[kill_player_quest_weekly_count]> >= 30 { 
      - narrate "[<&b>Return to the quest giver]" targets:<context.damager.as_player> 
      - flag <context.damager.as_player> kill_player_quest_weekly:! 
    } 

    on player clicks CreeperQuest in QuestGUI:
    - if <player.flag[kill_creeper_quest_cooldown].is_expired.not> { 
      - narrate "<&7><&o>You can repeat this quest in <player.flag[kill_creeper_quest_cooldown].expiration.formatted>" 
      - queue clear 
    } 
    - if <player.flag[kill_creeper_quest_count]||0> >= 5 { 
      - give xp quantity:150
      - narrate "<&2>$1000 has been added to your account."
      - give money qty:1000
      - flag player kill_creeper_quest_count:! 
      - flag player kill_creeper_quest_cooldown duration:24h 
      - queue clear 
    }
    - if <player.flag[kill_creeper_quest_cooldown]||false> { 
      - queue clear 
    } 
    - narrate "<&a>[Kill <&4>5 <&a>Creepers!]" 
    - flag player kill_creeper_quest 
    - flag player kill_creeper_quest_count:0.round 
    - narrate "<&a><player.flag[kill_creeper_quest_count].round||0> Creepers!"

    on player kills creeper: 
    - flag <context.damager.as_player> kill_creeper_quest_count:++
    - narrate "<&a>You have killed <player.flag[kill_creeper_quest_count].round> Creepers!"
    - if <context.damager.as_player.flag[kill_creeper_quest_count]> >= 5 { 
      - narrate "<&b>[Return to the Highlord]" targets:<context.damager.as_player> 
      - flag <context.damager.as_player> kill_creeper_quest:! 
    } 
    on player clicks return_button IN QuestGUI:
    - inventory close

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

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

CreeperQuest:
   type: item
   material: i@383,50
   display name: "<&a>Creeper Quest"
   lore: 
   - "<&a>Kill <&c>5 <&7> <&a>Creepers!"
   - "<&6>Cooldown:<&7><&o> <player.flag[kill_creeper_quest_cooldown].expiration.formatted.replace[forever].with[0 seconds]||24 Hours>"

PlayerQuest:
   type: item
   material: i@diamond_chestplate
   display name: "<&c>Player Quest"
   lore: 
   - "<&a>Kill <&c>5 <&7> <&a>Players!"
   - "<&6>Cooldown:<&7><&o> <player.flag[kill_player_quest_weekly_cooldown].expiration.formatted.replace[forever].with[0 seconds]||24 Hours>"