Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Drawing;
- using System.Windows.Forms;
- using GTA;
- using GTA.Native;
- using NativeUI;
- public class YossiMenu : Script
- {
- const int MAX_PED_MODEL_MENU = 69;
- private struct gListItems
- {
- public UIMenuCheckboxItem yGodMode;
- //public UIMenuItem None;
- }
- private struct gUserData
- {
- public Player player;
- public Ped playerped;
- public bool GodMode;
- }
- private UIMenu mainMenu;
- //private UIMenu newMenu;
- private UIMenu [] newMenu = new UIMenu [MAX_PED_MODEL_MENU];
- private UIMenuCheckboxItem ketchupCheckbox;
- private UIMenuListItem dishesListItem;
- private UIMenuItem cookItem;
- //private MenuPool _menuPool;
- private MenuPool [] _menuPool = new MenuPool [MAX_PED_MODEL_MENU];
- private UIMenuItem [] _menuItem = new UIMenuItem [MAX_PED_MODEL_MENU];
- private UIMenuItem [] _menuItem2 = new UIMenuItem [690];
- gListItems Items = new gListItems ();
- gUserData UserData = new gUserData ();
- string [] [] pedModelNames =
- {
- new string[] {"MICHAEL", "FRANKLIN", "TREVOR", "BOAR", "CHIMP", "COW", "COYOTE", "DEER", "FISH", "HEN"},
- new string[] { "CAT", "HAWK", "CORMORANT", "CROW", "DOLPHIN", "HUMPBACK", "WHALE", "PIGEON", "SEAGULL", "SHARKHAMMER" },
- new string[] {"PIG", "RAT", "RHESUS", "CHOP", "HUSKY", "MTLION", "RETRIEVER", "SHARKTIGER", "SHEPHERD", "ALIEN"},
- new string[] {"BEACH", "BEVHILLS", "BEVHILLS", "BODYBUILD", "BUSINESS", "DOWNTOWN", "EASTSA", "EASTSA", "FATBLA", "FATCULT"},
- new string[] {"FATWHITE", "KTOWN", "KTOWN", "PROLHOST", "SALTON", "SKIDROW", "SOUCENTMC", "SOUCENT", "SOUCENT", "TOURIST"},
- new string[] {"TRAMPBEAC", "TRAMP", "GENSTREET", "INDIAN", "KTOWN", "SALTON", "SOUCENT", "SOUCENT", "BEACH", "BEVHILLS"},
- new string[] {"BEVHILLS", "BEVHILLS", "BEVHILLS", "BUSINESS", "BUSINESS", "BUSINESS", "BUSINESS", "EASTSA", "EASTSA", "EASTSA"},
- new string[] {"EPSILON", "FITNESS", "FITNESS", "GENHOT", "GOLFER", "HIKER", "HIPPIE", "HIPSTER", "HIPSTER", "HIPSTER"},
- new string[] {"HIPSTER", "INDIAN", "JUGGALO", "RUNNER", "RURMETH", "SCDRESSY", "SKATER", "SOUCENT", "SOUCENT", "SOUCENT"},
- new string[] {"TENNIS", "TOPLESS", "TOURIST", "TOURIST", "VINEWOOD", "VINEWOOD", "VINEWOOD", "VINEWOOD", "YOGA", "ACULT"},
- new string[] {"AFRIAMER", "BEACH", "BEACH", "BEVHILLS", "BEVHILLS", "BUSINESS", "EASTSA", "EASTSA", "FARMER", "FATLATIN"},
- new string[] {"GENFAT", "GENFAT", "GOLFER", "HASJEW", "HILLBILLY", "HILLBILLY", "INDIAN", "KTOWN", "MALIBU", "MEXCNTRY"},
- new string[] {"MEXLABOR", "OG_BOSS", "PAPARAZZI", "POLYNESIAN", "PROLHOST", "RURMETH", "SALTON", "SALTON", "SALTON", "SALTON"},
- new string[] {"SKATER", "SKIDROW", "SOCENLAT", "SOUCENT", "SOUCENT", "SOUCENT", "SOUCENT", "STLAT", "TENNIS", "TOURIST"},
- new string[] {"TRAMPBEAC", "TRAMP", "TRANVEST", "TRANVEST", "ACULT", "ACULT", "BEACH", "GENSTREET", "KTOWN", "SALTON"},
- new string[] {"SOUCENT", "SOUCENT", "SOUCENT", "TRAMP", "ACULT", "ACULT", "BEACHVESP", "BEACHVESP", "BEACH", "BEACH"},
- new string[] {"BEACH", "BEVHILLS", "BEVHILLS", "BREAKDANCE", "BUSICAS", "BUSINESS", "BUSINESS", "BUSINESS", "CYCLIST", "DHILL"},
- new string[] {"DOWNTOWN", "EASTSA", "EASTSA", "EPSILON", "EPSILON", "GAY", "GAY", "GENSTREET", "GENSTREET", "GOLFER"},
- new string[] {"HASJEW", "HIKER", "HIPPY", "HIPSTER", "HIPSTER", "HIPSTER", "INDIAN", "JETSKI", "JUGGALO", "KTOWN"},
- new string[] {"KTOWN", "LATINO", "METHHEAD", "MEXTHUG", "MOTOX", "MOTOX", "MUSCLBEAC", "MUSCLBEAC", "POLYNESIAN", "ROADCYC"},
- new string[] {"RUNNER", "RUNNER", "SALTON", "SKATER", "SKATER", "SOUCENT", "SOUCENT", "SOUCENT", "SOUCENT", "STBLA"},
- new string[] {"STBLA", "STLAT", "STWHI", "STWHI", "SUNBATHE", "SURFER", "VINDOUCHE", "VINEWOOD", "VINEWOOD", "VINEWOOD"},
- new string[] {"VINEWOOD", "YOGA", "PROLDRIVER", "RSRANGER", "SBIKE", "STAGGRM", "TATTOO", "ABIGAIL", "ANITA", "ANTON"},
- new string[] {"BALLASOG", "BRIDE", "BURGERDRUG", "CAR3GUY1", "CAR3GUY2", "CHEF", "CHIN_GOON", "CLETUS", "COP", "CUSTOMER"},
- new string[] {"DENISE_FRIEND", "FOS_REP", "G", "GROOM", "DLR", "HAO", "HUGH", "IMRAN", "JANITOR", "MAUDE"},
- new string[] {"MWEATHER", "ORTEGA", "OSCAR", "PORNDUDES", "PORNDUDES_P", "PROLOGUEDRIVER", "PROLSEC", "GANG", "HIC", "HIPSTER"},
- new string[] {"MARINE", "MEX", "REPORTER", "ROCCOPELOSI", "SCREEN_WRITER", "STRIPPER", "STRIPPER", "TONYA", "TRAFFICWARDEN", "AMANDATOWNLEY"},
- new string[] {"ANDREAS", "ASHLEY", "BANKMAN", "BARRY", "BARRY_P", "BEVERLY", "BEVERLY_P", "BRAD", "BRADCADAVER", "CARBUYER"},
- new string[] {"CASEY", "CHENGSR", "CHRISFORMAGE", "CLAY", "DALE", "DAVENORTON", "DEBRA", "DENISE", "DEVIN", "DOM"},
- new string[] {"DREYFUSS", "DRFRIEDLANDER", "FABIEN", "FBISUIT", "FLOYD", "GUADALOPE", "GURK", "HUNTER", "JANET", "JEWELASS"},
- new string[] {"JIMMYBOSTON", "JIMMYDISANTO", "JOEMINUTEMAN", "JOHNNYKLEBITZ", "JOSEF", "JOSH", "LAMARDAVIS", "LAZLOW", "LESTERCREST", "LIFEINVAD"},
- new string[] {"MAGENTA", "MANUEL", "MARNIE", "MARTINMADRAZO", "MARYANN", "MICHELLE", "MILTON", "MOLLY", "MOVPREMF", "MOVPREMMALE"},
- new string[] {"MRK", "MRSPHILLIPS", "MRS_THORNHILL", "NATALIA", "NERVOUSRON", "NIGEL", "OLD_MAN1A", "OLD_MAN2", "OMEGA", "ORLEANS"},
- new string[] {"PAPER", "PAPER_P", "PATRICIA", "PRIEST", "PROLSEC", "RUSSIANDRUNK", "SIEMONYETARIAN", "SOLOMON", "STEVEHAINS", "STRETCH"},
- new string[] {"TANISHA", "TAOCHENG", "TAOSTRANSLATOR", "TENNISCOACH", "TERRY", "TOM", "TOMEPSILON", "TRACYDISANTO", "WADE", "ZIMBOR"},
- new string[] {"BALLAS", "FAMILIES", "LOST", "VAGOS", "ARMBOSS", "ARMGOON", "ARMLIEUT", "CHEMWORK", "CHEMWORK_P", "CHIBOSS"},
- new string[] {"CHIBOSS_P", "CHICOLD", "CHICOLD_P", "CHIGOON", "CHIGOON_P", "CHIGOON", "KORBOSS", "MEXBOSS", "MEXBOSS", "ARMGOON"},
- new string[] {"AZTECA", "BALLAEAST", "BALLAORIG", "BALLASOUT", "FAMCA", "FAMDNF", "FAMFOR", "KOREAN", "KOREAN", "KORLIEUT"},
- new string[] {"LOST", "LOST", "LOST", "MEXGANG", "MEXGOON", "MEXGOON", "MEXGOON", "MEXGOON_P", "POLOGOON", "POLOGOON_P"},
- new string[] {"POLOGOON", "POLOGOON_P", "SALVABOSS", "SALVAGOON", "SALVAGOON", "SALVAGOON", "SALVAGOON_P", "STRPUNK", "STRPUNK", "HC_DRIVER"},
- new string[] {"HC_GUNMAN", "HC_HACKER", "ABIGAIL", "AMANDATOWNLEY", "ANDREAS", "ASHLEY", "BALLASOG", "BANKMAN", "BARRY", "BARRY_P"},
- new string[] {"BESTMEN", "BEVERLY", "BEVERLY_P", "BRAD", "BRIDE", "CAR3GUY1", "CAR3GUY2", "CASEY", "CHEF", "CHENGSR"},
- new string[] {"CHRISFORMAGE", "CLAY", "CLAYPAIN", "CLETUS", "DALE", "DAVENORTON", "DENISE", "DEVIN", "DOM", "DREYFUSS"},
- new string[] {"DRFRIEDLANDER", "FABIEN", "FBISUIT", "FLOYD", "GROOM", "HAO", "HUNTER", "JANET", "JAY_NORRIS", "JEWELASS"},
- new string[] {"JIMMYBOSTON", "JIMMYDISANTO", "JOEMINUTEMAN", "JOHNNYKLEBITZ", "JOSEF", "JOSH", "KERRYMCINTOSH", "LAMARDAVIS", "LAZLOW", "LESTERCREST"},
- new string[] {"LIFEINVAD", "LIFEINVAD", "MAGENTA", "MANUEL", "MARNIE", "MARYANN", "MAUDE", "MICHELLE", "MILTON", "MOLLY"},
- new string[] {"MRK", "MRSPHILLIPS", "MRS_THORNHILL", "NATALIA", "NERVOUSRON", "NIGEL", "OLD_MAN1A", "OLD_MAN2", "OMEGA", "ONEIL"},
- new string[] {"ORLEANS", "ORTEGA", "PAPER", "PATRICIA", "PRIEST", "PROLSEC", "GANG", "HIC", "HIPSTER", "MEX"},
- new string[] {"ROCCOPELOSI", "RUSSIANDRUNK", "SCREEN_WRITER", "SIEMONYETARIAN", "SOLOMON", "STEVEHAINS", "STRETCH", "TALINA", "TANISHA", "TAOCHENG"},
- new string[] {"TAOSTRANSLATOR", "TAOSTRANSLATOR_P", "TENNISCOACH", "TERRY", "TOMEPSILON", "TONYA", "TRACYDISANTO", "TRAFFICWARDEN", "TYLERDIX", "WADE"},
- new string[] {"ZIMBOR", "DEADHOOKER", "FREEMODE", "MISTY", "STRIPPERLITE", "PROS", "MP_HEADTARGETS", "CLAUDE", "EXARMY", "FAMDD"},
- new string[] {"FIBSEC", "FREEMODE", "MARSTON", "NIKO", "SHOPKEEP", "ARMOURED", "NONE", "NONE", "NONE", "NONE"},
- new string[] {"NONE", "FEMBARBER", "MAID", "SHOP_HIGH", "SWEATSHOP", "AIRHOSTESS", "BARTENDER", "BAYWATCH", "COP", "FACTORY"},
- new string[] {"HOOKER", "HOOKER", "HOOKER", "MIGRANT", "MOVPREM", "RANGER", "SCRUBS", "SHERIFF", "SHOP_LOW", "SHOP_MID"},
- new string[] {"STRIPPERLITE", "STRIPPER", "STRIPPER", "SWEATSHOP", "AMMUCOUNTRY", "ARMOURED", "ARMOURED", "AUTOSHOP", "AUTOSHOP", "BOUNCER"},
- new string[] {"CHEMSEC", "CIASEC", "CNTRYBAR", "DOCKWORK", "DOCTOR", "FIBOFFICE", "FIBOFFICE", "GAFFER", "GARDENER", "GENTRANSPORT"},
- new string[] {"HAIRDRESS", "HIGHSEC", "HIGHSEC", "JANITOR", "LATHANDY", "LIFEINVAD", "LINECOOK", "LSMETRO", "MARIACHI", "MARINE"},
- new string[] {"MARINE", "MIGRANT", "ZOMBIE", "MOVPREM", "MOVSPACE", "PARAMEDIC", "PILOT", "PILOT", "POSTAL", "POSTAL"},
- new string[] {"PRISGUARD", "SCIENTIST", "SECURITY", "SNOWCOP", "STRPERF", "STRPREACH", "STRVEND", "TRUCKER", "UPS", "UPS"},
- new string[] {"BUSKER", "AIRWORKER", "AMMUCITY", "ARMYMECH", "AUTOPSY", "BARMAN", "BAYWATCH", "BLACKOPS", "BLACKOPS", "BUSBOY"},
- new string[] {"CHEF", "CLOWN", "CONSTRUCT", "CONSTRUCT", "COP", "DEALER", "DEVINSEC", "DOCKWORK", "DOORMAN", "DWSERVICE"},
- new string[] {"DWSERVICE", "FACTORY", "FIREMAN", "GARBAGE", "GRIP", "HWAYCOP", "MARINE", "MARINE", "MARINE", "MIME"},
- new string[] {"PESTCONT", "PILOT", "PRISMUSCL", "PRISONER", "RANGER", "ROBBER", "SHERIFF", "SHOP_MASK", "STRVEND", "SWAT"},
- new string[] {"USCG", "VALET", "WAITER", "WINCLEAN", "XMECH", "XMECH", "CORPSE", "MIRANDA", "PROMOURN", "MOVIESTAR"},
- new string[] {"PROLHOST", "BIKERCHIC", "COMJANE", "CORPSE", "CORPSE", "HOTPOSH", "JEWELASS", "MISTRESS", "POPPYMICH", "PRINCESS"},
- new string[] {"SPYACTRESS", "ALDINAPOLI", "BANKMAN", "BIKEHIRE", "FIBARCHITECT", "FILMDIRECTOR", "GLENSTANK", "GRIFF", "JESUS", "JEWELSEC"},
- new string[] {"JEWELTHIEF", "MARKFOST", "PARTYTARGET", "PROLSEC", "PROMOURN", "RIVALPAP", "SPYACTOR", "WILLYFIST", "FINGURU", "TAPHILLBILLY"},
- new string[] {"TRAMP", "ABNER", "ANTONB", "BABYD", "BAYGOR", "BURGERDRUG", "CHIP", "CYCLIST", "FIBMUGGER", "GUIDO"},
- new string[] {"GUNVEND", "HIPPIE", "IMPORAGE", "JUSTIN", "MANI", "MILITARYBUM", "PAPARAZZI", "PARTY", "POGO", "PRISONER"}
- };
- public YossiMenu ()
- {
- Tick += OnTick;
- KeyDown += OnKeyDown;
- for (int i = 0, j = MAX_PED_MODEL_MENU; i < j; i++)
- {
- _menuPool [i] = new MenuPool ();
- }
- mainMenu = new UIMenu ("Native UI", "~b~NATIVEUI SHOWCASE");
- _menuPool [0].Add (mainMenu);
- for (int i = 0, j = MAX_PED_MODEL_MENU; i < j; i++)
- {
- newMenu [i] = new UIMenu ("Native UI", "~r~NATIVEUI SHOWCASE | " + (i + 1));
- _menuPool [1].Add (newMenu [i]);
- }
- mainMenu.AddItem (ketchupCheckbox = new UIMenuCheckboxItem ("Add ketchup?", false, "Do you wish to add ketchup?"));
- var foods = new List<dynamic>
- {
- "Banana",
- "Apple",
- "Pizza",
- "Quartilicious",
- 0xF00D, // Dynamic!
- };
- mainMenu.AddItem (dishesListItem = new UIMenuListItem ("Food", foods, 0));
- mainMenu.AddItem (cookItem = new UIMenuItem ("Cook!", "Cook the dish with the appropiate ingredients and ketchup."));
- var menuItem = new UIMenuItem ("Go to another menu.");
- mainMenu.AddItem (menuItem);
- cookItem.SetLeftBadge (UIMenuItem.BadgeStyle.Star);
- cookItem.SetRightBadge (UIMenuItem.BadgeStyle.Tick);
- mainMenu.RefreshIndex ();
- mainMenu.OnItemSelect += OnItemSelect;
- mainMenu.OnListChange += OnListChange;
- mainMenu.OnCheckboxChange += OnCheckboxChange;
- mainMenu.OnIndexChange += OnItemChange;
- //_menuItem
- /*
- newMenu [2] = new UIMenu ("Native UI", "~r~NATIVEUI SHOWCASE");
- _menuPool [0].Add (newMenu [2]);
- newMenu [2].AddItem (new UIMenuItem ("PageFiller", "Sample description that takes more than one line. Moreso, it takes way more than two lines since it's so long. Wow, check out this length!"));
- newMenu [2].RefreshIndex ();
- newMenu [1].BindMenuToItem (newMenu [2], menuItem2);
- */
- int count = 0;
- for (int i = 0, j = MAX_PED_MODEL_MENU; i < j; i++)
- {
- //newMenu [i] = new UIMenu ("Native UI", "~r~NATIVEUI SHOWCASE | " + (i + 1));
- //_menuPool [0].Add (newMenu [i]);
- //newMenu [i].AddItem (new UIMenuItem ("PageFiller | " + (i), "Sample description that takes more than one line. Moreso, it takes way more than two lines since it's so long. Wow, check out this length!"));
- for (int v = 0, k = 10; v < k; v++)
- {
- /*
- _menuItem2 [count] = new UIMenuItem (pedModelNames [i] [v]);
- newMenu [i].AddItem (_menuItem2 [count]);
- ++count;
- */
- var menuItem__ = new UIMenuItem (pedModelNames [i] [v]);
- newMenu [i].AddItem (menuItem__);
- }
- _menuItem [i] = new UIMenuItem ("Go to another menu.");
- newMenu [i].AddItem (_menuItem [i]);
- newMenu [i].RefreshIndex ();
- if (i > 0)
- {
- if (i <= MAX_PED_MODEL_MENU - 1)
- {
- //newMenu [i - 1].BindMenuToItem (newMenu [i], _menuItem [i - 1]);
- newMenu [i - 1].BindMenuToItem (newMenu [i], _menuItem [i - 1]);
- }
- }
- else
- {
- mainMenu.BindMenuToItem (newMenu [0], menuItem);
- }
- }
- /*
- newMenu [2] = new UIMenu ("Native UI", "~r~NATIVEUI SHOWCASE");
- _menuPool [0].Add (newMenu [2]);
- newMenu [2].AddItem (new UIMenuItem ("PageFiller", "Sample description that takes more than one line. Moreso, it takes way more than two lines since it's so long. Wow, check out this length!"));
- newMenu [2].RefreshIndex ();
- newMenu [1].BindMenuToItem (newMenu [2], menuItem2);
- */
- }
- public void OnItemChange (UIMenu sender, int index)
- {
- sender.MenuItems [index].SetLeftBadge (UIMenuItem.BadgeStyle.None);
- }
- public void OnCheckboxChange (UIMenu sender, UIMenuCheckboxItem checkbox, bool Checked)
- {
- if (sender != mainMenu || checkbox != ketchupCheckbox)
- return; // We only want to detect changes from our menu.
- if (checkbox == ketchupCheckbox)
- {
- UI.Notify ("~r~Ketchup status: ~b~" + Checked);
- }
- }
- public void OnListChange (UIMenu sender, UIMenuListItem list, int index)
- {
- //if (sender != mainMenu)
- //return; // We only want to detect changes from our menu.
- if (sender == mainMenu)
- {
- if (list == dishesListItem)
- {
- string dish = list.IndexToItem (index).ToString ();
- UI.Notify ("Preparing ~b~" + dish + "~w~...");
- }
- }
- }
- public void OnItemSelect (UIMenu sender, UIMenuItem selectedItem, int index)
- {
- // You can also detect the button by using index
- if (sender == mainMenu)
- {
- if (selectedItem == cookItem)
- {
- string dish = dishesListItem.IndexToItem (dishesListItem.Index).ToString ();
- bool ketchup = ketchupCheckbox.Checked;
- string output = ketchup
- ? "You have ordered ~b~{0}~w~ ~r~with~w~ ketchup."
- : "You have ordered ~b~{0}~w~ ~r~without~w~ ketchup.";
- UI.ShowSubtitle (String.Format (output, dish));
- }
- }
- for (int i = 0, j = 69; i < j; i++)
- {
- if (sender == newMenu [i])
- {
- UI.ShowSubtitle ("1 | sender " + sender.Title + " | Text " + selectedItem.Text);
- }
- }
- UI.ShowSubtitle ("2 | sender " + sender.Title + " | Text " + selectedItem.Text);
- }
- public void OnTick (object o, EventArgs e)
- {
- _menuPool [0].ProcessMenus ();
- _menuPool [1].ProcessMenus ();
- //_menuPool [0].ProcessMenus();
- }
- public void OnKeyDown (object o, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.F12 && !_menuPool [0].IsAnyMenuOpen ()) // Our menu on/off switch
- {
- mainMenu.Visible = !mainMenu.Visible;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement