Paste #44863: Untitled Paste

Date: 2017/10/07 18:42:25 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


BonusPoints_Postgame:
  type: task
  debug: true
  script:
  - if !<def[player].has_flag[winner]> {
    - goto top3
    }
  - if !<def[player].has_flag[bonuspoints.flawlesspacifist]> {
    - flag <def[player]> bonuspoints.flawlesspacifist:1
    }
  - if <def[player].flag[deaths]> == 0 {
    - flag <def[player]> bonuspoints.flawlessvictory:1
    }
  - mark top3
  - if !<def[player].has_flag[top3]> {
    - goto bonuses
    }
  - if !<def[player].has_flag[bonuspoints.mundane]> {
    - flag <def[player]> bonuspoints.mundane:1
    }
  - if !<def[player].has_flag[bonuspoints.minimalist]> {
    - flag <def[player]> bonuspoints.minimalist:1
    }  
  - mark bonuses
  - if <def[player].flag[score].is[OR_MORE].than[1]> && !<def[player].list_flags[bonuspoints].contains_text[pacifist]> {
    - flag <def[player]> bonuspoints.pacifist:1
    }
  - if <def[player].flag[score].is[OR_MORE].than[1]> && !<def[player].has_flag[bonuspoints.untouchable]> {
    - flag <def[player]> bonuspoints.untouchable:1
    }
  - if <def[player].flag[score].is[OR_MORE].than[<s@Config.yaml_key[Bonuspoints.jackpot.requirement]>]> && <def[player].flag[score].is[==].to[<def[player].flag[kills]>]> {
    - flag <def[player]> bonuspoints.jackpot:1
    }
  - if <def[player].flag[score].is[OR_MORE].than[<s@Config.yaml_key[Bonuspoints.jackpot.requirement]>]> && <def[player].flag[score].is[==].to[<def[player].flag[kills]>]> && <def[player].flag[score].is[==].to[<def[player].flag[deaths]>]> {
    - flag <def[player]> bonuspoints.flawlessjackpot:<def[player].flag[score]>
    }
  - if <def[player].health.is[OR_LESS].than[<s@config.yaml_key[Bonuspoints.dyingbreath.requirement]> {
    - flag <def[player]> bonuspoints.dyingbreath:1
    }
  - if <def[player].health.is[==].to[<def[player].health.max>]> {
    - flag <def[player]> bonuspoints.nosweat:1
    }
  - if !<def[player].list_flags.contains[bonuspoints.killtype]> {
    - goto deaths
    }
  - if <def[player].list_flags[bonuspoints.killtype].contains_all[bonuspoints.killtype.bow|bonuspoints.killtype.axe|bonuspoints.killtype.sword]||null> {
    - flag <def[player]> bonuspoints.wellrounded:1
    }
  - define bowkills <def[player].flag[bonuspoints.killtype.bow]||0>
  - if <def[bowkills]> >= <def[bowkills].add[<def[player].flag[bonuspoints.killtype.sword]||0>].add[<def[player].flag[bonuspoints.killtype.axe]||0>].add[<def[player].flag[bonuspoints.killtype.other]||0>].div[2]>]> {
    - flag <def[player]> bonuspoints.rambow:1
    }
  - mark deaths
  - if <def[player].flag[deaths].is[LESS].than[<s@Config.yaml_key[BonusPoints.stayingalive.requirement]>]> {
    - flag <def[player]> bonuspoints.stayingalive:1
    }
  - if !<def[player].has_flag[bonuspoints.lockedknees]> {
    - flag <def[player]> bonuspoints.lockedknees:1
    }
  - if !<yaml[<def[player].uuid>].contains[<def[player].uuid>.hasplayed]> || <yaml[<def[player].uuid>].read[<def[player].uuid>.hasplayed].is[==].to[false]> {
    - yaml load:/players/<def[player].uuid>.yml id:<def[player].uuid>
    - yaml id:<def[player].uuid> set <def[player].uuid>.hasplayed:true
    - yaml savefile:/players/<def[player].uuid>.yml id:<def[player].uuid>
    - flag <def[player]> bonuspoints.firstplay:1
    }
  - if <def[player].flag[bonuspoints.purifierpending].is[OR_MORE].than[<s@Config.yaml_key[Bonuspoints.purifier.requirement]>]||null> {
    - flag <def[player]> bonuspoints.purifier:1
    }