private void Awake()
        {
            BB = GetComponent <BlockBehaviour>();

            SafeAwake();

            //if (BB.isSimulating ) { return; }

            EnhancementToggle          = BB.AddToggle(LanguageManager.Instance.CurrentLanguage.Enhancement, "Enhancement", EnhancementEnabled);
            EnhancementToggle.Toggled += (bool value) => { EnhancementEnabled = value; PropertiseChangedEvent(EnhancementToggle); /*DisplayInMapper(value);*/ };

            //LoadConfiguration();

            PropertiseChangedEvent += ChangedProperties;
            PropertiseChangedEvent += (mapperType) => { DisplayInMapper(EnhancementEnabled); };
            PropertiseChangedEvent?.Invoke(EnhancementToggle);

            StartCoroutine(onPlaced());
            //Controller.Instance.OnSave += SaveConfiguration;
            IEnumerator onPlaced()
            {
                yield return(new WaitUntil(() => BB.PlacementComplete));

                if (!BB.ParentMachine.isSimulating)
                {
                    OnPlaced();
                }
                yield break;
            }
        }
        public MToggle AddToggle(string displayName, string key, bool defaultValue)
        {
            var mapper = BB.AddToggle(displayName, key, defaultValue);

            mapper.Toggled += (value) => { PropertiseChangedEvent(); };
            return(mapper);
        }
Exemplo n.º 3
0
        public override void SafeAwake()
        {
            ID       = GetComponent <BlockVisualController>().ID;
            Friction = PSaF.GetPositionScaleAndFriction(ID).Friction;

            ColliderToggle          = BB.AddToggle(LanguageManager.customCollider, "Custom Collider", Collider);
            ColliderToggle.Toggled += (value) => { Collider = ShowColliderToggle.DisplayInMapper = value; ChangedProperties(); };

            ShowColliderToggle          = BB.AddToggle(LanguageManager.showCollider, "Show Collider", ShowCollider);
            ShowColliderToggle.Toggled += (value) => { ShowCollider = value; ChangedProperties(); };

            FrictionSlider = BB.AddSlider(LanguageManager.friction, "Friction", Friction, 0.1f, 3f);
            FrictionSlider.ValueChanged += (float value) => { Friction = value; ChangedProperties(); };

            BouncinessSlider = BB.AddSlider(LanguageManager.bounciness, "Bounciness", Bounciness, 0f, 1f);
            BouncinessSlider.ValueChanged += (float value) => { Bounciness = value; ChangedProperties(); };

            if (WheelColliderOrgin == null)
            {
                StartCoroutine(ReadWheelMesh());
            }

#if DEBUG
            ConsoleController.ShowMessage("动力组件添加进阶属性");
#endif
        }
Exemplo n.º 4
0
        public override void SafeAwake()
        {
            HardnessMenu = BB.AddMenu(LanguageManager.hardness, Hardness, MetalHardness, false);
            HardnessMenu.ValueChanged += (int value) => { Hardness = value; ChangedProperties(); };

            ExtendKey = BB.AddKey(LanguageManager.extend, "Extend", KeyCode.E);
            ShrinkKey = BB.AddKey(LanguageManager.retract, "Shrink", KeyCode.F);

            HydraulicToggle          = BB.AddToggle(LanguageManager.hydraulicMode, "Pressure", Hydraulic);
            HydraulicToggle.Toggled += (bool value) => { Hydraulic = R2CToggle.DisplayInMapper = ExtendKey.DisplayInMapper = ShrinkKey.DisplayInMapper = FeedSlider.DisplayInMapper = ExtendLimitSlider.DisplayInMapper = ShrinkLimitSlider.DisplayInMapper = value; ChangedProperties(); };

            R2CToggle          = BB.AddToggle(LanguageManager.returnToCenter, "Return to center", R2C);
            R2CToggle.Toggled += (bool value) => { R2C = value; ChangedProperties(); };

            FeedSlider = BB.AddSlider(LanguageManager.feedSpeed, "feed", Feed, 0f, 2f);
            FeedSlider.ValueChanged += (float value) => { Feed = value; ChangedProperties(); };

            ExtendLimitSlider = BB.AddSlider(LanguageManager.extendLimit, "ExtendLimit", ExtendLimit, 0f, 3f);
            ExtendLimitSlider.ValueChanged += (float value) => { ExtendLimit = value; ChangedProperties(); };

            ShrinkLimitSlider = BB.AddSlider(LanguageManager.retractLimit, "ShrinkLimit", RetractLimit, 0f, 3f);
            ShrinkLimitSlider.ValueChanged += (float value) => { RetractLimit = value; ChangedProperties(); };



#if DEBUG
            ConsoleController.ShowMessage("悬挂添加进阶属性");
#endif
        }
Exemplo n.º 5
0
        public override void SafeAwake()
        {
            RotationToggle          = BB.AddToggle(LanguageManager.cvJoint, "Rotation", Rotation);
            RotationToggle.Toggled += (bool value) => { Rotation = value; ChangedProperties(); };


#if DEBUG
            ConsoleController.ShowMessage("球铰添加进阶属性");
#endif
        }
        public override void SafeAwake()
        {
            BoilingToggle          = BB.AddToggle(LanguageManager.boiling, "Boiling", Boiling);
            BoilingToggle.Toggled += (bool value) => { Boiling = value; ChangedProperties(); };


#if DEBUG
            ConsoleController.ShowMessage("水炮添加进阶属性");
#endif
        }
Exemplo n.º 7
0
        public override void SafeAwake()
        {
            // Initialise some components and default values
            AS     = BB.GetComponent <AudioSource>();
            CB     = BB.GetComponent <CanonBlock>();
            bullet = new Bullet(CB);


            IntervalSlider = BB.AddSlider(LanguageManager.fireInterval, "Interval", Interval, intervalMin, 0.5f);
            IntervalSlider.ValueChanged += (float value) => { Interval = value; ChangedProperties(); };

            RandomDelaySlider = BB.AddSlider(LanguageManager.randomDelay, "RandomDelay", RandomDelay, 0f, 0.5f);
            RandomDelaySlider.ValueChanged += (float value) => { RandomDelay = value; ChangedProperties(); };

            KnockBackSpeedSlider = BB.AddSlider(LanguageManager.recoil, "KnockBackSpeed", KnockBackSpeedZeroOne, knockBackSpeedZeroOneMin, knockBackSpeedZeroOneMax);
            KnockBackSpeedSlider.ValueChanged += (float value) => { KnockBackSpeedZeroOne = value; ChangedProperties(); };

            #region 子弹控件初始化

            BullerCustomBulletToggle          = BB.AddToggle(LanguageManager.customBullet, "Bullet", false);
            BullerCustomBulletToggle.Toggled += (bool value) => { BulletTrailToggle.DisplayInMapper = BulletTrailColorSlider.DisplayInMapper = BulletTrailLengthSlider.DisplayInMapper = BulletDragSlider.DisplayInMapper = BulletMassSlider.DisplayInMapper = BulletInheritSizeToggle.DisplayInMapper = bullet.Custom = value; ChangedProperties(); };

            BulletInheritSizeToggle          = BB.AddToggle(LanguageManager.inheritSize, "InheritSize", false);
            BulletInheritSizeToggle.Toggled += (bool value) => { bullet.InheritSize = value; ChangedProperties(); };

            BulletMassSlider = BB.AddSlider(LanguageManager.bulletMass, "BulletMass", 2f, 0.1f, 2f);
            BulletMassSlider.ValueChanged += (float value) => { bullet.Mass = value; ChangedProperties(); };

            BulletDragSlider = BB.AddSlider(LanguageManager.bulletDrag, "BulletDrag", 0.2f, 0.01f, 0.5f);
            BulletDragSlider.ValueChanged += (float value) => { bullet.Drag = value; ChangedProperties(); };

            BulletTrailToggle          = BB.AddToggle(LanguageManager.trail, "Trail", false);
            BulletTrailToggle.Toggled += (bool value) => { bullet.TrailEnable = BulletTrailColorSlider.DisplayInMapper = BulletTrailLengthSlider.DisplayInMapper = value; ChangedProperties(); };

            BulletTrailLengthSlider = BB.AddSlider(LanguageManager.trailLength, "trail length", 1f, 0.2f, 2f);
            BulletTrailLengthSlider.ValueChanged += (float value) => { bullet.TrailLength = value; ChangedProperties(); };

            BulletTrailColorSlider = BB.AddColourSlider(LanguageManager.trailColor, "trail color", Color.yellow, false);
            BulletTrailColorSlider.ValueChanged += (Color value) => { bullet.TrailColor = value; ChangedProperties(); };

            #endregion

#if DEBUG
            ConsoleController.ShowMessage("加农炮添加进阶属性");
#endif
        }
        public override void SafeAwake()
        {
            CameraLookAtToggle          = BB.AddToggle(LanguageManager.Instance.CurrentLanguage.TrackTarget, "TrackingCamera", cameraLookAtToggled);
            CameraLookAtToggle.Toggled += (bool value) =>
            {
                cameraLookAtToggled =
                    LockTargetKey.DisplayInMapper        =
                        PauseTrackingKey.DisplayInMapper =
                            NonCustomModeSmoothSlider.DisplayInMapper =
                                AutoLookAtKey.DisplayInMapper         =
                                    value;
                ChangedProperties();
            };

            ZoomControlModeMenu = BB.AddMenu(LanguageManager.Instance.CurrentLanguage.ZoomControlMode, zoomControlModeIndex, zoomControlMode, false);
            ZoomControlModeMenu.ValueChanged += (int value) =>
            {
                zoomControlModeIndex = value;
                ChangedProperties();
            };

            NonCustomModeSmoothSlider = BB.AddSlider(LanguageManager.Instance.CurrentLanguage.FirstPersonSmooth, "nonCustomSmooth", firstPersonSmooth, 0, 1);
            NonCustomModeSmoothSlider.ValueChanged += (float value) => { firstPersonSmooth = value; ChangedProperties(); };

            LockTargetKey = BB.AddKey(LanguageManager.Instance.CurrentLanguage.LockTarget, "LockTarget", KeyCode.Delete);

            PauseTrackingKey = BB.AddKey(LanguageManager.Instance.CurrentLanguage.PauseTracking, "ResetView", KeyCode.X);

            AutoLookAtKey = BB.AddKey(LanguageManager.Instance.CurrentLanguage.ManualOverride, "ActiveSearchKey", KeyCode.RightShift);

            ZoomInKey = BB.AddKey(LanguageManager.Instance.CurrentLanguage.ZoomIn, "ZoomInKey", KeyCode.Equals);

            ZoomOutKey = BB.AddKey(LanguageManager.Instance.CurrentLanguage.ZoomOut, "ZoomOutKey", KeyCode.Minus);

            ZoomSpeedSlider = BB.AddSlider(LanguageManager.Instance.CurrentLanguage.ZoomSpeed, "ZoomSpeed", zoomSpeed, 0, 20);
            ZoomSpeedSlider.ValueChanged += (float value) => { zoomSpeed = value; ChangedProperties(); };

            // Add reference to the camera's buildindex
            fixedCamera          = GetComponent <FixedCameraBlock>();
            smoothLook           = fixedCamera.CompositeTracker3;
            defaultLocalRotation = smoothLook.localRotation;
            selfIndex            = fixedCamera.BuildIndex;
#if DEBUG
            ConsoleController.ShowMessage("摄像机添加进阶属性");
#endif
        }
Exemplo n.º 9
0
        public override void SafeAwake()
        {
            steeringWheel = GetComponent <SteeringWheel>();

            r2cToggle          = BB.AddToggle(LanguageManager.Instance.CurrentLanguage.ReturnToCenter, "Return to center", ReturnToCenter);
            r2cToggle.Toggled += (bool value) => { ReturnToCenter = NearToggle.DisplayInMapper = value; ChangedProperties(r2cToggle); };

            NearToggle          = BB.AddToggle(LanguageManager.Instance.CurrentLanguage.Near, "Near", Near);
            NearToggle.Toggled += (bool value) => { Near = value; ChangedProperties(NearToggle); };

            leftKey             = steeringWheel.KeyList.Find(match => match.Key == "left");
            rightKey            = steeringWheel.KeyList.Find(match => match.Key == "right");
            rotationSpeedSlider = steeringWheel.SpeedSlider;

#if DEBUG
            ConsoleController.ShowMessage("转向关节添加进阶属性");
#endif
        }
        private void Awake()
        {
            BB = GetComponent <BlockBehaviour>();

            SafeAwake();

            //if (BB.isSimulating ) { return; }

            Enhancement          = BB.AddToggle(LanguageManager.Instance.CurrentLanguage.Enhancement, "Enhancement", EnhancementEnabled);
            Enhancement.Toggled += (bool value) => { EnhancementEnabled = value; PropertiseChangedEvent(); /*DisplayInMapper(value);*/ };

            //LoadConfiguration();

            PropertiseChangedEvent += ChangedProperties;
            PropertiseChangedEvent += () => { DisplayInMapper(EnhancementEnabled); };
            PropertiseChangedEvent?.Invoke();

            //Controller.Instance.OnSave += SaveConfiguration;
        }