#ifdef CONFIG_TOP #include "proffieboard_v2_config.h" #define NUM_BLADES 1 #define NUM_BUTTONS 1 #define VOLUME 1800 const unsigned int maxLedsPerStrip = 144; #define CLASH_THRESHOLD_G 4.5 #define ENABLE_AUDIO #define ENABLE_MOTION #define ENABLE_WS2811 #define ENABLE_SD #define COLOR_CHANGE_DIRECT #define DISABLE_DIAGNOSTIC_COMMANDS #define NO_REPEAT_RANDOM #define FETT263_THRUST_ON #define FETT263_SWING_ON #define FETT263_SWING_ON_SPEED 300 #define FETT263_TWIST_OFF #define FETT263_TWIST_ON #define MOTION_TIMEOUT 60 * 15 * 1000 #define IDLE_OFF_TIME 5 * 60 * 1000 #define FETT263_MULTI_PHASE #define FETT263_EDIT_MODE_MENU #define ENABLE_ALL_EDIT_OPTIONS #define KEEP_SAVEFILES_WHEN_PROGRAMMING #define FETT263_CLASH_STRENGTH_SOUND #define FETT263_DUAL_MODE_SOUND #define DISABLE_BASIC_PARSER_STYLES #define FETT263_MAX_CLASH 16 #define FETT263_BM_CLASH_DETECT 7 #define FETT263_SAY_BATTERY_PERCENT #define FETT263_SAY_COLOR_LIST #define FETT263_SAY_COLOR_LIST_CC //#define FETT263_SAVE_CHOREOGRAPHY #endif #ifdef CONFIG_PROP #include "../props/saber_fett263_buttons.h" #endif #ifdef CONFIG_PRESETS Preset presets[] = { { "Vader", "tracks/track1.wav", StylePtr,RotateColorsX>>,TransitionEffectL>,Int<50>>,TrSmoothFade<600>>,EFFECT_LOCKUP_END>,ResponsiveLockupL,50,1>,TrConcat,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<16000>>>,TrFade<400>>,TrFade<100>,Scale,Int<4000>,Int<26000>>,Int<6000>,Scale,Int<10000>,Int<14000>>>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Rgb<255,200,0>,DarkOrange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<550>,Black>>>(),"TrueS"}, {"Duel", "tracks/track3.wav", StylePtr,RotateColorsX>>,LockupTrL,Bump,Scale,Int<4000>,Int<26000>>,Int<6000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Rgb<255,200,0>,DarkOrange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<800>,Black>>>()}, { "Kylo", "tracks/track2.wav", StylePtr,AudioFlicker,Red>,Red,Red,Red,Red,Red,Red,Red>,Rgb<120,0,0>>,Gradient,BrownNoiseFlicker,400>,BrownNoiseFlicker,400>,BrownNoiseFlicker,400>>>,Pulsing,40,90>,RandomFlicker>,Strobe,50,1>,Red,Red>,Gradient,40,90>,RandomFlicker,Strobe,50,1>,RandomFlicker,RandomFlicker,RandomFlicker>,3500>,RandomPerLEDFlicker>,White,TrWipeIn<50>,TrSmoothFade<50>,EFFECT_DRAG_END>,Gradient,TrSmoothFade<50>,TrWipeIn<50>,EFFECT_DRAG_BEGIN>,Gradient,TrJoinR,TrWipeIn<200>>,TrSmoothFade<300>,EFFECT_LOCKUP_END>,White,TrBoing<300,2>,TrFade<100>,EFFECT_LOCKUP_BEGIN>,BrownNoiseFlicker,100,75>,Rgb<120,0,0>>,White,200,200>, InOutTrL,Red,TrWipeIn<50>,Black,TrDelay<250>,Strobe,TrJoinR,TrWipe<200>>>,TrConcat,TrBoing<300,5>>,TrBoing<300,5>>,TrSmoothFade<500>>>>>>(), "FinalS"}, { "Assin", "tracks/track3.wav", StylePtr,TransitionEffectL>,Int<50>>,TrSmoothFade<600>>,EFFECT_LOCKUP_END>,ResponsiveLockupL,50,1>,TrConcat,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<16000>>>,TrFade<400>>,TrFade<100>,Scale,Int<10000>,Int<30000>>,Int<10000>,Scale,Int<10000>,Int<14000>>>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastWaveL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<10000>,Int<30000>>,Int<10000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Coral,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"FallenS"}, { "Drk", "tracks/track5.wav", StylePtr,RotateColorsX>,RotateColorsX>>,Stripes<5000,-300,RotateColorsX>,RotateColorsX>,RotateColorsX>,RotateColorsX>>,300>,RotateColorsX>>,LockupTrL,Bump,Scale,Int<4000>,Int<26000>>,Int<6000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"AncientRelic"}, { "Luke", "tracks/track6.wav", StylePtr,RotateColorsX>>,TransitionEffectL>,Int<50>>,TrSmoothFade<600>>,EFFECT_LOCKUP_END>,ResponsiveLockupL,50,1>,TrConcat,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<16000>>>,TrFade<400>>,TrFade<100>,Scale,Int<4000>,Int<26000>>,Int<6000>,Scale,Int<10000>,Int<14000>>>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"TrueJ"}, { "Mstc", "tracks/track9.wav", StylePtr>,RotateColorsX>,50>,LockupTrL,Bump,Scale,Int<4000>,Int<26000>>,Int<6000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"GreyJ"}, { "Protc", "tracks/track10.wav", StylePtr>,RotateColorsX>,50>,LockupTrL,Bump,Scale,Int<4000>,Int<26000>>,Int<6000>>,Scale,Int<14000>,Int<18000>>>>,AlphaL,Scale,Int<4000>,Int<26000>>,Int<6000>>,Int<10000>>>>,TrConcat>,TrConcat>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>,Int<20000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"BalancedM"}, { "Rey", "tracks/track11.wav", StylePtr>,TransitionEffectL>,Int<50>>,TrSmoothFade<600>>,EFFECT_LOCKUP_END>,ResponsiveLockupL,50,1>,TrConcat,Scale,Int<10000>,Int<30000>>,Int<10000>>,Int<16000>>>,TrFade<400>>,TrFade<100>,Scale,Int<4000>,Int<26000>>,Int<6000>,Scale,Int<10000>,Int<14000>>>,ResponsiveLightningBlockL,50,1>,TrConcat,Int<18000>>>,TrFade<200>>,TrConcat>,30>,TrSmoothFade<600>>>,ResponsiveStabL,TrWipe<600>>,ResponsiveBlastL,Scale,Int<100>,Int<400>>,Int<400>>,ResponsiveClashL,Scale,Int<4000>,Int<26000>>,Int<6000>>,LockupTrL>,SmoothStep,Int<5000>>>,TrWipeIn<400>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Red,Orange>,SmoothStep,Int<5000>>>,TrWipeIn<600>,TrFade<300>,SaberBase::LOCKUP_MELT>,InOutTrL,TrWipeIn<500>,Black>>>(),"FinalJ"}, { "Ra", "tracks/track12.wav", /* copyright Fett263 Rotoscope (Primary Blade) OS6 Style https://fett263.com/fett263-proffieOS6-style-library.html#Rotoscope OS6.7 v4.014 Single Style Base Style: Rotoscope - Single Color (Sequels) Base Color: Rgb<118,0,194> (0) --Effects Included-- Ignition Effect: Lightning Strike PowerUp Effect: Power Flash Retraction Effect: Cycle Down Lockup Effect: Intensity Lockup V1, Begin Effect: Real Clash, End Effect: Full Blade Absorb LightningBlock Effect: Responsive Lightning Block Drag Effect: Intensity Sparking Drag Melt Effect: Intensity Melt Blast Effect: Blast Wave (Random) Clash Effect: Real Clash V1 Emitter Effect: Unstable Flare */ StylePtr>,RgbArg>,Mix,Black,RgbArg>>,RgbArg>,Mix,Black,RgbArg>>>,RgbArg>>,AlphaL>>,SmoothStep,Sum,Int<6000>>>,Int<-6000>>>,TransitionEffectL>,TrInstant>,RgbArg>,TrFade<1000>>,EFFECT_IGNITION>,MultiTransitionEffectL>,Scale,Int<100>,Int<400>>,Int<100>,Scale,Int<100>,Int<400>>,Scale,Int<28000>,Int<8000>>>,EFFECT_BLAST>,Mix,Int<26000>>,TransitionEffectL>,Bump,Scale,Sum,Int<-12000>>,Sum,Int<10000>>>,Sum,Int<-10000>>>,Scale,Int<12000>,Int<60000>>>>,TrFadeX,Int<200>,Int<400>>>>,EFFECT_CLASH>,TransitionEffectL>,Scale,Int<100>,Int<400>>,Int<100>,Scale,Int<100>,Int<400>>,Scale,Scale,Sum,Int<-12000>>,Sum,Int<10000>>>,Sum,Int<-10000>>>>,EFFECT_CLASH>>,LockupTrL,Scale,Sum,Int<-12000>>,Sum,Int<10000>>>,Sum,Int<-10000>>>,Scale,Int<14000>,Int<18000>>>,BrownNoiseFlickerL>,Int<200>>,StripesX,Scale,Int<-5000>>,Mix,Black,RgbArg>>,RgbArg>,Mix,Black,RgbArg>>>>,AlphaL>,Mix,Black,RgbArg>>>,Bump,Scale,Sum,Int<-12000>>,Sum,Int<10000>>>,Sum,Int<-10000>>>,Int<13000>>>,TrJoin,TrInstant>,TrFade<3000>,EFFECT_LOCKUP_BEGIN>,TrConcat,TrInstant>,Mix,Int<26000>>,RgbArg>,AlphaL>,Bump,Scale,Sum,Int<-12000>>,Sum,Int<10000>>>,Sum,Int<-10000>>>,Scale,Int<20000>,Int<60000>>>>>,TrFade<300>>,TrConcat>,TrFade<400>>,SaberBase::LOCKUP_NORMAL>,ResponsiveLightningBlockL>,AudioFlicker>,Blue>,50,1>,TrConcat>,Bump,Int<18000>>>,TrFade<200>>,TrConcat>,Int<16000>>,30>,TrSmoothFade<600>>>,LockupTrL>>,SmoothStep,Int<3000>>>,TrConcat,TrWipeIn<200>>,AlphaL>,Int<300>>,SmoothStep,Int<3000>>>,TrFade<4000>>,TrFade<300>,SaberBase::LOCKUP_DRAG>,LockupTrL,Int<0>>,StaticFire,RgbArg>,RotateColorsX,RgbArg>>>,Mix,RotateColorsX,RgbArg>>,RotateColorsX,Mix,Black,RgbArg>>>>,0,3,5,3000,10>>,SmoothStep,Int<4000>>>,TrConcat,AlphaL>,SmoothStep,Int<4000>>>,TrJoin,TrFade<300>>,AlphaL,RgbArg>,RotateColorsX,RgbArg>>>,SmoothStep,Int<4000>>>,TrFade<4000>>,TrWipe<200>,SaberBase::LOCKUP_MELT>,InOutTrL,Int<6553>>>,RandomBlink<30000,RgbArg>,Black>,TrJoin,Int<19660>>>,TrWipeInX,Int<6553>>>>,Mix>,IntArg,Sum,IntArg>>,Int<-3000>>,Black,RgbArg>>,TrWipeX,Int<19660>>>>,TrColorCycleX>,Black>>>(), { "Batt", "tracks/track13.wav", &style_charging, "Battery\nLevel"} }; BladeConfig blades[] = { { 0, WS281XBladePtr<132, bladePin, Color8::GRB, PowerPINS >(), CONFIGARRAY(presets) }, }; #endif #ifdef CONFIG_BUTTONS Button PowerButton(BUTTON_POWER, powerButtonPin, "pow"); Button AuxButton(BUTTON_AUX, auxPin, "aux"); #endif