Advertisement
mattswindell

Untitled

Feb 27th, 2024
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 72.85 KB | None | 0 0
  1. #ifdef CONFIG_TOP
  2. #include "proffieboard_v3_config.h"
  3. #define NUM_BLADES 2
  4. #define NUM_BUTTONS 1
  5. #define VOLUME 1500
  6. const unsigned int maxLedsPerStrip = 264;
  7. #define CLASH_THRESHOLD_G 3.6
  8. #define ENABLE_AUDIO
  9. #define ENABLE_MOTION
  10. #define ENABLE_WS2811
  11. #define ENABLE_SD
  12. #define DISABLE_DIAGNOSTIC_COMMANDS
  13. #define COLOR_CHANGE_DIRECT
  14. #define IDLE_OFF_TIME 60*10*1000
  15. #define MOTION_TIMEOUT 60*10*1000
  16. #define SA22C_TWIST_ON
  17. #define SA22C_TWIST_OFF
  18. #define SA22C_FORCE_PUSH
  19. #define SA22C_FORCE_PUSH_LENGTH 5
  20. #define SA22C_THRUST_ON
  21. #define GESTURE_AUTO_BATTLE_MODE
  22. #define SA22C_LOCKUP_DELAY (200)
  23. #define SHARED_POWER_PINS
  24. #define FETT263_SWING_ON
  25. //#define FETT263_SWING_ON_SPEED 330
  26. #define FETT263_TWIST_ON
  27. //#define FETT263_TWIST_OFF
  28. //#define FETT263_STAB_ON
  29. //#define FETT263_LOCKUP_DELAY 200
  30. //#define FETT263_THRUST_ON
  31. //#define FETT263_FORCE_PUSH
  32. //#define FETT263_MULTI_PHASE
  33. //#define FETT263_BATTLE_MODE_ALWAYS_ON
  34. //#define FETT263_BATTLE_MODE_START_ON
  35. //#define FETT263_BM_DISABLE_OFF_BUTTON
  36. //#define FETT263_SWING_ON_NO_BM
  37. //#define FETT263_TWIST_ON_NO_BM
  38. //#define FETT263_THRUST_ON_PREON
  39. //#define FETT263_STAB_ON_NO_BM
  40. //#define FETT263_STAB_ON
  41. //#define FETT263_STAB_ON_PREON
  42. //#define FETT263_TWIST_ON_PREON
  43. //#define FETT263_SWING_ON_PREON
  44. // #define SA22C_STAB_ON
  45. //#define SA22C_SWING_ON
  46. // #define SA22C_THRUST_ON
  47. #endif
  48.  
  49. #ifdef CONFIG_PROP
  50. #include "../props/saber_sa22c_buttons.h"
  51. #endif
  52.  
  53. #ifdef CONFIG_PRESETS
  54. Preset presets[] = {
  55. { "VERNDARI_PROFFIE", "tracks/mercury.wav",
  56. StylePtr<Layers<
  57. Mix<Sin<Int<3>>,AudioFlicker<RotateColorsX<Variation,DodgerBlue>,Stripes<5000,-90,RotateColorsX<Variation,Rgb<0,55,165>>,RotateColorsX<Variation,Rgb<0,85,115>>,RotateColorsX<Variation,Rgb<0,65,145>>,RotateColorsX<Variation,Rgb<0,30,185>>>>,AudioFlicker<RotateColorsX<Variation,Rgb<0,155,255>>,Stripes<5000,-90,RotateColorsX<Variation,Rgb<0,95,170>>,RotateColorsX<Variation,Rgb<0,115,215>>,RotateColorsX<Variation,Rgb<0,145,145>>,RotateColorsX<Variation,Rgb<0,65,225>>>>>,
  58. //Rotates ^3 times per minute between DodgerBlue and DeepSkyBlue with subtle Cyan/Blue audioflicker
  59. //AudioFlicker<RotateColorsX<Variation,DeepSkyBlue>,RotateColorsX<Variation,Rgb<0,95,195>>>,
  60. //Alternate DeepSkyBlue with very subtle audioflicker
  61. AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,DeepSkyBlue>,Black,300>,SwingSpeed<400>>,
  62. //Unstable swing
  63. AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,DeepSkyBlue>,Black>,Black,RotateColorsX<Variation,DeepSkyBlue>,Black>,SwingSpeed<525>>,
  64. //Unstable ripple swing
  65. LockupTrL<Layers<
  66. AlphaL<AudioFlickerL<Rgb<255,240,80>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  67. AlphaL<LemonChiffon,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<875>>,SaberBase::LOCKUP_NORMAL>,
  68. //Responsive lockup effect with screeching humpflicker endlock
  69. //LockupTrL<Layers<
  70. //AlphaL<AudioFlickerL<White>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  71. //AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,White,TrFade<4000>>,SaberBase::LOCKUP_NORMAL>,
  72. //Alternate standard lockup
  73. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  74. //Responsive lightning block
  75. ResponsiveStabL<RotateColorsX<Variation,Yellow>>,
  76. //Responsive stab
  77. //ResponsiveStabL<Red>,
  78. //Alternate responsive stab, no color change
  79. EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  80. //Multi-blast, blaster reflect cycles through different responsive effects
  81. //ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>>,
  82. //Alternate responsive blast
  83. ResponsiveClashL<TransitionEffect<Rgb<255,240,80>,LemonChiffon,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  84. //Responsive Clash
  85. //ResponsiveClashL<White,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  86. //Alternate white clash
  87. TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<90,180,255>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,26,60>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<90,180,255>>,RotateColorsX<Variation,Rgb<0,26,60>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,42,128>>,RotateColorsX<Variation,Rgb<0,26,60>>>>,TrFade<400>,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<90,180,255>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,26,60>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<90,180,255>>,RotateColorsX<Variation,Rgb<0,26,60>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,42,128>>,RotateColorsX<Variation,Rgb<0,26,60>>>>,TrFade<450>,HumpFlickerL<AlphaL<RotateColorsX<Variation,Rgb<90,180,255>>,Int<19000>>,25>,TrFade<2875>>,EFFECT_IGNITION>,
  88. //Stabilize ignition effect
  89. TransitionEffectL<TrConcat<TrFade<1125>,RotateColorsX<Variation,Rgb<90,180,255>>,TrInstant>,EFFECT_RETRACTION>,
  90. //Slow brighten retraction effect
  91. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  92. //Drag
  93. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  94. //Responsive melt
  95. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  96. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  97. InOutTrL<TrWipe<500>,TrWipeIn<1125>>,
  98. //Standard ignition/retraction
  99. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  100. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  101. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  102. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  103. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  104. TransitionEffectL<TrConcat<TrFade<450>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,10>,Bump<Int<0>,Int<3000>>>,TrFade<350>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,15>,Bump<Int<0>,Int<5000>>>,TrFade<450>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,20>,Bump<Int<0>,Int<7000>>>,TrFade<500>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,25>,Bump<Int<0>,Int<10500>>>,TrBoing<150,1>>,EFFECT_PREON>
  105. //Overload preon effect
  106. >>()},
  107. { "CODA_PROFFIE", "tracks/mercury.wav",
  108. StylePtr<Layers<
  109. Mix<Sin<Int<3>>,AudioFlicker<RotateColorsX<Variation,DodgerBlue>,Stripes<5000,-90,RotateColorsX<Variation,Rgb<0,55,165>>,RotateColorsX<Variation,Rgb<0,85,115>>,RotateColorsX<Variation,Rgb<0,65,145>>,RotateColorsX<Variation,Rgb<0,30,185>>>>,AudioFlicker<RotateColorsX<Variation,Rgb<0,155,255>>,Stripes<5000,-90,RotateColorsX<Variation,Rgb<0,95,170>>,RotateColorsX<Variation,Rgb<0,115,215>>,RotateColorsX<Variation,Rgb<0,145,145>>,RotateColorsX<Variation,Rgb<0,65,225>>>>>,
  110. //Rotates ^3 times per minute between DodgerBlue and DeepSkyBlue with subtle Cyan/Blue audioflicker
  111. //AudioFlicker<RotateColorsX<Variation,DeepSkyBlue>,RotateColorsX<Variation,Rgb<0,95,195>>>,
  112. //Alternate DeepSkyBlue with very subtle audioflicker
  113. AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,DeepSkyBlue>,Black,300>,SwingSpeed<400>>,
  114. //Unstable swing
  115. AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,DeepSkyBlue>,Black>,Black,RotateColorsX<Variation,DeepSkyBlue>,Black>,SwingSpeed<525>>,
  116. //Unstable ripple swing
  117. LockupTrL<Layers<
  118. AlphaL<AudioFlickerL<Rgb<255,240,80>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  119. AlphaL<LemonChiffon,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<875>>,SaberBase::LOCKUP_NORMAL>,
  120. //Responsive lockup effect with screeching humpflicker endlock
  121. //LockupTrL<Layers<
  122. //AlphaL<AudioFlickerL<White>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  123. //AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,White,TrFade<4000>>,SaberBase::LOCKUP_NORMAL>,
  124. //Alternate standard lockup
  125. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  126. //Responsive lightning block
  127. ResponsiveStabL<RotateColorsX<Variation,Yellow>>,
  128. //Responsive stab
  129. //ResponsiveStabL<Red>,
  130. //Alternate responsive stab, no color change
  131. EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  132. //Multi-blast, blaster reflect cycles through different responsive effects
  133. //ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>>,
  134. //Alternate responsive blast
  135. ResponsiveClashL<TransitionEffect<Rgb<255,240,80>,LemonChiffon,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  136. //Responsive Clash
  137. //ResponsiveClashL<White,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  138. //Alternate white clash
  139. TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<90,180,255>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,26,60>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<90,180,255>>,RotateColorsX<Variation,Rgb<0,26,60>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,42,128>>,RotateColorsX<Variation,Rgb<0,26,60>>>>,TrFade<400>,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<90,180,255>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,26,60>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<90,180,255>>,RotateColorsX<Variation,Rgb<0,26,60>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<0,42,128>>,RotateColorsX<Variation,Rgb<0,26,60>>>>,TrFade<450>,HumpFlickerL<AlphaL<RotateColorsX<Variation,Rgb<90,180,255>>,Int<19000>>,25>,TrFade<2875>>,EFFECT_IGNITION>,
  140. //Stabilize ignition effect
  141. TransitionEffectL<TrConcat<TrFade<1125>,RotateColorsX<Variation,Rgb<90,180,255>>,TrInstant>,EFFECT_RETRACTION>,
  142. //Slow brighten retraction effect
  143. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  144. //Drag
  145. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  146. //Responsive melt
  147. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  148. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  149. InOutTrL<TrWipe<500>,TrWipeIn<1125>>,
  150. //Standard ignition/retraction
  151. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  152. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  153. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  154. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  155. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  156. TransitionEffectL<TrConcat<TrFade<450>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,10>,Bump<Int<0>,Int<3000>>>,TrFade<350>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,15>,Bump<Int<0>,Int<5000>>>,TrFade<450>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,20>,Bump<Int<0>,Int<7000>>>,TrFade<500>,AlphaL<HumpFlickerL<RotateColorsX<Variation,DeepSkyBlue>,25>,Bump<Int<0>,Int<10500>>>,TrBoing<150,1>>,EFFECT_PREON>
  157. //Overload preon effect
  158. >>()},
  159. { "GREY_PROFFIE", "tracks/mercury.wav",
  160. StylePtr<Layers<
  161. AudioFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,RotateColorsX<Variation,Rgb<50,50,75>>>,
  162. //White audioflicker
  163. EffectSequence<EFFECT_FORCE,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,White>,Black,300>,SwingSpeed<450>>,AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,Black>,White,RotateColorsX<Variation,Rgb<100,100,150>>,White>,SwingSpeed<450>>>,
  164. //Force toggleable swing effect. Trigger a force effect to alternate between a ripple swing and an unstable swing (the two below)
  165. //AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<100,100,150>>,Black>,White,RotateColorsX<Variation,Rgb<100,100,150>>,White>,SwingSpeed<450>>,
  166. //Alternate swing effect, white ripple
  167. //AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,White>,Black,300>,SwingSpeed<450>>,
  168. //Alternate swing effect, unstable white
  169. LockupTrL<Layers<
  170. AlphaL<AudioFlickerL<Azure>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  171. AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,TransitionEffect<Azure,White,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<400>>,TrConcat<TrInstant,TransitionEffect<White,Azure,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<700>>,SaberBase::LOCKUP_NORMAL>,
  172. //Responsive lockup
  173. //LockupTrL<Layers<
  174. // AlphaL<AudioFlickerL<Rgb<255,100,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  175. // AlphaL<Red,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<5000>>>>,TrConcat<TrInstant,TransitionEffect<Azure,White,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<400>>,TrConcat<TrInstant,TransitionEffect<White,Azure,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,TrFade<700>>,SaberBase::LOCKUP_NORMAL>,
  176. //Alternate responsive lockup, "beskar" heat up. Note: right now this is really just a placeholder until OS6 brings the intensity lockup, which will really give it a Mando feel if that's what you're after
  177. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  178. //Responsive lightning block
  179. ResponsiveStabL<Blue>,
  180. //Responsive stab, ice blue
  181. //ResponsiveStabL<White>,
  182. //Alternate responsive stab, white
  183. EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  184. //Multi-blast, blaster reflect cycles through different responsive effects
  185. ResponsiveClashL<TransitionEffect<Azure,White,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  186. //Responsive clash
  187. TransitionEffectL<TrConcat<TrInstant,TransitionEffect<White,Azure,TrInstant,TrFade<500>,EFFECT_LOCKUP_BEGIN>,TrFade<1000>,Stripes<3000,-3500,White,RandomPerLEDFlicker<Rgb<60,60,60>,Black>,BrownNoiseFlicker<White,Rgb<30,30,30>,200>,RandomPerLEDFlicker<Rgb<80,80,80>,Rgb<30,30,30>>>,TrFade<575>,TransitionEffect<Rgb16<24485,24485,24485>,Rgb16<17521,23829,23829>,TrInstant,TrFade<100>,EFFECT_LOCKUP_BEGIN>,TrFade<300>,Stripes<3000,-3500,White,RandomPerLEDFlicker<Rgb<60,60,60>,Black>,BrownNoiseFlicker<White,Rgb<30,30,30>,200>,RandomPerLEDFlicker<Rgb<80,80,80>,Rgb<30,30,30>>>,TrFade<1100>>,EFFECT_IGNITION>,
  188. //Unstable ignition effect
  189. TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<White,40>,TrFade<1000>>,EFFECT_RETRACTION>,
  190. //Bright humpflicker retraction effect
  191. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  192. //Drag
  193. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  194. //Responsive melt
  195. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  196. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  197. InOutTrL<TrWipeSparkTip<White,1500>,TrWipeInSparkTip<White,1000>>,
  198. //Spark tip ignition and retraction
  199. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  200. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  201. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  202. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  203. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  204. >>()},
  205. { "SEETHE_PROFFIE", "tracks/mercury.wav",
  206. StylePtr<Layers<
  207. AudioFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<200,0,0>>>,
  208. //Red audioflicker
  209. TransitionEffectL<TrConcat<TrFade<200>,AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,SwingSpeed<500>>,TrDelay<30000>,AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,SwingSpeed<500>>,TrFade<800>>,EFFECT_FORCE>,
  210. //Force effect, temporarily allows a swing effect where solid dark orange takes over the blade when swinging
  211. AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Red>,Black,300>,SwingSpeed<315>>,
  212. //Unstable swing
  213. LockupTrL<Layers<
  214. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  215. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  216. //Responsive lockup
  217. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  218. //Responsive lightning block
  219. Mix<Sin<Int<8>>,AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,Bump<Int<0>,Int<6000>>>,AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,Bump<Int<0>,Int<22000>>>>,
  220. //Timed "breathing" emitter flare - NOTE: Due to the way Proffie works, this isn't always "lined up" and might be slightly ahead or slightly behind the hum's breathing. To fix you can turn the saber off and back on until it's lined up. The timing is right, but the code runs in the background even after turning the saber off so it doesn't always start "on time."
  221. //AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,Bump<Int<0>,Scale<TwistAngle<>,Int<3000>,Int<20000>>>>,
  222. //Alternate twist responsive "breathing" emitter flare, twist the hilt in time with the breathing in a meditative way, or time it while going through different stances, etc.
  223. ResponsiveStabL<Orange>,
  224. //Responsive stab
  225. EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  226. //Multi-blast, blaster reflect cycles through different responsive effects
  227. ResponsiveClashL<TransitionEffect<Rgb<255,240,80>,LemonChiffon,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  228. //Responsive clash
  229. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  230. //Drag
  231. LockupTrL<AlphaL<Mix<TwistAngle<>,Rgb<255,200,0>,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  232. //Responsive melt
  233. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  234. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  235. InOutTrL<TrWipe<2650>,TrWipeIn<1375>>,
  236. //Wipe out ignition, wipe in retraction
  237. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  238. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  239. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  240. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  241. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  242. >>()},
  243. { "ENGINE_GRIP", "tracks/mercury.wav",
  244. StylePtr<Layers<
  245. StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<180,130,0>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<18,13,0>>,RotateColorsX<Variation,Rgb<43,31,0>>>,300>,RotateColorsX<Variation,Rgb<56,40,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,
  246. //Unstable yellow
  247. AlphaL<AudioFlickerL<RotateColorsX<Variation,Rgb16<65535,38402,0>>>,SwingSpeed<400>>,
  248. //Swing effect, audioflicker orange swing
  249. AlphaL<Stripes<3000,-1600,Mix<Sin<Int<30>>,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Orange>>,Mix<Sin<Int<30>>,RotateColorsX<Variation,Rgb<90,0,0>>,RotateColorsX<Variation,Rgb<60,30,0>>>,Mix<Sin<Int<26>>,RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,OrangeRed>>,Mix<Sin<Int<24>>,RotateColorsX<Variation,Rgb<60,30,0>>,RotateColorsX<Variation,Rgb<90,0,0>>>>,Bump<Scale<SwingSpeed<400>,Int<1000>,Int<34000>>,Int<12000>>>,
  250. //Color Change Responsive Fire Spark
  251. //AlphaL<Stripes<3000,-1600,Mix<Sin<Int<30>>,Red,Orange>,Mix<Sin<Int<30>>,Rgb<90,0,0>,Rgb<60,30,0>>,Mix<Sin<Int<26>>,DarkOrange,OrangeRed>,Mix<Sin<Int<24>>,Rgb<60,30,0>,Rgb<90,0,0>>>,Bump<Scale<SwingSpeed<400>,Int<1000>,Int<34000>>,Int<12000>>>,
  252. //Alternate Responsive Fire Spark, no color change
  253. LockupTrL<Layers<
  254. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  255. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  256. //Responsive lockup
  257. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  258. //Responsive lightning block
  259. AlphaL<RotateColorsX<Variation,Orange>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1000>,Int<3500>>,Int<-4000>>>,
  260. //Sparking emitter flare
  261. ResponsiveStabL<Red>,
  262. //Responsive stab
  263. TransitionEffectL<TrConcat<TrDelay<450>,Layers<
  264. AlphaL<TransitionLoopL<TrConcat<TrWaveX<White,Int<300>,Int<400>,Int<300>,Int<32768>>>>,SmoothStep<Int<16384>,Int<-100>>>,
  265. AlphaL<TransitionLoopL<TrConcat<TrWaveX<White,Int<300>,Int<400>,Int<300>,Int<0>>>>,SmoothStep<Int<16384>,Int<100>>>>,TrDelay<300>>,EFFECT_BLAST>,
  266. //Timed Blaster reflect. This is non-responsive and always starts in the middle of the blade, but it matches up with the timed blaster bolts for Engine Grip. However, it seems to make the saber freeze up a bit too much for my liking, and if you spam it fast enough it might crash and you'll need to take the battery out/toggle the kill switch.
  267. //EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  268. //Alternate Multi-blast, blaster reflect cycles through different responsive effects
  269. ResponsiveClashL<TransitionEffect<Rgb<255,225,0>,NavajoWhite,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  270. //Responsive clash
  271. TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,OrangeRed>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<45,32,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb16<65535,36321,6957>>,RotateColorsX<Variation,Rgb<45,32,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<90,65,0>>,RotateColorsX<Variation,Rgb<45,32,0>>>>,TrFade<1200>>,EFFECT_IGNITION>,
  272. //Bright unstable ignition
  273. TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Rgb<230,180,80>>,40>,TrFade<1200>>,EFFECT_RETRACTION>,
  274. //Bright HumpFlicker retraction
  275. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  276. //Drag
  277. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  278. //Responsive melt
  279. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  280. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  281. InOutTrL<TrJoinR<TrWipe<200>,TrWipeIn<200>>,TrColorCycle<2250>>,
  282. //Center Out ignition, Cycle Down retraction
  283. //InOutTrL<TrWipeSparkTip<White,200>,TrColorCycle<2250>>,
  284. //Alternate Spark Tip ignition and Cycle Down retraction
  285. TransitionEffectL<TrConcat<TrInstant,AlphaL<White,Bump<Int<0>,Int<10000>>>,TrFade<875>,AlphaL<RotateColorsX<Variation,Orange>,Bump<Int<0>,Int<8000>>>,TrFade<1000>,AlphaL<RotateColorsX<Variation,Red>,Bump<Int<0>,Int<6000>>>,TrFade<1000>>,EFFECT_RETRACTION>,
  286. //Color Change Cool Down Retraction
  287. //TransitionEffectL<TrConcat<TrInstant,AlphaL<White,Bump<Int<0>,Int<10000>>>,TrFade<875>,AlphaL<Orange,Bump<Int<0>,Int<8000>>>,TrFade<1000>,AlphaL<Red,Bump<Int<0>,Int<6000>>>,TrFade<1000>>,EFFECT_RETRACTION>,
  288. //Alternate Cool Down Retraction, no color change
  289. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  290. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  291. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  292. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  293. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  294. TransitionEffectL<TrConcat<TrInstant,Layers<
  295. AlphaL<TransitionLoopL<TrConcat<TrWaveX<RotateColorsX<Variation,Rgb<180,130,0>>,Int<50>,Int<200>,Int<75>,Int<0>>,Black,TrDelay<50>>>,SmoothStep<Int<16384>,Int<-100>>>,
  296. AlphaL<TransitionLoopL<TrConcat<TrWaveX<RotateColorsX<Variation,Rgb<180,130,0>>,Int<50>,Int<200>,Int<75>,Int<32768>>,Black,TrDelay<50>>>,SmoothStep<Int<16384>,Int<100>>>>,TrDelay<1220>>,EFFECT_PREON>,
  297. TransitionEffectL<TrConcat<TrDelay<300>,AlphaL<RotateColorsX<Variation,Rgb<90,65,0>>,Bump<Int<16384>,Int<4000>>>,TrFade<500>,AlphaL<AudioFlickerL<RotateColorsX<Variation,Rgb<180,130,0>>>,Bump<Int<16384>,Int<16000>>>,TrDelay<700>>,EFFECT_PREON>
  298. //Center absorb preon
  299. //TransitionEffectL<TrConcat<TrInstant,StyleFire<RotateColorsX<Variation,Rgb<180,130,0>>,RotateColorsX<Variation,Rgb<45,32,0>>,0,6,FireConfig<2,1200,5>,FireConfig<0,0,0>,FireConfig<0,0,0>,FireConfig<2,1200,5>>,TrWipe<750>,StyleFire<RotateColorsX<Variation,Rgb<180,130,0>>,RotateColorsX<Variation,Rgb<45,32,0>>,0,6,FireConfig<2,1200,5>,FireConfig<0,0,0>,FireConfig<0,0,0>,FireConfig<2,1200,5>>,TrBoing<250,2>>,EFFECT_PREON>
  300. //Alternate glitchy fire preon, make sure to comment out both transition lines and both alpha lines above
  301. >>()},
  302. { "VOLATILE_PROFFIE", "tracks/mercury.wav",
  303. StylePtr<Layers<
  304. Mix<Sin<Int<1>>,AudioFlicker<RotateColorsX<Variation,Blue>,RotateColorsX<Variation,Rgb<0,0,128>>>,AudioFlicker<RotateColorsX<Variation,Green>,RotateColorsX<Variation,Rgb<0,128,0>>>>,
  305. //Rotates ^ 1 time per minute between blue and green audioflicker
  306. EffectSequence<EFFECT_FORCE,AlphaL<Mix<Sin<Int<1>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Blue>,Black>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>,RotateColorsX<Variation,Blue>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Green>,Black>,RotateColorsX<Variation,Rgb<0,45,0>>,RotateColorsX<Variation,Green>,RotateColorsX<Variation,Rgb<0,45,0>>>>,SwingSpeed<400>>,AlphaL<Mix<Sin<Int<2>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Blue>,Black>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>,RotateColorsX<Variation,Blue>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Green>,Black>,RotateColorsX<Variation,Rgb<0,45,0>>,RotateColorsX<Variation,Green>,RotateColorsX<Variation,Rgb<0,45,0>>>>,SwingSpeed<400>>>,
  307. //Force toggleable swing effect - switches betw^een unstable blue and green that cycle twice as fast as the base layer (so the blue and green don't always match up with the base layer, allowing for multiple mixes of blue/green) and unstable blue and green that match the base layer ^
  308. //AlphaL<Mix<Sin<Int<2>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Blue>,Black>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>,RotateColorsX<Variation,Blue>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Green>,Black>,RotateColorsX<Variation,Rgb<0,45,0>>,RotateColorsX<Variation,Green>,RotateColorsX<Variation,Rgb<0,45,0>>>>,SwingSpeed<400>>,
  309. //AlphaL<Mix<Sin<Int<2>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Blue>,Black,300>,SwingSpeed<400>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Green>,Black,300>,SwingSpeed<400>>>,SwingSpeed<400>>,
  310. //Alternate swing ^ Rotates 2 times per minute between unstable ripple blue and green, so the blue and green don't always match up with the base layer, allowing for multiple mixes of blue/green
  311. //AlphaL<Mix<Sin<Int<1>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Blue>,Black>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>,RotateColorsX<Variation,Blue>,RotateColorsX<Variation,RotateColorsX<Variation,Rgb<0,0,45>>>>,Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Green>,Black>,RotateColorsX<Variation,Rgb<0,45,0>>,RotateColorsX<Variation,Green>,RotateColorsX<Variation,Rgb<0,45,0>>>>,SwingSpeed<400>>,
  312. //AlphaL<Mix<Sin<Int<1>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Blue>,Black,300>,SwingSpeed<400>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Green>,Black,300>,SwingSpeed<400>>>,SwingSpeed<400>>,
  313. //Alternate swing ^ Rotates 1 time per minute between unstable ripple blue and green, matching the base layer
  314. LockupTrL<Layers<
  315. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  316. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<TransitionEffect<NavajoWhite,Rgb<255,225,0>,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  317. //Responsive lockup
  318. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  319. //Responsive lightning block
  320. ResponsiveStabL<Red,TrWipeIn<600>,TrWipe<600>>,
  321. //Responsive stab
  322. EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  323. //Multi-blast, blaster reflect cycles through different responsive effects
  324. ResponsiveClashL<TransitionEffect<Rgb<255,225,0>,NavajoWhite,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  325. //Responsive clash
  326. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  327. //Drag
  328. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  329. //Responsive melt
  330. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  331. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  332. InOutTrL<TrWipeSparkTip<White,300>,TrWipeIn<2000>>,
  333. //Spark tip ignition, wipe in retraction
  334. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  335. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  336. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  337. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  338. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  339. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<Trigger<EFFECT_PREON,Int<3000>,Int<3000>,Int<1000>>,BrownNoiseFlicker<Black,RotateColorsX<Variation,Blue>,100>,RandomPerLEDFlicker<RotateColorsX<Variation,Blue>,RotateColorsX<Variation,Rgb16<0,778,22863>>>,BrownNoiseFlicker<Mix<NoisySoundLevel,RotateColorsX<Variation,Blue>,RotateColorsX<Int<4000>,RotateColorsX<Variation,Cyan>>>,RotateColorsX<Variation,Green>,50>>,SmoothStep<Scale<NoisySoundLevel,Int<-2500>,Int<17500>>,Int<-4000>>>,TrDelay<6500>>,EFFECT_PREON>
  340. //Preon, reacts to sound level
  341. >>()},
  342. { "EXALTED_PROFFIE", "tracks/mercury.wav",
  343. StylePtr<Layers<
  344. Mix<SwingSpeed<400>,StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>>,300>,RotateColorsX<Variation,Rgb<80,0,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,AudioFlicker<RotateColorsX<Variation,Rgb16<65535,8357,0>>,RotateColorsX<Variation,Rgb16<42307,1982,0>>>>,
  345. //Unstable red with blood orange audioflicker swing effects
  346. AlphaL<Stripes<2500,-3000,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<60,0,0>>,Pulsing<RotateColorsX<Variation,Rgb<30,0,0>>,Black,800>>,Scale<IsLessThan<SwingSpeed<600>,Int<13600>>,Scale<SwingSpeed<600>,Int<-19300>,Int<32768>>,Int<0>>>,
  347. //Hard swings cause red to ripple up the blade
  348. LockupTrL<Layers<
  349. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  350. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  351. //Responsive lockup
  352. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  353. //Responsive lightning block
  354. AlphaL<RotateColorsX<Variation,Rgb16<65535,11439,0>>,SmoothStep<Scale<SlowNoise<Int<3000>>,Int<2000>,Int<3500>>,Int<-3000>>>,
  355. //Sparking emitter flare
  356. ResponsiveStabL<Orange>,
  357. //Responsive stab
  358. EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  359. //Multi-blast, blaster reflect cycles through different responsive effects
  360. ResponsiveClashL<White,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  361. //Responsive clash
  362. TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb16<65535,8357,0>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Orange>,RotateColorsX<Variation,Rgb<60,0,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>>,TrFade<1200>>,EFFECT_IGNITION>,
  363. //Unstable fiery ignition effect
  364. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  365. //Drag
  366. LockupTrL<AlphaL<Mix<TwistAngle<>,Rgb<255,200,0>,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  367. //Responsive melt
  368. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  369. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  370. InOutTrL<TrWipeSparkTip<White,250>,TrColorCycle<1450>,Black>,
  371. //Spark tip ignition, cycle down retraction
  372. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  373. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  374. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  375. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  376. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  377. //,TransitionEffectL<TrConcat<TrFade<100>,AlphaL<Pulsing<Rgb<120,120,165>,Rgb<50,50,80>,500>,Bump<Int<0>,Int<6000>>>,TrBoing<600,9>>,EFFECT_PREON>
  378. //Optional Clickity Preon, I recommend using Analog's preon :) Make sure to leave the comma at the beginning in if you're using the on demand battery level
  379. >>()},
  380. { "RA_PROFFIE", "tracks/mercury.wav",
  381. StylePtr<Layers<
  382. AudioFlicker<RotateColorsX<Variation,Rgb16<65535,0,38402>>,RotateColorsX<Variation,Rgb<180,0,120>>>,
  383. //Magenta audioflicker
  384. AlphaL<AudioFlickerL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<230,0,35>>,Black>,Black,RotateColorsX<Variation,Rgb<230,0,35>>,Black>>,SwingSpeed<350>>,
  385. //Ripple audioflicker swing
  386. //AlphaL<AudioFlickerL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<230,0,35>>,Black,300>>,SwingSpeed<300>>,
  387. //Alternate unstable audioflicker swing
  388. LockupTrL<Layers<
  389. AlphaL<AudioFlickerL<White>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  390. AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  391. //Responsive lockup
  392. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  393. //Responsive lightning block
  394. AlphaL<RotateColorsX<Variation,DeepPink>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1000>,Int<3000>>,Int<-4000>>>,
  395. //Sparking emitter flare
  396. ResponsiveStabL<Red>,
  397. //Responsive stab
  398. EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  399. //Multi-blast, blaster reflect cycles through different responsive effects
  400. ResponsiveClashL<White,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  401. //Responsive clash
  402. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  403. //Drag
  404. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  405. //Responsive melt
  406. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  407. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  408. InOutTrL<TrColorCycle<3000,3000,0>,TrColorCycle<1250>>,
  409. //Color cycle ignition and retraction
  410. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  411. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  412. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  413. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  414. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  415. >>()},
  416. { "CRISPITY_PROFFIE", "tracks/mercury.wav",
  417. StylePtr<Layers<
  418. StyleFire<BrownNoiseFlicker<RotateColorsX<Variation,Red>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb16<11805,0,1587>>,RotateColorsX<Variation,Rgb<60,0,0>>>,300>,RotateColorsX<Variation,Rgb<80,0,0>>,0,6,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>,FireConfig<10,1000,2>>,
  419. //Unstable red/pink
  420. TransitionEffectL<TrConcat<TrFade<200>,AlphaL<RotateColorsX<Variation,DeepPink>,SwingSpeed<400>>,TrDelay<30000>,AlphaL<RotateColorsX<Variation,DeepPink>,SwingSpeed<400>>,TrFade<800>>,EFFECT_FORCE>,
  421. //Force effect, temporarily allows color change based on swing speed
  422. AlphaL<AudioFlickerL<RotateColorsX<Variation,DeepPink>>,SwingSpeed<400>>,
  423. //Swing effect, audioflicker, Deep Pink connects the tip and emitter when swinging
  424. LockupTrL<Layers<
  425. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  426. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<TransitionEffect<NavajoWhite,Rgb<255,225,0>,TrInstant,TrFade<200>,EFFECT_LOCKUP_BEGIN>,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  427. //Responsive lockup
  428. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  429. //Responsive lightning block
  430. AlphaL<RotateColorsX<Variation,DeepPink>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1500>,Int<4500>>,Int<-6000>>>,
  431. //Sparking emitter flare
  432. ResponsiveStabL<Orange>,
  433. //Responsive stab
  434. EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  435. //Multi-blast, blaster reflect cycles through different responsive effects
  436. ResponsiveClashL<TransitionEffect<Rgb<255,240,80>,LemonChiffon,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  437. //Responsive clash
  438. TransitionEffectL<TrConcat<TrInstant,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<255,150,150>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<60,0,0>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,DeepPink>,RotateColorsX<Variation,Rgb<60,0,0>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<128,0,0>>,RotateColorsX<Variation,Rgb<60,0,0>>>>,TrFade<1200>>,EFFECT_IGNITION>,
  439. //Unstable ignition effect
  440. AlphaL<RotateColorsX<Variation,DeepPink>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<28000>,Int<33000>>,Int<10000>>>,
  441. //Sparking tip flare
  442. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  443. //Drag
  444. LockupTrL<AlphaL<Mix<TwistAngle<>,Rgb<255,200,0>,DarkOrange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  445. //Responsive melt
  446. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  447. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  448. InOutTrL<TrWipeSparkTip<White,100>,TrColorCycle<1065>>,
  449. //Spark tip ignition, cycle down retraction
  450. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  451. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  452. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  453. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>,
  454. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  455. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<Sin<Scale<Trigger<EFFECT_RETRACTION,Int<3000>,Int<1000>,Int<500>>,Int<70>,Int<550>>>,RotateColorsX<Variation,DeepPink>,RotateColorsX<Variation,Rgb16<65535,0,2716>>>,Bump<Scale<Trigger<EFFECT_PREON,Int<3000>,Int<1000>,Int<500>>,Int<41000>,Int<32768>>>>,TrDelay<3000>>,EFFECT_PREON>,
  456. TransitionEffectL<TrConcat<TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<520>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<520>,Int<550>,Int<520>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<420>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<420>,Int<450>,Int<420>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<340>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<340>,Int<430>,Int<340>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<300>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<300>,Int<400>,Int<300>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<240>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<240>,Int<380>,Int<240>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<210>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<210>,Int<360>,Int<210>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<190>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<190>,Int<340>,Int<190>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<170>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<170>,Int<320>,Int<170>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<160>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<160>,Int<300>,Int<160>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<150>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<150>,Int<250>,Int<150>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<130>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<130>,Int<150>,Int<130>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Bump<Int<0>,Int<4000>>>,TrFade<100>>,TrWaveX<RotateColorsX<Variation,Rgb16<65535,0,2716>>,Int<100>,Int<100>,Int<100>,Int<0>>>,AlphaL<Black,Int<0>>,TrJoin<TrConcat<TrInstant,AlphaL<RotateColorsX<Variation,DeepPink>,Bump<Int<0>,Int<4000>>>,TrFade<70>>,TrWaveX<RotateColorsX<Variation,DeepPink>,Int<70>,Int<500>,Int<70>,Int<0>>>,Black,TrInstant>,EFFECT_PREON>
  457. //Preon effect, HUGE thanks to /u/NoSloppy for this!
  458. >>()},
  459. { "NOBLE_PROFFIE", "tracks/mercury.wav",
  460. StylePtr<Layers<
  461. Stripes<5000,-75,RotateColorsX<Variation,Rgb<180,130,0>>,RotateColorsX<Variation,Rgb<200,120,0>>,RotateColorsX<Variation,Rgb<220,160,40>>,RotateColorsX<Variation,Rgb<170,95,0>>>,
  462. //Slightly different shades of yellow travel very slowly up the blade
  463. EffectSequence<EFFECT_FORCE,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb<180,130,0>>,Black,300>,SwingSpeed<475>>,AlphaL<White,SwingSpeed<650>>,AlphaL<BrownNoiseFlicker<RotateColorsX<Variation,Rgb16<65535,65535,28626>>,Black,300>,SwingSpeed<550>>>,
  464. //Force toggleable swing effects, triggering the force effect cycles through a bright unstable swing, an unstable swing, and a white swing
  465. //EffectSequence<EFFECT_FORCE,AlphaL<Mix<Sin<Int<1>>,ColorChange<TrInstant,Red>,Green,Blue,Red>,SwingSpeed<600>>,AlphaL<Stripes<1000,-2000,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<95,0,210>>,Black>,White,RotateColorsX<Variation,Rgb<95,0,210>>,White>,SwingSpeed<600>>>,
  466. //Alternate swing effects, triggering the force effect toggles between unstable white ripple and color change swings
  467. LockupTrL<Layers<
  468. AlphaL<AudioFlickerL<Azure>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  469. AlphaL<White,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  470. //Responsive lockup
  471. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  472. //Responsive lightning block
  473. AlphaL<RotateColorsX<Variation,LemonChiffon>,Bump<Int<0>,Int<10000>>>,
  474. //Bright emitter flare
  475. ResponsiveStabL<Red>,
  476. //Responsive stab
  477. EffectSequence<EFFECT_BLAST,TransitionEffectL<TrConcat<TrInstant,AlphaL<White,BlastF<200,200>>,TrFade<300>>,EFFECT_BLAST>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  478. //Multi-blast, blaster reflect cycles through different responsive effects
  479. ResponsiveClashL<TransitionEffect<Azure,White,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  480. //Responsive clash
  481. TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<White,40>,TrFade<1000>>,EFFECT_IGNITION>,
  482. //Bright HumpFlicker ignition effect
  483. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  484. //Drag
  485. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  486. //Responsive melt
  487. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  488. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  489. InOutTrL<TrWipeSparkTip<White,350>,TrWipeSparkTip<White,1250>>,
  490. //Spark tip out ignition and retraction
  491. //InOutTrL<TrWipeSparkTip<White,350>,TrWipeInSparkTip<White,1250>>,
  492. //Alternate spark tip out ignition and spark tip in retraction
  493. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  494. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  495. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  496. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  497. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  498. >>()},
  499. { "DEADLINK_PROFFIE", "tracks/mercury.wav",
  500. StylePtr<Layers<
  501. HumpFlicker<RotateColorsX<Variation,Magenta>,RotateColorsX<Variation,Rgb<150,0,150>>,50>,
  502. //Magenta HumpFlicker
  503. AlphaL<Stripes<2500,-3000,RotateColorsX<Variation,DeepPink>,RotateColorsX<Variation,Rgb16<12482,0,18076>>,Pulsing<RotateColorsX<Variation,Rgb<10,0,26>>,Black,800>>,SwingSpeed<350>>,
  504. //Ripple swing effect
  505. //AlphaL<AudioFlickerL<Stripes<2500,-3000,RotateColorsX<Variation,DeepPink>,RotateColorsX<Variation,Rgb16<12482,0,18076>>,Pulsing<RotateColorsX<Variation,Rgb<10,0,26>>,Black,800>>>,SwingSpeed<300>>,
  506. //Alternate audioflicker ripple swing effect
  507. LockupTrL<Layers<
  508. AlphaL<AudioFlickerL<Rgb<255,225,0>>,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Scale<SwingSpeed<100>,Int<14000>,Int<18000>>>>,
  509. AlphaL<NavajoWhite,Bump<Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat<TrInstant,White,TrFade<400>>,TrConcat<TrInstant,AlphaL<White,Int<0>>,TrWaveX<White,Int<300>,Int<100>,Int<400>,Scale<BladeAngle<>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>>>>,SaberBase::LOCKUP_NORMAL>,
  510. //Responsive lockup
  511. ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,
  512. //Responsive lightning block
  513. AlphaL<RotateColorsX<Variation,Rgb16<33124,0,65535>>,SmoothStep<Scale<SlowNoise<Int<2500>>,Int<1000>,Int<3500>>,Int<-4000>>>,
  514. //Sparking emitter flare
  515. ResponsiveStabL<Red>,
  516. //Responsive stab
  517. EffectSequence<EFFECT_BLAST,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,LocalizedClashL<White,80,30,EFFECT_BLAST>,ResponsiveBlastWaveL<White,Scale<SwingSpeed<400>,Int<500>,Int<200>>,Scale<SwingSpeed<400>,Int<100>,Int<400>>>,BlastL<White,200,200>,ResponsiveBlastFadeL<White,Scale<SwingSpeed<400>,Int<6000>,Int<12000>>,Scale<SwingSpeed<400>,Int<400>,Int<100>>>,ResponsiveBlastL<White,Scale<SwingSpeed<400>,Int<400>,Int<100>>,Scale<SwingSpeed<400>,Int<200>,Int<100>>,Scale<SwingSpeed<400>,Int<400>,Int<200>>>>,
  518. //Multi-blast, blaster reflect cycles through different responsive effects
  519. ResponsiveClashL<TransitionEffect<Rgb<255,225,0>,NavajoWhite,TrInstant,TrFade<100>,EFFECT_CLASH>,TrInstant,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,
  520. //Responsive clash
  521. TransitionEffectL<TrConcat<TrDelay<875>,Stripes<3000,-3500,RotateColorsX<Variation,Rgb<160,0,255>>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<21,0,52>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<160,0,255>>,RotateColorsX<Variation,Rgb<21,0,52>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<42,0,105>>,RotateColorsX<Variation,Rgb<21,0,52>>>>,TrFade<250>,HumpFlicker<RotateColorsX<Variation,Magenta>,RotateColorsX<Variation,Rgb<80,0,80>>,50>,TrFade<400>,Stripes<3000,-3500,RotateColorsX<Variation,DeepPink>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<21,0,52>>,Black>,BrownNoiseFlicker<RotateColorsX<Variation,Rgb<160,0,255>>,RotateColorsX<Variation,Rgb<21,0,52>>,200>,RandomPerLEDFlicker<RotateColorsX<Variation,Rgb<42,0,105>>,RotateColorsX<Variation,Rgb<21,0,52>>>>,TrFade<1500>>,EFFECT_IGNITION>,
  522. //Unstable ignition effect
  523. TransitionEffectL<TrConcat<TrInstant,HumpFlickerL<RotateColorsX<Variation,Rgb<180,60,255>>,40>,TrFade<2000>>,EFFECT_RETRACTION>,
  524. //Bright HumpFlicker retraction effect
  525. LockupTrL<AlphaL<BrownNoiseFlickerL<White,Int<300>>,SmoothStep<Int<30000>,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,
  526. //Drag
  527. LockupTrL<AlphaL<Mix<TwistAngle<>,Red,Orange>,SmoothStep<Int<28000>,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,
  528. //Responsive melt
  529. EffectSequence<EFFECT_POWERSAVE,AlphaL<Black,Int<8192>>,AlphaL<Black,Int<16384>>,AlphaL<Black,Int<24576>>,AlphaL<Black,Int<0>>>,
  530. //Power save, if using fett263's prop file hold Aux and click PWR while ON (pointing up) to dim blade in 25% increments.
  531. InOutTrL<TrConcat<TrWipeIn<200>,RandomBlink<30000,RotateColorsX<Variation,Rgb16<65535,13655,65535>>>,TrWipeIn<200>,Mix<SmoothStep<Scale<SlowNoise<Int<30000>>,Int<1000>,Int<6000>>,Int<-3000>>,Black,RotateColorsX<Variation,Rgb16<65535,13655,65535>>>,TrDelay<400>,Mix<SmoothStep<Int<4000>,Int<-3000>>,Black,White>,TrWipe<175>>,TrColorCycle<2000>>,
  532. //Lightning strike ignition, cycle down retraction
  533. //TransitionEffectL<TrConcat<TrDelay<1500>,Black,TrFade<1000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_BOOT>,
  534. //TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<Int<0>,Int<6000>>>,TrFade<3000>>,EFFECT_NEWFONT>,
  535. //Optional/alternate passive battery monitor, on boot (1st line) or font change (2nd line) you will get a visual indicator at the emitter of your current battery level. This also works without a blade if you have a lit emitter or blade plug. Green is Full, Red is Low (the color will blend from Green to Red as the battery is depleted), the indicator will fade out after 3000 ms and not display again until powered down and back up or fonts change.
  536. TransitionEffectL<TrConcat<TrInstant,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrDelay<2000>,AlphaL<Mix<BatteryLevel,Red,Green>,Bump<BatteryLevel,Int<10000>>>,TrFade<1000>>,EFFECT_BATTERY_LEVEL>
  537. //On demand battery level, if using fett263's prop file Hold AUX and click PWR while OFF, the battery level is represented by the location on the blade; tip = full, hilt = low and color; green = full, yellow = half, red = low
  538. >>()},
  539. { "TheReturn", "tracks/mercury.wav",
  540. StylePtr<Layers<Layers<Black,AlphaL<Stripes<3200,-2000,Mix<Sin<Int<12>>,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Red>>,RotateColorsX<Variation,Rgb<10,2,0>>,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<40,10,0>>>,SmoothStep<Scale<BladeAngle<>,Int<16000>,Int<10000>>,Int<1600>>>,AlphaL<Stripes<3200,2000,Mix<Sin<Int<12>>,RotateColorsX<Variation,Red>,RotateColorsX<Variation,Red>>,RotateColorsX<Variation,Rgb<10,2,0>>,RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,Rgb<40,10,0>>>,SmoothStep<Scale<BladeAngle<>,Int<22768>,Int<16768>>,Int<-1600>>>,AlphaL<Black,Bump<Scale<BladeAngle<>,Int<22768>,Int<10000>>,Scale<TwistAngle<>,Int<28000>,Int<56000>>>>>,TransitionEffectL<TrConcat<TrInstant,BrownNoiseFlickerL<AlphaL<White,Int<16000>>,Int<50>>,TrSmoothFade<600>>,EFFECT_LOCKUP_END>,ResponsiveLockupL<Strobe<White,BrownNoiseFlicker<White,Blue,300>,50,1>,TrConcat<TrInstant,White,TrFade<200>>,TrFade<400>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,Scale<SwingSpeed<100>,Int<10000>,Int<14000>>>,ResponsiveLightningBlockL<Strobe<White,AudioFlicker<White,Blue>,50,1>,TrConcat<TrInstant,AlphaL<White,Bump<Int<12000>,Int<18000>>>,TrFade<200>>,TrConcat<TrInstant,HumpFlickerL<AlphaL<White,Int<16000>>,30>,TrSmoothFade<600>>>,ResponsiveBlastL<White,Int<400>,Scale<SwingSpeed<200>,Int<100>,Int<400>>,Int<400>>,ResponsiveBlastWaveL<White,Int<300>,Int<100>,Int<300>,Scale<BladeAngle<0,16000>,Int<4000>,Int<26000>>,Int<6000>,EFFECT_CLASH>,ResponsiveStabL<Red,TrWipeIn<600>,TrWipe<600>>,ResponsiveDragL<BrownNoiseFlickerL<White,Int<300>>,TrWipeIn<400>,TrFade<400>>,ResponsiveMeltL<Mix<TwistAngle<>,Red,Orange>,TrWipeIn<600>,TrSmoothFade<600>>,InOutTrL<TrJoinR<TrWipe<200>,TrWipeIn<200>>,TrJoin<TrWipe<500>,TrWipeIn<500>>,Black>,TransitionEffectL<TrConcat<TrFade<800>,Layers<Black,AlphaL<HumpFlicker<RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,Rgb<100,30,0>>,30>,LayerFunctions<SmoothStep<Int<14384>,Int<-400>>,SmoothStep<Int<18384>,Int<400>>>>,AlphaL<Black,LayerFunctions<SmoothStep<Int<12000>,Int<-2000>>,SmoothStep<Int<20768>,Int<2000>>>>>,TrFade<2000>,Layers<Black,AlphaL<HumpFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<100,30,0>>,30>,LayerFunctions<SmoothStep<Int<15000>,Int<-400>>,SmoothStep<Int<17768>,Int<400>>>>,AlphaL<Black,LayerFunctions<SmoothStep<Int<12000>,Int<-2000>>,SmoothStep<Int<20768>,Int<2000>>>>>,TrFade<2400>>,EFFECT_RETRACTION>,TransitionEffectL<TrConcat<TrJoinR<TrWipe<800>,TrWipeIn<800>>,Layers<Black,AlphaL<HumpFlicker<RotateColorsX<Variation,DarkOrange>,RotateColorsX<Variation,Rgb<100,30,0>>,30>,LayerFunctions<SmoothStep<Int<15000>,Int<-400>>,SmoothStep<Int<17768>,Int<400>>>>,AlphaL<Black,LayerFunctions<SmoothStep<Int<12000>,Int<-2000>>,SmoothStep<Int<20768>,Int<2000>>>>>,TrFade<800>,Layers<Black,AlphaL<HumpFlicker<RotateColorsX<Variation,Red>,RotateColorsX<Variation,Rgb<100,30,0>>,30>,LayerFunctions<SmoothStep<Int<14384>,Int<-400>>,SmoothStep<Int<18384>,Int<400>>>>,AlphaL<Black,LayerFunctions<SmoothStep<Int<12000>,Int<-2000>>,SmoothStep<Int<20768>,Int<2000>>>>>,TrDelay<6600>>,EFFECT_PREON>>>(), },
  541. };
  542. BladeConfig blades[] = {
  543. { 0, WS281XBladePtr<264, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >(),
  544. SimpleBladePtr<CH1LED, NoLED, NoLED, NoLED, bladePowerPin6, -1, -1, -1>(),
  545. CONFIGARRAY(presets) },
  546. };
  547. #endif
  548.  
  549. #ifdef CONFIG_BUTTONS
  550. Button PowerButton(BUTTON_POWER, powerButtonPin, "pow");
  551. #endif
  552.  
  553.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement