Advertisement
Abel_Software

GTA V - Wanted Level Menu (Native UI)

Jan 15th, 2019
1,764
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.29 KB | None | 0 0
  1. // Native UI Menu Template 3.0 - Abel Software
  2. // You must download and use Scripthook V Dot Net Reference and NativeUI Reference (LINKS AT BOTTOM OF THE TEMPLATE)
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Drawing;
  6. using System.Windows.Forms;
  7. using System.Linq;
  8. using System.Text;
  9. using GTA;
  10. using GTA.Native;
  11. using NativeUI;
  12.  
  13. public class NativeUITemplate : Script
  14. {
  15.     private Ped playerPed = Game.Player.Character;
  16.     private Player player = Game.Player;
  17.     private MenuPool _menuPool;
  18.  
  19.     ScriptSettings config;
  20.     Keys OpenMenu;
  21.  
  22.     public void ClearWantedLevel(UIMenu menu)
  23.     {
  24.         var onestar = new UIMenuItem("Clear Wanted Level", "");
  25.         menu.AddItem(onestar);
  26.         menu.OnItemSelect += (sender, item, index) =>
  27.         {
  28.             if (item == onestar)
  29.             {
  30.                 Game.Player.WantedLevel = 0;
  31.             }
  32.         };
  33.     }
  34.  
  35.     public void OneStarWantedLevel(UIMenu menu)
  36.     {
  37.         var onestar = new UIMenuItem("One Star Wanted Level", "");
  38.         menu.AddItem(onestar);
  39.         menu.OnItemSelect += (sender, item, index) =>
  40.         {
  41.             if (item == onestar)
  42.             {
  43.                 Game.Player.WantedLevel = 1;
  44.             }
  45.         };
  46.     }
  47.  
  48.     public void TwoStarWantedLevel(UIMenu menu)
  49.     {
  50.         var onestar = new UIMenuItem("Two Star Wanted Level", "");
  51.         menu.AddItem(onestar);
  52.         menu.OnItemSelect += (sender, item, index) =>
  53.         {
  54.             if (item == onestar)
  55.             {
  56.                 Game.Player.WantedLevel = 2;
  57.             }
  58.         };
  59.     }
  60.  
  61.     public void ThreeStarWantedLevel(UIMenu menu)
  62.     {
  63.         var onestar = new UIMenuItem("Three Star Wanted Level", "");
  64.         menu.AddItem(onestar);
  65.         menu.OnItemSelect += (sender, item, index) =>
  66.         {
  67.             if (item == onestar)
  68.             {
  69.                 Game.Player.WantedLevel = 3;
  70.             }
  71.         };
  72.     }
  73.  
  74.     public void FourStarWantedLevel(UIMenu menu)
  75.     {
  76.         var onestar = new UIMenuItem("Four Star Wanted Level", "");
  77.         menu.AddItem(onestar);
  78.         menu.OnItemSelect += (sender, item, index) =>
  79.         {
  80.             if (item == onestar)
  81.             {
  82.                 Game.Player.WantedLevel = 4;
  83.             }
  84.         };
  85.     }
  86.  
  87.     public void FiveStarWantedLevel(UIMenu menu)
  88.     {
  89.         var onestar = new UIMenuItem("Five Star Wanted Level", "");
  90.         menu.AddItem(onestar);
  91.         menu.OnItemSelect += (sender, item, index) =>
  92.         {
  93.             if (item == onestar)
  94.             {
  95.                 Game.Player.WantedLevel = 5;
  96.             }
  97.         };
  98.     }
  99.  
  100.     public void PlayerOptionsSubMenu(UIMenu menu)
  101.     {
  102.         var playeroptions = _menuPool.AddSubMenu(menu, "Player Options");
  103.         for (int i = 0; i < 1; i++) ;
  104.  
  105.         //Heal Player
  106.         var healplayer = new UIMenuItem("Heal Player", "");
  107.         healplayer.SetRightBadge(UIMenuItem.BadgeStyle.Heart);
  108.         playeroptions.AddItem(healplayer);
  109.         playeroptions.OnItemSelect += (sender, item, index) =>
  110.         {
  111.             if (item == healplayer)
  112.             {
  113.                 Game.Player.Character.Health = 100;
  114.                 Game.Player.RefillSpecialAbility();
  115.             }
  116.         };
  117.  
  118.         //Armour
  119.         var armour = new UIMenuItem("Give Armour", "");
  120.         armour.SetRightBadge(UIMenuItem.BadgeStyle.Armour);
  121.         playeroptions.AddItem(armour);
  122.         playeroptions.OnItemSelect += (sender, item, index) =>
  123.         {
  124.             if (item == armour)
  125.             {
  126.                 Game.Player.Character.Armor = 100;
  127.             }
  128.         };
  129.  
  130.         //Clean Clothes
  131.         var cleanclothes = new UIMenuItem("Clean Player Clothes", "");
  132.         cleanclothes.SetRightBadge(UIMenuItem.BadgeStyle.Clothes);
  133.         playeroptions.AddItem(cleanclothes);
  134.         playeroptions.OnItemSelect += (sender, item, index) =>
  135.         {
  136.             if (item == cleanclothes)
  137.             {
  138.                 Game.Player.Character.ClearBloodDamage();
  139.             }
  140.         };
  141.     }
  142.  
  143.    
  144.     public NativeUITemplate()
  145.     {
  146.         _menuPool = new MenuPool();
  147.         var mainMenu = new UIMenu("Wanted Level Menu", "Example by Abel Software"); //"Wanted Level Menu" is the menu title, while "Example by Abel Software" is the description
  148.         _menuPool.Add(mainMenu); //This sets the menu, don't delete this.
  149.         ClearWantedLevel(mainMenu);
  150.         OneStarWantedLevel(mainMenu);
  151.         TwoStarWantedLevel(mainMenu);
  152.         ThreeStarWantedLevel(mainMenu);
  153.         FourStarWantedLevel(mainMenu);
  154.         FiveStarWantedLevel(mainMenu);
  155.         PlayerOptionsSubMenu(mainMenu);
  156.         _menuPool.RefreshIndex();
  157.  
  158.         //INI Configuration File
  159.         config = ScriptSettings.Load("scripts\\WantedLevelMenu.ini");
  160.         OpenMenu = config.GetValue<Keys>("Options", "OpenMenu", Keys.F7); //The F7 key will be set my default, but the user can change the key
  161.  
  162.         //This code will run with every ms tick
  163.         Tick += (o, e) => _menuPool.ProcessMenus();
  164.  
  165.         //This code will open the menu, do not delete this.
  166.         KeyDown += (o, e) =>
  167.         {
  168.             if (e.KeyCode == OpenMenu && !_menuPool.IsAnyMenuOpen()) // Our menu on/off switch
  169.                 mainMenu.Visible = !mainMenu.Visible;
  170.         };
  171.     }
  172. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement