Paste #33692: Edit of P#33664 text based progress bar utility

Date: 2016/05/24 16:40:05 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


util_progress_bar:
  type: procedure
  debug: false
  script:
  - define percentage <def[1]||0>
  - if <def[percentage].as_int||none> == none {
    - define percentage 0
    }
  - if <def[2].exists> {
    - define max <def[2]>
    }
  - if <def[max].as_int||none> == none {
    - define max 10
    }
  - if <def[3].exists> {
    - define char <def[3].substring[1,1]||=>
    } else {
    - define char =
    }
  - if <def[4].exists> {
    - define col1 <def[4]>
    } else {
    - define col1 &a
    }
  - if <def[5].exists> {
    - define col2 <def[5]>
    } else {
    - define col2 &7
    }
  - define string <def[char].pad_right[<def[max].sub[1]>].with[<def[char]>]>
  - define split <def[max].div[100].mul[<def[percentage]>].as_int>
  - determine "<def[col1].parse_colors><def[string].substring[1,<def[split]>]><def[col2].parse_colors><def[string].substring[<def[split].add[1].as_int>,<def[max]>]>"