public static void AddPedalsInList(List <PedalStruct> list, ActionMenu instance) { //if (!LoaderIntegrityCheck.passed && new System.Random().Next(3) == 1) return; foreach (var pedalStruct in list) { if (!pedalStruct.shouldAdd) { continue; } var pedalOption = instance.AddOption(); pedalOption.SetText(pedalStruct.text); if (!pedalStruct.locked) { pedalOption.SetPedalAction(pedalStruct.triggerEvent); } else { pedalOption.Lock(); } //Additional setup for pedals switch (pedalStruct.Type) { /*case PedalType.SubMenu: * pedalOption.SetPedalTypeIcon(GetExpressionsIcons().typeFolder); * break;*/ case PedalType.RadialPuppet: var pedalRadial = (PedalRadial)pedalStruct; pedalOption.SetPedalTypeIcon(GetExpressionsIcons().typeRadial); pedalOption.SetButtonPercentText($"{Math.Round(pedalRadial.currentValue)}%"); pedalRadial.pedal = pedalOption; pedalOption.SetBackgroundIcon(pedalStruct.icon); break; case PedalType.Toggle: var pedalToggle = (PedalToggle)pedalStruct; if (pedalToggle.toggled) { pedalOption.SetPedalTypeIcon(GetExpressionsIcons().typeToggleOn); } else { pedalOption.SetPedalTypeIcon(GetExpressionsIcons().typeToggleOff); } pedalToggle.pedal = pedalOption; pedalOption.SetBackgroundIcon(pedalStruct.icon); break; case PedalType.FourAxisPuppet: pedalOption.SetPedalTypeIcon(GetExpressionsIcons().typeAxis); pedalOption.SetBackgroundIcon(pedalStruct.icon); break; default: pedalOption.SetForegroundIcon(pedalStruct.icon); break; } } }
private static void AddPedalsInList(List <PedalStruct> pedalStructs, ActionMenu instance) { foreach (PedalStruct pedalStruct in pedalStructs) { PedalOption pedalOption = instance.AddOption(); pedalOption.setText(pedalStruct.text); // VVV pedalOption.setIcon(pedalStruct.icon); //Pretty self explanatory pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); } }
public static void AddPedalsInList(List <PedalStruct> list, ActionMenu instance) { foreach (var pedalStruct in list) { PedalOption pedalOption = instance.AddOption(); switch (pedalStruct.Type) { case PedalType.Button: pedalOption.setText(pedalStruct.text); pedalOption.setIcon(pedalStruct.icon); pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); break; case PedalType.SubMenu: pedalOption.setText(pedalStruct.text); pedalOption.setIcon(pedalStruct.icon); pedalOption.field_Public_ActionButton_0.prop_Texture2D_2 = GetExpressionsIcons().typeFolder; pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); break; case PedalType.RadialPuppet: PedalRadial pedalRadial = (PedalRadial)pedalStruct; pedalOption.setText(pedalStruct.text); pedalOption.setIcon(pedalStruct.icon); pedalOption.field_Public_ActionButton_0.prop_Texture2D_2 = GetExpressionsIcons().typeRadial; pedalOption.field_Public_ActionButton_0.prop_String_1 = $"{Math.Round(pedalRadial.currentValue)}%"; pedalRadial.pedal = pedalOption; pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); break; case PedalType.Toggle: PedalToggle pedalToggle = (PedalToggle)pedalStruct; pedalOption.setText(pedalStruct.text); if (pedalToggle.toggled) { pedalOption.field_Public_ActionButton_0.prop_Texture2D_2 = GetExpressionsIcons().typeToggleOn; } else { pedalOption.field_Public_ActionButton_0.prop_Texture2D_2 = GetExpressionsIcons().typeToggleOff; } pedalOption.setIcon(pedalToggle.icon); pedalToggle.pedal = pedalOption; pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); break; case PedalType.FourAxisPuppet: pedalOption.setText(pedalStruct.text); pedalOption.setIcon(pedalStruct.icon); pedalOption.field_Public_ActionButton_0.prop_Texture2D_2 = GetExpressionsIcons().typeAxis; pedalOption.field_Public_MulticastDelegateNPublicSealedBoUnique_0 = DelegateSupport.ConvertDelegate <PedalOptionTriggerEvent>(pedalStruct.triggerEvent); break; } } }