public void OnInit(VAMLaunch plugin) { _pluginFreeController = plugin.containingAtom.GetStorableByID("control") as FreeControllerV3; InitOptionsUI(plugin); InitEditorGizmos(); }
public void OnInitStorables(VAMLaunch plugin) { _minPosition = new JSONStorableFloat("oscSourceMinPosition", 10.0f, 0.0f, 99.0f); plugin.RegisterFloat(_minPosition); _maxPosition = new JSONStorableFloat("oscSourceMaxPosition", 80.0f, 0.0f, 99.0f); plugin.RegisterFloat(_maxPosition); _speed = new JSONStorableFloat("oscSourceSpeed", 30.0f, 20.0f, 80.0f); plugin.RegisterFloat(_speed); _animationOffset = new JSONStorableFloat("oscAnimationOffset", 0.0f, 0.0f, 0.5f); plugin.RegisterFloat(_animationOffset); _targetAnimationAtomChooser = new JSONStorableStringChooser("oscSourceTargetAnimationAtom", GetTargetAnimationAtomChoices(), "", "Target Animation Pattern", (name) => { _animationAtomController = null; _targetAnimationPattern = null; if (string.IsNullOrEmpty(name)) { return; } var atom = SuperController.singleton.GetAtomByUid(name); if (atom && atom.animationPatterns.Length > 0) { _animationAtomController = atom.freeControllers[0]; _targetAnimationPattern = atom.animationPatterns[0]; } }); plugin.RegisterStringChooser(_targetAnimationAtomChooser); }
private void DestroyOptionsUI(VAMLaunch plugin) { plugin.RemoveSlider(_minPosition); plugin.RemoveSlider(_maxPosition); plugin.RemoveSlider(_speed); plugin.RemoveSlider(_animationOffset); plugin.RemovePopup(_chooseAnimationAtomPopup); }
public void OnInit(VAMLaunch plugin) { _pluginFreeController = plugin.containingAtom.GetStorableByID("control") as FreeControllerV3; InitOptionsUI(plugin); InitEditorGizmos(); _moveUpwards = true; _dirChangeTimer = 0.0f; }
private void DestroyOptionsUI(VAMLaunch plugin) { plugin.RemoveSlider(_minPosition); plugin.RemoveSlider(_maxPosition); plugin.RemovePopup(_chooseAnimationAtomPopup); plugin.RemovePopup(_samplePlaneChooser); plugin.RemoveToggle(_includeMidPoints); plugin.RemoveToggle(_invertPosition); plugin.RemoveToggle(_useLocalSpace); }
public void OnInitStorables(VAMLaunch plugin) { _minPosition = new JSONStorableFloat("patternSourceMinPosition", 10.0f, 0.0f, 99.0f); plugin.RegisterFloat(_minPosition); _maxPosition = new JSONStorableFloat("patternSourceMaxPosition", 80.0f, 0.0f, 99.0f); plugin.RegisterFloat(_maxPosition); _targetAnimationAtomChooser = new JSONStorableStringChooser("patternSourceTargetAnimationAtom", GetTargetAnimationAtomChoices(), "", "Target Animation Pattern", (name) => { _animationAtomController = null; _targetAnimationPattern = null; if (string.IsNullOrEmpty(name)) { return; } var atom = SuperController.singleton.GetAtomByUid(name); if (atom && atom.animationPatterns.Length > 0) { _animationAtomController = atom.freeControllers[0]; _targetAnimationPattern = atom.animationPatterns[0]; _patternTime = _targetAnimationPattern.GetFloatJSONParam("currentTime"); _patternSpeed = _targetAnimationPattern.GetFloatJSONParam("speed"); } }); plugin.RegisterStringChooser(_targetAnimationAtomChooser); _samplePlaneChooser = new JSONStorableStringChooser("patternSourceSamplePlane", _samplePlaneChoices, "", "Sample Plane", (name) => { for (int i = 0; i < _samplePlaneChoices.Count; i++) { if (_samplePlaneChoices[i] == name) { _samplePlaneIndex = i; break; } } }); plugin.RegisterStringChooser(_samplePlaneChooser); if (string.IsNullOrEmpty(_samplePlaneChooser.val)) { _samplePlaneChooser.SetVal("Y"); } _includeMidPoints = new JSONStorableBool("patternSourceIncludeMidPoints", false); plugin.RegisterBool(_includeMidPoints); _invertPosition = new JSONStorableBool("patternSourceInvertPosition", false); plugin.RegisterBool(_invertPosition); _useLocalSpace = new JSONStorableBool("patternSourceUseLocalSpace", false); plugin.RegisterBool(_useLocalSpace); }
private void DestroyOptionsUI(VAMLaunch plugin) { plugin.RemoveButton(_chooseAtomButton); plugin.RemovePopup(_chooseAtomPopup); plugin.RemovePopup(_chooseControlPopup); plugin.RemoveSlider(_targetZoneWidth); plugin.RemoveSlider(_targetZoneHeight); plugin.RemoveSlider(_targetZoneDepth); plugin.RemoveSlider(_positionSampleRate); plugin.RemoveSlider(_minLaunchSignalTimeThreshold); plugin.RemoveSlider(_maxLaunchSignalTimeThreshold); plugin.RemoveSlider(_lowerVelocityBarrier); plugin.RemoveSlider(_higherVelocityBarrier); plugin.RemoveSlider(_launchSpeedMultiplier); plugin.RemoveSlider(_currentLaunchSignalTimeThreshold); plugin.RemoveSlider(_currentTargetPos); plugin.RemoveSpacer(_spacer0); }
private void InitOptionsUI(VAMLaunch plugin) { var slider = plugin.CreateSlider(_minPosition, true); slider.label = "Min Position"; slider.slider.onValueChanged.AddListener((v) => { _minPosition.SetVal(Mathf.Min(_maxPosition.val - 20.0f, v)); }); slider = plugin.CreateSlider(_maxPosition, true); slider.label = "Max Position"; slider.slider.onValueChanged.AddListener((v) => { _maxPosition.SetVal(Mathf.Max(_minPosition.val + 20.0f, v)); }); _chooseAnimationAtomPopup = plugin.CreateScrollablePopup(_targetAnimationAtomChooser); _chooseAnimationAtomPopup.popup.onOpenPopupHandlers += () => { _targetAnimationAtomChooser.choices = GetTargetAnimationAtomChoices(); }; _chooseSamplePlanePopup = plugin.CreateScrollablePopup(_samplePlaneChooser); _chooseSamplePlanePopup.popup.onOpenPopupHandlers += () => { _samplePlaneChooser.choices = _samplePlaneChoices; }; var toggle = plugin.CreateToggle(_useLocalSpace); toggle.label = "Use Local Space"; toggle = plugin.CreateToggle(_includeMidPoints); toggle.label = "Include Mid Points"; toggle = plugin.CreateToggle(_invertPosition); toggle.label = "Invert"; }
private void InitOptionsUI(VAMLaunch plugin) { var slider = plugin.CreateSlider(_minPosition, true); slider.label = "Min Position"; slider.slider.onValueChanged.AddListener((v) => { _minPosition.SetVal(Mathf.Min(_maxPosition.val - 20.0f, v)); }); slider = plugin.CreateSlider(_maxPosition, true); slider.label = "Max Position"; slider.slider.onValueChanged.AddListener((v) => { _maxPosition.SetVal(Mathf.Max(_minPosition.val + 20.0f, v)); }); slider = plugin.CreateSlider(_speed, true); slider.label = "Speed"; slider.slider.onValueChanged.AddListener((v) => { _speed.SetVal(v); }); _chooseAnimationAtomPopup = plugin.CreateScrollablePopup(_targetAnimationAtomChooser); _chooseAnimationAtomPopup.popup.onOpenPopupHandlers += () => { _targetAnimationAtomChooser.choices = GetTargetAnimationAtomChoices(); }; slider = plugin.CreateSlider(_animationOffset, false); slider.label = "Animation Offset"; slider.slider.onValueChanged.AddListener((v) => { _animationOffset.SetVal(v); }); }
public void OnDestroy(VAMLaunch plugin) { DestroyOptionsUI(plugin); }
private void InitOptionsUI(VAMLaunch plugin) { _chooseAtomButton = plugin.CreateButton("Select Zone Target"); _chooseAtomButton.button.onClick.AddListener(() => { SuperController.singleton.SelectModeAtom((atom) => { if (atom == null) { return; } _targetAtomChooser.SetVal(atom.uid); }); }); _chooseAtomPopup = plugin.CreateScrollablePopup(_targetAtomChooser); _chooseAtomPopup.popup.onOpenPopupHandlers += () => { _targetAtomChooser.choices = GetTargetAtomChoices(); }; _chooseControlPopup = plugin.CreateScrollablePopup(_targetControllerChooser); _chooseControlPopup.popup.onOpenPopupHandlers += () => { _targetControllerChooser.choices = GetTargetControllerChoices(); }; var slider = plugin.CreateSlider(_targetZoneWidth, true); slider.label = "Target Zone Width"; slider.slider.onValueChanged.AddListener((v) => { _targetZoneWidth.SetVal(v); }); slider = plugin.CreateSlider(_targetZoneHeight, true); slider.label = "Target Zone Height"; slider.slider.onValueChanged.AddListener((v) => { _targetZoneHeight.SetVal(v); }); slider = plugin.CreateSlider(_targetZoneDepth, true); slider.label = "Target Zone Depth"; slider.slider.onValueChanged.AddListener((v) => { _targetZoneDepth.SetVal(v); }); slider = plugin.CreateSlider(_positionSampleRate, true); slider.label = "Position Sample Rate"; slider.slider.onValueChanged.AddListener((v) => { _positionSampleRate.SetVal(v); }); slider = plugin.CreateSlider(_minLaunchSignalTimeThreshold, true); slider.label = "Min Adjust Time Threshold"; slider.slider.onValueChanged.AddListener((v) => { _minLaunchSignalTimeThreshold.SetVal(v); }); slider = plugin.CreateSlider(_maxLaunchSignalTimeThreshold, true); slider.label = "Max Adjust Time Threshold"; slider.slider.onValueChanged.AddListener((v) => { _maxLaunchSignalTimeThreshold.SetVal(v); }); slider = plugin.CreateSlider(_lowerVelocityBarrier, true); slider.label = "Min Adjust Time Vel Barrier"; slider.slider.onValueChanged.AddListener((v) => { _lowerVelocityBarrier.SetVal(v); }); slider = plugin.CreateSlider(_higherVelocityBarrier, true); slider.label = "Max Adjust Time Vel Barrier"; slider.slider.onValueChanged.AddListener((v) => { _higherVelocityBarrier.SetVal(v); }); slider = plugin.CreateSlider(_launchSpeedMultiplier, true); slider.label = "Launch Speed Multiplier"; slider.slider.onValueChanged.AddListener((v) => { _launchSpeedMultiplier.SetVal(v); }); _spacer0 = plugin.CreateSpacer(); slider = plugin.CreateSlider(_currentLaunchSignalTimeThreshold, false); slider.label = "Adjust Time"; slider = plugin.CreateSlider(_currentTargetPos, false); slider.label = "Current Target Position"; }
public void OnInitStorables(VAMLaunch plugin) { _targetZoneWidth = new JSONStorableFloat("zoneSourceTargetZoneWidth", 0.1f, 0.005f, 0.2f); _targetZoneHeight = new JSONStorableFloat("zoneSourceTargetZoneHeight", 0.1f, 0.005f, 0.2f); _targetZoneDepth = new JSONStorableFloat("zoneSourceTargetZoneDepth", 0.1f, 0.005f, 0.2f); plugin.RegisterFloat(_targetZoneWidth); plugin.RegisterFloat(_targetZoneHeight); plugin.RegisterFloat(_targetZoneDepth); _currentTargetPos = new JSONStorableFloat("zoneSourceLaunchPos", 0.0f, 0.0f, LaunchUtils.LAUNCH_MAX_VAL); plugin.RegisterFloat(_currentTargetPos); _positionSampleRate = new JSONStorableFloat("zoneSourcePositionSampleRate", 40.0f, 10.0f, 90.0f); plugin.RegisterFloat(_positionSampleRate); _minLaunchSignalTimeThreshold = new JSONStorableFloat("zoneSourceMinLaunchSignalTimeThreshold", 0.1f, 0.001f, 0.4f); plugin.RegisterFloat(_minLaunchSignalTimeThreshold); _maxLaunchSignalTimeThreshold = new JSONStorableFloat("zoneSourceMaxLaunchSignalTimeThreshold", 0.25f, 0.001f, 0.4f); plugin.RegisterFloat(_maxLaunchSignalTimeThreshold); _currentLaunchSignalTimeThreshold = new JSONStorableFloat("zoneSourceCurrentLaunchSignalTimeThreshold", 0.099f, 0.001f, 0.4f); plugin.RegisterFloat(_currentLaunchSignalTimeThreshold); _lowerVelocityBarrier = new JSONStorableFloat("zoneSourceLowerVelocityBarrier", 10.0f, 0.0f, LaunchUtils.LAUNCH_MAX_VAL); plugin.RegisterFloat(_lowerVelocityBarrier); _higherVelocityBarrier = new JSONStorableFloat("zoneSourceHigherVelocityBarrier", 45.0f, 0.0f, LaunchUtils.LAUNCH_MAX_VAL); plugin.RegisterFloat(_higherVelocityBarrier); _launchSpeedMultiplier = new JSONStorableFloat("zoneSourceLaunchSpeedMultiplier", 1.0f, 0.01f, 2.0f); plugin.RegisterFloat(_launchSpeedMultiplier); _targetAtomChooser = new JSONStorableStringChooser("zoneSourceTargetAtom", GetTargetAtomChoices(), "", "Target Atom", (name) => { _targetAtom = SuperController.singleton.GetAtomByUid(name); if (_targetAtom == null) { _targetController = null; } else { _targetController = _targetAtom.GetStorableByID(_targetControllerChooser.val) as FreeControllerV3; } if (_targetController == null) { _targetControllerChooser.SetVal(""); } }); plugin.RegisterStringChooser(_targetAtomChooser); _targetControllerChooser = new JSONStorableStringChooser("zoneSourceTargetController", GetTargetControllerChoices(), "", "Target Control", (name) => { if (_targetAtom == null) { _targetController = null; } else { _targetController = _targetAtom.GetStorableByID(name) as FreeControllerV3; } }); plugin.RegisterStringChooser(_targetControllerChooser); }