protected override void SafeAwake() { CameraLookAtToggle = AddToggle("追踪摄像机", "TrackingCamera", cameraLookAtToggled); CameraLookAtToggle.Toggled += (bool value) => { cameraLookAtToggled = RecordTargetToggle.DisplayInMapper = LockTargetKey.DisplayInMapper = RotateSpeedSlider.DisplayInMapper = ResetViewKey.DisplayInMapper = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { cameraLookAtToggled = CameraLookAtToggle.IsActive; }; RecordTargetToggle = AddToggle("记录目标", "RecordTarget", recordTarget); RecordTargetToggle.Toggled += (bool value) => { recordTarget = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { recordTarget = RecordTargetToggle.IsActive; }; RotateSpeedSlider = AddSlider("追踪速度", "RotateSpeed", rotateSpeed, 1, 100, false); RotateSpeedSlider.ValueChanged += (float value) => { rotateSpeed = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { rotateSpeed = RotateSpeedSlider.Value; }; LockTargetKey = AddKey("锁定目标", "LockTarget", lockKeys); LockTargetKey.InvokeKeysChanged(); ResetViewKey = AddKey("暂停/恢复追踪", "ResetView", resetKeys); ResetViewKey.InvokeKeysChanged(); // Get the actual camera's transform, not the joint's transform realCameraTransform = GetComponent <FixedCameraBlock>().CompoundTracker; realCameraTransform.gameObject.AddComponent <SmoothLookAt>(); defaultRotation = realCameraTransform.rotation; // Add reference to the camera's buildindex selfIndex = GetComponent <BlockBehaviour>().BuildIndex; #if DEBUG ConsoleController.ShowMessage("摄像机添加进阶属性"); #endif }
public override void SafeAwake() { SwitchKey = /*BB.*/ AddKey("Switch", "Switch", KeyCode.R); SwitchKey.InvokeKeysChanged(); HeldToggle = /*BB.*/ AddToggle("Toggle", "Toggle", /*Held*/ false); //HeldToggle.Toggled += (value) => { Held = value; ChangedProperties(); }; }
protected override void SafeAwake() { //Key mapper setup GuidedRocketToggle = AddToggle("追踪目标", "TrackingRocket", guidedRocketActivated); GuidedRocketToggle.Toggled += (bool value) => { guidedRocketActivated = RecordTargetToggle.DisplayInMapper = GuidedRocketTorqueSlider.DisplayInMapper = ProximityFuzeToggle.DisplayInMapper = LockTargetKey.DisplayInMapper = ActiveGuideRocketKey.DisplayInMapper = ActiveGuideRocketSearchAngleSlider.DisplayInMapper = GuideDelaySlider.DisplayInMapper = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { guidedRocketActivated = GuidedRocketToggle.IsActive; }; RecordTargetToggle = AddToggle("记录目标", "RecordTarget", recordTarget); RecordTargetToggle.Toggled += (bool value) => { recordTarget = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { recordTarget = RecordTargetToggle.IsActive; }; ProximityFuzeToggle = AddToggle("近炸", "ProximityFuze", proximityFuzeActivated); ProximityFuzeToggle.Toggled += (bool value) => { proximityFuzeActivated = ProximityFuzeRangeSlider.DisplayInMapper = ProximityFuzeAngleSlider.DisplayInMapper = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { proximityFuzeActivated = ProximityFuzeToggle.IsActive; }; HighExploToggle = AddToggle("高爆", "HighExplo", highExploActivated); HighExploToggle.Toggled += (bool value) => { highExploActivated = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { highExploActivated = HighExploToggle.IsActive; }; ActiveGuideRocketSearchAngleSlider = AddSlider("搜索角度", "searchAngle", searchAngle, 0, 90, false); ActiveGuideRocketSearchAngleSlider.ValueChanged += (float value) => { searchAngle = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { searchAngle = ActiveGuideRocketSearchAngleSlider.Value; }; ProximityFuzeRangeSlider = AddSlider("近炸距离", "closeRange", proximityRange, 0, 10, false); ProximityFuzeRangeSlider.ValueChanged += (float value) => { proximityRange = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { proximityRange = ProximityFuzeRangeSlider.Value; }; ProximityFuzeAngleSlider = AddSlider("近炸角度", "closeAngle", proximityAngle, 0, 90, false); ProximityFuzeAngleSlider.ValueChanged += (float value) => { proximityAngle = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { proximityAngle = ProximityFuzeAngleSlider.Value; }; GuidedRocketTorqueSlider = AddSlider("火箭扭转力度", "torqueOnRocket", torque, 0, 100, true); GuidedRocketTorqueSlider.ValueChanged += (float value) => { torque = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { torque = GuidedRocketTorqueSlider.Value; }; GuideDelaySlider = AddSlider("延迟追踪", "guideDelay", guideDelay, 0, 100, false); GuideDelaySlider.ValueChanged += (float value) => { guideDelay = value; ChangedProperties(); }; BlockDataLoadEvent += (XDataHolder BlockData) => { guideDelay = GuideDelaySlider.Value; }; LockTargetKey = AddKey("锁定目标", "lockTarget", lockKeys); LockTargetKey.InvokeKeysChanged(); ActiveGuideRocketKey = AddKey("主动/手动搜索切换", "ActiveSearchKey", activeGuideKeys); ActiveGuideRocketKey.InvokeKeysChanged(); //Add reference to TimedRocket rocket = gameObject.GetComponent <TimedRocket>(); rocketRigidbody = gameObject.GetComponent <Rigidbody>(); selfIndex = transform.GetComponent <BlockBehaviour>().BuildIndex; #if DEBUG ConsoleController.ShowMessage("火箭添加进阶属性"); #endif }