Advertisement
BrandonSpendlove

Kontakt - Reverb Script Example

Nov 29th, 2013
704
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.01 KB | None | 0 0
  1. {IMPORTANT NOTE: Make sure the REVERB FX is in the 1st Insert SLOT in your Instrument NKI
  2.  
  3. You can download this example at: http://www.newgrounds.com/dump/item/1984f1ed91837de775442b8c00bb276e }
  4.  
  5.  
  6.  
  7. on init
  8.  
  9.  
  10.  
  11. message ("")
  12.  
  13.  
  14.  
  15. make_perfview
  16.  
  17. set_ui_height (3)
  18.  
  19.  
  20.  
  21. declare $count
  22.  
  23.  
  24.  
  25. $count := 0
  26.  
  27.  
  28.  
  29. {Reverb Parameters}
  30.  
  31.  
  32.  
  33. declare ui_knob $reverbpredelay (0,1000000,1)
  34.  
  35. declare ui_knob $reverbsize (0,1000000,1)
  36.  
  37. declare ui_knob $reverbcolour (0,1000000,1)
  38.  
  39. declare ui_knob $reverbdamping (0,1000000,1)
  40.  
  41. declare ui_knob $reverbstereo (0,1000000,1)
  42.  
  43. declare ui_knob $reverbdry (0,1000000,1)
  44.  
  45. declare ui_knob $reverbwet (0,1000000,1)
  46.  
  47.  
  48.  
  49. {Storing the Reverb parameters together, I do this personally, you don't have to..}
  50.  
  51.  
  52.  
  53. declare !reverbcontrols[7]
  54.  
  55.  
  56.  
  57. !reverbcontrols[0] := $reverbpredelay
  58.  
  59. !reverbcontrols[1] := $reverbsize
  60.  
  61. !reverbcontrols[2] := $reverbcolour
  62.  
  63. !reverbcontrols[3] := $reverbdamping
  64.  
  65. !reverbcontrols[4] := $reverbstereo
  66.  
  67. !reverbcontrols[5] := $reverbdry
  68.  
  69. !reverbcontrols[6] := $reverbwet
  70.  
  71.  
  72.  
  73. {Moving the knobs...}
  74.  
  75.  
  76.  
  77. move_control($reverbpredelay, 1,1)
  78.  
  79. move_control($reverbsize, 2,1)
  80.  
  81. move_control($reverbcolour, 3,1)
  82.  
  83. move_control($reverbdamping, 4,1)
  84.  
  85. move_control($reverbstereo, 5,1)
  86.  
  87. move_control($reverbdry, 1,5)
  88.  
  89. move_control($reverbwet, 2,5)
  90.  
  91.  
  92.  
  93. {Neating the text on the knob labels}
  94.  
  95.  
  96.  
  97. set_text($reverbpredelay,"Pre.Delay")
  98.  
  99. set_text($reverbsize,"Size")
  100.  
  101. set_text($reverbcolour,"Colour")
  102.  
  103. set_text($reverbdamping,"Damping")
  104.  
  105. set_text($reverbstereo,"Stereo")
  106.  
  107. set_text($reverbdry,"Dry")
  108.  
  109. set_text($reverbwet,"Wet")
  110.  
  111.  
  112.  
  113. {Setting the knob labels to the Reverb when the NKI is loaded}
  114.  
  115.  
  116.  
  117. set_knob_label($reverbpredelay,get_engine_par_disp($ENGINE_PAR_RV_PREDELAY, -1,0,1))
  118.  
  119. set_knob_label($reverbsize,get_engine_par_disp($ENGINE_PAR_RV_SIZE, -1,0,1))
  120.  
  121. set_knob_label($reverbcolour,get_engine_par_disp($ENGINE_PAR_RV_COLOUR, -1,0,1))
  122.  
  123. set_knob_label($reverbdamping,get_engine_par_disp($ENGINE_PAR_RV_DAMPING, -1,0,1))
  124.  
  125. set_knob_label($reverbstereo,get_engine_par_disp($ENGINE_PAR_RV_STEREO, -1, 0, 1))
  126.  
  127. set_knob_label($reverbdry,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_DRY_LEVEL, -1,0,1))
  128.  
  129. set_knob_label($reverbwet,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, -1,0,1))
  130.  
  131. {KNOB UNIT.... Only predelay knob, it need MS in the label, This command should be implemented after set_knob_label !!!}
  132.  
  133.  
  134.  
  135.  
  136. set_knob_unit($reverbpredelay,$KNOB_UNIT_MS)
  137.  
  138.  
  139.  
  140.  
  141. {Setting the Knob itself as the Reverb parameters when someone loads the NKI patch}
  142.  
  143.  
  144.  
  145. set_engine_par($ENGINE_PAR_RV_PREDELAY,$reverbpredelay, -1,0,1)
  146.  
  147. set_engine_par($ENGINE_PAR_RV_SIZE,$reverbsize, -1,0,1)
  148.  
  149. set_engine_par($ENGINE_PAR_RV_COLOUR,$reverbcolour, -1,0,1)
  150.  
  151. set_engine_par($ENGINE_PAR_RV_DAMPING,$reverbdamping, -1,0,1)
  152.  
  153. set_engine_par($ENGINE_PAR_RV_STEREO,$reverbstereo, -1,0,1)
  154.  
  155. set_engine_par($ENGINE_PAR_SEND_EFFECT_DRY_LEVEL,$reverbdry, -1,0,1)
  156.  
  157. set_engine_par($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN,$reverbwet, -1,0,1)
  158.  
  159.  
  160.  
  161. end on
  162.  
  163.  
  164.  
  165. {NOW we use on ui_control to make the knobs actually work with the Reverb FX}
  166.  
  167.  
  168. {Knob names as we declared them as, not what we set_text to!!!}
  169.  
  170.  
  171. on ui_control ($reverbpredelay)
  172.  
  173.  
  174.  
  175. set_engine_par($ENGINE_PAR_RV_PREDELAY,$reverbpredelay, -1,0,1)
  176.  
  177. set_knob_label($reverbpredelay,get_engine_par_disp($ENGINE_PAR_RV_PREDELAY, -1,0,1))
  178.  
  179.  
  180.  
  181. end on
  182.  
  183.  
  184.  
  185.  
  186. on ui_control ($reverbsize)
  187.  
  188.  
  189.  
  190. set_engine_par($ENGINE_PAR_RV_SIZE,$reverbsize, -1,0,1)
  191.  
  192. set_knob_label($reverbsize,get_engine_par_disp($ENGINE_PAR_RV_SIZE, -1,0,1))
  193.  
  194.  
  195.  
  196. end on
  197.  
  198.  
  199.  
  200.  
  201. on ui_control ($reverbcolour)
  202.  
  203.  
  204.  
  205. set_engine_par($ENGINE_PAR_RV_COLOUR,$reverbcolour, -1,0,1)
  206.  
  207. set_knob_label($reverbcolour,get_engine_par_disp($ENGINE_PAR_RV_COLOUR, -1,0,1))
  208.  
  209.  
  210.  
  211. end on
  212.  
  213.  
  214.  
  215.  
  216. on ui_control ($reverbdamping)
  217.  
  218.  
  219.  
  220. set_engine_par($ENGINE_PAR_RV_DAMPING,$reverbdamping, -1,0,1)
  221.  
  222. set_knob_label($reverbdamping,get_engine_par_disp($ENGINE_PAR_RV_DAMPING, -1,0,1))
  223.  
  224.  
  225.  
  226. end on
  227.  
  228.  
  229.  
  230.  
  231. on ui_control ($reverbstereo)
  232.  
  233.  
  234.  
  235. set_engine_par($ENGINE_PAR_RV_STEREO,$reverbstereo, -1,0,1)
  236.  
  237. set_knob_label($reverbstereo,get_engine_par_disp($ENGINE_PAR_RV_STEREO, -1, 0, 1))
  238.  
  239.  
  240.  
  241. end on
  242.  
  243.  
  244.  
  245.  
  246. on ui_control ($reverbdry)
  247.  
  248.  
  249.  
  250. set_engine_par($ENGINE_PAR_SEND_EFFECT_DRY_LEVEL,$reverbdry, -1,0,1)
  251.  
  252. set_knob_label($reverbdry,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_DRY_LEVEL, -1,0,1))
  253.  
  254.  
  255.  
  256. end on
  257.  
  258.  
  259.  
  260.  
  261. on ui_control ($reverbwet)
  262.  
  263.  
  264.  
  265. set_engine_par($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN,$reverbwet, -1,0,1)
  266.  
  267. set_knob_label($reverbwet,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, 1,0,1))
  268.  
  269.  
  270.  
  271. end on
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement