예제 #1
0
    private void SublimeVehicleMenu()
    {
        List<IMenuItem> vehicleMenuItems = new List<IMenuItem>();

        var buttonVehicleSpawnerMenu = new MenuButton("Vehicle Spawner Menu");
        buttonVehicleSpawnerMenu.Activated += (sender, args) => SublimeVehicleSpawnerMenu();
        vehicleMenuItems.Add(buttonVehicleSpawnerMenu);

        var buttonVehicleModKitMenu = new MenuButton("Vehicle Mod Menu");
        buttonVehicleModKitMenu.Activated += (sender, args) => SublimeVehicleModCategoriesMenu();
        vehicleMenuItems.Add(buttonVehicleModKitMenu);

        var toggleWarpInSpawned = new MenuToggle("Warp in Spawned Vehicle", "", VehicleFunctions.IsWarpInSpawnedVehicleEnabled);
        toggleWarpInSpawned.Changed += (sender, args) => VehicleFunctions.ToggleWarpInSpawnedVehicle();
        vehicleMenuItems.Add(toggleWarpInSpawned);

        var buttonFixVehicle = new MenuButton("Fix Vehicle");
        buttonFixVehicle.Activated += (sender, args) => VehicleFunctions.FixVehicle();
        vehicleMenuItems.Add(buttonFixVehicle);

        var toggleIndestructible = new MenuToggle("Indestructible", "", VehicleFunctions.IsVehicleIndestructible);
        toggleIndestructible.Changed += (sender, args) => VehicleFunctions.ToggleVehicleIndestructible();
        vehicleMenuItems.Add(toggleIndestructible);

        var toggleSeatBelt = new MenuToggle("Seat Belt", "", VehicleFunctions.IsSeatBeltEnabled);
        toggleSeatBelt.Changed += (sender, args) => VehicleFunctions.ToggleSeatBelt();
        vehicleMenuItems.Add(toggleSeatBelt);

        var toggleLockDoors = new MenuToggle("Lock Doors", "", VehicleFunctions.IsLockedDoorsEnabled);
        toggleLockDoors.Changed += (sender, args) => VehicleFunctions.ToggleLockDoors();
        vehicleMenuItems.Add(toggleLockDoors);

        var toggleNeverFallOffBike = new MenuToggle("Never Fall-Off Bike", "", VehicleFunctions.IsNeverFallOffBikeEnabled);
        toggleNeverFallOffBike.Changed += (sender, args) => VehicleFunctions.ToggleNeverFallOffBike();
        vehicleMenuItems.Add(toggleNeverFallOffBike);

        var toggleSpeedBoost = new MenuToggle("Speed Boost", "", VehicleFunctions.IsSpeedBoostEnabled);
        toggleSpeedBoost.Changed += (sender, args) => VehicleFunctions.ToggleSpeedBoost();
        vehicleMenuItems.Add(toggleSpeedBoost);

        var toggleVehicleJump = new MenuToggle("Vehicle Jump", "", VehicleFunctions.CanVehiclesJump);
        toggleVehicleJump.Changed += (sender, args) => VehicleFunctions.ToggleVehicleJump();
        vehicleMenuItems.Add(toggleVehicleJump);

        var enumVehicleWeaponAssets = new MenuEnumScroller("Vehicle Weapon", "", VehicleFunctions.VehicleWeaponAssetsDict.Keys.ToArray(), VehicleFunctions.VehicleWeaponAssetIndex);
        enumVehicleWeaponAssets.Changed += (sender, args) => VehicleFunctions.VehicleWeaponAssetIndex = enumVehicleWeaponAssets.Index;
        vehicleMenuItems.Add(enumVehicleWeaponAssets);

        var toggleVehicleWeapons = new MenuToggle("Vehicle Weapons", "", VehicleFunctions.IsVehicleWeaponsEnabled);
        toggleVehicleWeapons.Changed += (sender, args) => VehicleFunctions.ToggleVehicleWeapons();
        vehicleMenuItems.Add(toggleVehicleWeapons);

        VehicleMenu = new GTA.Menu("Vehicle Options", vehicleMenuItems.ToArray());
        DrawMenu(VehicleMenu);
    }
예제 #2
0
        private void UpdateSkillBarMenu()
        {
            var items      = new IMenuItem[6];
            var skillSlots = RPG.PlayerData.SkillSlots;
            var entries    = RPG.SkillHandler.GetEntriesFormatted();

            for (int i = 0; i < 5; i++)
            {
                var slot = skillSlots[i];
                if (!slot.IsEmpty)
                {
                    var indexOfCur = Array.IndexOf(entries, slot.Name);
                    items[i] = new MenuEnumScroller(slot.GetMenuKeyName() + ":", "Skill for " + slot.Key, RPG.SkillHandler.GetEntriesFormatted(), indexOfCur).WithEnumActions(ChangeAction, ClearAction);
                }
                else
                {
                    items[i] = new MenuEnumScroller(slot.GetMenuKeyName() + ":", "Skill for " + slot.Key, RPG.SkillHandler.GetEntriesFormatted()).WithEnumActions(ChangeAction, ClearAction);
                }
            }
            items[5] = new MenuButton("Back").WithActivate(View.PopMenu);

            SkillbarMenu = new RPGMenu("Set skills", new GTASprite("Commonmenu", "interaction_bgd", Color.LightBlue), items);
            RPGUI.FormatMenuWithFooter(SkillbarMenu);
        }
예제 #3
0
        private void UpdateSkillBarMenu()
        {
            var items = new IMenuItem[6];
            var skillSlots = RPG.PlayerData.SkillSlots;
            var entries = RPG.SkillHandler.GetEntriesFormatted();
            for (int i = 0; i < 5; i++)
            {
                var slot = skillSlots[i];
                if (!slot.IsEmpty)
                {
                    var indexOfCur = Array.IndexOf(entries, slot.Name);
                    items[i] = new MenuEnumScroller(slot.GetMenuKeyName() + ":", "Skill for " + slot.Key, RPG.SkillHandler.GetEntriesFormatted(), indexOfCur).WithEnumActions(ChangeAction, ClearAction);
                }
                else
                {
                    items[i] = new MenuEnumScroller(slot.GetMenuKeyName() + ":", "Skill for " + slot.Key, RPG.SkillHandler.GetEntriesFormatted()).WithEnumActions(ChangeAction, ClearAction);
                }

            }
            items[5] = new MenuButton("Back").WithActivate(View.PopMenu);

            SkillbarMenu = new RPGMenu("Set skills", new GTASprite("Commonmenu", "interaction_bgd", Color.LightBlue), items);
            RPGUI.FormatMenuWithFooter(SkillbarMenu);
        }
예제 #4
0
    private void OpenVehicleMenu(Vehicle veh)
    {
        var menuItems = new List<IMenuItem>();
        curveh = veh;
        List<VehicleColor> colorlist = new List<VehicleColor>();
        colorlist.AddRange((IEnumerable<VehicleColor>)Enum.GetValues(typeof(VehicleColor)));
        List<string> colornamelist = new List<string>();
        int clrno = 1;
        int prlno = 1;
        int crntno = 0;
        foreach (VehicleColor clr in colorlist)
        {
            crntno++;
            if (veh.PrimaryColor.ToString() == clr.ToString())
            {
                clrno = crntno;
            }
            if (veh.PearlescentColor.ToString() == clr.ToString())
            {
                prlno = crntno;
            }
            colornamelist.Add(clr.ToString());
        }

        var enumm = new MenuEnumScroller("Color", "Chrome, Epsilon, we have all", colornamelist.ToArray(), (clrno - 1));
        enumm.Activated += enumm_Activated;
        menuItems.Add(enumm);

        var enumm2 = new MenuEnumScroller("Pearlescent", "Chrome, Epsilon, we have all", colornamelist.ToArray(), (prlno - 1));
        enumm2.Activated += enumm2_Activated;
        menuItems.Add(enumm2);

        var button = new MenuButton("RGB car primary color", "First r, then g and then b");
        button.Activated += (sender, args) => this.rgbcarprimcolor(veh);
        menuItems.Add(button);

        button = new MenuButton("RGB car secondary color", "First r, then g and then b");
        button.Activated += (sender, args) => this.rgbcarseccolor(veh);
        menuItems.Add(button);

        button = new MenuButton("HEX car primary color", "Just hex like ff00ff");
        button.Activated += (sender, args) => this.hexcarprimcolor(veh);
        menuItems.Add(button);

        button = new MenuButton("HEX car secondary color", "Just hex like ff00ff");
        button.Activated += (sender, args) => this.hexcarseccolor(veh);
        menuItems.Add(button);

        button = new MenuButton("Clear car custom colors", "");
        button.Activated += (sender, args) => this.rgbcarclean(veh);
        menuItems.Add(button);

        //button = new MenuButton("Save Car To file", "ex input: idkrly.txt");
        //button.Activated += (sender, args) => this.SaveCarToFile(veh, Game.GetUserInput(26));
        //menuItems.Add(button);
        //http://i1.kym-cdn.com/photos/images/newsfeed/000/232/114/e39.png
        //button = new MenuButton("Load Car From file", "ex input: idkrly.txt");
        //button.Activated += (sender, args) => this.LoadCarFromFile(Game.GetUserInput(26));
        //menuItems.Add(button);

        button = new MenuButton("Open All Doors", "titan ftw");
        button.Activated += (sender, args) => this.Dooropen(veh);
        menuItems.Add(button);

        button = new MenuButton("Close All Doors", "titan ftw");
        button.Activated += (sender, args) => this.Doorclose(veh);
        menuItems.Add(button);

        button = new MenuButton("Change Plate", "SWAGYOLO ftw");
        button.Activated += (sender, args) => this.changeplate(veh);
        menuItems.Add(button);

        button = new MenuButton("Change Plate Type", "YANKTOOOOOOON");
        button.Activated += (sender, args) => this.changeplatetype(veh);
        menuItems.Add(button);

        var numero = new MenuNumericScroller("Light multiplier", "", 1, 1001, 10);
        numero.Changed += numero_Changed;
        menuItems.Add(numero);

        var numero2 = new MenuNumericScroller("Speed multiplier", "", 1, 1001, 10);
        numero2.Changed += numero2_Changed;
        menuItems.Add(numero2);

        button = new MenuButton("Pimp My Ride", "Nice Wheels m8");
        button.Activated += (sender, args) => this.pimpmyride(veh);
        menuItems.Add(button);

        button = new MenuButton("Depimp My Ride", "n00b Wheels m8");
        button.Activated += (sender, args) => this.depimpmyride(veh);
        menuItems.Add(button);

        button = new MenuButton("Fix Dem Ride", "nice n clean");
        button.Activated += (sender, args) => this.FixRide(veh);
        menuItems.Add(button);

        button = new MenuButton("Fix & God Dem Ride", "Dem wheels is broken");
        button.Activated += (sender, args) => this.FixGodRide(veh);
        menuItems.Add(button);

        button = new MenuButton("RC Menu", "BTTF");
        button.Activated += (sender, args) => this.OpenVehicleRCMenu(veh);
        menuItems.Add(button);

        button = new MenuButton("TP Menu", "Bzzzt");
        button.Activated += (sender, args) => this.OpenVehicleTPMenu(veh);
        menuItems.Add(button);

        if (veh.FriendlyName.Length > 7)
        {
            this.View.AddMenu(new Menu(("Vehicle Menu (" + veh.FriendlyName.Substring(0, 7) + ")"), menuItems.ToArray()));
        }
        else
        {
            this.View.AddMenu(new Menu(("Vehicle Menu (" + veh.FriendlyName + ")"), menuItems.ToArray()));
        }
    }
