Ejemplo n.º 1
0
        private static void OnListChange_font_size(UIMenu sender, UIMenuListItem list, int index)
        {
            if (sender != font_sizeMenu)
            {
                return;
            }

            if (list == font_size_steet_county_zone)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size = list.IndexToItem(index);
            }
            if (list == font_size_heading)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size_heading = list.IndexToItem(index);
            }
            if (list == font_size_time)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size_time = list.IndexToItem(index);
            }
            if (list == font_size_speedlimit)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size_sl = list.IndexToItem(index);
            }
            if (list == font_size_currspeed)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size_cs = list.IndexToItem(index);
            }
            if (list == font_size_coords)
            {
                RageShowMyLocation.RageShowMyLocationClass.option_font_size_coords = list.IndexToItem(index);
            }


            RageShowMyLocationClass.SaveSettings();
        }
Ejemplo n.º 2
0
        public void OnItemSelect(UIMenu sender, UIMenuItem selectedItem, int index)
        {
            if (selectedItem == StartRace)
            {
                if (Game.Player.Money >= RealMoneyBetList[MoneyBet.Index])
                {
                    foreach (Vector3 waypoint in RaceWaypoints)
                    {
                        Blip blip = World.CreateBlip(waypoint);
                        blip.IsShortRange = true;
                        blip.Scale        = 0.6f;
                        RaceWaypointBlips.Add(blip);
                    }
                    RaceStatus = RacePhase.RacePreps;

                    foreach (Blip blip in RaceTriggersBlips)
                    {
                        blip.Alpha = 0;
                    }

                    _menuPool.CloseAllMenus();
                    if (RealMoneyBetList[MoneyBet.Index] != 0)
                    {
                        Game.Player.Money -= RealMoneyBetList[MoneyBet.Index];
                    }
                    Prize = (RealMoneyBetList[MoneyBet.Index] * (SetupCarsNumber.IndexToItem(SetupCarsNumber.Index) + 1));
                    Bet   = RealMoneyBetList[MoneyBet.Index];
                    Script.Wait(1000);
                }
                else
                {
                    UI.Notify("~r~You don't have enough money join this race.");
                }
            }
        }
Ejemplo n.º 3
0
        public static void OnListChange(UIMenu sender, UIMenuListItem list, int index)
        {
            if ((sender != PedManagementMenu && sender != vehicleManagementMenu) || list != MenuSwitchListItem)
            {
                return;
            }

            string selectedmenustring = list.IndexToItem(index).ToString();

            UIMenu selectedmenu;

            if (selectedmenustring == "Ped Manager")
            {
                selectedmenu = PedManagementMenu;
            }
            else
            {
                selectedmenu = vehicleManagementMenu;
            }
            if (selectedmenu != sender)
            {
                sender.Visible       = false;
                selectedmenu.Visible = true;
                ActiveMenu           = selectedmenu;
                list.Selected        = false;
            }
        }
Ejemplo n.º 4
0
        private void SpawnVehicle()
        {
            //Telling the game what model car you want
            int   modelIndex   = vehicleModelList.Index;
            Model vehicleModel = new Model(l.VehicleModels[modelIndex]);

            //Checking if you want your vehicle invincible or you to spawn in vehicle
            bool warpToVehicle = cbWarpIntoVehicle.Checked;
            bool invincible    = cbVehicleInvincible.Checked;

            //Setting the right position for your car to be spawned at
            string  directionName = vehicleDirectionList.IndexToItem(vehicleDirectionList.Index);
            Vector3 position;

            if (directionName == "Front")
            {
                position = character.GetOffsetPositionFront(5);
            }
            else
            {
                position = character.GetOffsetPositionFront(-5);
            }

            //Creating vehicle in Game world
            Vehicle spawnedVehicle = new Vehicle(vehicleModel, position, 0);

            //Making vehicle invincible if you selected the box
            spawnedVehicle.IsInvincible = invincible;

            //Warping you into vehicle if you selected box
            if (warpToVehicle == true)
            {
                character.WarpIntoVehicle(spawnedVehicle, -1);
            }
        }
Ejemplo n.º 5
0
        void HandlePositions()
        {
            Laps = SetupLaps.IndexToItem(SetupLaps.Index);

            string text = " ";
            int    CurrentPositionChecked = 1 + RacersFinished;
            int    CheckpointsChecked     = 0;
            int    NumberOfCheckpoints    = RaceWaypoints.Count;

            foreach (Racer racer in Racers)
            {
                if (!racer.driver.IsPlayer && racer.car.CurrentBlip != null)
                {
                    racer.car.CurrentBlip.HideNumber();
                }
            }

            //For each lap, from the last to the first
            for (int lap = Laps; lap >= 0; lap--)
            {
                //For each waypoint, from the last to the first
                for (int number = NumberOfCheckpoints; number >= 0; number--)
                {
                    List <float> DistanceToWaypoint      = new List <float>();
                    List <Racer> CompetitorsThisWaypoint = new List <Racer>();


                    foreach (Racer racer in Racers)
                    {
                        //if (racer.CurrentWaypoint == 0) racer.CurrentWaypoint = NumberOfCheckpoints;
                        if (racer.CurrentLap == lap && racer.CurrentCheckpoint == number)
                        {
                            DistanceToWaypoint.Add(racer.DistanceToWaypoint);
                            CompetitorsThisWaypoint.Add(racer);
                        }
                    }

                    DistanceToWaypoint.Sort();
                    foreach (float dist in DistanceToWaypoint)
                    {
                        foreach (Racer racer in CompetitorsThisWaypoint)
                        {
                            if (dist == racer.DistanceToWaypoint)
                            {
                                racer.PositionInRace = CurrentPositionChecked;
                                racer.car.CurrentBlip.ShowNumber(CurrentPositionChecked);
                                CurrentPositionChecked++;
                            }
                        }
                    }
                }
            }
            //DisplayHelpTextThisFrame(text);
        }
Ejemplo n.º 6
0
 public static void OnItemSelect(UIMenu sender, UIMenuItem selectedItem, int index)
 {
     if (sender != CalloutSelectMenu)
     {
         return;
     }
     if (selectedItem == ConfirmItem)
     {
         string name = CalloutListItem.IndexToItem(CalloutListItem.Index);
         Command_StartCallout(name);
     }
 }
Ejemplo n.º 7
0
        private void SpawnWeapon()
        {
            int    wpnIndex = weaponsList.Index;
            string wpnName  = weaponsList.IndexToItem(weaponsList.Index);

            WeaponAsset wa = l.WeaponModels[wpnIndex];

            inventory.GiveNewWeapon(wa, (short)Ammo.max, true);

            if (cbSpawnWithAttachments.Checked)
            {
                AddAttachmentsToWeapon(wa);
            }
        }
Ejemplo n.º 8
0
        private void LockSpeed(Vehicle car, UIMenuListItem item)
        {
            string[] itemName = item.IndexToItem(item.Index).Split(' ');
            if (itemName[0] == "None")
            {
                car.MaxSpeed = int.MaxValue;
                Screen.ShowNotification($"Velocidade maxima retirada.");
                return;
            }

            float itemSpeed = float.Parse(itemName[0]) / 3.6f;

            car.MaxSpeed = itemSpeed;
            Screen.ShowNotification($"O limite de velocidade e {itemName[0]} {itemName[1]}.");
        }
Ejemplo n.º 9
0
        private void LockSpeed(Vehicle car, UIMenuListItem item)
        {
            string[] itemName = item.IndexToItem(item.Index).Split(' ');
            if (itemName[0] == "Varsayılan")
            {
                car.MaxSpeed = int.MaxValue;
                Screen.ShowNotification($"Hız limiti kaldırıldı.");
                return;
            }

            float itemSpeed = float.Parse(itemName[0]) / 3.6f;

            car.MaxSpeed = itemSpeed;
            Screen.ShowNotification($"Araç hızı ayarlandı: {itemName[0]} {itemName[1]}.");
        }
Ejemplo n.º 10
0
        private void LockSpeed(Vehicle car, UIMenuListItem item)
        {
            string[] itemName = item.IndexToItem(item.Index).Split(' ');
            if (itemName[0] == "None")
            {
                car.MaxSpeed = int.MaxValue;
                Screen.ShowNotification($"車輛限速已被解除");
                return;
            }

            float itemSpeed = float.Parse(itemName[0]) / 3.6f;

            car.MaxSpeed = itemSpeed;
            Screen.ShowNotification($"車輛已被限速在 {itemName[0]} {itemName[1]}.");
        }
        private static void OnItemSelectCarMenu(UIMenu sender, UIMenuItem selectedItem, int index)
        {
            if (sender != carMenu)
            {
                return;
            }

            try
            {
                if (selectedItem == repairVehicle)
                {
                    GameFiber.StartNew(delegate
                    {
                        if (Game.LocalPlayer.Character.IsInAnyVehicle(true))
                        {
                            Game.LocalPlayer.Character.CurrentVehicle.Repair();
                            Game.DisplaySubtitle("Your vehicle has been ~r~repaired~w~.", 3500);
                        }
                    }, "repairVehicleMenuFiber");
                }
                else if (selectedItem == cleanVehicle)
                {
                    GameFiber.StartNew(delegate
                    {
                        if (Game.LocalPlayer.Character.IsInAnyVehicle(true))
                        {
                            Game.LocalPlayer.Character.CurrentVehicle.DirtLevel = 0;
                            Game.DisplaySubtitle("Your vehicle has been ~r~cleaned~w~.", 3500);
                        }
                    }, "cleanVehicleMenuFiber");
                }
                else if (selectedItem == spawnVehicle)
                {
                    GameFiber.StartNew(delegate
                    {
                        spawnedVehicle = new Vehicle(((string)carList.IndexToItem(carList.Index)).ToLower(), Game.LocalPlayer.Character.GetOffsetPositionFront(5f));
                        spawnedVehicle.Dismiss();
                    }, "spawnVehicleMenuFiber");
                }
            }
            catch (Exception ex)
            {
                Game.LogTrivial("An error occurred in the Car Menu. Error is: " + ex);
            }
        }
Ejemplo n.º 12
0
        private void AddOpenDoorItem(UIMenu menu)
        {
            List <dynamic> doors = new List <dynamic>
            {
                "Ön sol",
                "Ön sağ",
                "Arka sol",
                "Arka sağ",
                "Kaput",
                "Bagaj"
            };
            var newItem = new UIMenuListItem("Kapıları Aç / Kapat", doors, 0);

            menu.AddItem(newItem);

            menu.OnItemSelect += (sender, item, index) =>
            {
                if (item != newItem)
                {
                    return;
                }

                int     itemIndex = newItem.Index;
                string  doorName  = newItem.IndexToItem(itemIndex);
                Vehicle car       = LocalPlayer.Character.CurrentVehicle;

                if (car == null &&
                    savedVehicle == null)
                {
                    Screen.ShowNotification(ERROR_NOCAR);
                    return;
                }

                if (car != null)
                {
                    ToggleDoor(car, itemIndex, doorName);
                }
                else
                {
                    ToggleDoor(savedVehicle, itemIndex, doorName);
                }
            };
        }
Ejemplo n.º 13
0
        private void AddOpenDoorItem(UIMenu menu)
        {
            List <dynamic> doors = new List <dynamic>
            {
                "Front Left",
                "Front Right",
                "Back Left",
                "Back Right",
                "Hood",
                "Trunk"
            };
            var newItem = new UIMenuListItem("Toggle Door", doors, 0);

            menu.AddItem(newItem);

            menu.OnItemSelect += (sender, item, index) =>
            {
                if (item != newItem)
                {
                    return;
                }

                int     itemIndex = newItem.Index;
                string  doorName  = newItem.IndexToItem(itemIndex);
                Vehicle car       = LocalPlayer.Character.CurrentVehicle;

                if (car == null &&
                    savedVehicle == null)
                {
                    Screen.ShowNotification(ERROR_NOCAR);
                    return;
                }

                if (car != null)
                {
                    ToggleDoor(car, itemIndex, doorName);
                }
                else
                {
                    ToggleDoor(savedVehicle, itemIndex, doorName);
                }
            };
        }
Ejemplo n.º 14
0
        private void AddOpenDoorItem(UIMenu menu)
        {
            List <dynamic> doors = new List <dynamic>
            {
                "Frente Esquerda",
                "Frente Direita",
                "Atras Esquerda",
                "Atras Direita",
                "Capo",
                "Bagageira"
            };
            var newItem = new UIMenuListItem("Alternar Portas", doors, 0);

            menu.AddItem(newItem);

            menu.OnItemSelect += (sender, item, index) =>
            {
                if (item != newItem)
                {
                    return;
                }

                int     itemIndex = newItem.Index;
                string  doorName  = newItem.IndexToItem(itemIndex);
                Vehicle car       = LocalPlayer.Character.CurrentVehicle;

                if (car == null &&
                    savedVehicle == null)
                {
                    Screen.ShowNotification(ERROR_NOCAR);
                    return;
                }

                if (car != null)
                {
                    ToggleDoor(car, itemIndex, doorName);
                }
                else
                {
                    ToggleDoor(savedVehicle, itemIndex, doorName);
                }
            };
        }
Ejemplo n.º 15
0
        private void SetPatchHandler(
            UIMenu sender,
            UIMenuListItem selectedItem,
            int index)
        {
            List <Patch> patchList = this.patchCollection.List.FindAll(item => item.Group == "All" || item.Group == selectedItem.Text);

            foreach (Patch patch in patchList)
            {
                this.ped.RemovePatch(patch);
            }

            string patchname  = selectedItem.IndexToItem(index);
            Patch  patchToAdd = patchList.Find(item => item.Name == patchname);

            this.ped.AddPatch(patchToAdd);

            this.ped.UpdateDecorations();
        }
Ejemplo n.º 16
0
 private void ZPosItemOnOnListChanged2(UIMenuListItem sender, int newindex) => _zPos2           = (float)sender.IndexToItem(newindex);
Ejemplo n.º 17
0
 private void YPosItemOnOnListChanged(UIMenuListItem sender, int newIndex) => _yPos             = (float)sender.IndexToItem(newIndex);
Ejemplo n.º 18
0
        private void CreateMenu()
        {
            _mainMenu = new UIMenu("Tobii Eye Tracking", "~b~SETTINGS");
            _mainMenu.SetMenuWidthOffset(50);
            //_mainMenu.ControlDisablingEnabled = false;
            _menuPool.Add(_mainMenu);

            InitLists();
            CreateThirdPersonFreelookMenu();
            CreateFirstPersonFreelookMenu();
            CreateDeadzoneMenu();
            _freelookDevice = new UIMenuListItem("Freelook Device", _freelookDevices, (int)_settings.FreelookDevice, "Device to use for freelook. We recommend using XBOX 360 Controller or any other XInput compatible one.");
            _freelookDevice.OnListChanged += (sender, args) => { _settings.FreelookDevice = (FeeelookDevice)_freelookDevice.Index; };
            _mainMenu.AddItem(_freelookDevice);

            var firstPersonFreelookSettings = new UIMenuItem("First Person Freelook Settings", "Look around with gaze in first person");

            _mainMenu.AddItem(firstPersonFreelookSettings);
            _mainMenu.BindMenuToItem(FirstPersonFreelookMenu, firstPersonFreelookSettings);

            var thirdPersonFreelookSettings = new UIMenuItem("Third Person Freelook Settings", "Look around with gaze in third person");

            _mainMenu.AddItem(thirdPersonFreelookSettings);
            _mainMenu.BindMenuToItem(ThirdPersonFreelookMenu, thirdPersonFreelookSettings);

            var deadzoneSettings = new UIMenuItem("Freelook Deadzones", "Deadzones prevent camera movement when you are looking inside the zone, for example, the minimap");

            _mainMenu.AddItem(deadzoneSettings);
            _mainMenu.BindMenuToItem(DeadzoneMenu, deadzoneSettings);

            var aimingSensitivitySlider = new UIMenuListItem("Aiming Sensitivity", _values0To1, (int)Math.Round(_settings.AimingSensitivity / 0.1), "Freelook sensitivity while aiming");

            aimingSensitivitySlider.OnListChanged += (sender, args) => { _settings.AimingSensitivity = aimingSensitivitySlider.IndexToItem(aimingSensitivitySlider.Index); };
            _mainMenu.AddItem(aimingSensitivitySlider);

            var aimWithGaze = new UIMenuCheckboxItem("Aim With Gaze", _settings.AimWithGazeEnabled, "Your gun will shoot where you look. Move the RIGHT JOYSTICK while HOLDING LEFT THUMB to fine adjust the crosshair around your gaze point while shooting.");

            aimWithGaze.CheckboxEvent += (sender, args) => { _settings.AimWithGazeEnabled = aimWithGaze.Checked; };
            _mainMenu.AddItem(aimWithGaze);

            var snapAtPedestrians = new UIMenuCheckboxItem("Snap At Pedestrians", _settings.SnapAtPedestriansEnabled, "Snap crosshair at pedestrians. Makes it less challenging to aim with gaze.");

            snapAtPedestrians.CheckboxEvent += (sender, args) => { _settings.SnapAtPedestriansEnabled = snapAtPedestrians.Checked; };
            _mainMenu.AddItem(snapAtPedestrians);

            var gazeFilteringSlider = new UIMenuListItem("Gaze Filter", _values0To1, (int)Math.Round(_settings.GazeFiltering / 0.1), "Filter gaze data. Higher values will make crosshair movements smoother, but will increase the latency.");

            gazeFilteringSlider.OnListChanged += (sender, args) => { _settings.GazeFiltering = gazeFilteringSlider.IndexToItem(gazeFilteringSlider.Index); };
            _mainMenu.AddItem(gazeFilteringSlider);

            var incinerateAtGaze = new UIMenuCheckboxItem("Incinerate At Gaze", _settings.IncinerateAtGazeEnabled, "Push A button to burn things where you look. This feature replaces the default command for A button.");

            incinerateAtGaze.CheckboxEvent += (sender, args) => { _settings.IncinerateAtGazeEnabled = incinerateAtGaze.Checked; };
            _mainMenu.AddItem(incinerateAtGaze);

            var taseAtGaze = new UIMenuCheckboxItem("Tase At Gaze", _settings.TaseAtGazeEnabled, "Push RB to tase people remotely with your eyes. Doesn't work in aircrafts. This feature replaces the default command for RB.");

            taseAtGaze.CheckboxEvent += (sender, args) => { _settings.TaseAtGazeEnabled = taseAtGaze.Checked; };
            _mainMenu.AddItem(taseAtGaze);

            var missilesAtGaze = new UIMenuCheckboxItem("Launch Missiles At Gaze", _settings.MissilesAtGazeEnabled, "Push B button to launch missiles at gaze. This feature replaces the default command for B button.");

            missilesAtGaze.CheckboxEvent += (sender, args) => { _settings.MissilesAtGazeEnabled = missilesAtGaze.Checked; };
            _mainMenu.AddItem(missilesAtGaze);

            var pedestrianIntreraction = new UIMenuCheckboxItem("Pedestrian Interaction", _settings.PedestrianInteractionEnabled, "Pedestrians will talk to you if you stare at them for too long");

            pedestrianIntreraction.CheckboxEvent += (sender, args) => { _settings.PedestrianInteractionEnabled = pedestrianIntreraction.Checked; };
            _mainMenu.AddItem(pedestrianIntreraction);

            var dontFallFromBikes = new UIMenuCheckboxItem("Don't Fall From Bikes", _settings.DontFallFromBikesEnabled, "You won't fall from a bike when you crash into something");

            dontFallFromBikes.CheckboxEvent += (sender, args) => { _settings.DontFallFromBikesEnabled = dontFallFromBikes.Checked; };
            _mainMenu.AddItem(dontFallFromBikes);

            const string privacyPolicyText = "By selecting to send usage statistics you agree that your usage statistics, such as a game session time, " +
                                             "mod settings and mod features you use will be collected by the developer. The data will be collected " +
                                             "anonymously, processed on Google Analytics and used solely to enhance user experience.";

            _sendUsageStatistics = new UIMenuCheckboxItem("Send Usage Statistics", _settings.SendUsageStatistics, privacyPolicyText);
            _sendUsageStatistics.CheckboxEvent += (sender, args) => { _settings.SendUsageStatistics = _sendUsageStatistics.Checked; };
            _mainMenu.AddItem(_sendUsageStatistics);

            //var shutDown = new UIMenuItem("Shut Down", "Unload the mod");
            //shutDown.Activated += (sender, item) =>
            //{
            //	ShutDownRequested(this, new EventArgs());
            //};
            //_mainMenu.AddItem(shutDown);

            _mainMenu.RefreshIndex();
        }
