Outputting percentage value on label

Andrew Finch
Andrew Finch Member Posts: 17 Newcomer

Hi Guys,

I have adapted some code I found and it is working well, except the output the slider gives me is not a percentage but actually one of the %drywet values. How can I change the code attached so it shows percentage values on my label? (Tried to do a code block but said I had too many characters!)

Thanks in advance!

Best Answer

  • Tyrus
    Tyrus Member Posts: 6 Member
    Answer ✓

    You can calculate the percentage before you set the text on your reverb label. Multiply the dry-wet value by 100 first, then divide by whatever your maximum dry-wet value is. Below I used the last value in your dry-wet array as said maximum. (fyi, if you instead multiply by 100 *after* dividing, you'll always get 0, which you don't want to do.)

    declare $drywetpercent := %drywet[$reverb] * 100 / %drywet[1000]
    
    set_text($reverb_label, "Reverb " & $drywetpercent & " %")
    

Answers

  • AndrewFromTexas
    AndrewFromTexas Member Posts: 5 Member

    I might recommend using the get_engine_par_disp() command instead of referencing your lookup array.

    Something like:

    on ui_control($reverb)
    set_text($reverb_label, get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, group, slot, generic) & "%"
    end on
    


  • Andrew Finch
    Andrew Finch Member Posts: 17 Newcomer

    Unfortunately this doesn't work as I am blending between the dry and wet in the reverb insert so I end up with -inf to 0% rather than 0-100%

  • Tyrus
    Tyrus Member Posts: 6 Member
    Answer ✓

    You can calculate the percentage before you set the text on your reverb label. Multiply the dry-wet value by 100 first, then divide by whatever your maximum dry-wet value is. Below I used the last value in your dry-wet array as said maximum. (fyi, if you instead multiply by 100 *after* dividing, you'll always get 0, which you don't want to do.)

    declare $drywetpercent := %drywet[$reverb] * 100 / %drywet[1000]
    
    set_text($reverb_label, "Reverb " & $drywetpercent & " %")
    
  • Andrew Finch
    Andrew Finch Member Posts: 17 Newcomer

    That's sorted it, thank you!

  • EvilDragon
    EvilDragon Moderator Posts: 1,023 mod
    edited February 2022

    Just use the value of your slider.

    $reverb -> label := $reverb / 10 & "." & $reverb mod 10 & " %"

Back To Top