예제 #5
0
    private void SublimeVehicleMenu()
    {
        List <IMenuItem> vehicleMenuItems = new List <IMenuItem>();

        var buttonVehicleSpawnerMenu = new MenuButton("Vehicle Spawner Menu");

        buttonVehicleSpawnerMenu.Activated += (sender, args) => SublimeVehicleSpawnerMenu();
        vehicleMenuItems.Add(buttonVehicleSpawnerMenu);

        var buttonVehicleModKitMenu = new MenuButton("Vehicle Mod Menu");

        buttonVehicleModKitMenu.Activated += (sender, args) => SublimeVehicleModCategoriesMenu();
        vehicleMenuItems.Add(buttonVehicleModKitMenu);

        var toggleWarpInSpawned = new MenuToggle("Warp in Spawned Vehicle", "", VehicleFunctions.IsWarpInSpawnedVehicleEnabled);

        toggleWarpInSpawned.Changed += (sender, args) => VehicleFunctions.ToggleWarpInSpawnedVehicle();
        vehicleMenuItems.Add(toggleWarpInSpawned);

        var buttonFixVehicle = new MenuButton("Fix Vehicle");

        buttonFixVehicle.Activated += (sender, args) => VehicleFunctions.FixVehicle();
        vehicleMenuItems.Add(buttonFixVehicle);

        var toggleIndestructible = new MenuToggle("Indestructible", "", VehicleFunctions.IsVehicleIndestructible);

        toggleIndestructible.Changed += (sender, args) => VehicleFunctions.ToggleVehicleIndestructible();
        vehicleMenuItems.Add(toggleIndestructible);

        var toggleSeatBelt = new MenuToggle("Seat Belt", "", VehicleFunctions.IsSeatBeltEnabled);

        toggleSeatBelt.Changed += (sender, args) => VehicleFunctions.ToggleSeatBelt();
        vehicleMenuItems.Add(toggleSeatBelt);

        var toggleLockDoors = new MenuToggle("Lock Doors", "", VehicleFunctions.IsLockedDoorsEnabled);

        toggleLockDoors.Changed += (sender, args) => VehicleFunctions.ToggleLockDoors();
        vehicleMenuItems.Add(toggleLockDoors);

        var toggleNeverFallOffBike = new MenuToggle("Never Fall-Off Bike", "", VehicleFunctions.IsNeverFallOffBikeEnabled);

        toggleNeverFallOffBike.Changed += (sender, args) => VehicleFunctions.ToggleNeverFallOffBike();
        vehicleMenuItems.Add(toggleNeverFallOffBike);

        var toggleSpeedBoost = new MenuToggle("Speed Boost", "", VehicleFunctions.IsSpeedBoostEnabled);

        toggleSpeedBoost.Changed += (sender, args) => VehicleFunctions.ToggleSpeedBoost();
        vehicleMenuItems.Add(toggleSpeedBoost);

        var toggleVehicleJump = new MenuToggle("Vehicle Jump", "", VehicleFunctions.CanVehiclesJump);

        toggleVehicleJump.Changed += (sender, args) => VehicleFunctions.ToggleVehicleJump();
        vehicleMenuItems.Add(toggleVehicleJump);

        var enumVehicleWeaponAssets = new MenuEnumScroller("Vehicle Weapon", "", VehicleFunctions.VehicleWeaponAssetsDict.Keys.ToArray(), VehicleFunctions.VehicleWeaponAssetIndex);

        enumVehicleWeaponAssets.Changed += (sender, args) => VehicleFunctions.VehicleWeaponAssetIndex = enumVehicleWeaponAssets.Index;
        vehicleMenuItems.Add(enumVehicleWeaponAssets);

        var toggleVehicleWeapons = new MenuToggle("Vehicle Weapons", "", VehicleFunctions.IsVehicleWeaponsEnabled);

        toggleVehicleWeapons.Changed += (sender, args) => VehicleFunctions.ToggleVehicleWeapons();
        vehicleMenuItems.Add(toggleVehicleWeapons);

        VehicleMenu = new GTA.Menu("Vehicle Options", vehicleMenuItems.ToArray());
        DrawMenu(VehicleMenu);
    }
예제 #6
0
 public static MenuEnumScroller WithEnumActions(this MenuEnumScroller enumScroller, Action <int> changeAction, Action <int> activateAction)
 {
     enumScroller.Changed   += (sender, args) => changeAction.Invoke(enumScroller.Index);
     enumScroller.Activated += (sender, args) => activateAction.Invoke(enumScroller.Index);
     return(enumScroller);
 }