Ejemplo n.º 19
0
        private void CreateThirdPersonFreelookMenu()
        {
            ThirdPersonFreelookMenu = new UIMenu("Tobii Eye Tracking", "~b~THIRD PERSON FREELOOK SETTINGS");
            ThirdPersonFreelookMenu.SetMenuWidthOffset(50);
            {
                var thirdPersonFreelook = new UIMenuCheckboxItem("TPS Freelook", _settings.ThirdPersonFreelookEnabled,
                                                                 "Control camera with gaze");
                thirdPersonFreelook.CheckboxEvent +=
                    (sender, args) => { _settings.ThirdPersonFreelookEnabled = thirdPersonFreelook.Checked; };
                ThirdPersonFreelookMenu.AddItem(thirdPersonFreelook);

                var thirdPersonSensitivitySlider = new UIMenuListItem("TPS Freelook Sensitivity", _values0To1,
                                                                      (int)Math.Round(_settings.ThirdPersonSensitivity / 0.1), "Freelook sensitivity");
                thirdPersonSensitivitySlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonSensitivity =
                        thirdPersonSensitivitySlider.IndexToItem(thirdPersonSensitivitySlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonSensitivitySlider);

                var thirdPersonYOffsetSlider = new UIMenuListItem("TPS Freelook Vertical Offset", _valuesMinus1To1,
                                                                  (int)Math.Round((_settings.ThirdPersonYOffset + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonYOffset = thirdPersonYOffsetSlider.IndexToItem(thirdPersonYOffsetSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonYOffsetSlider);

                var thirdPersonDeadZoneWidthSlider = new UIMenuListItem("TPS Freelook Deadzone Width", _values0To1,
                                                                        (int)Math.Round(_settings.ThirdPersonDeadZoneWidth / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneWidth =
                        thirdPersonDeadZoneWidthSlider.IndexToItem(thirdPersonDeadZoneWidthSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneWidthSlider);

                var thirdPersonDeadZoneHeightSlider = new UIMenuListItem("TPS Freelook Deadzone Height", _values0To1,
                                                                         (int)Math.Round(_settings.ThirdPersonDeadZoneHeight / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneHeight =
                        thirdPersonDeadZoneHeightSlider.IndexToItem(thirdPersonDeadZoneHeightSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneHeightSlider);

                var thirdPersonMinPitchSlider = new UIMenuListItem("TPS Min Pitch", _valuesMinus70To0,
                                                                   (int)Math.Round((_settings.ThirdPersonMinPitchDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMinPitchDeg = thirdPersonMinPitchSlider.IndexToItem(thirdPersonMinPitchSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMinPitchSlider);

                var thirdPersonMaxPitchSlider = new UIMenuListItem("TPS Max Pitch", _values0To70,
                                                                   (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMaxPitchDeg = thirdPersonMaxPitchSlider.IndexToItem(thirdPersonMaxPitchSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMaxPitchSlider);
            }

            {
                var thirdPersonYOffsetDrivingSlider = new UIMenuListItem("TPS Freelook Vertical Offset Driving",
                                                                         _valuesMinus1To1, (int)Math.Round((_settings.ThirdPersonYOffsetDriving + 1) / 0.1),
                                                                         "Freelook vertical offset");
                thirdPersonYOffsetDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonYOffsetDriving =
                        thirdPersonYOffsetDrivingSlider.IndexToItem(thirdPersonYOffsetDrivingSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonYOffsetDrivingSlider);

                var thirdPersonDeadZoneWidthDrivingSlider = new UIMenuListItem("TPS Freelook Deadzone Width Driving",
                                                                               _values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneWidthDriving / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneWidthDriving =
                        thirdPersonDeadZoneWidthDrivingSlider.IndexToItem(thirdPersonDeadZoneWidthDrivingSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneWidthDrivingSlider);

                var thirdPersonDeadZoneHeightDrivingSlider = new UIMenuListItem("TPS Freelook Deadzone Height Driving",
                                                                                _values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneHeightDriving / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneHeightDriving =
                        thirdPersonDeadZoneHeightDrivingSlider.IndexToItem(thirdPersonDeadZoneHeightDrivingSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneHeightDrivingSlider);

                var thirdPersonMinPitchDrivingSlider = new UIMenuListItem("TPS Min Pitch Driving", _valuesMinus70To0,
                                                                          (int)Math.Round((_settings.ThirdPersonMinPitchDrivingDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMinPitchDrivingDeg =
                        thirdPersonMinPitchDrivingSlider.IndexToItem(thirdPersonMinPitchDrivingSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMinPitchDrivingSlider);

                var thirdPersonMaxPitchDrivingSlider = new UIMenuListItem("TPS Max Pitch Driving", _values0To70,
                                                                          (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMaxPitchDrivingDeg =
                        thirdPersonMaxPitchDrivingSlider.IndexToItem(thirdPersonMaxPitchDrivingSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMaxPitchDrivingSlider);
            }

            {
                var thirdPersonYOffsetPlaneSlider = new UIMenuListItem("TPS Freelook Vertical Offset Plane", _valuesMinus1To1,
                                                                       (int)Math.Round((_settings.ThirdPersonYOffsetPlane + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetPlaneSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonYOffsetPlane =
                        thirdPersonYOffsetPlaneSlider.IndexToItem(thirdPersonYOffsetPlaneSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonYOffsetPlaneSlider);

                var thirdPersonDeadZoneWidthPlaneSlider = new UIMenuListItem("TPS Freelook Deadzone Width Plane", _values0To1,
                                                                             (int)Math.Round(_settings.ThirdPersonDeadZoneWidthPlane / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthPlaneSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneWidthPlane =
                        thirdPersonDeadZoneWidthPlaneSlider.IndexToItem(thirdPersonDeadZoneWidthPlaneSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneWidthPlaneSlider);

                var thirdPersonDeadZoneHeightPlaneSlider = new UIMenuListItem("TPS Freelook Deadzone Height Plane", _values0To1,
                                                                              (int)Math.Round(_settings.ThirdPersonDeadZoneHeightPlane / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightPlaneSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneHeightPlane =
                        thirdPersonDeadZoneHeightPlaneSlider.IndexToItem(thirdPersonDeadZoneHeightPlaneSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneHeightPlaneSlider);

                var thirdPersonMinPitchPlaneSlider = new UIMenuListItem("TPS Min Pitch Plane", _valuesMinus70To0,
                                                                        (int)Math.Round((_settings.ThirdPersonMinPitchPlaneDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchPlaneSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMinPitchPlaneDeg =
                        thirdPersonMinPitchPlaneSlider.IndexToItem(thirdPersonMinPitchPlaneSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMinPitchPlaneSlider);

                var thirdPersonMaxPitchPlaneSlider = new UIMenuListItem("TPS Max Pitch Plane", _values0To70,
                                                                        (int)Math.Round((_settings.ThirdPersonMaxPitchPlaneDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchPlaneSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMaxPitchPlaneDeg =
                        thirdPersonMaxPitchPlaneSlider.IndexToItem(thirdPersonMaxPitchPlaneSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMaxPitchPlaneSlider);
            }


            {
                var thirdPersonYOffsetHeliSlider = new UIMenuListItem("TPS Freelook Vertical Offset Heli", _valuesMinus1To1,
                                                                      (int)Math.Round((_settings.ThirdPersonYOffsetHeli + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetHeliSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonYOffsetHeli =
                        thirdPersonYOffsetHeliSlider.IndexToItem(thirdPersonYOffsetHeliSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonYOffsetHeliSlider);

                var thirdPersonDeadZoneWidthHeliSlider = new UIMenuListItem("TPS Freelook Deadzone Width Heli", _values0To1,
                                                                            (int)Math.Round(_settings.ThirdPersonDeadZoneWidthHeli / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthHeliSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneWidthHeli =
                        thirdPersonDeadZoneWidthHeliSlider.IndexToItem(thirdPersonDeadZoneWidthHeliSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneWidthHeliSlider);

                var thirdPersonDeadZoneHeightHeliSlider = new UIMenuListItem("TPS Freelook Deadzone Height Heli", _values0To1,
                                                                             (int)Math.Round(_settings.ThirdPersonDeadZoneHeightHeli / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightHeliSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonDeadZoneHeightHeli =
                        thirdPersonDeadZoneHeightHeliSlider.IndexToItem(thirdPersonDeadZoneHeightHeliSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonDeadZoneHeightHeliSlider);

                var thirdPersonMinPitchHeliSlider = new UIMenuListItem("TPS Min Pitch Heli", _valuesMinus70To0,
                                                                       (int)Math.Round((_settings.ThirdPersonMinPitchHeliDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchHeliSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMinPitchHeliDeg =
                        thirdPersonMinPitchHeliSlider.IndexToItem(thirdPersonMinPitchHeliSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMinPitchHeliSlider);

                var thirdPersonMaxPitchHeliSlider = new UIMenuListItem("TPS Max Pitch Heli", _values0To70,
                                                                       (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchHeliSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.ThirdPersonMaxPitchHeliDeg =
                        thirdPersonMaxPitchHeliSlider.IndexToItem(thirdPersonMaxPitchHeliSlider.Index);
                };
                ThirdPersonFreelookMenu.AddItem(thirdPersonMaxPitchHeliSlider);
            }
            ThirdPersonFreelookMenu.RefreshIndex();
            _menuPool.Add(ThirdPersonFreelookMenu);
        }
Ejemplo n.º 20
0
        private void CreateFirstPersonFreelookMenu()
        {
            FirstPersonFreelookMenu = new UIMenu("Tobii Eye Tracking", "~b~FIRST PERSON FREELOOK SETTINGS");
            FirstPersonFreelookMenu.SetMenuWidthOffset(50);
            {
                var firstPersonFreelook = new UIMenuCheckboxItem("FPS Freelook", _settings.FirstPersonFreelookEnabled,
                                                                 "Control camera with gaze");
                firstPersonFreelook.CheckboxEvent +=
                    (sender, args) => { _settings.FirstPersonFreelookEnabled = firstPersonFreelook.Checked; };
                FirstPersonFreelookMenu.AddItem(firstPersonFreelook);

                var firstPersonSensitivitySlider = new UIMenuListItem("FPS Freelook Sensitivity", _values0To1,
                                                                      (int)Math.Round(_settings.FirstPersonSensitivity / 0.1), "Freelook sensitivity");
                firstPersonSensitivitySlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonSensitivity =
                        firstPersonSensitivitySlider.IndexToItem(firstPersonSensitivitySlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonSensitivitySlider);

                var firstPersonDeadZoneWidthSlider = new UIMenuListItem("FPS Freelook Deadzone Width", _values0To1,
                                                                        (int)Math.Round(_settings.FirstPersonDeadZoneWidth / 0.1), "Freelook deadzone");
                firstPersonDeadZoneWidthSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonDeadZoneWidth =
                        firstPersonDeadZoneWidthSlider.IndexToItem(firstPersonDeadZoneWidthSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonDeadZoneWidthSlider);

                var firstPersonDeadZoneHeightSlider = new UIMenuListItem("FPS Freelook Deadzone Height", _values0To1,
                                                                         (int)Math.Round(_settings.FirstPersonDeadZoneHeight / 0.1), "Freelook deadzone");
                firstPersonDeadZoneHeightSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonDeadZoneHeight =
                        firstPersonDeadZoneHeightSlider.IndexToItem(firstPersonDeadZoneHeightSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonDeadZoneHeightSlider);

                var firstPersonMinPitchSlider = new UIMenuListItem("FPS Min Pitch", _valuesMinus70To0,
                                                                   (int)Math.Round((_settings.FirstPersonMinPitchDeg + 70) / 1), "Freelook min pitch angle");
                firstPersonMinPitchSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonMinPitchDeg = firstPersonMinPitchSlider.IndexToItem(firstPersonMinPitchSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonMinPitchSlider);

                var firstPersonMaxPitchSlider = new UIMenuListItem("FPS Max Pitch", _values0To70,
                                                                   (int)Math.Round((_settings.FirstPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                firstPersonMaxPitchSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonMaxPitchDeg = firstPersonMaxPitchSlider.IndexToItem(firstPersonMaxPitchSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonMaxPitchSlider);
            }

            {
                var firstPersonFreelookDriving = new UIMenuCheckboxItem("FPS Freelook Driving",
                                                                        _settings.FirstPersonFreelookDrivingEnabled, "Control camera with gaze");
                firstPersonFreelookDriving.CheckboxEvent +=
                    (sender, args) => { _settings.FirstPersonFreelookDrivingEnabled = firstPersonFreelookDriving.Checked; };
                FirstPersonFreelookMenu.AddItem(firstPersonFreelookDriving);

                var firstPersonSensitivityDrivingSlider = new UIMenuListItem("FPS Freelook Sensitivity Driving", _values0To1,
                                                                             (int)Math.Round(_settings.FirstPersonSensitivityDriving / 0.1), "Freelook sensitivity");
                firstPersonSensitivityDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonSensitivityDriving =
                        firstPersonSensitivityDrivingSlider.IndexToItem(firstPersonSensitivityDrivingSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonSensitivityDrivingSlider);

                var firstPersonDeadZoneWidthDrivingSlider = new UIMenuListItem("FPS Freelook Deadzone Width Driving",
                                                                               _values0To1, (int)Math.Round(_settings.FirstPersonDeadZoneWidthDriving / 0.1), "Freelook deadzone");
                firstPersonDeadZoneWidthDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonDeadZoneWidthDriving =
                        firstPersonDeadZoneWidthDrivingSlider.IndexToItem(firstPersonDeadZoneWidthDrivingSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonDeadZoneWidthDrivingSlider);

                var firstPersonDeadZoneHeightDrivingSlider = new UIMenuListItem("FPS Freelook Deadzone Height Driving",
                                                                                _values0To1, (int)Math.Round(_settings.FirstPersonDeadZoneHeightDriving / 0.1), "Freelook deadzone");
                firstPersonDeadZoneHeightDrivingSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonDeadZoneHeightDriving =
                        firstPersonDeadZoneHeightDrivingSlider.IndexToItem(firstPersonDeadZoneHeightDrivingSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(firstPersonDeadZoneHeightDrivingSlider);

                var fovExtensionVerticalSlider = new UIMenuListItem("FPS View Extension Vertical", _values0To70,
                                                                    (int)Math.Round((_settings.FirstPersonFovExtensionVertical) / 1), "Freelook view extension vertical");
                fovExtensionVerticalSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonFovExtensionVertical =
                        fovExtensionVerticalSlider.IndexToItem(fovExtensionVerticalSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(fovExtensionVerticalSlider);

                var fovExtensionHorizontalSlider = new UIMenuListItem("FPS View Extension Horizontal", _values0To70,
                                                                      (int)Math.Round((_settings.FirstPersonFovExtensionHorizontal) / 1), "Freelook view extension horizontal");
                fovExtensionHorizontalSlider.OnListChanged +=
                    (sender, args) =>
                {
                    _settings.FirstPersonFovExtensionHorizontal =
                        fovExtensionHorizontalSlider.IndexToItem(fovExtensionHorizontalSlider.Index);
                };
                FirstPersonFreelookMenu.AddItem(fovExtensionHorizontalSlider);
            }
            FirstPersonFreelookMenu.RefreshIndex();
            _menuPool.Add(FirstPersonFreelookMenu);
        }
Ejemplo n.º 21
0
        private void CreateMenu()
        {
            _mainMenu = new UIMenu("Tobii Eye Tracking", "~b~SETTINGS");
            _mainMenu.SetMenuWidthOffset(50);
            //_mainMenu.ControlDisablingEnabled = false;
            _menuPool.Add(_mainMenu);

            var values0To1 = new List <dynamic>();

            for (var i = 0; i <= 10; i++)
            {
                values0To1.Add(i * 0.1);
            }
            var valuesMinus1To1 = new List <dynamic>();

            for (var i = -10; i <= 10; i++)
            {
                valuesMinus1To1.Add(i * 0.1);
            }

            var values0To70 = new List <dynamic>();

            for (var i = 0; i <= 70; i++)
            {
                values0To70.Add((double)i);
            }

            var valuesMinus70To0 = new List <dynamic>();

            for (var i = -70; i <= 0; i++)
            {
                valuesMinus70To0.Add((double)i);
            }

            var freelookDevices = new List <dynamic>
            {
                "Gamepad",
                "Mouse"
            };

            _freelookDevice = new UIMenuListItem("Freelook device", freelookDevices, (int)_settings.FreelookDevice, "Device to use for freelook");
            _freelookDevice.OnListChanged += (sender, args) => { _settings.FreelookDevice = (FeeelookDevice)_freelookDevice.Index; };
            _mainMenu.AddItem(_freelookDevice);

            var thirdPersonFreelook = new UIMenuCheckboxItem("TPS Freelook", _settings.ThirdPersonFreelookEnabled, "Control camera with gaze");

            thirdPersonFreelook.CheckboxEvent += (sender, args) => { _settings.ThirdPersonFreelookEnabled = thirdPersonFreelook.Checked; };
            _mainMenu.AddItem(thirdPersonFreelook);

            var thirdPersonSensitivitySlider = new UIMenuListItem("TPS Freelook Sensitivity", values0To1, (int)Math.Round(_settings.ThirdPersonSensitivity / 0.1), "Freelook sensitivity");

            thirdPersonSensitivitySlider.OnListChanged += (sender, args) => { _settings.ThirdPersonSensitivity = thirdPersonSensitivitySlider.IndexToItem(thirdPersonSensitivitySlider.Index); };
            _mainMenu.AddItem(thirdPersonSensitivitySlider);



            {
                var thirdPersonYOffsetSlider = new UIMenuListItem("TPS Freelook Vertical Offset", valuesMinus1To1, (int)Math.Round((_settings.ThirdPersonYOffset + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonYOffset = thirdPersonYOffsetSlider.IndexToItem(thirdPersonYOffsetSlider.Index); };
                _mainMenu.AddItem(thirdPersonYOffsetSlider);

                var thirdPersonDeadZoneWidthSlider = new UIMenuListItem("TPS Freelook Deadzone Width", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneWidth / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneWidth = thirdPersonDeadZoneWidthSlider.IndexToItem(thirdPersonDeadZoneWidthSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneWidthSlider);

                var thirdPersonDeadZoneHeightSlider = new UIMenuListItem("TPS Freelook Deadzone Height", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneHeight / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneHeight = thirdPersonDeadZoneHeightSlider.IndexToItem(thirdPersonDeadZoneHeightSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneHeightSlider);

                var thirdPersonMinPitchSlider = new UIMenuListItem("TPS Min Pitch", valuesMinus70To0, (int)Math.Round((_settings.ThirdPersonMinPitchDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMinPitchDeg = thirdPersonMinPitchSlider.IndexToItem(thirdPersonMinPitchSlider.Index); };
                _mainMenu.AddItem(thirdPersonMinPitchSlider);

                var thirdPersonMaxPitchSlider = new UIMenuListItem("TPS Max Pitch", values0To70, (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMaxPitchDeg = thirdPersonMaxPitchSlider.IndexToItem(thirdPersonMaxPitchSlider.Index); };
                _mainMenu.AddItem(thirdPersonMaxPitchSlider);
            }

            {
                var thirdPersonYOffsetDrivingSlider = new UIMenuListItem("TPS Freelook Vertical Offset Driving", valuesMinus1To1, (int)Math.Round((_settings.ThirdPersonYOffsetDriving + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetDrivingSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonYOffsetDriving = thirdPersonYOffsetDrivingSlider.IndexToItem(thirdPersonYOffsetDrivingSlider.Index); };
                _mainMenu.AddItem(thirdPersonYOffsetDrivingSlider);

                var thirdPersonDeadZoneWidthDrivingSlider = new UIMenuListItem("TPS Freelook Deadzone Width Driving", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneWidthDriving / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthDrivingSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneWidthDriving = thirdPersonDeadZoneWidthDrivingSlider.IndexToItem(thirdPersonDeadZoneWidthDrivingSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneWidthDrivingSlider);

                var thirdPersonDeadZoneHeightDrivingSlider = new UIMenuListItem("TPS Freelook Deadzone Height Driving", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneHeightDriving / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightDrivingSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneHeightDriving = thirdPersonDeadZoneHeightDrivingSlider.IndexToItem(thirdPersonDeadZoneHeightDrivingSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneHeightDrivingSlider);

                var thirdPersonMinPitchDrivingSlider = new UIMenuListItem("TPS Min Pitch Driving", valuesMinus70To0, (int)Math.Round((_settings.ThirdPersonMinPitchDrivingDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchDrivingSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMinPitchDrivingDeg = thirdPersonMinPitchDrivingSlider.IndexToItem(thirdPersonMinPitchDrivingSlider.Index); };
                _mainMenu.AddItem(thirdPersonMinPitchDrivingSlider);

                var thirdPersonMaxPitchDrivingSlider = new UIMenuListItem("TPS Max Pitch Driving", values0To70, (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchDrivingSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMaxPitchDrivingDeg = thirdPersonMaxPitchDrivingSlider.IndexToItem(thirdPersonMaxPitchDrivingSlider.Index); };
                _mainMenu.AddItem(thirdPersonMaxPitchDrivingSlider);
            }

            {
                var thirdPersonYOffsetPlaneSlider = new UIMenuListItem("TPS Freelook Vertical Offset Plane", valuesMinus1To1, (int)Math.Round((_settings.ThirdPersonYOffsetPlane + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetPlaneSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonYOffsetPlane = thirdPersonYOffsetPlaneSlider.IndexToItem(thirdPersonYOffsetPlaneSlider.Index); };
                _mainMenu.AddItem(thirdPersonYOffsetPlaneSlider);

                var thirdPersonDeadZoneWidthPlaneSlider = new UIMenuListItem("TPS Freelook Deadzone Width Plane", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneWidthPlane / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthPlaneSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneWidthPlane = thirdPersonDeadZoneWidthPlaneSlider.IndexToItem(thirdPersonDeadZoneWidthPlaneSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneWidthPlaneSlider);

                var thirdPersonDeadZoneHeightPlaneSlider = new UIMenuListItem("TPS Freelook Deadzone Height Plane", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneHeightPlane / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightPlaneSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneHeightPlane = thirdPersonDeadZoneHeightPlaneSlider.IndexToItem(thirdPersonDeadZoneHeightPlaneSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneHeightPlaneSlider);

                var thirdPersonMinPitchPlaneSlider = new UIMenuListItem("TPS Min Pitch Plane", valuesMinus70To0, (int)Math.Round((_settings.ThirdPersonMinPitchPlaneDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchPlaneSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMinPitchPlaneDeg = thirdPersonMinPitchPlaneSlider.IndexToItem(thirdPersonMinPitchPlaneSlider.Index); };
                _mainMenu.AddItem(thirdPersonMinPitchPlaneSlider);

                var thirdPersonMaxPitchPlaneSlider = new UIMenuListItem("TPS Max Pitch Plane", values0To70, (int)Math.Round((_settings.ThirdPersonMaxPitchPlaneDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchPlaneSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMaxPitchPlaneDeg = thirdPersonMaxPitchPlaneSlider.IndexToItem(thirdPersonMaxPitchPlaneSlider.Index); };
                _mainMenu.AddItem(thirdPersonMaxPitchPlaneSlider);
            }


            {
                var thirdPersonYOffsetHeliSlider = new UIMenuListItem("TPS Freelook Vertical Offset Heli", valuesMinus1To1, (int)Math.Round((_settings.ThirdPersonYOffsetHeli + 1) / 0.1), "Freelook vertical offset");
                thirdPersonYOffsetHeliSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonYOffsetHeli = thirdPersonYOffsetHeliSlider.IndexToItem(thirdPersonYOffsetHeliSlider.Index); };
                _mainMenu.AddItem(thirdPersonYOffsetHeliSlider);

                var thirdPersonDeadZoneWidthHeliSlider = new UIMenuListItem("TPS Freelook Deadzone Width Heli", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneWidthHeli / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneWidthHeliSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneWidthHeli = thirdPersonDeadZoneWidthHeliSlider.IndexToItem(thirdPersonDeadZoneWidthHeliSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneWidthHeliSlider);

                var thirdPersonDeadZoneHeightHeliSlider = new UIMenuListItem("TPS Freelook Deadzone Height Heli", values0To1, (int)Math.Round(_settings.ThirdPersonDeadZoneHeightHeli / 0.1), "Freelook deadzone");
                thirdPersonDeadZoneHeightHeliSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonDeadZoneHeightHeli = thirdPersonDeadZoneHeightHeliSlider.IndexToItem(thirdPersonDeadZoneHeightHeliSlider.Index); };
                _mainMenu.AddItem(thirdPersonDeadZoneHeightHeliSlider);

                var thirdPersonMinPitchHeliSlider = new UIMenuListItem("TPS Min Pitch Heli", valuesMinus70To0, (int)Math.Round((_settings.ThirdPersonMinPitchHeliDeg + 70) / 1), "Freelook min pitch angle");
                thirdPersonMinPitchHeliSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMinPitchHeliDeg = thirdPersonMinPitchHeliSlider.IndexToItem(thirdPersonMinPitchHeliSlider.Index); };
                _mainMenu.AddItem(thirdPersonMinPitchHeliSlider);

                var thirdPersonMaxPitchHeliSlider = new UIMenuListItem("TPS Max Pitch Heli", values0To70, (int)Math.Round((_settings.ThirdPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                thirdPersonMaxPitchHeliSlider.OnListChanged += (sender, args) => { _settings.ThirdPersonMaxPitchHeliDeg = thirdPersonMaxPitchHeliSlider.IndexToItem(thirdPersonMaxPitchHeliSlider.Index); };
                _mainMenu.AddItem(thirdPersonMaxPitchHeliSlider);
            }


            var firstPersonFreelook = new UIMenuCheckboxItem("FPS Freelook", _settings.FirstPersonFreelookEnabled, "Control camera with gaze");

            firstPersonFreelook.CheckboxEvent += (sender, args) => { _settings.FirstPersonFreelookEnabled = firstPersonFreelook.Checked; };
            _mainMenu.AddItem(firstPersonFreelook);

            var firstPersonSensitivitySlider = new UIMenuListItem("FPS Freelook Sensitivity", values0To1, (int)Math.Round(_settings.FirstPersonSensitivity / 0.1), "Freelook sensitivity");

            firstPersonSensitivitySlider.OnListChanged += (sender, args) => { _settings.FirstPersonSensitivity = firstPersonSensitivitySlider.IndexToItem(firstPersonSensitivitySlider.Index); };
            _mainMenu.AddItem(firstPersonSensitivitySlider);

            {
                var firstPersonDeadZoneWidthSlider = new UIMenuListItem("FPS Freelook Deadzone Width", values0To1, (int)Math.Round(_settings.FirstPersonDeadZoneWidth / 0.1), "Freelook deadzone");
                firstPersonDeadZoneWidthSlider.OnListChanged += (sender, args) => { _settings.FirstPersonDeadZoneWidth = firstPersonDeadZoneWidthSlider.IndexToItem(firstPersonDeadZoneWidthSlider.Index); };
                _mainMenu.AddItem(firstPersonDeadZoneWidthSlider);

                var firstPersonDeadZoneHeightSlider = new UIMenuListItem("FPS Freelook Deadzone Height", values0To1, (int)Math.Round(_settings.FirstPersonDeadZoneHeight / 0.1), "Freelook deadzone");
                firstPersonDeadZoneHeightSlider.OnListChanged += (sender, args) => { _settings.FirstPersonDeadZoneHeight = firstPersonDeadZoneHeightSlider.IndexToItem(firstPersonDeadZoneHeightSlider.Index); };
                _mainMenu.AddItem(firstPersonDeadZoneHeightSlider);

                var firstPersonMinPitchSlider = new UIMenuListItem("FPS Min Pitch", valuesMinus70To0, (int)Math.Round((_settings.FirstPersonMinPitchDeg + 70) / 1), "Freelook min pitch angle");
                firstPersonMinPitchSlider.OnListChanged += (sender, args) => { _settings.FirstPersonMinPitchDeg = firstPersonMinPitchSlider.IndexToItem(firstPersonMinPitchSlider.Index); };
                _mainMenu.AddItem(firstPersonMinPitchSlider);

                var firstPersonMaxPitchSlider = new UIMenuListItem("FPS Max Pitch", values0To70, (int)Math.Round((_settings.FirstPersonMaxPitchDeg) / 1), "Freelook max pitch angle");
                firstPersonMaxPitchSlider.OnListChanged += (sender, args) => { _settings.FirstPersonMaxPitchDeg = firstPersonMaxPitchSlider.IndexToItem(firstPersonMaxPitchSlider.Index); };
                _mainMenu.AddItem(firstPersonMaxPitchSlider);
            }


            var aimingSensitivitySlider = new UIMenuListItem("Aiming Sensitivity", values0To1, (int)Math.Round(_settings.AimingSensitivity / 0.1), "Freelok sensitivity while aiming");

            aimingSensitivitySlider.OnListChanged += (sender, args) => { _settings.AimingSensitivity = aimingSensitivitySlider.IndexToItem(aimingSensitivitySlider.Index); };
            _mainMenu.AddItem(aimingSensitivitySlider);

            var aimWithGaze = new UIMenuCheckboxItem("Aim With Gaze", _settings.AimWithGazeEnabled, "Aim with gaze");

            aimWithGaze.CheckboxEvent += (sender, args) => { _settings.AimWithGazeEnabled = aimWithGaze.Checked; };
            _mainMenu.AddItem(aimWithGaze);

            var snapAtPedestrians = new UIMenuCheckboxItem("Snap At Pedestrians", _settings.SnapAtPedestriansEnabled, "Snap aim at pedestrians");

            snapAtPedestrians.CheckboxEvent += (sender, args) => { _settings.SnapAtPedestriansEnabled = snapAtPedestrians.Checked; };
            _mainMenu.AddItem(snapAtPedestrians);

            var gazeFilteringSlider = new UIMenuListItem("Gaze Filter", values0To1, (int)Math.Round(_settings.GazeFiltering / 0.1), "Filter gaze data");

            gazeFilteringSlider.OnListChanged += (sender, args) => { _settings.GazeFiltering = gazeFilteringSlider.IndexToItem(gazeFilteringSlider.Index); };
            _mainMenu.AddItem(gazeFilteringSlider);

            var incinerateAtGaze = new UIMenuCheckboxItem("Incinerate At Gaze", _settings.IncinerateAtGazeEnabled, "Incinerate at gaze");

            incinerateAtGaze.CheckboxEvent += (sender, args) => { _settings.IncinerateAtGazeEnabled = incinerateAtGaze.Checked; };
            _mainMenu.AddItem(incinerateAtGaze);

            var taseAtGaze = new UIMenuCheckboxItem("Tase At Gaze", _settings.TaseAtGazeEnabled, "Tase at gaze");

            taseAtGaze.CheckboxEvent += (sender, args) => { _settings.TaseAtGazeEnabled = taseAtGaze.Checked; };
            _mainMenu.AddItem(taseAtGaze);

            var missilesAtGaze = new UIMenuCheckboxItem("Launch Missiles At Gaze", _settings.MissilesAtGazeEnabled, "Launch missiles at gaze");

            missilesAtGaze.CheckboxEvent += (sender, args) => { _settings.MissilesAtGazeEnabled = missilesAtGaze.Checked; };
            _mainMenu.AddItem(missilesAtGaze);

            var pedestrianIntreraction = new UIMenuCheckboxItem("Pedestrian Interaction", _settings.PedestrianInteractionEnabled, "Pedestrians talk to you");

            pedestrianIntreraction.CheckboxEvent += (sender, args) => { _settings.PedestrianInteractionEnabled = pedestrianIntreraction.Checked; };
            _mainMenu.AddItem(pedestrianIntreraction);

            var dontFallFromBikes = new UIMenuCheckboxItem("Don't Fall From Bikes", _settings.DontFallFromBikesEnabled, "Never fall from bikes");

            dontFallFromBikes.CheckboxEvent += (sender, args) => { _settings.DontFallFromBikesEnabled = dontFallFromBikes.Checked; };
            _mainMenu.AddItem(dontFallFromBikes);

            var dedzns = new UIMenuItem("Deadzones");

            _mainMenu.AddItem(dedzns);

            _mainMenu.RefreshIndex();
            {
                DeadzoneMenu = new UIMenu("Tobii Eye Tracking", "~b~DEADZONES");
                DeadzoneMenu.SetMenuWidthOffset(50);
                _mainMenu.BindMenuToItem(DeadzoneMenu, dedzns);
                DeadzoneMenu.AddItem(new UIMenuItem("Add Deadzone", "Deadzones prevent camera movement when you are looking inside the zone, for example, the minimap."));
                DeadzoneMenu.RefreshIndex();
                _menuPool.Add(DeadzoneMenu);
            }
        }
        private async Task OnTick()
        {
            await Task.FromResult(0);

            if (PhoneState.IsShown || WarehouseState.IsInsideWarehouse)
            {
                mainMenu.Visible = false;
            }
            else
            {
                if (mainMenu.Visible)
                {
                    PhoneState.Block = true;
                }
                else if (menuVisible)
                {
                    PhoneState.Block = false;
                    menuVisible      = false;
                }
            }

            if (Game.PlayerPed.IsDead)
            {
                mainMenu.Visible = false;
            }
            else
            {
                menuPool.ProcessMenus();
                if (Game.IsControlJustPressed(0, Control.InteractionMenu) && !PhoneState.IsShown && !WarehouseState.IsInsideWarehouse)
                {
                    mainMenu.Visible = !mainMenu.Visible;
                    if (mainMenu.Visible)
                    {
                        menuVisible = true;
                        mainMenu.Clear();
                        quickBlipItem = new UIMenuListItem(Strings.INTERACTION_ITEM_QUICK_NAV, World.GetAllBlips().Select(blip => blip.Type as dynamic).ToList(), 0);
                        quickBlipItem.OnListSelected += new ItemListEvent((sender, pos) =>
                        {
                            World.WaypointPosition = World.GetAllBlips().Where(blip => blip.Type == quickBlipItem.IndexToItem(pos)).First().Position;
                        });
                        mainMenu.AddItem(quickBlipItem);
                        mainMenu.AddItem(toggleCeoItem);
                        mainMenu.AddItem(killYourselfItem);
                        mainMenu.CurrentSelection = 0;
                    }
                }
            }
        }
Ejemplo n.º 23
0
 private void itemChange(UIMenu sender, UIMenuListItem listItem, int newIndex)
 {
     file = listItem.IndexToItem(listItem.Index);
 }
Ejemplo n.º 24
0
        private void CreateMenu()
        {
            _mainMenu = new UIMenu("Tobii Eye Tracking", "~b~SETTINGS");
            _mainMenu.SetMenuWidthOffset(50);
            //_mainMenu.ControlDisablingEnabled = false;
            _menuPool.Add(_mainMenu);

            InitLists();

            var responsivenessSlider = new UIMenuListItem("Responsiveness", _values0To1, (int)Math.Round(_settings.Responsiveness / 0.1), "Filter gaze data. Higher values will make crosshair movements smoother, but will increase the latency.");

            responsivenessSlider.OnListChanged += (sender, args) => { _settings.Responsiveness = (float)responsivenessSlider.IndexToItem(responsivenessSlider.Index); };
            _mainMenu.AddItem(responsivenessSlider);

            var firstPersonFreelook = new UIMenuCheckboxItem("Extended View", _settings.ExtendedViewEnabled, "Extend your view by looking at the edges of the screen");

            firstPersonFreelook.CheckboxEvent += (sender, args) => { _settings.ExtendedViewEnabled = firstPersonFreelook.Checked; };
            _mainMenu.AddItem(firstPersonFreelook);

            var extendedViewSensitivitySlider = new UIMenuListItem("Extended View Sensitivity", _values0To1, (int)Math.Round(_settings.ExtendedViewSensitivity / 0.1), "Extended View sensitivity");

            extendedViewSensitivitySlider.OnListChanged +=
                (sender, args) =>
            {
                _settings.ExtendedViewSensitivity =
                    (float)extendedViewSensitivitySlider.IndexToItem(extendedViewSensitivitySlider.Index);
            };
            _mainMenu.AddItem(extendedViewSensitivitySlider);

            var fireAtGaze = new UIMenuCheckboxItem("Shoot At Gaze", _settings.FireAtGazeEnabled, "Your gun will shoot where you look. Move the RIGHT JOYSTICK while HOLDING LEFT THUMB to fine adjust the crosshair around your gaze point while shooting.");

            fireAtGaze.CheckboxEvent += (sender, args) => { _settings.FireAtGazeEnabled = fireAtGaze.Checked; };
            _mainMenu.AddItem(fireAtGaze);

            var aimAtGaze = new UIMenuCheckboxItem("Aim At Gaze", _settings.AimAtGazeEnabled, "You camera will turn towards the target when you press aim button.");

            aimAtGaze.CheckboxEvent += (sender, args) => { _settings.AimAtGazeEnabled = aimAtGaze.Checked; };
            _mainMenu.AddItem(aimAtGaze);

            var snapAtTargets = new UIMenuCheckboxItem("Snap At Targets", _settings.SnapAtTargetsEnabled, "Snap crosshair at targets. Makes it less challenging to use Aim At Gaze and Shoot At Gaze features.");

            snapAtTargets.CheckboxEvent += (sender, args) => { _settings.SnapAtTargetsEnabled = snapAtTargets.Checked; };
            _mainMenu.AddItem(snapAtTargets);

            var incinerateAtGaze = new UIMenuCheckboxItem("Incinerate At Gaze", _settings.IncinerateAtGazeEnabled, "Push A button to burn things where you look. This feature replaces the default command for A button.");

            incinerateAtGaze.CheckboxEvent += (sender, args) => { _settings.IncinerateAtGazeEnabled = incinerateAtGaze.Checked; };
            _mainMenu.AddItem(incinerateAtGaze);

            var taseAtGaze = new UIMenuCheckboxItem("Tase At Gaze", _settings.TaseAtGazeEnabled, "Push RB to tase people remotely with your eyes. Doesn't work in aircrafts. This feature replaces the default command for RB.");

            taseAtGaze.CheckboxEvent += (sender, args) => { _settings.TaseAtGazeEnabled = taseAtGaze.Checked; };
            _mainMenu.AddItem(taseAtGaze);

            var missilesAtGaze = new UIMenuCheckboxItem("Launch Missiles At Gaze", _settings.MissilesAtGazeEnabled, "Push B button to launch missiles at gaze. This feature replaces the default command for B button.");

            missilesAtGaze.CheckboxEvent += (sender, args) => { _settings.MissilesAtGazeEnabled = missilesAtGaze.Checked; };
            _mainMenu.AddItem(missilesAtGaze);

            var alwaysShowCrosshair = new UIMenuCheckboxItem("Always Show Crosshair", _settings.AlwaysShowCrosshairEnabled, "Show crosshair even when you are not aiming or shooting");

            alwaysShowCrosshair.CheckboxEvent += (sender, args) => { _settings.AlwaysShowCrosshairEnabled = alwaysShowCrosshair.Checked; };
            _mainMenu.AddItem(alwaysShowCrosshair);

            var dontFallFromBikes = new UIMenuCheckboxItem("Don't Fall From Bikes", _settings.DontFallFromBikesEnabled, "You won't fall from a bike when you crash into something");

            dontFallFromBikes.CheckboxEvent += (sender, args) => { _settings.DontFallFromBikesEnabled = dontFallFromBikes.Checked; };
            _mainMenu.AddItem(dontFallFromBikes);

            var firtsPersonMode = new UIMenuCheckboxItem("First person mode", _settings.FirstPersonModeEnabled, "Switch to first person view");

            firtsPersonMode.CheckboxEvent += (sender, args) => { _settings.FirstPersonModeEnabled = firtsPersonMode.Checked; };
            _mainMenu.AddItem(firtsPersonMode);

            const string privacyPolicyText = "By selecting to send usage statistics you agree that your usage statistics, such as a game session time, " +
                                             "mod settings and mod features you use will be collected by the developer. The data will be collected " +
                                             "anonymously, processed on Google Analytics and used solely to enhance user experience.";

            _sendUsageStatistics = new UIMenuCheckboxItem("Send Usage Statistics", _settings.SendUsageStatistics, privacyPolicyText);
            _sendUsageStatistics.CheckboxEvent += (sender, args) => { _settings.SendUsageStatistics = _sendUsageStatistics.Checked; };
            _mainMenu.AddItem(_sendUsageStatistics);

            _mainMenu.RefreshIndex();
        }
Ejemplo n.º 25
0
        private void LockSpeed(Vehicle car, UIMenuListItem item)
        {
            // ISSUE: reference to a compiler-generated field
            if (VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__1 == null)
            {
                // ISSUE: reference to a compiler-generated field
                VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__1 = CallSite <Func <CallSite, object, string[]> > .Create(Binder.Convert(CSharpBinderFlags.None, typeof(string[]), typeof(VehicleControls.VehicleControls)));
            }
            // ISSUE: reference to a compiler-generated field
            // ISSUE: variable of the null type
            __Null target = VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__1.Target;
            // ISSUE: reference to a compiler-generated field
            CallSite <Func <CallSite, object, string[]> > p1 = VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__1;

            // ISSUE: reference to a compiler-generated field
            if (VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__0 == null)
            {
                // ISSUE: reference to a compiler-generated field
                VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__0 = CallSite <Func <CallSite, object, char, object> > .Create(Binder.InvokeMember(CSharpBinderFlags.None, "Split", (IEnumerable <Type>)null, typeof(VehicleControls.VehicleControls), (IEnumerable <CSharpArgumentInfo>) new CSharpArgumentInfo[2]
                {
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, (string)null),
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.Constant, (string)null)
                }));
            }
            // ISSUE: reference to a compiler-generated field
            // ISSUE: reference to a compiler-generated field
            object obj = ((Func <CallSite, object, char, object>)VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__0.Target).Invoke((CallSite)VehicleControls.VehicleControls.\u003C\u003Eo__10.\u003C\u003Ep__0, item.IndexToItem(item.get_Index()), ' ');

            string[] strArray = ((Func <CallSite, object, string[]>)target).Invoke((CallSite)p1, obj);
            if (strArray[0] == "OFF")
            {
                ((Entity)car).set_MaxSpeed((float)int.MaxValue);
                Screen.ShowNotification("Limitador desactivado.", false);
            }
            else
            {
                float num = float.Parse(strArray[0]) / 3.6f;
                ((Entity)car).set_MaxSpeed(num);
                Screen.ShowNotification(string.Format("Limitador de velocidad a {0} {1}.", (object)strArray[0], (object)strArray[1]), false);
            }
        }