public GTA() { Tick += OnTick; KeyDown += OnKeyDown; _menuPool = new MenuPool(); #region TrainerMenu mainMenu = new UIMenu("YTrainer", "~b~YTrainer v0.1"); _menuPool.Add(mainMenu); var GOptions = new UIMenuItem("World & Game Options"); mainMenu.AddItem(GOptions); var COptions = new UIMenuItem("Vehicle Options"); mainMenu.AddItem(COptions); var POptions = new UIMenuItem("Player Options"); mainMenu.AddItem(POptions); var SpawnOptions = new UIMenuItem("Car Spawning"); mainMenu.AddItem(SpawnOptions); var TOptions = new UIMenuItem("Time Options"); mainMenu.AddItem(TOptions); var WeOptions = new UIMenuItem("Weather Options"); mainMenu.AddItem(WeOptions); var WOptions = new UIMenuItem("Weapons Options"); mainMenu.AddItem(WOptions); var TeOptions = new UIMenuItem("Teleports Options"); mainMenu.AddItem(TeOptions); mainMenu.RefreshIndex(); #endregion #region GeneralMenu generalMenu = new UIMenu("World & Game Options", ""); _menuPool.Add(generalMenu); generalMenu.AddItem(HUD = new UIMenuCheckboxItem("Hide Hud and Radar", false)); generalMenu.AddItem(new UIMenuItem("Save Game")); generalMenu.AddItem(nVision = new UIMenuCheckboxItem("Night Vision", false)); generalMenu.RefreshIndex(); generalMenu.OnCheckboxChange += OnCheckboxChange; generalMenu.OnItemSelect += OnItemSelect; #endregion #region VehicleMenu carMenu = new UIMenu("Vehicle Options", ""); _menuPool.Add(carMenu); carMenu.AddItem(CGM = new UIMenuCheckboxItem("Car GodMode", false)); carMenu.AddItem(new UIMenuItem("Flip Car")); carMenu.AddItem(new UIMenuItem("Clean Car")); carMenu.AddItem(DS = new UIMenuCheckboxItem("Default Station", false)); carMenu.AddItem(new UIMenuItem("Drive to Waypoint")); carMenu.AddItem(new UIMenuItem("Stop Drive to Waypoint")); carMenu.AddItem(VisibleC = new UIMenuCheckboxItem("Visible Car", false)); carMenu.AddItem(new UIMenuItem("Repair Car")); carMenu.AddItem(new UIMenuItem("Open Left Front Door")); carMenu.AddItem(new UIMenuItem("Open Right Front Door")); carMenu.AddItem(new UIMenuItem("Open Left Rear Door")); carMenu.AddItem(new UIMenuItem("Open Right Rear Door")); carMenu.AddItem(new UIMenuItem("Open Hood")); carMenu.AddItem(new UIMenuItem("Open Trunk")); carMenu.AddItem(new UIMenuItem("Open All Car Doors")); carMenu.AddItem(new UIMenuItem("Close Left Front Door")); carMenu.AddItem(new UIMenuItem("Close Right Front Door")); carMenu.AddItem(new UIMenuItem("Close Left Rear Door")); carMenu.AddItem(new UIMenuItem("Close Right Rear Door")); carMenu.AddItem(new UIMenuItem("Close Hood")); carMenu.AddItem(new UIMenuItem("Close Trunk")); carMenu.AddItem(new UIMenuItem("Close All Car Doors")); var Colors = new List<dynamic> { "Red","Blue","Black","Green","White","Yellow" }; carMenu.AddItem(CarColors = new UIMenuListItem("Change Car Color", Colors, 0)); carMenu.RefreshIndex(); carMenu.OnCheckboxChange += OnCheckboxChange; carMenu.OnItemSelect += OnItemSelect; carMenu.OnListChange += OnListChange; #endregion #region PlayerMenu playerMenu = new UIMenu("Player Options", ""); _menuPool.Add(playerMenu); playerMenu.AddItem(GM = new UIMenuCheckboxItem("God Mode", false)); playerMenu.AddItem(UA = new UIMenuCheckboxItem("Unlimited Ammo", false)); playerMenu.AddItem(uAbility = new UIMenuCheckboxItem("Unlimited Ability", false)); var Wanted = new List<dynamic> { "0", "1", "2", "3", "4", "5", }; playerMenu.AddItem(WantedLevel = new UIMenuListItem("Wanted Level", Wanted, 0)); playerMenu.AddItem(new UIMenuItem("Give Money")); playerMenu.AddItem(VisibleP = new UIMenuCheckboxItem("Player Visible", false)); playerMenu.AddItem(NW = new UIMenuCheckboxItem("Never Wanted", false)); playerMenu.AddItem(new UIMenuItem("Add Health")); playerMenu.AddItem(new UIMenuItem("Add Armour")); playerMenu.AddItem(mRadio = new UIMenuCheckboxItem("Radio Menu", false)); playerMenu.AddItem(fastRun = new UIMenuCheckboxItem("Fast Run", false)); playerMenu.AddItem(fastSwim = new UIMenuCheckboxItem("Fast Swim", false)); playerMenu.RefreshIndex(); playerMenu.OnCheckboxChange += OnCheckboxChange; playerMenu.OnItemSelect += OnItemSelect; playerMenu.OnListChange += OnListChange; #endregion #region TimeMenu timeMenu = new UIMenu("Time Options", ""); _menuPool.Add(timeMenu); timeMenu.AddItem(new UIMenuItem("Slow Motion 25%")); timeMenu.AddItem(new UIMenuItem("Slow Motion 50%")); timeMenu.AddItem(new UIMenuItem("Slow Motion 75%")); timeMenu.AddItem(new UIMenuItem("Normal Game Speed")); timeMenu.AddItem(new UIMenuItem("Fast Motion")); timeMenu.AddItem(new UIMenuItem("Noon (12)")); timeMenu.AddItem(new UIMenuItem("AfterNoon (18)")); timeMenu.AddItem(new UIMenuItem("Evening (23)")); timeMenu.AddItem(new UIMenuItem("Night (5)")); timeMenu.AddItem(new UIMenuItem("Ahead One Hour")); timeMenu.AddItem(new UIMenuItem("Back One Hour")); timeMenu.AddItem(SyncTime = new UIMenuCheckboxItem("Real Time", false)); var Days = new List<dynamic> { "Sunday", //2 "Monday",//3 "Tuesday", //4 "Thursday", //6 "Wednesday", //5 "Friday", //7 "Saturday" //1 }; timeMenu.AddItem(DOH = new UIMenuListItem("Choose Day", Days, 0)); timeMenu.RefreshIndex(); timeMenu.OnItemSelect += OnItemSelect; timeMenu.OnListChange += OnListChange; #endregion #region WeatherMenu weatherMenu = new UIMenu("Weather Options", ""); _menuPool.Add(weatherMenu); weatherMenu.AddItem(new UIMenuItem("Blizzard")); weatherMenu.AddItem(new UIMenuItem("Christmas")); weatherMenu.AddItem(new UIMenuItem("Clear")); weatherMenu.AddItem(new UIMenuItem("Clearing")); weatherMenu.AddItem(new UIMenuItem("Clouds")); weatherMenu.AddItem(new UIMenuItem("Extra Sunny")); weatherMenu.AddItem(new UIMenuItem("Foggy")); weatherMenu.AddItem(new UIMenuItem("Neutral")); weatherMenu.AddItem(new UIMenuItem("Overcast")); weatherMenu.AddItem(new UIMenuItem("Raining")); weatherMenu.AddItem(new UIMenuItem("Smog")); weatherMenu.AddItem(new UIMenuItem("Snowing")); weatherMenu.AddItem(new UIMenuItem("Snowlight")); weatherMenu.AddItem(new UIMenuItem("Thunder Storm")); weatherMenu.RefreshIndex(); weatherMenu.OnItemSelect += OnItemSelect; #endregion #region WeaponMenu weaponMenu = new UIMenu("Weapons Options", ""); _menuPool.Add(weaponMenu); weaponMenu.AddItem(new UIMenuItem("Baseball Bat")); weaponMenu.AddItem(new UIMenuItem("Knife")); weaponMenu.AddItem(new UIMenuItem("Nightstick")); weaponMenu.AddItem(new UIMenuItem("Crowbar")); weaponMenu.AddItem(new UIMenuItem("Golf Club")); weaponMenu.AddItem(new UIMenuItem("Hammer")); weaponMenu.AddItem(new UIMenuItem("Broken Bottle")); weaponMenu.AddItem(new UIMenuItem("Antique Cavalry Dagger")); weaponMenu.AddItem(new UIMenuItem("Hatchet")); weaponMenu.AddItem(new UIMenuItem("Knuckledusters")); weaponMenu.AddItem(new UIMenuItem("Machete")); weaponMenu.AddItem(new UIMenuItem("Flashlight")); weaponMenu.AddItem(new UIMenuItem("Pistol")); weaponMenu.AddItem(new UIMenuItem("Combat Pistol")); weaponMenu.AddItem(new UIMenuItem("AP Pistol")); weaponMenu.AddItem(new UIMenuItem("Stun Gun")); weaponMenu.AddItem(new UIMenuItem("Pistol .50")); weaponMenu.AddItem(new UIMenuItem("SNS Pistol")); weaponMenu.AddItem(new UIMenuItem("Heavy Pistol")); weaponMenu.AddItem(new UIMenuItem("Vintage Pistol")); weaponMenu.AddItem(new UIMenuItem("Flare Gun")); weaponMenu.AddItem(new UIMenuItem("Marksman Pistol")); weaponMenu.AddItem(new UIMenuItem("Micro SMG")); weaponMenu.AddItem(new UIMenuItem("SMG")); weaponMenu.AddItem(new UIMenuItem("Assault SMG")); weaponMenu.AddItem(new UIMenuItem("Combat PDW")); weaponMenu.AddItem(new UIMenuItem("Machine Pistol")); weaponMenu.AddItem(new UIMenuItem("Pump Shotgun")); weaponMenu.AddItem(new UIMenuItem("Sawed-Off Shotgun")); weaponMenu.AddItem(new UIMenuItem("Assault Shotgun")); weaponMenu.AddItem(new UIMenuItem("Bullpup Shotgun")); weaponMenu.AddItem(new UIMenuItem("Musket")); weaponMenu.AddItem(new UIMenuItem("Heavy Shotgun")); weaponMenu.AddItem(new UIMenuItem("Assault Rifle")); weaponMenu.AddItem(new UIMenuItem("Carbine Rifle")); weaponMenu.AddItem(new UIMenuItem("Advanced Rifle")); weaponMenu.AddItem(new UIMenuItem("Special Carbine")); weaponMenu.AddItem(new UIMenuItem("Bullpup Rifle")); weaponMenu.AddItem(new UIMenuItem("MG")); weaponMenu.AddItem(new UIMenuItem("Combat MG")); weaponMenu.AddItem(new UIMenuItem("Gusenberg Sweeper")); weaponMenu.AddItem(new UIMenuItem("Sniper Rifle")); weaponMenu.AddItem(new UIMenuItem("Heavy Sniper")); weaponMenu.AddItem(new UIMenuItem("Marksman Rifle")); weaponMenu.AddItem(new UIMenuItem("RPG")); weaponMenu.AddItem(new UIMenuItem("Grenade Launcher")); weaponMenu.AddItem(new UIMenuItem("Grenade Launcher Smoke")); weaponMenu.AddItem(new UIMenuItem("Minigun")); weaponMenu.AddItem(new UIMenuItem("Firework Launcher")); weaponMenu.AddItem(new UIMenuItem("Rail Gun")); weaponMenu.AddItem(new UIMenuItem("Homing Launcher")); weaponMenu.AddItem(new UIMenuItem("Grenade")); weaponMenu.AddItem(new UIMenuItem("Sticky Bomb")); weaponMenu.AddItem(new UIMenuItem("Tear Gas")); weaponMenu.AddItem(new UIMenuItem("Molotov Cocktail")); weaponMenu.AddItem(new UIMenuItem("Proximity Mine")); weaponMenu.AddItem(new UIMenuItem("Snowball")); weaponMenu.AddItem(new UIMenuItem("BZ Gas")); weaponMenu.AddItem(new UIMenuItem("Fire Extinguisher")); weaponMenu.AddItem(new UIMenuItem("Jerry Can")); weaponMenu.AddItem(new UIMenuItem("Digiscanner")); weaponMenu.AddItem(new UIMenuItem("Parachute")); weaponMenu.RefreshIndex(); weaponMenu.OnItemSelect += OnItemSelect; #endregion #region TeleportMenu teleportMenu = new UIMenu("Teleports Options", ""); _menuPool.Add(teleportMenu); var TSpaceship = new List<dynamic> { "1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20", "21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40", "41","42","43","44","45","46","47","48","49","50", }; var TLetter = new List<dynamic> { "1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20", "21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40", "41","42","43","44","45","46","47","48","49","50", }; teleportMenu.AddItem(Spaceship = new UIMenuListItem("Spaceship", TSpaceship, 0)); teleportMenu.AddItem(LetterScraps = new UIMenuListItem("Letter Scraps", TLetter, 0)); teleportMenu.AddItem(new UIMenuItem("Teleport to WayPoint")); teleportMenu.AddItem(new UIMenuItem("Teleport to Safehouse")); teleportMenu.AddItem(new UIMenuItem("Teleport to AmmuNation")); teleportMenu.AddItem(new UIMenuItem("Teleport to AmmuNation with shooting range")); teleportMenu.AddItem(new UIMenuItem("Teleport to Garage")); teleportMenu.AddItem(new UIMenuItem("Teleport to Barber Shop")); teleportMenu.RefreshIndex(); teleportMenu.OnListChange += OnListChange; teleportMenu.OnItemSelect += OnItemSelect; #endregion #region SpawnVehicleMenu spawnMenu = new UIMenu("Car Spawning", ""); _menuPool.Add(spawnMenu); spawnMenu.AddItem(new UIMenuItem("Adder")); spawnMenu.AddItem(new UIMenuItem("Airbus")); spawnMenu.AddItem(new UIMenuItem("Airtug")); spawnMenu.AddItem(new UIMenuItem("Akuma")); spawnMenu.AddItem(new UIMenuItem("Ambulance")); spawnMenu.AddItem(new UIMenuItem("Annihilator")); spawnMenu.AddItem(new UIMenuItem("Aseat")); spawnMenu.AddItem(new UIMenuItem("Aseat2 ")); spawnMenu.AddItem(new UIMenuItem("Asterope")); spawnMenu.AddItem(new UIMenuItem("Bagger")); spawnMenu.AddItem(new UIMenuItem("Baller")); spawnMenu.AddItem(new UIMenuItem("Baller2")); spawnMenu.AddItem(new UIMenuItem("Banshee")); spawnMenu.AddItem(new UIMenuItem("Barracks")); spawnMenu.AddItem(new UIMenuItem("Barracks2")); spawnMenu.AddItem(new UIMenuItem("Bati")); spawnMenu.AddItem(new UIMenuItem("Bati2")); spawnMenu.AddItem(new UIMenuItem("Benson")); spawnMenu.AddItem(new UIMenuItem("Bfinjection")); spawnMenu.AddItem(new UIMenuItem("Biff")); spawnMenu.AddItem(new UIMenuItem("Bison")); spawnMenu.AddItem(new UIMenuItem("Bison2")); spawnMenu.AddItem(new UIMenuItem("Bison3")); spawnMenu.AddItem(new UIMenuItem("Bjkl ")); spawnMenu.AddItem(new UIMenuItem("Blazer")); spawnMenu.AddItem(new UIMenuItem("Blazer2")); spawnMenu.AddItem(new UIMenuItem("Blazer3")); spawnMenu.AddItem(new UIMenuItem("Blimp")); spawnMenu.AddItem(new UIMenuItem("Blista")); spawnMenu.AddItem(new UIMenuItem("Bmx")); spawnMenu.AddItem(new UIMenuItem("Bobcatxl")); spawnMenu.AddItem(new UIMenuItem("Bodhi2")); spawnMenu.AddItem(new UIMenuItem("Boxvillet")); spawnMenu.AddItem(new UIMenuItem("Boxvillet2")); spawnMenu.AddItem(new UIMenuItem("Boxvillet3")); spawnMenu.AddItem(new UIMenuItem("Buccaner")); spawnMenu.AddItem(new UIMenuItem("Buffalo")); spawnMenu.AddItem(new UIMenuItem("Buffalo2")); spawnMenu.AddItem(new UIMenuItem("Bulldozer")); spawnMenu.AddItem(new UIMenuItem("Bullet ")); spawnMenu.AddItem(new UIMenuItem("Burrito")); spawnMenu.AddItem(new UIMenuItem("Burrito2")); spawnMenu.AddItem(new UIMenuItem("Burrito3")); spawnMenu.AddItem(new UIMenuItem("Burrito4")); spawnMenu.AddItem(new UIMenuItem("Burrito5")); spawnMenu.AddItem(new UIMenuItem("Bus")); spawnMenu.AddItem(new UIMenuItem("Buzzard")); spawnMenu.AddItem(new UIMenuItem("Buzzard2")); spawnMenu.AddItem(new UIMenuItem("Caddy")); spawnMenu.AddItem(new UIMenuItem("Caddy2")); spawnMenu.AddItem(new UIMenuItem("Camper")); spawnMenu.AddItem(new UIMenuItem("Carbonizzare")); spawnMenu.AddItem(new UIMenuItem("Carbonrs")); spawnMenu.AddItem(new UIMenuItem("Cargobob")); spawnMenu.AddItem(new UIMenuItem("Cargobob2")); spawnMenu.AddItem(new UIMenuItem("Cargobob3 ")); spawnMenu.AddItem(new UIMenuItem("Cargoplane")); spawnMenu.AddItem(new UIMenuItem("Cavalcade")); spawnMenu.AddItem(new UIMenuItem("Cavalcade2")); spawnMenu.AddItem(new UIMenuItem("Cheetah")); spawnMenu.AddItem(new UIMenuItem("Coach")); spawnMenu.AddItem(new UIMenuItem("Cogcabrio")); spawnMenu.AddItem(new UIMenuItem("Comet2")); spawnMenu.AddItem(new UIMenuItem("Coquette")); spawnMenu.AddItem(new UIMenuItem("Cruiser")); spawnMenu.AddItem(new UIMenuItem("Crusade")); spawnMenu.AddItem(new UIMenuItem("Cuban800")); spawnMenu.AddItem(new UIMenuItem("Cutter")); spawnMenu.AddItem(new UIMenuItem("Daemon")); spawnMenu.AddItem(new UIMenuItem("Dilettante")); spawnMenu.AddItem(new UIMenuItem("Dilettante2")); spawnMenu.AddItem(new UIMenuItem("Dinghy")); spawnMenu.AddItem(new UIMenuItem("Dinghy2")); spawnMenu.AddItem(new UIMenuItem("Dloader")); spawnMenu.AddItem(new UIMenuItem("Docktug")); spawnMenu.AddItem(new UIMenuItem("Dominator")); spawnMenu.AddItem(new UIMenuItem("Double")); spawnMenu.AddItem(new UIMenuItem("Dubsta")); spawnMenu.AddItem(new UIMenuItem("Dubsta2")); spawnMenu.AddItem(new UIMenuItem("Dump")); spawnMenu.AddItem(new UIMenuItem("Dune")); spawnMenu.AddItem(new UIMenuItem("Dune2")); spawnMenu.AddItem(new UIMenuItem("Duster")); spawnMenu.AddItem(new UIMenuItem("Elegy2")); spawnMenu.AddItem(new UIMenuItem("Emperor")); spawnMenu.AddItem(new UIMenuItem("Emperor2")); spawnMenu.AddItem(new UIMenuItem("Emperor3")); spawnMenu.AddItem(new UIMenuItem("Entityxf")); spawnMenu.AddItem(new UIMenuItem("Exemplar")); spawnMenu.AddItem(new UIMenuItem("F620")); spawnMenu.AddItem(new UIMenuItem("Faggio2")); spawnMenu.AddItem(new UIMenuItem("Fbi")); spawnMenu.AddItem(new UIMenuItem("Fbi2")); spawnMenu.AddItem(new UIMenuItem("Felon")); spawnMenu.AddItem(new UIMenuItem("Felon2")); spawnMenu.AddItem(new UIMenuItem("Feltzer2")); spawnMenu.AddItem(new UIMenuItem("Firetruk")); spawnMenu.AddItem(new UIMenuItem("Fixter")); spawnMenu.AddItem(new UIMenuItem("Flatbed")); spawnMenu.AddItem(new UIMenuItem("Forklift")); spawnMenu.AddItem(new UIMenuItem("Fq2")); spawnMenu.AddItem(new UIMenuItem("Frogger")); spawnMenu.AddItem(new UIMenuItem("Frogger2")); spawnMenu.AddItem(new UIMenuItem("Fugitive")); spawnMenu.AddItem(new UIMenuItem("Fusilade")); spawnMenu.AddItem(new UIMenuItem("Futo")); spawnMenu.AddItem(new UIMenuItem("Gauntlet")); spawnMenu.AddItem(new UIMenuItem("Gburrito")); spawnMenu.AddItem(new UIMenuItem("Granger")); spawnMenu.AddItem(new UIMenuItem("Gresley")); spawnMenu.AddItem(new UIMenuItem("Habanero")); spawnMenu.AddItem(new UIMenuItem("Handler")); spawnMenu.AddItem(new UIMenuItem("Hauler")); spawnMenu.AddItem(new UIMenuItem("Hexer")); spawnMenu.AddItem(new UIMenuItem("Hotknife")); spawnMenu.AddItem(new UIMenuItem("Infernus")); spawnMenu.AddItem(new UIMenuItem("Ingot")); spawnMenu.AddItem(new UIMenuItem("Intruder")); spawnMenu.AddItem(new UIMenuItem("Issi2")); spawnMenu.AddItem(new UIMenuItem("Jackal")); spawnMenu.AddItem(new UIMenuItem("Jb700")); spawnMenu.AddItem(new UIMenuItem("Jet")); spawnMenu.AddItem(new UIMenuItem("Jetmax")); spawnMenu.AddItem(new UIMenuItem("Journey")); spawnMenu.AddItem(new UIMenuItem("Khamelion")); spawnMenu.AddItem(new UIMenuItem("Ladstalker")); spawnMenu.AddItem(new UIMenuItem("Lazer")); spawnMenu.AddItem(new UIMenuItem("Lguard")); spawnMenu.AddItem(new UIMenuItem("Luxor")); spawnMenu.AddItem(new UIMenuItem("Mammatus")); spawnMenu.AddItem(new UIMenuItem("Manana")); spawnMenu.AddItem(new UIMenuItem("Marquis")); spawnMenu.AddItem(new UIMenuItem("Maverick")); spawnMenu.AddItem(new UIMenuItem("Mesa")); spawnMenu.AddItem(new UIMenuItem("Mesa2")); spawnMenu.AddItem(new UIMenuItem("Mesa3")); spawnMenu.AddItem(new UIMenuItem("Minivan")); spawnMenu.AddItem(new UIMenuItem("Mixer")); spawnMenu.AddItem(new UIMenuItem("Mixer2")); spawnMenu.AddItem(new UIMenuItem("Monroe")); spawnMenu.AddItem(new UIMenuItem("Mower")); spawnMenu.AddItem(new UIMenuItem("Mule")); spawnMenu.AddItem(new UIMenuItem("Mule2")); spawnMenu.AddItem(new UIMenuItem("Nemesis")); spawnMenu.AddItem(new UIMenuItem("Ninef")); spawnMenu.AddItem(new UIMenuItem("Ninef2")); spawnMenu.AddItem(new UIMenuItem("Oracle")); spawnMenu.AddItem(new UIMenuItem("Oracle2")); spawnMenu.AddItem(new UIMenuItem("Packer")); spawnMenu.AddItem(new UIMenuItem("Patriot")); spawnMenu.AddItem(new UIMenuItem("Pbus")); spawnMenu.AddItem(new UIMenuItem("Pcj")); spawnMenu.AddItem(new UIMenuItem("Penumbra")); spawnMenu.AddItem(new UIMenuItem("Peyote")); spawnMenu.AddItem(new UIMenuItem("Phantom")); spawnMenu.AddItem(new UIMenuItem("Phoenix")); spawnMenu.AddItem(new UIMenuItem("Picador")); spawnMenu.AddItem(new UIMenuItem("Police")); spawnMenu.AddItem(new UIMenuItem("Police2")); spawnMenu.AddItem(new UIMenuItem("Police3")); spawnMenu.AddItem(new UIMenuItem("Police4")); spawnMenu.AddItem(new UIMenuItem("Policeb")); spawnMenu.AddItem(new UIMenuItem("Policeold1")); spawnMenu.AddItem(new UIMenuItem("Policeold2")); spawnMenu.AddItem(new UIMenuItem("Policet")); spawnMenu.AddItem(new UIMenuItem("Polmav")); spawnMenu.AddItem(new UIMenuItem("Pony")); spawnMenu.AddItem(new UIMenuItem("Pony2")); spawnMenu.AddItem(new UIMenuItem("Pounder")); spawnMenu.AddItem(new UIMenuItem("Praire")); spawnMenu.AddItem(new UIMenuItem("Pranger")); spawnMenu.AddItem(new UIMenuItem("Predator")); spawnMenu.AddItem(new UIMenuItem("Premier")); spawnMenu.AddItem(new UIMenuItem("Primo")); spawnMenu.AddItem(new UIMenuItem("Radi")); spawnMenu.AddItem(new UIMenuItem("Rancherxl")); spawnMenu.AddItem(new UIMenuItem("Rancherxl2")); spawnMenu.AddItem(new UIMenuItem("Rapidgt")); spawnMenu.AddItem(new UIMenuItem("Rapidgt2")); spawnMenu.AddItem(new UIMenuItem("Ratloader")); spawnMenu.AddItem(new UIMenuItem("Rebel")); spawnMenu.AddItem(new UIMenuItem("Rebel2")); spawnMenu.AddItem(new UIMenuItem("Regina")); spawnMenu.AddItem(new UIMenuItem("Rentalbus")); spawnMenu.AddItem(new UIMenuItem("Rhino")); spawnMenu.AddItem(new UIMenuItem("Riot")); spawnMenu.AddItem(new UIMenuItem("Ripley")); spawnMenu.AddItem(new UIMenuItem("Rocoto")); spawnMenu.AddItem(new UIMenuItem("Romero")); spawnMenu.AddItem(new UIMenuItem("Rubble")); spawnMenu.AddItem(new UIMenuItem("Ruffian")); spawnMenu.AddItem(new UIMenuItem("Ruiner")); spawnMenu.AddItem(new UIMenuItem("Rumpo")); spawnMenu.AddItem(new UIMenuItem("Rumpo2")); spawnMenu.AddItem(new UIMenuItem("Sabregt")); spawnMenu.AddItem(new UIMenuItem("Sadler")); spawnMenu.AddItem(new UIMenuItem("Sadler2")); spawnMenu.AddItem(new UIMenuItem("Sanchez")); spawnMenu.AddItem(new UIMenuItem("Sanchez2")); spawnMenu.AddItem(new UIMenuItem("Sandking")); spawnMenu.AddItem(new UIMenuItem("Sandking2")); spawnMenu.AddItem(new UIMenuItem("Schafter2")); spawnMenu.AddItem(new UIMenuItem("Schwarzer")); spawnMenu.AddItem(new UIMenuItem("Scorcher")); spawnMenu.AddItem(new UIMenuItem("Scrap")); spawnMenu.AddItem(new UIMenuItem("Seashark")); spawnMenu.AddItem(new UIMenuItem("Seashark2")); spawnMenu.AddItem(new UIMenuItem("Seminole")); spawnMenu.AddItem(new UIMenuItem("Sentinel")); spawnMenu.AddItem(new UIMenuItem("Sentinel2")); spawnMenu.AddItem(new UIMenuItem("Serrano")); spawnMenu.AddItem(new UIMenuItem("Shamal")); spawnMenu.AddItem(new UIMenuItem("Sheriff")); spawnMenu.AddItem(new UIMenuItem("Sheriff2")); spawnMenu.AddItem(new UIMenuItem("Skylift")); spawnMenu.AddItem(new UIMenuItem("Speedo")); spawnMenu.AddItem(new UIMenuItem("Speedo2")); spawnMenu.AddItem(new UIMenuItem("Squalo")); spawnMenu.AddItem(new UIMenuItem("Stanier")); spawnMenu.AddItem(new UIMenuItem("Stinger")); spawnMenu.AddItem(new UIMenuItem("Stingergt")); spawnMenu.AddItem(new UIMenuItem("Stockade")); spawnMenu.AddItem(new UIMenuItem("Stockade3")); spawnMenu.AddItem(new UIMenuItem("Stratum")); spawnMenu.AddItem(new UIMenuItem("Stretch")); spawnMenu.AddItem(new UIMenuItem("Stunt")); spawnMenu.AddItem(new UIMenuItem("Submersible")); spawnMenu.AddItem(new UIMenuItem("Sultan")); spawnMenu.AddItem(new UIMenuItem("Suntrap")); spawnMenu.AddItem(new UIMenuItem("Superd")); spawnMenu.AddItem(new UIMenuItem("Surano")); spawnMenu.AddItem(new UIMenuItem("Surfer")); spawnMenu.AddItem(new UIMenuItem("Surfer2")); spawnMenu.AddItem(new UIMenuItem("Surge")); spawnMenu.AddItem(new UIMenuItem("Taco")); spawnMenu.AddItem(new UIMenuItem("Tailgater")); spawnMenu.AddItem(new UIMenuItem("Tankercar")); spawnMenu.AddItem(new UIMenuItem("Taxi")); spawnMenu.AddItem(new UIMenuItem("Tiptruck")); spawnMenu.AddItem(new UIMenuItem("Tiptruck2")); spawnMenu.AddItem(new UIMenuItem("Titan")); spawnMenu.AddItem(new UIMenuItem("Tornado")); spawnMenu.AddItem(new UIMenuItem("Tornado2")); spawnMenu.AddItem(new UIMenuItem("Tornado3")); spawnMenu.AddItem(new UIMenuItem("Tornado4")); spawnMenu.AddItem(new UIMenuItem("Tourbus")); spawnMenu.AddItem(new UIMenuItem("Towtruck")); spawnMenu.AddItem(new UIMenuItem("Towtruck2")); spawnMenu.AddItem(new UIMenuItem("Tractor")); spawnMenu.AddItem(new UIMenuItem("Tractor2")); spawnMenu.AddItem(new UIMenuItem("Tractor3")); spawnMenu.AddItem(new UIMenuItem("Trash")); spawnMenu.AddItem(new UIMenuItem("Tropic")); spawnMenu.AddItem(new UIMenuItem("Utilitruck")); spawnMenu.AddItem(new UIMenuItem("Utilitruck2")); spawnMenu.AddItem(new UIMenuItem("Utilitruck3")); spawnMenu.AddItem(new UIMenuItem("Vacca")); spawnMenu.AddItem(new UIMenuItem("Vader")); spawnMenu.AddItem(new UIMenuItem("Velum")); spawnMenu.AddItem(new UIMenuItem("Vigero")); spawnMenu.AddItem(new UIMenuItem("Voltic")); spawnMenu.AddItem(new UIMenuItem("Voodoo2")); spawnMenu.AddItem(new UIMenuItem("Washington")); spawnMenu.AddItem(new UIMenuItem("Youga")); spawnMenu.AddItem(new UIMenuItem("Zion")); spawnMenu.AddItem(new UIMenuItem("Zion2")); spawnMenu.AddItem(new UIMenuItem("Ztype")); spawnMenu.AddItem(new UIMenuItem("Bifta DLC Beach Bum")); spawnMenu.AddItem(new UIMenuItem("Kalahari DLC Beach Bum")); spawnMenu.AddItem(new UIMenuItem("Paradise DLC Beach Bum")); spawnMenu.AddItem(new UIMenuItem("Speeder DLC Beach Bum")); spawnMenu.AddItem(new UIMenuItem("Alpha DLC The Business")); spawnMenu.AddItem(new UIMenuItem("Jester DLC The Business")); spawnMenu.AddItem(new UIMenuItem("TurismoR DLC The Business")); spawnMenu.AddItem(new UIMenuItem("Vestra DLC The Business")); spawnMenu.AddItem(new UIMenuItem("Huntley DLC The High Life")); spawnMenu.AddItem(new UIMenuItem("Massacro DLC The High Life")); spawnMenu.AddItem(new UIMenuItem("Thrust DLC The High Life")); spawnMenu.AddItem(new UIMenuItem("Zentorno DLC The High Life")); spawnMenu.AddItem(new UIMenuItem("Blade DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Dubsta3 DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Glendale DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Panto DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Pigalle DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Rhapsody DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Warrener DLC I'm Not a Hipster")); spawnMenu.AddItem(new UIMenuItem("Monster DLC Indipendence Day")); spawnMenu.AddItem(new UIMenuItem("Sovereign DLC Indipendence Day")); spawnMenu.AddItem(new UIMenuItem("Furoregt DLC Last Team Standing")); spawnMenu.AddItem(new UIMenuItem("Hakuchou DLC Last Team Standing")); spawnMenu.AddItem(new UIMenuItem("Innovation DLC Last Team Standing")); spawnMenu.AddItem(new UIMenuItem("Besra DLC The San Andreas Flight School")); spawnMenu.AddItem(new UIMenuItem("Coquette2 DLC The San Andreas Flight School")); spawnMenu.AddItem(new UIMenuItem("Miljet DLC The San Andreas Flight School")); spawnMenu.AddItem(new UIMenuItem("Swift DLC The San Andreas Flight School")); spawnMenu.AddItem(new UIMenuItem("Btype DLC The Valentine Day Massacre")); spawnMenu.AddItem(new UIMenuItem("Blimp2")); spawnMenu.AddItem(new UIMenuItem("Blista2")); spawnMenu.AddItem(new UIMenuItem("Blista3")); spawnMenu.AddItem(new UIMenuItem("Buffalo3")); spawnMenu.AddItem(new UIMenuItem("Dodo")); spawnMenu.AddItem(new UIMenuItem("Dominator2")); spawnMenu.AddItem(new UIMenuItem("Dukes")); spawnMenu.AddItem(new UIMenuItem("Dukes2")); spawnMenu.AddItem(new UIMenuItem("Gauntlet2")); spawnMenu.AddItem(new UIMenuItem("Marshall")); spawnMenu.AddItem(new UIMenuItem("Stallion")); spawnMenu.AddItem(new UIMenuItem("Stallion2")); spawnMenu.AddItem(new UIMenuItem("Submersible2")); spawnMenu.AddItem(new UIMenuItem("Jester2 DLC Festive Surprise")); spawnMenu.AddItem(new UIMenuItem("Massacro2 DLC Festive Surprise")); spawnMenu.AddItem(new UIMenuItem("Ratloader2 DLC Festive Surprise")); spawnMenu.AddItem(new UIMenuItem("Slamvan DLC Festive Surprise")); spawnMenu.AddItem(new UIMenuItem("Btype2 DLC Halloween")); spawnMenu.AddItem(new UIMenuItem("Lurcher DLC Halloween")); spawnMenu.AddItem(new UIMenuItem("Barracks3 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Boxville4 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Casco DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Dinghy3 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Enduro DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Gburrito2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Guardian DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Hydra DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Insurgent DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Insurgent2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Kuruma DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Kuruma2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Lectro DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Mule3 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Savage DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Slamvan2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Technical DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Trash2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Valkyrie DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Velum2 DLC Heists")); spawnMenu.AddItem(new UIMenuItem("Buccaner2 DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Chino2 DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Faction DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Faction2 DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Moonbeam DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Moonbeam2 DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Primo2 DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Voodoo DLC Lowrider")); spawnMenu.AddItem(new UIMenuItem("Feltzer3 DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Luxor2 DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Osiris DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Swift2 DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Virgo DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Windsor DLC Ill Gotten Gains Part 1")); spawnMenu.AddItem(new UIMenuItem("Brawler DLC Ill Gotten Gains Part 2")); spawnMenu.AddItem(new UIMenuItem("Chino DLC Ill Gotten Gains Part 2")); spawnMenu.AddItem(new UIMenuItem("Coquette3 DLC Ill Gotten Gains Part 2")); spawnMenu.AddItem(new UIMenuItem("T20 DLC Ill Gotten Gains Part 2")); spawnMenu.AddItem(new UIMenuItem("Toro DLC Ill Gotten Gains Part 2")); spawnMenu.AddItem(new UIMenuItem("Vindicator DLC Ill Gotten Gains Part 2")); spawnMenu.OnItemSelect += OnItemSelect; spawnMenu.RefreshIndex(); #endregion mainMenu.BindMenuToItem(generalMenu, GOptions); mainMenu.BindMenuToItem(carMenu, COptions); mainMenu.BindMenuToItem(playerMenu, POptions); mainMenu.BindMenuToItem(timeMenu, TOptions); mainMenu.BindMenuToItem(weatherMenu, WeOptions); mainMenu.BindMenuToItem(weaponMenu, WOptions); mainMenu.BindMenuToItem(teleportMenu, TeOptions); mainMenu.BindMenuToItem(spawnMenu, SpawnOptions); }
/// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text and description to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <param name="description">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> public UIMenu AddSubMenu(UIMenu menu, string text, string description, PointF offset) { UIMenuItem item = new UIMenuItem(text, description); menu.AddItem(item); UIMenu submenu = new UIMenu(menu.Title.Caption, text, offset); if (BannerInheritance && menu.BannerTexture != null) { submenu.SetBannerType(menu.BannerTexture); } else if (BannerInheritance && menu.BannerRectangle != null) { submenu.SetBannerType(menu.BannerRectangle); } else if (BannerInheritance && menu.BannerSprite != null) { submenu.SetBannerType(menu.BannerSprite); } submenu.MouseControlsEnabled = menu.MouseControlsEnabled; submenu.MouseEdgeEnabled = menu.MouseEdgeEnabled; Add(submenu); menu.BindMenuToItem(submenu, item); menu._poolcontainer = this; return(submenu); }
/// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> public UIMenu AddSubMenu(UIMenu menu, string text) { var item = new UIMenuItem(text); menu.AddItem(item); var submenu = new UIMenu(menu.Title.Caption, text); this.Add(submenu); menu.BindMenuToItem(submenu, item); return submenu; }
/// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> //public UIMenu AddSubMenu(UIMenu menu, string text) //{ // var item = new UIMenuItem(text); // menu.AddItem(item); // var submenu = new UIMenu(menu.Title.Caption, text); // this.Add(submenu); // menu.BindMenuToItem(submenu, item); // return submenu; //} /// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text and description to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <param name="description">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> public UIMenu AddSubMenu(UIMenu menu, UIMenuItem item) { menu.AddItem(item); var submenu = new UIMenu(menu.Title.Caption, item.Text); this.Add(submenu); menu.BindMenuToItem(submenu, item); return(submenu); }
private void Menu_OnItemSelect(NativeUI.UIMenu sender, NativeUI.UIMenuItem selectedItem, int index) { if (index == 0) { SaveVehicle(); } else { LoadVehicle(VehicleList.Vehicles[index - 1]); } }
/// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> public UIMenu AddSubMenu(UIMenu menu, string text) { var item = new UIMenuItem(text); menu.AddItem(item); var submenu = new UIMenu(menu.Title.Caption, text); this.Add(submenu); menu.BindMenuToItem(submenu, item); return(submenu); }
public virtual UIMenuItem addStartItem(ref UIMenu menu) { var startItem = new UIMenuItem("Démarrer la mission"); menu.AddItem(startItem); menu.OnItemSelect += (sender, item, index) => { if (item == startItem) { sender.Visible = false; } }; return startItem; }
private void LoadStatsMenu() { statsMenu.MenuItems.Clear(); var statVal = PlayerStats.ReadPlayerStat("kills"); var menuItem = new UIMenuItem(string.Format("Player Kills: ~y~{0}", statVal)); menuItem.Enabled = false; statsMenu.AddItem(menuItem); statVal = PlayerStats.ReadPlayerStat("deaths"); menuItem = new UIMenuItem(string.Format("Player Deaths: ~y~{0}", statVal)); menuItem.Enabled = false; statsMenu.AddItem(menuItem); statVal = PlayerStats.ReadPlayerStat("exp"); menuItem = new UIMenuItem(string.Format("Experience Points: ~y~{0}", statVal)); menuItem.Enabled = false; statsMenu.AddItem(menuItem); menuItem = new UIMenuItem(string.Format("Player Rank: ~y~{0}", ExpRankManager.GetRankIndex(statVal))); menuItem.Enabled = false; statsMenu.AddItem(menuItem); }
/// <summary> /// Create and add a submenu to the menu pool. /// Adds an item with the given text and description to the menu, creates a corresponding submenu, and binds the submenu to the item. /// The submenu inherits its title from the menu, and its subtitle from the item text. /// </summary> /// <param name="menu">The parent menu to which the submenu must be added.</param> /// <param name="text">The name of the submenu.</param> /// <param name="description">The name of the submenu.</param> /// <returns>The newly created submenu.</returns> public UIMenu AddSubMenu(UIMenu menu, string text, string description, PointF offset) { UIMenuItem item = new UIMenuItem(text, description); menu.AddItem(item); UIMenu submenu = new UIMenu(menu.Title.Caption, text, offset); if (BannerInheritance && menu.BannerTexture != null) { submenu.SetBannerType(menu.BannerTexture); } else if (BannerInheritance && menu.BannerRectangle != null) { submenu.SetBannerType(menu.BannerRectangle); } else if (BannerInheritance && menu.BannerSprite != null) { submenu.SetBannerType(menu.BannerSprite); } Add(submenu); menu.BindMenuToItem(submenu, item); return(submenu); }
public GameMenu() { mainMenu = new UIMenu("Air Superiority", "BETA"); var menuItem = new UIMenuItem("~g~Start Script"); menuItem.Activated += (x, y) => { GameManager.InitializeScript(); menuPool.CloseAllMenus(); }; mainMenu.AddItem(menuItem); menuItem = new UIMenuItem("~r~Stop Script"); menuItem.Activated += (x, y) => GameManager.StopScript(); mainMenu.AddItem(menuItem); menuItem = new UIMenuItem("Unlocks (coming soon)"); menuItem.Enabled = false; mainMenu.AddItem(menuItem); menuItem = new UIMenuItem("View Stats"); mainMenu.AddItem(menuItem); statsMenu = new UIMenu("Player Stats", Game.Player.Name); menuItem = new UIMenuItem("Load Stats"); menuItem.Activated += (x, y) => LoadStatsMenu(); statsMenu.AddItem(menuItem); menuItem = new UIMenuItem("Player Kills: --"); menuItem.Enabled = false; statsMenu.AddItem(menuItem); menuItem = new UIMenuItem("Player Deaths: --"); menuItem.Enabled = false; statsMenu.AddItem(menuItem); menuItem = new UIMenuItem("Total Score: --"); menuItem.Enabled = false; statsMenu.AddItem(menuItem); mainMenu.BindMenuToItem(statsMenu, mainMenu.MenuItems[3]); mainMenu.OnItemSelect += MainMenu_OnItemSelect; mainMenu.RefreshIndex(); menuPool = new MenuPool(); menuPool.Add(mainMenu); menuPool.Add(statsMenu); KeyDown += KeyPressed; Tick += OnTick; }
private UIMenu route_menu() { rm = new UIMenu("", "GTAV BUS MOD"); menu_p.Add(rm); List<dynamic> route_names = _get_routes_name(); var start_but = new UIMenuItem("Start", "Click to start route."); rm.AddItem(start_but); var _routes_list = new UIMenuListItem("Routes List", route_names, 0, "Choose route"); rm.AddItem(_routes_list); var _cancel = new UIMenuItem("Cancel", "Cancel current route"); _cancel.Enabled = false; rm.AddItem(_cancel); if(__lock) { start_but.Enabled = false; _routes_list.Enabled = false; _cancel.Enabled = true; } rm.SetBannerType("scripts\\bus_mod.png"); rm.OnItemSelect += OnItemSelect; rm.OnListChange += OnListChange; rm.RefreshIndex(); return rm; }
private void RedrawSearchMenu(string searchQuery, ObjectTypes type = ObjectTypes.Prop) { _searchMenu.Clear(); switch (type) { case ObjectTypes.Prop: foreach (var u in ObjectDatabase.MainDb.Where(pair => ApplySearchQuery(searchQuery, pair.Key))) { var object1 = new UIMenuItem(u.Key); if (ObjectDatabase.InvalidHashes.Contains(u.Value)) object1.SetRightLabel("~r~Invalid"); _searchMenu.AddItem(object1); } break; case ObjectTypes.Vehicle: foreach (var u in ObjectDatabase.VehicleDb.Where(pair => ApplySearchQuery(searchQuery, pair.Key))) { var object1 = new UIMenuItem(u.Key); _searchMenu.AddItem(object1); } break; case ObjectTypes.Ped: foreach (var u in ObjectDatabase.PedDb.Where(pair => ApplySearchQuery(searchQuery, pair.Key))) { var object1 = new UIMenuItem(u.Key); _searchMenu.AddItem(object1); } break; } _searchMenu.RefreshIndex(); }
//click start private void OnItemSelect(UIMenu sender, UIMenuItem selecteditem, int index) { if (sender == mi_menu) { switch (index) { case 0: _lock = true; menu_p.CloseAllMenus(); _mis.prepare_mission(mission); break; case 2: menu_p.CloseAllMenus(); _mis.cancel_mission(); _lock = false; break; } } if (sender == rm) { switch (index) { case 0: __lock = true; menu_p.CloseAllMenus(); _mr.prepare_route(route); break; case 2: __lock = false; menu_p.CloseAllMenus(); _mr.cancel_route(); break; } } }
protected virtual void ItemSelect(UIMenuItem selecteditem, int index) { OnItemSelect?.Invoke(this, selecteditem, index); }
/// <summary> /// Bind a menu to a button. When the button is clicked that menu will open. /// </summary> public void BindMenuToItem(UIMenu menuToBind, UIMenuItem itemToBindTo) { menuToBind.ParentMenu = this; menuToBind.ParentItem = itemToBindTo; if (Children.ContainsKey(itemToBindTo)) Children[itemToBindTo] = menuToBind; else Children.Add(itemToBindTo, menuToBind); }
public void BuildMenu(Race race) { GUI.MainMenu.Clear(); GUI.MainMenu.SetBannerType(new UIResRectangle()); _raceSettings.Clear(); _raceSettings["TOD"] = "Current"; _raceSettings["Weather"] = "Current"; _raceSettings["Wanted"] = false; _raceSettings["Opponents"] = "Random"; _raceSettings["Traffic"] = true; _raceSettings["Laps"] = 1; _previewVehicle = World.CreateVehicle(Helpers.RequestModel((int)race.AvailableVehicles[0]), race.Trigger); _previewVehicle.IsPersistent = false; List<dynamic> timeList = new List<dynamic> { "Current", "Sunrise", "Day", "Sunset", "Night" }; var timeItem = new UIMenuListItem("Time of Day", timeList, 0); timeItem.OnListChanged += (item, index) => { _raceSettings["TOD"] = item.IndexToItem(index); }; var weatherList = new List<dynamic> { "Current" }; Enum.GetNames(typeof(Weather)).ToList().ForEach(w => weatherList.Add(w)); var weatherItem = new UIMenuListItem("Weather", weatherList, 0); weatherItem.OnListChanged += (item, index) => { _raceSettings["Weather"] = item.IndexToItem(index); }; var copItem = new UIMenuCheckboxItem("Wanted Levels", false); copItem.CheckboxEvent += (i, checkd) => { _raceSettings["Wanted"] = checkd; }; var opponentsList = new List<dynamic> { "Random" }; Enumerable.Range(1, race.SpawnPoints.Length - 1).ToList().ForEach(n => opponentsList.Add(n)); var opponentsItem = new UIMenuListItem("Number of Opponents", opponentsList, 0); opponentsItem.OnListChanged += (item, index) => { _raceSettings["Opponents"] = item.IndexToItem(index); }; var trafficItem = new UIMenuCheckboxItem("Traffic", true); trafficItem.CheckboxEvent += (i, checkd) => { _raceSettings["Traffic"] = checkd; }; List<dynamic> tmpList = new List<dynamic>(); race.AvailableVehicles.ToList().ForEach(x => tmpList.Add(x)); var carItem = new UIMenuListItem("Vehicle", tmpList, 0); carItem.OnListChanged += (item, index) => { VehicleHash outHash; Enum.TryParse(item.IndexToItem(index).ToString(), out outHash); var oldC = _previewVehicle.PrimaryColor; _previewVehicle?.Delete(); _previewVehicle = World.CreateVehicle(Helpers.RequestModel((int) outHash), race.Trigger); if(_previewVehicle == null) return; _previewVehicle.PrimaryColor = oldC; _previewVehicle.SecondaryColor = oldC; _previewVehicle.IsPersistent = false; }; List<dynamic> colors = new List<dynamic> { VehicleColor.MatteYellow, VehicleColor.Orange, VehicleColor.MatteRed, VehicleColor.HotPink, VehicleColor.MattePurple, VehicleColor.MatteDarkBlue, VehicleColor.Blue, VehicleColor.EpsilonBlue, VehicleColor.MatteLimeGreen, VehicleColor.Green, }; var colorItem = new UIMenuListItem("Color", colors, 0); colorItem.OnListChanged += (ite, index) => { VehicleColor outHash; Enum.TryParse(ite.IndexToItem(index).ToString(), out outHash); _previewVehicle.PrimaryColor = outHash; _previewVehicle.SecondaryColor = outHash; }; var confimItem = new UIMenuItem("Start Race"); confimItem.Activated += (item, index) => { GUI.MainMenu.Visible = false; GUI.IsInMenu = false; Game.Player.CanControlCharacter = true; World.RenderingCamera = null; StartRace(race); }; GUI.MainMenu.OnMenuClose += menu => { World.RenderingCamera = null; GUI.IsInMenu = false; Game.Player.CanControlCharacter = true; _previewVehicle?.Delete(); }; GUI.MainMenu.AddItem(timeItem); GUI.MainMenu.AddItem(weatherItem); GUI.MainMenu.AddItem(copItem); GUI.MainMenu.AddItem(carItem); GUI.MainMenu.AddItem(colorItem); GUI.MainMenu.AddItem(opponentsItem); GUI.MainMenu.AddItem(trafficItem); if (race.LapsAvailable) { var lapList = new List<dynamic>(); Enumerable.Range(1, 20).ToList().ForEach(n => lapList.Add(n)); var lapItem = new UIMenuListItem("Laps", lapList, 0); lapItem.OnListChanged += (item, index) => { _raceSettings["Laps"] = item.IndexToItem(index); }; GUI.MainMenu.AddItem(lapItem); } GUI.MainMenu.AddItem(confimItem); GUI.MainMenu.RefreshIndex(); }
private void RedrawLists(string type) { Clear(); var typeList = _database.Select(pair => pair.Key).Cast<dynamic>().ToList(); var typeItem = new UIMenuListItem("Ammo Type", typeList, typeList.FindIndex(n => n.ToString() == type), "Select an ammo type to purchase."); AddItem(typeItem); typeItem.OnListChanged += (list, newindex) => { string newType = ((UIMenuListItem)MenuItems[0]).IndexToItem(((UIMenuListItem)MenuItems[0]).Index).ToString(); RedrawLists(newType); }; var weaponItem = new UIMenuListItem("Weapon", GetListForType(type), 0); AddItem(weaponItem); var buyRounds = new UIMenuItem("Rounds x 24"); buyRounds.SetRightLabel("113$"); var buyAllRounds = new UIMenuItem("Full Ammo"); buyRounds.SetRightLabel("113$"); buyRounds.Activated += (menu, item) => { Game.Player.Character.Weapons.Give((WeaponHash)Enum.Parse(typeof(WeaponHash), ((UIMenuListItem)MenuItems[1]).IndexToItem(((UIMenuListItem)MenuItems[1]).Index).ToString()), 24, false, false); }; buyAllRounds.Activated += (menu, item) => { Game.Player.Character.Weapons.Give((WeaponHash)Enum.Parse(typeof(WeaponHash), ((UIMenuListItem)MenuItems[1]).IndexToItem(((UIMenuListItem)MenuItems[1]).Index).ToString()), 9999, false, false); }; AddItem(buyRounds); AddItem(buyAllRounds); }
private void RedrawObjectInfoMenu(Entity ent, bool refreshIndex) { if(ent == null) return; string name = ""; if (Function.Call<bool>(Hash.IS_ENTITY_AN_OBJECT, ent.Handle)) { name = ObjectDatabase.MainDb.ContainsValue(ent.Model.Hash) ? ObjectDatabase.MainDb.First(x => x.Value == ent.Model.Hash).Key.ToUpper() : "Unknown Prop"; } if (Function.Call<bool>(Hash.IS_ENTITY_A_VEHICLE, ent.Handle)) name = ObjectDatabase.VehicleDb.ContainsValue(ent.Model.Hash) ? ObjectDatabase.VehicleDb.First(x => x.Value == ent.Model.Hash).Key.ToUpper() : "Unknown Vehicle"; if (Function.Call<bool>(Hash.IS_ENTITY_A_PED, ent.Handle)) name = ObjectDatabase.PedDb.ContainsValue(ent.Model.Hash) ? ObjectDatabase.PedDb.First(x => x.Value == ent.Model.Hash).Key.ToUpper() : "Unknown Ped"; _objectInfoMenu.Subtitle.Caption = "~b~" + name; _objectInfoMenu.Clear(); var posXitem = new UIMenuListItem(Translation.Translate("Position X"), _possiblePositions, (int)(Math.Round((ent.Position.X * 100) + _possibleRange))); var posYitem = new UIMenuListItem(Translation.Translate("Position Y"), _possiblePositions, (int)(Math.Round((ent.Position.Y * 100) + _possibleRange))); var posZitem = new UIMenuListItem(Translation.Translate("Position Z"), _possiblePositions, (int)(Math.Round((ent.Position.Z * 100) + _possibleRange))); var itemRot = ent.Quaternion.ToEuler(); var rotXitem = new UIMenuListItem(Translation.Translate("Pitch"), _possibleRoll, (int)Math.Round((itemRot.Y * 100 * -1) + 36000)); var rotYitem = new UIMenuListItem(Translation.Translate("Roll"), _possibleRoll, (int)Math.Round((itemRot.X * 100) + 36000)); var rotZitem = new UIMenuListItem(Translation.Translate("Yaw"), _possibleRoll, (int)Math.Round((itemRot.Z * 100) + 36000)); var dynamic = new UIMenuCheckboxItem(Translation.Translate("Dynamic"), !PropStreamer.StaticProps.Contains(ent.Handle)); dynamic.CheckboxEvent += (ite, checkd) => { if (checkd && PropStreamer.StaticProps.Contains(ent.Handle)) { PropStreamer.StaticProps.Remove(ent.Handle);} else if (!checkd && !PropStreamer.StaticProps.Contains(ent.Handle)) PropStreamer.StaticProps.Add(ent.Handle); ent.FreezePosition = PropStreamer.StaticProps.Contains(ent.Handle); }; var ident = new UIMenuItem("Identification", "Optional identification for easier access during scripting."); if (PropStreamer.Identifications.ContainsKey(ent.Handle)) ident.SetRightLabel(PropStreamer.Identifications[ent.Handle]); ident.Activated += (sender, item) => { if (PropStreamer.Identifications.ContainsKey(ent.Handle)) { var newLabel = Game.GetUserInput(PropStreamer.Identifications[ent.Handle], 20); if (PropStreamer.Identifications.ContainsValue(newLabel)) { UI.Notify(Translation.Translate("~r~~h~Map Editor~h~~w~~n~The identification must be unique!")); return; } if (newLabel.Length > 0 && (Regex.IsMatch(newLabel, @"^\d") || newLabel.StartsWith(".") || newLabel.StartsWith(",") || newLabel.StartsWith("\\"))) { UI.Notify(Translation.Translate("~r~~h~Map Editor~h~~w~~n~This identification is invalid!")); return; } PropStreamer.Identifications[ent.Handle] = newLabel; ident.SetRightLabel(newLabel); } else { var newLabel = Game.GetUserInput(20); if (PropStreamer.Identifications.ContainsValue(newLabel)) { UI.Notify(Translation.Translate("~r~~h~Map Editor~h~~w~~n~The identification must be unique!")); return; } if (newLabel.Length > 0 && (Regex.IsMatch(newLabel, @"^\d") || newLabel.StartsWith(".") || newLabel.StartsWith(",") || newLabel.StartsWith("\\"))) { UI.Notify(Translation.Translate("~r~~h~Map Editor~h~~w~~n~This identification is invalid!")); return; } PropStreamer.Identifications.Add(ent.Handle, newLabel); ident.SetRightLabel(newLabel); } }; _objectInfoMenu.AddItem(posXitem); _objectInfoMenu.AddItem(posYitem); _objectInfoMenu.AddItem(posZitem); _objectInfoMenu.AddItem(rotXitem); _objectInfoMenu.AddItem(rotYitem); _objectInfoMenu.AddItem(rotZitem); _objectInfoMenu.AddItem(dynamic); _objectInfoMenu.AddItem(ident); if (Function.Call<bool>(Hash.IS_ENTITY_AN_OBJECT, ent.Handle)) { var doorItem = new UIMenuCheckboxItem("Door", PropStreamer.Doors.Contains(ent.Handle), Translation.Translate("This option overrides the \"Dynamic\" setting.")); doorItem.CheckboxEvent += (sender, @checked) => { if (@checked) { PropStreamer.Doors.Add(ent.Handle); Function.Call(Hash.SET_ENTITY_DYNAMIC, ent.Handle, false); ent.FreezePosition = false; } else { PropStreamer.Doors.Remove(ent.Handle); var isDynamic = !PropStreamer.StaticProps.Contains(ent.Handle); Function.Call(Hash.SET_ENTITY_DYNAMIC, ent.Handle, isDynamic); ent.FreezePosition = !isDynamic; } }; _objectInfoMenu.AddItem(doorItem); } if (Function.Call<bool>(Hash.IS_ENTITY_A_PED, ent.Handle)) { List<dynamic> actions = new List<dynamic> {"None", "Any - Walk", "Any - Warp", "Wander"}; actions.AddRange(ObjectDatabase.ScrenarioDatabase.Keys); var scenarioItem = new UIMenuListItem(Translation.Translate("Idle Action"), actions, actions.IndexOf(PropStreamer.ActiveScenarios[ent.Handle])); scenarioItem.OnListChanged += (item, index) => { PropStreamer.ActiveScenarios[ent.Handle] = item.IndexToItem(index).ToString(); _changesMade++; }; scenarioItem.Activated += (item, index) => { if (PropStreamer.ActiveScenarios[ent.Handle] == "None") { ((Ped)ent).Task.ClearAll(); return; } if (PropStreamer.ActiveScenarios[ent.Handle] == "Any - Walk" || PropStreamer.ActiveScenarios[ent.Handle] == "Any") { Function.Call(Hash.TASK_USE_NEAREST_SCENARIO_TO_COORD, ent.Handle, ent.Position.X, ent.Position.Y, ent.Position.Z, 100f, -1); return; } if (PropStreamer.ActiveScenarios[ent.Handle] == "Any - Warp") { Function.Call(Hash.TASK_USE_NEAREST_SCENARIO_TO_COORD_WARP, ent.Handle, ent.Position.X, ent.Position.Y, ent.Position.Z, 100f, -1); return; } if (PropStreamer.ActiveScenarios[ent.Handle] == "Wander") { Function.Call(Hash.TASK_WANDER_STANDARD, ent.Handle, 0, 0); return; } string scenario = ObjectDatabase.ScrenarioDatabase[PropStreamer.ActiveScenarios[ent.Handle]]; if (Function.Call<bool>(Hash.IS_PED_USING_SCENARIO, ent.Handle, scenario)) ((Ped) ent).Task.ClearAll(); else { Function.Call(Hash.TASK_START_SCENARIO_IN_PLACE, ent.Handle, scenario, 0, 0); } }; _objectInfoMenu.AddItem(scenarioItem); List<dynamic> rels = new List<dynamic> { "Ballas", "Grove"}; Enum.GetNames(typeof(Relationship)).ToList().ForEach(rel => rels.Add(rel)); var relItem = new UIMenuListItem(Translation.Translate("Relationship"), rels, rels.IndexOf(PropStreamer.ActiveRelationships[ent.Handle])); relItem.OnListChanged += (item, index) => { PropStreamer.ActiveRelationships[ent.Handle] = item.IndexToItem(index).ToString(); _changesMade++; }; relItem.Activated += (item, index) => { ObjectDatabase.SetPedRelationshipGroup((Ped) ent, PropStreamer.ActiveRelationships[ent.Handle]); }; _objectInfoMenu.AddItem(relItem); List<dynamic> weps = new List<dynamic>(); Enum.GetNames(typeof(WeaponHash)).ToList().ForEach(rel => weps.Add(rel)); var wepItem = new UIMenuListItem(Translation.Translate("Weapon"), weps, weps.IndexOf(PropStreamer.ActiveWeapons[ent.Handle].ToString())); wepItem.OnListChanged += (item, index) => { PropStreamer.ActiveWeapons[ent.Handle] = Enum.Parse(typeof(WeaponHash), item.IndexToItem(index).ToString()); _changesMade++; }; wepItem.Activated += (item, index) => { ((Ped)ent).Weapons.RemoveAll(); if(PropStreamer.ActiveWeapons[ent.Handle] == WeaponHash.Unarmed) return; ((Ped) ent).Weapons.Give(PropStreamer.ActiveWeapons[ent.Handle], 999, true, true); }; _objectInfoMenu.AddItem(wepItem); } if (Function.Call<bool>(Hash.IS_ENTITY_A_VEHICLE, ent.Handle)) { var sirentBool = new UIMenuCheckboxItem(Translation.Translate("Siren"), PropStreamer.ActiveSirens.Contains(ent.Handle)); sirentBool.CheckboxEvent += (item, check) => { if (check && !PropStreamer.ActiveSirens.Contains(ent.Handle)) PropStreamer.ActiveSirens.Add(ent.Handle); else if (!check && PropStreamer.ActiveSirens.Contains(ent.Handle)) PropStreamer.ActiveSirens.Remove(ent.Handle); ((Vehicle) ent).SirenActive = check; _changesMade++; }; _objectInfoMenu.AddItem(sirentBool); } if (PropStreamer.IsPickup(ent.Handle)) { var pickup = PropStreamer.GetPickup(ent.Handle); var amountList = new UIMenuItem(Translation.Translate("Amount")); amountList.SetRightLabel(pickup.Amount.ToString()); amountList.Activated += (sender, item) => { string playerInput = Game.GetUserInput(10); int newValue; if (!int.TryParse(playerInput, out newValue) || newValue < -1) { UI.Notify("~r~~h~Map Editor~h~~n~~w~" + Translation.Translate("Input was not in the correct format.")); return; } pickup.SetAmount(newValue); amountList.SetRightLabel(pickup.Amount.ToString()); _selectedProp = new Prop(pickup.ObjectHandle); if (_settings.SnapCameraToSelectedObject) _mainCamera.PointAt(_selectedProp); }; _objectInfoMenu.AddItem(amountList); var pickupTypesList = Enum.GetValues(typeof (ObjectDatabase.PickupHash)).Cast<ObjectDatabase.PickupHash>().ToList(); var itemIndex = pickupTypesList.IndexOf((ObjectDatabase.PickupHash) pickup.PickupHash); var pickupTypeItem = new UIMenuListItem("Type", pickupTypesList.Select(s => (dynamic)(s.ToString())).ToList(), itemIndex); pickupTypeItem.OnListChanged += (sender, index) => { pickup.SetPickupHash((int)pickupTypesList[index]); _selectedProp = new Prop(pickup.ObjectHandle); if (_settings.SnapCameraToSelectedObject) _mainCamera.PointAt(_selectedProp); }; _objectInfoMenu.AddItem(pickupTypeItem); var timeoutTime = new UIMenuItem("Regeneration Time"); timeoutTime.SetRightLabel(pickup.Timeout.ToString()); timeoutTime.Activated += (sender, item) => { string playerInput = Game.GetUserInput(10); int newValue; if (!int.TryParse(playerInput, out newValue) || newValue < 0) { UI.Notify("~r~~h~Map Editor~h~~n~~w~" + Translation.Translate("Input was not in the correct format.")); return; } pickup.Timeout = newValue; timeoutTime.SetRightLabel((newValue).ToString()); }; _objectInfoMenu.AddItem(timeoutTime); } posXitem.Activated += (sender, item) => SetObjectVector(ent, posXitem, GetSafeFloat(Game.GetUserInput(ent.Position.X.ToString(CultureInfo.InvariantCulture), 10), ent.Position.X), ent.Position.Y, ent.Position.Z); posYitem.Activated += (sender, item) => SetObjectVector(ent, posYitem, ent.Position.X, GetSafeFloat(Game.GetUserInput(ent.Position.Y.ToString(CultureInfo.InvariantCulture), 10), ent.Position.Y), ent.Position.Z); posZitem.Activated += (sender, item) => SetObjectVector(ent, posZitem, ent.Position.X, ent.Position.Y, GetSafeFloat(Game.GetUserInput(ent.Position.Z.ToString(CultureInfo.InvariantCulture), 10), ent.Position.Z)); posXitem.OnListChanged += (item, index) => { if (!IsProp(ent) ) ent.Position = new Vector3((float) item.IndexToItem(index), ent.Position.Y, ent.Position.Z); else ent.PositionNoOffset = new Vector3((float)item.IndexToItem(index), ent.Position.Y, ent.Position.Z); if (PropStreamer.IsPickup(ent.Handle)) { PropStreamer.GetPickup(ent.Handle).UpdatePos(); } _changesMade++; }; posYitem.OnListChanged += (item, index) => { if (!IsProp(ent)) ent.Position = new Vector3(ent.Position.X, (float) item.IndexToItem(index), ent.Position.Z); else ent.PositionNoOffset = new Vector3(ent.Position.X, (float)item.IndexToItem(index), ent.Position.Z); if (PropStreamer.IsPickup(ent.Handle)) { PropStreamer.GetPickup(ent.Handle).UpdatePos(); } _changesMade++; }; posZitem.OnListChanged += (item, index) => { if (!IsProp(ent) ) ent.Position = new Vector3(ent.Position.X, ent.Position.Y, (float)item.IndexToItem(index)); else ent.PositionNoOffset = new Vector3(ent.Position.X, ent.Position.Y, (float)item.IndexToItem(index)); if (PropStreamer.IsPickup(ent.Handle)) { PropStreamer.GetPickup(ent.Handle).UpdatePos(); } _changesMade++; }; rotXitem.Activated += (sender, item) => { var rot = ent.Quaternion.ToEuler(); SetObjectRotation(ent, GetSafeFloat(Game.GetUserInput(rot.X.ToString(CultureInfo.InvariantCulture).Limit(10), 10), rot.X), rot.Y, rot.Z); }; rotYitem.Activated += (sender, item) => { var rot = ent.Quaternion.ToEuler(); SetObjectRotation(ent, rot.X, GetSafeFloat(Game.GetUserInput(rot.Y.ToString(CultureInfo.InvariantCulture).Limit(10), 10), rot.Y), rot.Z); }; rotZitem.Activated += (sender, item) => { var rot = ent.Quaternion.ToEuler(); SetObjectRotation(ent, rot.X, rot.Y, GetSafeFloat(Game.GetUserInput(rot.Z.ToString(CultureInfo.InvariantCulture).Limit(10), 10), rot.Z)); }; rotYitem.OnListChanged += (item, index) => { var change = (float)item.IndexToItem(index); ent.Quaternion = new Vector3(change, ent.Rotation.Y, ent.Rotation.Z).ToQuaternion(); _changesMade++; }; rotZitem.OnListChanged += (item, index) => { var change = (float) item.IndexToItem(index); ent.Quaternion = new Vector3(ent.Rotation.X, ent.Rotation.Y, change).ToQuaternion(); _changesMade++; }; rotXitem.OnListChanged += (item, index) => { var change = (float)item.IndexToItem(index); ent.Quaternion = new Vector3(ent.Rotation.X, change, ent.Rotation.Z).ToQuaternion(); _changesMade++; }; if (refreshIndex) _objectInfoMenu.RefreshIndex(); }
private void RedrawMetadataMenu() { _metadataMenu.Clear(); var saveItem = new UIMenuItem(Translation.Translate("Save Map")); saveItem.Activated += (sender, item) => { SaveMap(PropStreamer.CurrentMapMetadata.Filename, MapSerializer.Format.NormalXml); _metadataMenu.Visible = false; }; if (string.IsNullOrWhiteSpace(PropStreamer.CurrentMapMetadata.Filename)) { saveItem.Enabled = false; } { var filenameItem = new UIMenuItem(Translation.Translate("File Path")); if (string.IsNullOrWhiteSpace(PropStreamer.CurrentMapMetadata.Filename)) filenameItem.SetRightBadge(UIMenuItem.BadgeStyle.Alert); else filenameItem.SetRightLabel(GetSafeShortReverseString(PropStreamer.CurrentMapMetadata.Filename, 20)); filenameItem.Activated += (sender, item) => { var newName = Game.GetUserInput(PropStreamer.CurrentMapMetadata.Filename ?? "", 255); if (string.IsNullOrWhiteSpace(newName)) return; if (!newName.EndsWith(".xml")) newName += ".xml"; PropStreamer.CurrentMapMetadata.Filename = newName; saveItem.Enabled = true; filenameItem.SetRightBadge(UIMenuItem.BadgeStyle.None); filenameItem.SetRightLabel(GetSafeShortReverseString(newName, 20)); }; _metadataMenu.AddItem(filenameItem); } { var filenameItem = new UIMenuItem(Translation.Translate("Map Name")); if (!string.IsNullOrWhiteSpace(PropStreamer.CurrentMapMetadata.Name)) filenameItem.SetRightLabel(GetSafeShortString(PropStreamer.CurrentMapMetadata.Name, 20)); filenameItem.Activated += (sender, item) => { var newName = Game.GetUserInput(PropStreamer.CurrentMapMetadata.Name ?? "", 30); if (string.IsNullOrWhiteSpace(newName)) return; PropStreamer.CurrentMapMetadata.Name = newName; filenameItem.SetRightLabel(GetSafeShortString(newName, 20)); }; _metadataMenu.AddItem(filenameItem); } { var filenameItem = new UIMenuItem(Translation.Translate("Author")); if (!string.IsNullOrWhiteSpace(PropStreamer.CurrentMapMetadata.Creator)) filenameItem.SetRightLabel(GetSafeShortString(PropStreamer.CurrentMapMetadata.Creator, 20)); filenameItem.Activated += (sender, item) => { var newName = Game.GetUserInput(PropStreamer.CurrentMapMetadata.Creator ?? "", 30); if (string.IsNullOrWhiteSpace(newName)) return; PropStreamer.CurrentMapMetadata.Creator = newName; filenameItem.SetRightLabel(GetSafeShortString(newName, 20)); }; _metadataMenu.AddItem(filenameItem); } { var filenameItem = new UIMenuItem(Translation.Translate("Description")); if (!string.IsNullOrWhiteSpace(PropStreamer.CurrentMapMetadata.Description)) filenameItem.Description = PropStreamer.CurrentMapMetadata.Description; filenameItem.Activated += (sender, item) => { var newName = Game.GetUserInput(PropStreamer.CurrentMapMetadata.Description ?? "", 255); if (string.IsNullOrWhiteSpace(newName)) return; PropStreamer.CurrentMapMetadata.Description = newName; filenameItem.Description = newName; }; _metadataMenu.AddItem(filenameItem); } _metadataMenu.AddItem(saveItem); _metadataMenu.RefreshIndex(); if (saveItem.Enabled) _metadataMenu.CurrentSelection = 4; // TODO: Change this when adding items. }
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"); _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), "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 shutDown = new UIMenuItem("Shut Down", "Unload the mod"); shutDown.Activated += (sender, item) => { ShutDownRequested(this, new EventArgs()); }; _mainMenu.AddItem(shutDown); _mainMenu.RefreshIndex(); }
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); } }
/// <summary> /// Bind this button to an item, so it's only shown when that item is selected. /// </summary> /// <param name="item">Item to bind to.</param> public void BindToItem(UIMenuItem item) { ItemBind = item; }
public MapEditor() { Tick += OnTick; KeyDown += OnKeyDown; if (!Directory.Exists("scripts\\MapEditor")) Directory.CreateDirectory("scripts\\MapEditor"); ObjectDatabase.SetupRelationships(); LoadSettings(); try { Translation.Load("scripts\\MapEditor", _settings.Translation); } catch (Exception e) { UI.Notify("~b~~h~Map Editor~h~~w~~n~Failed to load translations. Falling back to English."); UI.Notify(e.Message); } _scaleform = new Scaleform(0); _scaleform.Load("instructional_buttons"); _objectInfoMenu = new UIMenu("", "~b~" + Translation.Translate("PROPERTIES"), new Point(0, -107)); _objectInfoMenu.ResetKey(UIMenu.MenuControls.Back); _objectInfoMenu.DisableInstructionalButtons(true); _objectInfoMenu.SetBannerType(new UIResRectangle(new Point(), new Size())); _menuPool.Add(_objectInfoMenu); ModManager.InitMenu(); _objectsMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("PLACE OBJECT")); ObjectDatabase.LoadFromFile("scripts\\ObjectList.ini", ref ObjectDatabase.MainDb); ObjectDatabase.LoadInvalidHashes(); ObjectDatabase.LoadFromFile("scripts\\PedList.ini", ref ObjectDatabase.PedDb); ObjectDatabase.LoadFromFile("scripts\\VehicleList.ini", ref ObjectDatabase.VehicleDb); _crosshairPath = Path.GetFullPath("scripts\\MapEditor\\crosshair.png"); _crosshairBluePath = Path.GetFullPath("scripts\\MapEditor\\crosshair_blue.png"); _crosshairYellowPath = Path.GetFullPath("scripts\\MapEditor\\crosshair_yellow.png"); if (!File.Exists("scripts\\MapEditor\\crosshair.png")) _crosshairPath = Sprite.WriteFileFromResources(Assembly.GetExecutingAssembly(), "MapEditor.crosshair.png", "scripts\\MapEditor\\crosshair.png"); if (!File.Exists("scripts\\MapEditor\\crosshair_blue.png")) _crosshairBluePath = Sprite.WriteFileFromResources(Assembly.GetExecutingAssembly(), "MapEditor.crosshair_blue.png", "scripts\\MapEditor\\crosshair_blue.png"); if (!File.Exists("scripts\\MapEditor\\crosshair_yellow.png")) _crosshairYellowPath = Sprite.WriteFileFromResources(Assembly.GetExecutingAssembly(), "MapEditor.crosshair_yellow.png", "scripts\\MapEditor\\crosshair_yellow.png"); RedrawObjectsMenu(); _objectsMenu.OnItemSelect += OnObjectSelect; _objectsMenu.OnIndexChange += OnIndexChange; _menuPool.Add(_objectsMenu); _objectsMenu.ResetKey(UIMenu.MenuControls.Back); _objectsMenu.AddInstructionalButton(new InstructionalButton(Control.SelectWeapon, Translation.Translate("Change Axis"))); _objectsMenu.AddInstructionalButton(new InstructionalButton(Control.MoveUpDown, Translation.Translate("Zoom"))); _objectsMenu.AddInstructionalButton(new InstructionalButton(Control.Jump, Translation.Translate("Search"))); _searchMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("PLACE OBJECT")); _searchMenu.OnItemSelect += OnObjectSelect; _searchMenu.OnIndexChange += OnIndexChange; _menuPool.Add(_searchMenu); _searchMenu.ResetKey(UIMenu.MenuControls.Back); _searchMenu.AddInstructionalButton(new InstructionalButton(Control.SelectWeapon, Translation.Translate("Change Axis"))); _searchMenu.AddInstructionalButton(new InstructionalButton(Control.MoveUpDown, Translation.Translate("Zoom"))); _searchMenu.AddInstructionalButton(new InstructionalButton(Control.Jump, Translation.Translate("Search"))); _mainMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("MAIN MENU")); _mainMenu.AddItem(new UIMenuItem(Translation.Translate("Enter/Exit Map Editor"))); _mainMenu.AddItem(new UIMenuItem(Translation.Translate("New Map"), Translation.Translate("Remove all current objects and start a new map."))); _mainMenu.AddItem(new UIMenuItem(Translation.Translate("Save Map"), Translation.Translate("Save all current objects to a file."))); _mainMenu.AddItem(new UIMenuItem(Translation.Translate("Load Map"), Translation.Translate("Load objects from a file and add them to the world."))); _mainMenu.RefreshIndex(); _mainMenu.DisableInstructionalButtons(true); _menuPool.Add(_mainMenu); _formatMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("SELECT FORMAT")); _formatMenu.DisableInstructionalButtons(true); _formatMenu.ParentMenu = _mainMenu; RedrawFormatMenu(); _menuPool.Add(_formatMenu); _metadataMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("SAVE MAP")); _metadataMenu.DisableInstructionalButtons(true); _metadataMenu.ParentMenu = _formatMenu; RedrawMetadataMenu(); _menuPool.Add(_metadataMenu); _filepicker = new UIMenu("Map Editor", "~b~" + Translation.Translate("PICK FILE")); _filepicker.DisableInstructionalButtons(true); _filepicker.ParentMenu = _formatMenu; _menuPool.Add(_filepicker); _mainMenu.OnItemSelect += (m, it, i) => { switch (i) { case 0: // Enter/Exit Map Editor IsInFreecam = !IsInFreecam; Game.Player.Character.FreezePosition = IsInFreecam; Game.Player.Character.IsVisible = !IsInFreecam; World.RenderingCamera = null; if (!IsInFreecam) { Game.Player.Character.Position -= new Vector3(0f, 0f, Game.Player.Character.HeightAboveGround - 1f); return; } World.DestroyAllCameras(); _mainCamera = World.CreateCamera(GameplayCamera.Position, GameplayCamera.Rotation, 60f); _objectPreviewCamera = World.CreateCamera(new Vector3(1200.016f, 3980.998f, 86.05062f), new Vector3(0f, 0f, 0f), 60f); World.RenderingCamera = _mainCamera; break; case 1: // New Map JavascriptHook.StopAllScripts(); PropStreamer.RemoveAll(); PropStreamer.Markers.Clear(); _currentObjectsMenu.Clear(); PropStreamer.Identifications.Clear(); PropStreamer.ActiveScenarios.Clear(); PropStreamer.ActiveRelationships.Clear(); PropStreamer.ActiveWeapons.Clear(); PropStreamer.Doors.Clear(); PropStreamer.CurrentMapMetadata = new MapMetadata(); ModManager.CurrentMod?.ModDisconnectInvoker(); ModManager.CurrentMod = null; foreach (MapObject o in PropStreamer.RemovedObjects) { var t = World.CreateProp(o.Hash, o.Position, o.Rotation, true, false); t.PositionNoOffset = o.Position; } PropStreamer.RemovedObjects.Clear(); _loadedEntities = 0; _changesMade = 0; _lastAutosave = DateTime.Now; UI.Notify("~b~~h~Map Editor~h~~w~~n~" + Translation.Translate("Loaded new map.")); break; case 2: if (ModManager.CurrentMod != null) { string filename = Game.GetUserInput(255); if (String.IsNullOrWhiteSpace(filename)) { UI.Notify("~r~~h~Map Editor~h~~n~~w~" + Translation.Translate("The filename was empty.")); return; } Map tmpMap = new Map(); tmpMap.Objects.AddRange(PropStreamer.GetAllEntities()); tmpMap.RemoveFromWorld.AddRange(PropStreamer.RemovedObjects); tmpMap.Markers.AddRange(PropStreamer.Markers); UI.Notify("~b~~h~Map Editor~h~~n~~w~" + Translation.Translate("Map sent to external mod for saving.")); ModManager.CurrentMod.MapSavedInvoker(tmpMap, filename); return; } _savingMap = true; _mainMenu.Visible = false; RedrawFormatMenu(); _formatMenu.Visible = true; break; case 3: _savingMap = false; _mainMenu.Visible = false; RedrawFormatMenu(); _formatMenu.Visible = true; break; } }; _formatMenu.OnItemSelect += (m, item, indx) => { if (_savingMap) { string filename = ""; if (indx != 0) filename = Game.GetUserInput(255); switch (indx) { case 0: // XML // TODO: Send to another menu _formatMenu.Visible = false; RedrawMetadataMenu(); _metadataMenu.Visible = true; break; case 1: // Objects.ini if (!filename.EndsWith(".ini")) filename += ".ini"; SaveMap(filename, MapSerializer.Format.SimpleTrainer); break; case 2: // C# if (!filename.EndsWith(".cs")) filename += ".cs"; SaveMap(filename, MapSerializer.Format.CSharpCode); break; case 3: // Raw if (!filename.EndsWith(".txt")) filename += ".txt"; SaveMap(filename, MapSerializer.Format.Raw); break; case 4: // SpoonerLegacy if (!filename.EndsWith(".SP00N")) filename += ".SP00N"; SaveMap(filename, MapSerializer.Format.SpoonerLegacy); break; case 5: // Menyoo if (!filename.EndsWith(".xml")) filename += ".xml"; SaveMap(filename, MapSerializer.Format.Menyoo); break; } } else { string filename = ""; if (indx != 4) filename = Game.GetUserInput(255); MapSerializer.Format tmpFor = MapSerializer.Format.NormalXml; switch (indx) { case 0: // XML tmpFor = MapSerializer.Format.NormalXml; break; case 1: // Objects.ini tmpFor = MapSerializer.Format.SimpleTrainer; break; case 2: // Spooner tmpFor = MapSerializer.Format.SpoonerLegacy; break; case 3: // Spooner tmpFor = MapSerializer.Format.Menyoo; break; case 4: // File picker _formatMenu.Visible = false; RedrawFilepickerMenu(); _filepicker.Visible = true; return; } LoadMap(filename, tmpFor); } _formatMenu.Visible = false; }; _settingsMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("SETTINGS")); for (int i = -_possibleRange; i <= _possibleRange; i++) { _possiblePositions.Add(i * 0.01); } for (int i = -36000; i <= 36000; i++) { _possibleRoll.Add(i * 0.01); } var possibleLangauges = new List<string> { "Auto" }; possibleLangauges.AddRange(Translation.Translations.Select(t => t.Language).ToList()); var language = new UIMenuListItem(Translation.Translate("Language"), possibleLangauges.Select(t => (dynamic) t).ToList(), possibleLangauges.IndexOf(_settings.Translation)); language.OnListChanged += (sender, index) => { var newLanguage = sender.IndexToItem(index).ToString(); Translation.SetLanguage(newLanguage); _settings.Translation = newLanguage; SaveSettings(); if (newLanguage == "Auto") { language.Description = "Use your game's language settings."; return; } var descFile = Translation.Translations.FirstOrDefault(t => t.Language == newLanguage); if (descFile == null) return; language.Description = "~h~" + Translation.Translate("Translator") + ":~h~ " + descFile.Translator; }; var checkem = new UIMenuListItem(Translation.Translate("Marker"), new List<dynamic>(Enum.GetNames(typeof(CrosshairType))), Enum.GetNames(typeof(CrosshairType)).ToList().FindIndex(x => x == _settings.CrosshairType.ToString())); checkem.OnListChanged += (i, indx) => { CrosshairType outHash; Enum.TryParse(i.IndexToItem(indx).ToString(), out outHash); _settings.CrosshairType = outHash; SaveSettings(); }; List<dynamic> autosaveList = new List<dynamic> {Translation.Translate("Disable")}; for (int i = 5; i <= 60; i += 5) { autosaveList.Add(i); } int aIndex = autosaveList.IndexOf(_settings.AutosaveInterval); if (aIndex == -1) aIndex = 0; var autosaveItem = new UIMenuListItem(Translation.Translate("Autosave Interval"), autosaveList, aIndex, Translation.Translate("Interval in minutes between automatic autosaves.")); autosaveItem.OnListChanged += (item, index) => { var sel = item.IndexToItem(index); _settings.AutosaveInterval = (sel as string) == Translation.Translate("Disable") ? -1 : Convert.ToInt32(item.IndexToItem(index), CultureInfo.InvariantCulture); SaveSettings(); }; List<dynamic> possibleDrawDistances = new List<dynamic> {Translation.Translate("Default"), 50, 75}; for (int i = 100; i <= 3000; i += 100) { possibleDrawDistances.Add(i); } int dIndex = possibleDrawDistances.IndexOf(_settings.DrawDistance); if (dIndex == -1) dIndex = 0; var drawDistanceItem = new UIMenuListItem(Translation.Translate("Draw Distance"), possibleDrawDistances, dIndex, Translation.Translate("Draw distance for props, vehicles and peds. Reload the map for changes to take effect.")); drawDistanceItem.OnListChanged += (item, index) => { var sel = item.IndexToItem(index); _settings.DrawDistance = (sel as string) == Translation.Translate("Default") ? -1 : Convert.ToInt32(item.IndexToItem(index), CultureInfo.InvariantCulture); SaveSettings(); }; List<dynamic> senslist = new List<dynamic>(); for (int i = 1; i < 60; i++) { senslist.Add(i); } var gamboy = new UIMenuListItem(Translation.Translate("Mouse Camera Sensitivity"), senslist, _settings.CameraSensivity - 1); gamboy.OnListChanged += (item, index) => { _settings.CameraSensivity = index + 1; SaveSettings(); }; var gampadSens = new UIMenuListItem(Translation.Translate("Gamepad Camera Sensitivity"), senslist, _settings.GamepadCameraSensitivity - 1); gampadSens.OnListChanged += (item, index) => { _settings.GamepadCameraSensitivity = index + 1; SaveSettings(); }; var keymovesens = new UIMenuListItem(Translation.Translate("Keyboard Movement Sensitivity"), senslist, _settings.KeyboardMovementSensitivity - 1); keymovesens.OnListChanged += (item, index) => { _settings.KeyboardMovementSensitivity = index + 1; SaveSettings(); }; var gammovesens = new UIMenuListItem(Translation.Translate("Gamepad Movement Sensitivity"), senslist, _settings.GamepadMovementSensitivity - 1); gammovesens.OnListChanged += (item, index) => { _settings.GamepadMovementSensitivity = index + 1; SaveSettings(); }; var butts = new UIMenuCheckboxItem(Translation.Translate("Instructional Buttons"), _settings.InstructionalButtons); butts.CheckboxEvent += (i, checkd) => { _settings.InstructionalButtons = checkd; SaveSettings(); }; var gamepadItem = new UIMenuCheckboxItem(Translation.Translate("Enable Gamepad Shortcut"), _settings.Gamepad); gamepadItem.CheckboxEvent += (i, checkd) => { _settings.Gamepad = checkd; SaveSettings(); }; var counterItem = new UIMenuCheckboxItem(Translation.Translate("Entity Counter"), _settings.PropCounterDisplay); counterItem.CheckboxEvent += (i, checkd) => { _settings.PropCounterDisplay = checkd; SaveSettings(); }; var snapper = new UIMenuCheckboxItem(Translation.Translate("Follow Object With Camera"), _settings.SnapCameraToSelectedObject); snapper.CheckboxEvent += (i, checkd) => { _settings.SnapCameraToSelectedObject = checkd; SaveSettings(); }; var boundItem = new UIMenuCheckboxItem(Translation.Translate("Bounding Box"), _settings.BoundingBox.GetValueOrDefault(false)); boundItem.CheckboxEvent += (i, checkd) => { _settings.BoundingBox = checkd; SaveSettings(); }; var scriptItem = new UIMenuCheckboxItem(Translation.Translate("Execute Scripts"), _settings.LoadScripts); scriptItem.CheckboxEvent += (i, checkd) => { _settings.LoadScripts = checkd; SaveSettings(); }; var validate = new UIMenuItem(Translation.Translate("Validate Object Database"),Translation.Translate( "This will update the current object database, removing any invalid objects. The changes will take effect after you restart the script." + " It will take a couple of minutes.")); validate.Activated += (men, item) => ValidateDatabase(); var resetGrps = new UIMenuItem(Translation.Translate("Reset Active Relationship Groups"), Translation.Translate("This will set all ped's relationship groups to Companion.")); resetGrps.Activated += (men, item) => { PropStreamer.Peds.ForEach(ped => ObjectDatabase.SetPedRelationshipGroup(new Ped(ped), "Companion")); }; var objectValidationItem = new UIMenuCheckboxItem(Translation.Translate("Skip Invalid Objects"), _settings.OmitInvalidObjects); objectValidationItem.CheckboxEvent += (i, checkd) => { _settings.OmitInvalidObjects = checkd; SaveSettings(); }; #if DEBUG var testItem = new UIMenuItem("Load Terrain"); testItem.Activated += (sender, item) => { if (!Game.IsWaypointActive) { Function.Call(Hash.CLEAR_HD_AREA); return; } var wpyPos = World.GetWaypointPosition(); Function.Call(Hash.SET_HD_AREA, wpyPos.X, wpyPos.Y, wpyPos.Z, 400f); }; _settingsMenu.AddItem(testItem); #endif _settingsMenu.AddItem(language); _settingsMenu.AddItem(gamepadItem); _settingsMenu.AddItem(drawDistanceItem); _settingsMenu.AddItem(autosaveItem); _settingsMenu.AddItem(checkem); _settingsMenu.AddItem(boundItem); _settingsMenu.AddItem(gamboy); _settingsMenu.AddItem(gampadSens); _settingsMenu.AddItem(keymovesens); _settingsMenu.AddItem(gammovesens); _settingsMenu.AddItem(butts); _settingsMenu.AddItem(counterItem); _settingsMenu.AddItem(snapper); _settingsMenu.AddItem(scriptItem); _settingsMenu.AddItem(objectValidationItem); _settingsMenu.AddItem(validate); _settingsMenu.AddItem(resetGrps); _settingsMenu.RefreshIndex(); _settingsMenu.DisableInstructionalButtons(true); _menuPool.Add(_settingsMenu); _currentObjectsMenu = new UIMenu("Map Editor", "~b~" + Translation.Translate("CURRENT ENTITES")); _currentObjectsMenu.OnItemSelect += OnEntityTeleport; _currentObjectsMenu.DisableInstructionalButtons(true); _menuPool.Add(_currentObjectsMenu); var binder = new UIMenuItem(Translation.Translate("Settings")); _currentEntitiesItem = new UIMenuItem(Translation.Translate("Current Entities")); var binder2 = new UIMenuItem(Translation.Translate("Create Map for External Mod")); _mainMenu.AddItem(_currentEntitiesItem); _mainMenu.AddItem(binder); _mainMenu.AddItem(binder2); _mainMenu.BindMenuToItem(_settingsMenu, binder); _mainMenu.BindMenuToItem(_currentObjectsMenu, _currentEntitiesItem); _mainMenu.BindMenuToItem(ModManager.ModMenu, binder2); _mainMenu.RefreshIndex(); _menuPool.Add(ModManager.ModMenu); }
public void OnEntityTeleport(UIMenu menu, UIMenuItem item, int index) { if (!IsInFreecam) return; if (item.Text.StartsWith("~h~[PICKUP]~h~")) { var uid = int.Parse(item.Description.Substring(7)); var pickup = PropStreamer.GetPickupByUID(uid); if (_settings.SnapCameraToSelectedObject) { _mainCamera.Position = pickup.RealPosition + new Vector3(5f, 5f, 10f); _mainCamera.PointAt(pickup.RealPosition); } _menuPool.CloseAllMenus(); Script.Wait(300); _selectedProp = new Prop(pickup.ObjectHandle); RedrawObjectInfoMenu(_selectedProp, true); _objectInfoMenu.Visible = true; return; } if (item.Text.StartsWith("~h~[WORLD]~h~ ")) { var mapObj = PropStreamer.RemovedObjects.FirstOrDefault(obj => obj.Id == item.Description); if(mapObj == null) return; var t = World.CreateProp(mapObj.Hash, mapObj.Position, mapObj.Rotation, true, false); t.PositionNoOffset = mapObj.Position; _menuPool.CloseAllMenus(); RemoveItemFromEntityMenu(mapObj.Id); PropStreamer.RemovedObjects.Remove(mapObj); return; } if (item.Text.StartsWith("~h~[MARK]~h~ ")) { Marker tmpM = PropStreamer.Markers.FirstOrDefault(m => item.Description == "marker-" + m.Id); if(tmpM == null) return; _mainCamera.Position = tmpM.Position + new Vector3(5f, 5f, 10f); if(_settings.SnapCameraToSelectedObject) _mainCamera.PointAt(tmpM.Position); _menuPool.CloseAllMenus(); _selectedMarker = tmpM; RedrawObjectInfoMenu(_selectedMarker, true); _objectInfoMenu.Visible = true; return; } var prop = new Prop(int.Parse(item.Description, CultureInfo.InvariantCulture)); if(!prop.Exists()) return; if (_settings.SnapCameraToSelectedObject) { _mainCamera.Position = prop.Position + new Vector3(5f, 5f, 10f); _mainCamera.PointAt(prop); } _menuPool.CloseAllMenus(); _selectedProp = prop; RedrawObjectInfoMenu(_selectedProp, true); _objectInfoMenu.Visible = true; }
private void OnObjectSelect(UIMenu sender, UIMenuItem item, int index) { int objectHash; if (PropStreamer.EntityCount == 0) _lastAutosave = DateTime.Now; _quitWithSearchVisible = _searchMenu.Visible; switch (_currentObjectType) { case ObjectTypes.Prop: objectHash = _searchMenu.Visible ? ObjectDatabase.MainDb[_searchMenu.MenuItems[_searchMenu.CurrentSelection].Text] : ObjectDatabase.MainDb[_objectsMenu.MenuItems[_objectsMenu.CurrentSelection].Text]; AddItemToEntityMenu(_snappedProp = PropStreamer.CreateProp(ObjectPreview.LoadObject(objectHash), VectorExtensions.RaycastEverything(new Vector2(0f, 0f)), new Vector3(0, 0, 0), false, force: true, drawDistance: _settings.DrawDistance)); break; case ObjectTypes.Vehicle: objectHash = _searchMenu.Visible ? ObjectDatabase.VehicleDb[_searchMenu.MenuItems[_searchMenu.CurrentSelection].Text] : ObjectDatabase.VehicleDb[_objectsMenu.MenuItems[_objectsMenu.CurrentSelection].Text]; AddItemToEntityMenu(_snappedProp = PropStreamer.CreateVehicle(ObjectPreview.LoadObject(objectHash), VectorExtensions.RaycastEverything(new Vector2(0f, 0f)), 0f, true, drawDistance: _settings.DrawDistance)); break; case ObjectTypes.Ped: objectHash = _searchMenu.Visible ? ObjectDatabase.PedDb[_searchMenu.MenuItems[_searchMenu.CurrentSelection].Text] : ObjectDatabase.PedDb[_objectsMenu.MenuItems[_objectsMenu.CurrentSelection].Text]; AddItemToEntityMenu(_snappedProp = PropStreamer.CreatePed(ObjectPreview.LoadObject(objectHash), VectorExtensions.RaycastEverything(new Vector2(0f, 0f)), 0f, true, drawDistance: _settings.DrawDistance)); PropStreamer.ActiveScenarios.Add(_snappedProp.Handle, "None"); PropStreamer.ActiveRelationships.Add(_snappedProp.Handle, DefaultRelationship.ToString()); PropStreamer.ActiveWeapons.Add(_snappedProp.Handle, WeaponHash.Unarmed); break; } _isChoosingObject = false; _objectsMenu.Visible = false; _searchMenu.Visible = false; _previewProp?.Delete(); _changesMade++; }
private void OnItemSelect(UIMenu sender, UIMenuItem selectedItem, int index) { #region SenderTeleport if (sender == teleportMenu) { switch (index) { case 2: Game.Player.Character.Position = GetWaypointCoords(); break; case 3: Game.Player.Character.Position = GetBlipCoords(40); break; case 4: Game.Player.Character.Position = GetBlipCoords(110); break; case 5: Game.Player.Character.Position = GetBlipCoords(313); break; case 6: Game.Player.Character.Position = GetBlipCoords(357); break; case 7: Game.Player.Character.Position = GetBlipCoords(71); break; } } #endregion #region SenderSpawnVehicle if (sender == spawnMenu) { if (index == 0) SpawnCar(VehicleHash.Adder, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 1) SpawnCar(VehicleHash.Airbus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 2) SpawnCar(VehicleHash.Airtug, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 3) SpawnCar(VehicleHash.Akuma, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 4) SpawnCar(VehicleHash.Ambulance, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 5) SpawnCar(VehicleHash.Annihilator, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 6) SpawnCar(VehicleHash.Asea, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 7) SpawnCar(VehicleHash.Asea2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 8) SpawnCar(VehicleHash.Asterope, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 9) SpawnCar(VehicleHash.Bagger, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 10) SpawnCar(VehicleHash.Baller, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 11) SpawnCar(VehicleHash.Baller2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 12) SpawnCar(VehicleHash.Banshee, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 13) SpawnCar(VehicleHash.Barracks, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 14) SpawnCar(VehicleHash.Barracks2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 15) SpawnCar(VehicleHash.Bati, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 16) SpawnCar(VehicleHash.Bati2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 17) SpawnCar(VehicleHash.Benson, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 18) SpawnCar(VehicleHash.BfInjection, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 19) SpawnCar(VehicleHash.Biff, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 20) SpawnCar(VehicleHash.Bison, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 21) SpawnCar(VehicleHash.Bison2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 22) SpawnCar(VehicleHash.Bison3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 23) SpawnCar(VehicleHash.BJXL, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 24) SpawnCar(VehicleHash.Blazer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 25) SpawnCar(VehicleHash.Blazer2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 26) SpawnCar(VehicleHash.Blazer3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 27) SpawnCar(VehicleHash.Blimp, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 28) SpawnCar(VehicleHash.Blista, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 29) SpawnCar(VehicleHash.Bmx, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 30) SpawnCar(VehicleHash.BobcatXL, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 31) SpawnCar(VehicleHash.Bodhi2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 32) SpawnCar(VehicleHash.Boxville, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 33) SpawnCar(VehicleHash.Boxville2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 34) SpawnCar(VehicleHash.Boxville3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 35) SpawnCar(VehicleHash.Buccaneer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 36) SpawnCar(VehicleHash.Buffalo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 37) SpawnCar(VehicleHash.Buffalo2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 38) SpawnCar(VehicleHash.Bulldozer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 39) SpawnCar(VehicleHash.Bullet, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 40) SpawnCar(VehicleHash.Burrito, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 41) SpawnCar(VehicleHash.Burrito2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 42) SpawnCar(VehicleHash.Burrito3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 43) SpawnCar(VehicleHash.Burrito4, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 44) SpawnCar(VehicleHash.Burrito5, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 45) SpawnCar(VehicleHash.Bus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 46) SpawnCar(VehicleHash.Buzzard, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 47) SpawnCar(VehicleHash.Buzzard2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 48) SpawnCar(VehicleHash.Caddy, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 49) SpawnCar(VehicleHash.Caddy2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 50) SpawnCar(VehicleHash.Camper, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 51) SpawnCar(VehicleHash.Carbonizzare, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 52) SpawnCar(VehicleHash.CarbonRS, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 53) SpawnCar(VehicleHash.Cargobob, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 54) SpawnCar(VehicleHash.Cargobob2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 55) SpawnCar(VehicleHash.Cargobob3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 56) SpawnCar(VehicleHash.CargoPlane, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 57) SpawnCar(VehicleHash.Cavalcade, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 58) SpawnCar(VehicleHash.Cavalcade2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 59) SpawnCar(VehicleHash.Cheetah, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 60) SpawnCar(VehicleHash.Coach, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 61) SpawnCar(VehicleHash.CogCabrio, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 62) SpawnCar(VehicleHash.Comet2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 63) SpawnCar(VehicleHash.Coquette, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 64) SpawnCar(VehicleHash.Cruiser, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 65) SpawnCar(VehicleHash.Crusader, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 66) SpawnCar(VehicleHash.Cuban800, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 67) SpawnCar(VehicleHash.Cutter, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 68) SpawnCar(VehicleHash.Daemon, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 69) SpawnCar(VehicleHash.Dilettante, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 70) SpawnCar(VehicleHash.Dilettante2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 71) SpawnCar(VehicleHash.Dinghy, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 72) SpawnCar(VehicleHash.Dinghy2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 73) SpawnCar(VehicleHash.DLoader, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 74) SpawnCar(VehicleHash.Docktug, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 75) SpawnCar(VehicleHash.Dominator, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 76) SpawnCar(VehicleHash.Double, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 77) SpawnCar(VehicleHash.Dubsta, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 78) SpawnCar(VehicleHash.Dubsta2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 79) SpawnCar(VehicleHash.Dump, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 80) SpawnCar(VehicleHash.Dune, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 81) SpawnCar(VehicleHash.Dune2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 82) SpawnCar(VehicleHash.Duster, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 83) SpawnCar(VehicleHash.Elegy2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 84) SpawnCar(VehicleHash.Emperor, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 85) SpawnCar(VehicleHash.Emperor2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 86) SpawnCar(VehicleHash.Emperor3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 87) SpawnCar(VehicleHash.EntityXF, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 88) SpawnCar(VehicleHash.Exemplar, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 89) SpawnCar(VehicleHash.F620, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 90) SpawnCar(VehicleHash.Faggio2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 91) SpawnCar(VehicleHash.FBI, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 92) SpawnCar(VehicleHash.FBI2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 93) SpawnCar(VehicleHash.Felon, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 94) SpawnCar(VehicleHash.Felon2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 95) SpawnCar(VehicleHash.Feltzer2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 96) SpawnCar(VehicleHash.FireTruck, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 97) SpawnCar(VehicleHash.Fixter, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 98) SpawnCar(VehicleHash.Flatbed, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 99) SpawnCar(VehicleHash.Forklift, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 100) SpawnCar(VehicleHash.Fq2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 101) SpawnCar(VehicleHash.Frogger, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 102) SpawnCar(VehicleHash.Frogger2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 103) SpawnCar(VehicleHash.Fugitive, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 104) SpawnCar(VehicleHash.Fusilade, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 105) SpawnCar(VehicleHash.Futo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 106) SpawnCar(VehicleHash.Gauntlet, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 107) SpawnCar(VehicleHash.GBurrito, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 108) SpawnCar(VehicleHash.Granger, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 109) SpawnCar(VehicleHash.Gresley, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 110) SpawnCar(VehicleHash.Habanero, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 111) SpawnCar(VehicleHash.Handler, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 112) SpawnCar(VehicleHash.Hauler, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 113) SpawnCar(VehicleHash.Hexer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 114) SpawnCar(VehicleHash.Hotknife, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 115) SpawnCar(VehicleHash.Infernus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 116) SpawnCar(VehicleHash.Ingot, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 117) SpawnCar(VehicleHash.Intruder, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 118) SpawnCar(VehicleHash.Issi2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 119) SpawnCar(VehicleHash.Jackal, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 120) SpawnCar(VehicleHash.JB700, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 121) SpawnCar(VehicleHash.Jet, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 122) SpawnCar(VehicleHash.Jetmax, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 123) SpawnCar(VehicleHash.Journey, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 124) SpawnCar(VehicleHash.Khamelion, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 125) SpawnCar(VehicleHash.Landstalker, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 126) SpawnCar(VehicleHash.Lazer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 127) SpawnCar(VehicleHash.Lguard, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 128) SpawnCar(VehicleHash.Luxor, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 129) SpawnCar(VehicleHash.Mammatus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 130) SpawnCar(VehicleHash.Manana, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 131) SpawnCar(VehicleHash.Marquis, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 132) SpawnCar(VehicleHash.Maverick, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 133) SpawnCar(VehicleHash.Mesa, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 134) SpawnCar(VehicleHash.Mesa2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 135) SpawnCar(VehicleHash.Mesa3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 136) SpawnCar(VehicleHash.Minivan, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 137) SpawnCar(VehicleHash.Mixer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 138) SpawnCar(VehicleHash.Mixer2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 139) SpawnCar(VehicleHash.Monroe, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 140) SpawnCar(VehicleHash.Mower, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 141) SpawnCar(VehicleHash.Mule, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 142) SpawnCar(VehicleHash.Mule2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 143) SpawnCar(VehicleHash.Nemesis, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 144) SpawnCar(VehicleHash.Ninef, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 145) SpawnCar(VehicleHash.Ninef2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 146) SpawnCar(VehicleHash.Oracle, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 147) SpawnCar(VehicleHash.Oracle2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 148) SpawnCar(VehicleHash.Packer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 149) SpawnCar(VehicleHash.Patriot, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 150) SpawnCar(VehicleHash.PBus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 151) SpawnCar(VehicleHash.PCJ, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 152) SpawnCar(VehicleHash.Penumbra, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 153) SpawnCar(VehicleHash.Peyote, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 154) SpawnCar(VehicleHash.Phantom, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 155) SpawnCar(VehicleHash.Phoenix, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 156) SpawnCar(VehicleHash.Picador, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 157) SpawnCar(VehicleHash.Police, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 158) SpawnCar(VehicleHash.Police2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 159) SpawnCar(VehicleHash.Police3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 160) SpawnCar(VehicleHash.Police4, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 161) SpawnCar(VehicleHash.Policeb, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 162) SpawnCar(VehicleHash.PoliceOld1, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 163) SpawnCar(VehicleHash.PoliceOld2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 164) SpawnCar(VehicleHash.PoliceT, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 165) SpawnCar(VehicleHash.Polmav, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 166) SpawnCar(VehicleHash.Pony, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 167) SpawnCar(VehicleHash.Pony2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 168) SpawnCar(VehicleHash.Pounder, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 169) SpawnCar(VehicleHash.Prairie, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 170) SpawnCar(VehicleHash.Pranger, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 171) SpawnCar(VehicleHash.Predator, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 172) SpawnCar(VehicleHash.Premier, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 173) SpawnCar(VehicleHash.Primo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 174) SpawnCar(VehicleHash.Radi, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 175) SpawnCar(VehicleHash.RancherXL, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 176) SpawnCar(VehicleHash.RancherXL2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 177) SpawnCar(VehicleHash.RapidGT, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 178) SpawnCar(VehicleHash.RapidGT2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 179) SpawnCar(VehicleHash.RatLoader, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 180) SpawnCar(VehicleHash.Rebel, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 181) SpawnCar(VehicleHash.Rebel2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 182) SpawnCar(VehicleHash.Regina, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 183) SpawnCar(VehicleHash.RentalBus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 184) SpawnCar(VehicleHash.Rhino, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 185) SpawnCar(VehicleHash.Riot, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 186) SpawnCar(VehicleHash.Ripley, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 187) SpawnCar(VehicleHash.Rocoto, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 188) SpawnCar(VehicleHash.Romero, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 189) SpawnCar(VehicleHash.Rubble, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 190) SpawnCar(VehicleHash.Ruffian, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 191) SpawnCar(VehicleHash.Ruiner, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 192) SpawnCar(VehicleHash.Rumpo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 193) SpawnCar(VehicleHash.Rumpo2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 194) SpawnCar(VehicleHash.SabreGT, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 195) SpawnCar(VehicleHash.Sadler, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 196) SpawnCar(VehicleHash.Sadler2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 197) SpawnCar(VehicleHash.Sanchez, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 198) SpawnCar(VehicleHash.Sanchez2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 199) SpawnCar(VehicleHash.Sandking, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 200) SpawnCar(VehicleHash.Sandking2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 201) SpawnCar(VehicleHash.Schafter2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 202) SpawnCar(VehicleHash.Schwarzer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 203) SpawnCar(VehicleHash.Scorcher, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 204) SpawnCar(VehicleHash.Scrap, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 205) SpawnCar(VehicleHash.Seashark, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 206) SpawnCar(VehicleHash.Seashark2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 207) SpawnCar(VehicleHash.Seminole, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 208) SpawnCar(VehicleHash.Sentinel, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 209) SpawnCar(VehicleHash.Sentinel2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 210) SpawnCar(VehicleHash.Serrano, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 211) SpawnCar(VehicleHash.Shamal, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 212) SpawnCar(VehicleHash.Sheriff, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 213) SpawnCar(VehicleHash.Sheriff2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 214) SpawnCar(VehicleHash.Skylift, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 215) SpawnCar(VehicleHash.Speedo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 216) SpawnCar(VehicleHash.Speedo2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 217) SpawnCar(VehicleHash.Squalo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 218) SpawnCar(VehicleHash.Stanier, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 219) SpawnCar(VehicleHash.Stinger, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 220) SpawnCar(VehicleHash.StingerGT, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 221) SpawnCar(VehicleHash.Stockade, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 222) SpawnCar(VehicleHash.Stockade3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 223) SpawnCar(VehicleHash.Stratum, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 224) SpawnCar(VehicleHash.Stretch, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 225) SpawnCar(VehicleHash.Stunt, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 226) SpawnCar(VehicleHash.Submersible, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 227) SpawnCar(VehicleHash.Sultan, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 228) SpawnCar(VehicleHash.Suntrap, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 229) SpawnCar(VehicleHash.Superd, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 230) SpawnCar(VehicleHash.Surano, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 231) SpawnCar(VehicleHash.Surfer, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 232) SpawnCar(VehicleHash.Surfer2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 233) SpawnCar(VehicleHash.Surge, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 234) SpawnCar(VehicleHash.Taco, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 235) SpawnCar(VehicleHash.Tailgater, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 236) SpawnCar(VehicleHash.TankerCar, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 237) SpawnCar(VehicleHash.Taxi, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 238) SpawnCar(VehicleHash.TipTruck, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 239) SpawnCar(VehicleHash.TipTruck2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 240) SpawnCar(VehicleHash.Titan, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 241) SpawnCar(VehicleHash.Tornado, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 242) SpawnCar(VehicleHash.Tornado2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 243) SpawnCar(VehicleHash.Tornado3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 244) SpawnCar(VehicleHash.Tornado4, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 245) SpawnCar(VehicleHash.Tourbus, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 246) SpawnCar(VehicleHash.TowTruck, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 247) SpawnCar(VehicleHash.TowTruck2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 248) SpawnCar(VehicleHash.Tractor, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 249) SpawnCar(VehicleHash.Tractor2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 250) SpawnCar(VehicleHash.Tractor3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 251) SpawnCar(VehicleHash.Trash, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 252) SpawnCar(VehicleHash.Tropic, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 253) SpawnCar(VehicleHash.UtilliTruck, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 254) SpawnCar(VehicleHash.UtilliTruck2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 255) SpawnCar(VehicleHash.UtilliTruck3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 256) SpawnCar(VehicleHash.Vacca, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 257) SpawnCar(VehicleHash.Vader, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 258) SpawnCar(VehicleHash.Velum, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 259) SpawnCar(VehicleHash.Vigero, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 260) SpawnCar(VehicleHash.Voltic, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 261) SpawnCar(VehicleHash.Voodoo2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 262) SpawnCar(VehicleHash.Washington, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 263) SpawnCar(VehicleHash.Youga, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 264) SpawnCar(VehicleHash.Zion, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 265) SpawnCar(VehicleHash.Zion2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 266) SpawnCar(VehicleHash.Ztype, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 267) SpawnCar(VehicleHash.Bifta, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 268) SpawnCar(VehicleHash.Kalahari, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 269) SpawnCar(VehicleHash.Paradise, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 270) SpawnCar(VehicleHash.Speeder, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 271) SpawnCar(VehicleHash.Alpha, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 272) SpawnCar(VehicleHash.Jester, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 273) SpawnCar(VehicleHash.Turismor, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 274) SpawnCar(VehicleHash.Vestra, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 275) SpawnCar(VehicleHash.Huntley, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 276) SpawnCar(VehicleHash.Massacro, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 277) SpawnCar(VehicleHash.Thrust, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 278) SpawnCar(VehicleHash.Zentorno, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 279) SpawnCar(VehicleHash.Blade, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 280) SpawnCar(VehicleHash.Dubsta3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 281) SpawnCar(VehicleHash.Glendale, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 282) SpawnCar(VehicleHash.Panto, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 283) SpawnCar(VehicleHash.Pigalle, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 284) SpawnCar(VehicleHash.Rhapsody, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 285) SpawnCar(VehicleHash.Warrener, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 286) SpawnCar(VehicleHash.Monster, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 287) SpawnCar(VehicleHash.Sovereign, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 288) SpawnCar(VehicleHash.Furoregt, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 289) SpawnCar(VehicleHash.Hakuchou, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 290) SpawnCar(VehicleHash.Innovation, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 291) SpawnCar(VehicleHash.Besra, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 292) SpawnCar(VehicleHash.Coquette2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 293) SpawnCar(VehicleHash.Miljet, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 294) SpawnCar(VehicleHash.Swift, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 295) SpawnCar(VehicleHash.BType, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 296) SpawnCar(VehicleHash.Blimp2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 297) SpawnCar(VehicleHash.Blista2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 298) SpawnCar(VehicleHash.Blista3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 299) SpawnCar(VehicleHash.Buffalo3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 300) SpawnCar(VehicleHash.Dodo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 301) SpawnCar(VehicleHash.Dominator2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 302) SpawnCar(VehicleHash.Dukes, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 303) SpawnCar(VehicleHash.Dukes2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 304) SpawnCar(VehicleHash.Gauntlet2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 305) SpawnCar(VehicleHash.Marshall, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 306) SpawnCar(VehicleHash.Stalion, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 307) SpawnCar(VehicleHash.Stalion2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 308) SpawnCar(VehicleHash.Submersible2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 309) SpawnCar(VehicleHash.Jester2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 310) SpawnCar(VehicleHash.Massacro2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 311) SpawnCar(VehicleHash.RatLoader2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 312) SpawnCar(VehicleHash.SlamVan, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 313) SpawnCar(VehicleHash.BType2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 314) SpawnCar(VehicleHash.Lurcher, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 315) SpawnCar(VehicleHash.Barracks3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 316) SpawnCar(VehicleHash.Boxville4, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 317) SpawnCar(VehicleHash.Casco, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 318) SpawnCar(VehicleHash.Dinghy3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 319) SpawnCar(VehicleHash.Enduro, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 320) SpawnCar(VehicleHash.GBurrito2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 321) SpawnCar(VehicleHash.Guardian, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 322) SpawnCar(VehicleHash.Hydra, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 323) SpawnCar(VehicleHash.Insurgent, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 324) SpawnCar(VehicleHash.Insurgent2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 325) SpawnCar(VehicleHash.Kuruma, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 326) SpawnCar(VehicleHash.Kuruma2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 327) SpawnCar(VehicleHash.Lectro, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 328) SpawnCar(VehicleHash.Mule3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 329) SpawnCar(VehicleHash.Savage, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 330) SpawnCar(VehicleHash.SlamVan2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 331) SpawnCar(VehicleHash.Technical, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 332) SpawnCar(VehicleHash.Trash2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 333) SpawnCar(VehicleHash.Valkyrie, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 334) SpawnCar(VehicleHash.Velum2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 335) SpawnCar(VehicleHash.Buccaneer2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 336) SpawnCar(VehicleHash.Chino2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 337) SpawnCar(VehicleHash.Faction, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 338) SpawnCar(VehicleHash.Faction2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 339) SpawnCar(VehicleHash.Moonbeam, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 340) SpawnCar(VehicleHash.Moonbeam2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 341) SpawnCar(VehicleHash.Primo2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 342) SpawnCar(VehicleHash.Voodoo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 343) SpawnCar(VehicleHash.Feltzer3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 344) SpawnCar(VehicleHash.Luxor2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 345) SpawnCar(VehicleHash.Osiris, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 346) SpawnCar(VehicleHash.Swift2, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 347) SpawnCar(VehicleHash.Virgo, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 348) SpawnCar(VehicleHash.Windsor, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 349) SpawnCar(VehicleHash.Brawler, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 350) SpawnCar(VehicleHash.Chino, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 351) SpawnCar(VehicleHash.Coquette3, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 352) SpawnCar(VehicleHash.T20, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 353) SpawnCar(VehicleHash.Toro, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); if (index == 354) SpawnCar(VehicleHash.Vindicator, (Game.Player.Character.Position + new Vector3(0f, 0f, 1f)), Game.Player.Character.Heading); } #endregion #region SenderGeneral if (sender == generalMenu) { switch (index) { case 1: Game.ShowSaveMenu(); break; } } #endregion #region SenderPlayer if (sender == playerMenu) { switch(index) { case 4: Game.Player.Money += 10000; UI.Notify("~HUD_COLOUR_BLUE~ You get 10000$"); break; case 7: Game.Player.Character.Health = 1000; UI.Notify("~HUD_COLOUR_BLUE~ You get full health"); break; case 8: Game.Player.Character.Armor = 1000; UI.Notify("~HUD_COLOUR_BLUE~ You get full armour"); break; } } #endregion #region SenderVehicle if (sender == carMenu) { Vehicle veh = Game.Player.Character.CurrentVehicle; switch(index) { case 1: veh.PlaceOnGround(); break; case 2: veh.DirtLevel = 0; break; case 4: Game.Player.Character.Task.DriveTo(veh, World.GetWaypointPosition(), 0f, 200, 55); break; case 5: Game.Player.Character.Task.ClearAll(); break; case 7: veh.Repair(); break; case 8: veh.OpenDoor(VehicleDoor.FrontLeftDoor, false, false); break; case 9: veh.OpenDoor(VehicleDoor.FrontRightDoor, false, false); break; case 10: veh.OpenDoor(VehicleDoor.BackLeftDoor, false, false); break; case 11: veh.OpenDoor(VehicleDoor.BackRightDoor, false, false); break; case 12: veh.OpenDoor(VehicleDoor.Hood, false, false); break; case 13: veh.OpenDoor(VehicleDoor.Trunk, false, false); break; case 14: veh.OpenDoor(VehicleDoor.Hood, false, false); veh.OpenDoor(VehicleDoor.BackRightDoor, false, false); veh.OpenDoor(VehicleDoor.BackLeftDoor, false, false); veh.OpenDoor(VehicleDoor.Trunk, false, false); veh.OpenDoor(VehicleDoor.FrontLeftDoor, false, false); veh.OpenDoor(VehicleDoor.FrontRightDoor, false, false); break; case 15: veh.CloseDoor(VehicleDoor.FrontLeftDoor, false); break; case 16: veh.CloseDoor(VehicleDoor.FrontRightDoor, false); break; case 17: veh.CloseDoor(VehicleDoor.BackLeftDoor, false); break; case 18: veh.CloseDoor(VehicleDoor.BackRightDoor, false); break; case 19: veh.CloseDoor(VehicleDoor.Hood, false); break; case 20: veh.CloseDoor(VehicleDoor.Trunk, false); break; case 21: veh.CloseDoor(VehicleDoor.Hood, false); veh.CloseDoor(VehicleDoor.BackRightDoor, false); veh.CloseDoor(VehicleDoor.BackLeftDoor, false); veh.CloseDoor(VehicleDoor.Trunk, false); veh.CloseDoor(VehicleDoor.FrontLeftDoor, false); veh.CloseDoor(VehicleDoor.FrontRightDoor, false); break; } } #endregion #region SenderTime if (sender == timeMenu) { if (index == 0) Function.Call(Hash.SET_TIME_SCALE,0.25); if (index == 1) Function.Call(Hash.SET_TIME_SCALE, 0.50); if (index == 2) Function.Call(Hash.SET_TIME_SCALE, 0.75); if (index == 3) Function.Call(Hash.SET_TIME_SCALE, 1.0); if (index == 4) Function.Call(Hash.SET_TIME_SCALE, 1.5); if (index == 5) SetTime(12, 0, 0); if (index == 6) SetTime(18, 0, 0); if (index == 7) SetTime(23, 0, 0); if (index == 8) SetTime(5, 0, 0); if (index == 9) SetTime(World.CurrentDayTime.Hours + 1, 0, 0); if (index == 10) SetTime(World.CurrentDayTime.Hours - 1, 0, 0); } #endregion #region SenderWeather if (sender == weatherMenu) { if (index == 0) World.Weather = Weather.Blizzard; if (index == 1) World.Weather = Weather.Christmas; if (index == 2) World.Weather = Weather.Clear; if (index == 3) World.Weather = Weather.Clearing; if (index == 4) World.Weather = Weather.Clouds; if (index == 5) World.Weather = Weather.ExtraSunny; if (index == 6) World.Weather = Weather.Foggy; if (index == 7) World.Weather = Weather.Neutral; if (index == 8) World.Weather = Weather.Overcast; if (index == 9) World.Weather = Weather.Raining; if (index == 10) World.Weather = Weather.Smog; if (index == 11) World.Weather = Weather.Snowing; if (index == 12) World.Weather = Weather.Snowlight; if (index == 13) World.Weather = Weather.ThunderStorm; } #endregion #region SenderWeapon if (sender == weaponMenu) { if (index == 0) Game.Player.Character.Weapons.Give(WeaponHash.Bat, 1, true, true); if (index == 1) Game.Player.Character.Weapons.Give(WeaponHash.Knife, 1, true, true); if (index == 2) Game.Player.Character.Weapons.Give(WeaponHash.Nightstick, 1, true, true); if (index == 3) Game.Player.Character.Weapons.Give(WeaponHash.Crowbar, 1, true, true); if (index == 4) Game.Player.Character.Weapons.Give(WeaponHash.GolfClub, 1, true, true); if (index == 5) Game.Player.Character.Weapons.Give(WeaponHash.Hammer, 1, true, true); if (index == 6) Game.Player.Character.Weapons.Give(WeaponHash.Bottle, 1, true, true); if (index == 7) Game.Player.Character.Weapons.Give(WeaponHash.Dagger, 1, true, true); if (index == 8) Game.Player.Character.Weapons.Give(WeaponHash.Hatchet, 1, true, true); if (index == 9) Game.Player.Character.Weapons.Give(WeaponHash.KnuckleDuster, 1, true, true); if (index == 10) Game.Player.Character.Weapons.Give(WeaponHash.Machete, 1, true, true); if (index == 11) Game.Player.Character.Weapons.Give(WeaponHash.Flashlight, 1, true, true); if (index == 12) Game.Player.Character.Weapons.Give(WeaponHash.Pistol, 1, true, true); if (index == 13) Game.Player.Character.Weapons.Give(WeaponHash.CombatPistol, 1, true, true); if (index == 14) Game.Player.Character.Weapons.Give(WeaponHash.APPistol, 1, true, true); if (index == 15) Game.Player.Character.Weapons.Give(WeaponHash.StunGun, 1, true, true); if (index == 16) Game.Player.Character.Weapons.Give(WeaponHash.Pistol50, 1, true, true); if (index == 17) Game.Player.Character.Weapons.Give(WeaponHash.SNSPistol, 1, true, true); if (index == 18) Game.Player.Character.Weapons.Give(WeaponHash.HeavyPistol, 1, true, true); if (index == 19) Game.Player.Character.Weapons.Give(WeaponHash.VintagePistol, 1, true, true); if (index == 20) Game.Player.Character.Weapons.Give(WeaponHash.FlareGun, 1, true, true); if (index == 21) Game.Player.Character.Weapons.Give(WeaponHash.MarksmanPistol, 1, true, true); if (index == 22) Game.Player.Character.Weapons.Give(WeaponHash.MicroSMG, 1, true, true); if (index == 23) Game.Player.Character.Weapons.Give(WeaponHash.SMG, 1, true, true); if (index == 24) Game.Player.Character.Weapons.Give(WeaponHash.AssaultSMG, 1, true, true); if (index == 25) Game.Player.Character.Weapons.Give(WeaponHash.CombatPDW, 1, true, true); if (index == 26) Game.Player.Character.Weapons.Give(WeaponHash.MachinePistol, 1, true, true); if (index == 27) Game.Player.Character.Weapons.Give(WeaponHash.PumpShotgun, 1, true, true); if (index == 28) Game.Player.Character.Weapons.Give(WeaponHash.SawnOffShotgun, 1, true, true); if (index == 29) Game.Player.Character.Weapons.Give(WeaponHash.AssaultShotgun, 1, true, true); if (index == 30) Game.Player.Character.Weapons.Give(WeaponHash.BullpupShotgun, 1, true, true); if (index == 31) Game.Player.Character.Weapons.Give(WeaponHash.Musket, 1, true, true); if (index == 32) Game.Player.Character.Weapons.Give(WeaponHash.HeavyShotgun, 1, true, true); if (index == 33) Game.Player.Character.Weapons.Give(WeaponHash.AssaultRifle, 1, true, true); if (index == 34) Game.Player.Character.Weapons.Give(WeaponHash.CarbineRifle, 1, true, true); if (index == 35) Game.Player.Character.Weapons.Give(WeaponHash.AdvancedRifle, 1, true, true); if (index == 36) Game.Player.Character.Weapons.Give(WeaponHash.SpecialCarbine, 1, true, true); if (index == 37) Game.Player.Character.Weapons.Give(WeaponHash.BullpupRifle, 1, true, true); if (index == 38) Game.Player.Character.Weapons.Give(WeaponHash.MG, 1, true, true); if (index == 39) Game.Player.Character.Weapons.Give(WeaponHash.CombatMG, 1, true, true); if (index == 40) Game.Player.Character.Weapons.Give(WeaponHash.Gusenberg, 1, true, true); if (index == 41) Game.Player.Character.Weapons.Give(WeaponHash.SniperRifle, 1, true, true); if (index == 42) Game.Player.Character.Weapons.Give(WeaponHash.HeavySniper, 1, true, true); if (index == 43) Game.Player.Character.Weapons.Give(WeaponHash.MarksmanRifle, 1, true, true); if (index == 44) Game.Player.Character.Weapons.Give(WeaponHash.RPG, 1, true, true); if (index == 45) Game.Player.Character.Weapons.Give(WeaponHash.GrenadeLauncher, 1, true, true); if (index == 46) Game.Player.Character.Weapons.Give(WeaponHash.GrenadeLauncherSmoke, 1, true, true); if (index == 47) Game.Player.Character.Weapons.Give(WeaponHash.Minigun, 1, true, true); if (index == 48) Game.Player.Character.Weapons.Give(WeaponHash.Firework, 1, true, true); if (index == 49) Game.Player.Character.Weapons.Give(WeaponHash.Railgun, 1, true, true); if (index == 50) Game.Player.Character.Weapons.Give(WeaponHash.HomingLauncher, 1, true, true); if (index == 51) Game.Player.Character.Weapons.Give(WeaponHash.Grenade, 1, true, true); if (index == 52) Game.Player.Character.Weapons.Give(WeaponHash.StickyBomb, 1, true, true); if (index == 53) Game.Player.Character.Weapons.Give(WeaponHash.SmokeGrenade, 1, true, true); if (index == 54) Game.Player.Character.Weapons.Give(WeaponHash.Molotov, 1, true, true); if (index == 55) Game.Player.Character.Weapons.Give(WeaponHash.ProximityMine, 1, true, true); if (index == 56) Game.Player.Character.Weapons.Give(WeaponHash.Snowball, 1, true, true); if (index == 57) Game.Player.Character.Weapons.Give(WeaponHash.BZGas, 1, true, true); if (index == 58) Game.Player.Character.Weapons.Give(WeaponHash.FireExtinguisher, 1, true, true); if (index == 59) Game.Player.Character.Weapons.Give(WeaponHash.PetrolCan, 1, true, true); if (index == 60) Game.Player.Character.Weapons.Give(WeaponHash.Digiscanner, 1, true, true); if (index == 61) Game.Player.Character.Weapons.Give(WeaponHash.Parachute, 1, true, true); } #endregion }
public CommunityRaces() { Tick += OnTick; int racesLoaded = LoadRaces(); _quitMenu = new UIMenu("", "~r~ARE YOU SURE YOU WANT TO QUIT?", new Point(0, -107)); var qitem = new UIMenuItem("Quit current race."); qitem.Activated += (item, index) => { if (_currentRace == null) return; _quitMenu.Visible = false; Game.FadeScreenOut(500); Wait(1000); Game.Player.Character.Position = _currentRace.Trigger; EndRace(); Game.FadeScreenIn(500); }; _quitMenu.AddItem(qitem); var citem = new UIMenuItem("Cancel."); citem.Activated += (item, index) => { _quitMenu.Visible = false; }; _quitMenu.AddItem(citem); _quitMenu.RefreshIndex(); _quitMenu.SetBannerType(new UIResRectangle()); foreach (Race race in _races) { var tmpBlip = World.CreateBlip(race.Trigger); tmpBlip.IsShortRange = true; tmpBlip.Sprite = BlipSprite.Race; } UI.Notify("~b~~h~Community Races~h~~n~~w~Loaded ~b~" + racesLoaded + "~w~ race(s)."); if (File.Exists("scripts\\MapEditor.dll")) AttachMapEditor(); }
private void RedrawFilepickerMenu(string folder = null) { if (folder == null) folder = Directory.GetCurrentDirectory(); _filepicker.Clear(); _filepicker.Subtitle.Caption = "~b~" + GetSafeShortReverseString(folder, 30); var backup = new UIMenuItem(".."); backup.SetLeftBadge(UIMenuItem.BadgeStyle.Franklin); backup.Activated += (sender, item) => { RedrawFilepickerMenu(Directory.GetParent(folder).ToString()); }; if (Directory.GetParent(folder) == null) backup.Enabled = false; _filepicker.AddItem(backup); foreach (var directory in Directory.EnumerateDirectories(folder)) { var dirItem = new UIMenuItem(GetSafeShortString(Path.GetFileName(directory), 40)); dirItem.SetLeftBadge(UIMenuItem.BadgeStyle.Franklin); dirItem.Activated += (sender, item) => { RedrawFilepickerMenu(directory); }; _filepicker.AddItem(dirItem); } foreach (var file in Directory.EnumerateFiles(folder)) { var item = new UIMenuItem(GetSafeShortString(Path.GetFileName(file), 40)); _filepicker.FormatDescriptions = false; MapSerializer.Format mapFormat = MapSerializer.Format.NormalXml; string description = ""; if (file.EndsWith(".ini")) { mapFormat = MapSerializer.Format.SimpleTrainer; } else if (file.EndsWith(".SP00N")) { mapFormat = MapSerializer.Format.SpoonerLegacy; } else if (file.EndsWith(".xml")) { mapFormat = MapSerializer.Format.NormalXml; Map map = null; try { var ser = new XmlSerializer(typeof(Map)); using (var stream = File.OpenRead(file)) map = (Map) ser.Deserialize(stream); } catch (Exception) {} if (map == null) { try { var spReader = new XmlSerializer(typeof(MenyooCompatibility.SpoonerPlacements)); MenyooCompatibility.SpoonerPlacements newMap = null; using (var stream = File.OpenRead(file)) newMap = (MenyooCompatibility.SpoonerPlacements)spReader.Deserialize(stream); if (newMap != null) { description = "~h~Format:~h~ Menyoo Trainer"; mapFormat = MapSerializer.Format.Menyoo; } } catch (Exception) { } } if (map != null && map.Metadata != null) { description = "~h~Format:~h~ Map Editor\n~h~Name:~h~ " + map.Metadata.Name + "\n~h~Author:~h~ " + map.Metadata.Creator + "\n" + FormatDescription("~h~Description:~h~ " + map.Metadata.Description); } } else { continue; } item.Description = description; item.Activated += (sender, selectedItem) => { _filepicker.Visible = false; LoadMap(file, mapFormat); }; _filepicker.AddItem(item); } _filepicker.RefreshIndex(); }
/// <summary> /// Bind this button to an item, so it's only shown when that item is selected. /// </summary> /// <param name="item">Item to bind to.</param> public void BindToItem(UIMenuItem item) { ItemBind = item; }
/// <summary> /// Remove menu binding from button with specific menu. /// </summary> /// <param name="menuToRelease">What menu to release</param> /// <param name="releaseFrom">Button to release from.</param> /// <returns>Returns true if the operation was successful.</returns> public bool ReleaseMenuFromItem(UIMenuItem releaseFrom, UIMenu menuToRelease) { if (!Children.ContainsKey(releaseFrom) || Children[releaseFrom] != menuToRelease) return false; menuToRelease.ParentItem = null; menuToRelease.ParentMenu = null; Children.Remove(releaseFrom); return true; }
public void ItemSelectHandler(UIMenu sender, UIMenuItem selectedItem, int index) { if (selectedItem.Text == "Spawn Delorean (DMC 12)") { Model Deloreanmodel = new Model("DMC12"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; } } if (selectedItem.Text == "Spawn Delorean (DMC 13)") { Model Deloreanmodel = new Model("DMC13"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; } } else if (selectedItem.Text == "Spawn Delorean (BTTF 1)") { Model Deloreanmodel = new Model("BTTF"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Deloreon.SetMod(VehicleMod.Frame, -1, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); TimeTravel.instantDelorean.CreateDeloreanfromcurrentcar(Deloreon, false); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; if (!Function.Call<bool>(Hash.IS_VEHICLE_EXTRA_TURNED_ON, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10 })) { Function.Call(Hash.SET_VEHICLE_EXTRA, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10, 0 }); } } } else if (selectedItem.Text == "Spawn Delorean (BTTF 2)") { Model Deloreanmodel = new Model("BTTF2"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Deloreon.SetMod(VehicleMod.Frame, -1, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); TimeTravel.instantDelorean.CreateDeloreanfromcurrentcar(Deloreon, true); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; if (!Function.Call<bool>(Hash.IS_VEHICLE_EXTRA_TURNED_ON, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10 })) { Function.Call(Hash.SET_VEHICLE_EXTRA, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10, 0 }); } } } else if (selectedItem.Text == "Spawn Delorean (BTTF 3)") { Model Deloreanmodel = new Model("BTTF3"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Deloreon.SetMod(VehicleMod.Frame, -1, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); TimeTravel.instantDelorean.CreateDeloreanfromcurrentcar(Deloreon, false); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; if (!Function.Call<bool>(Hash.IS_VEHICLE_EXTRA_TURNED_ON, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10 })) { Function.Call(Hash.SET_VEHICLE_EXTRA, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10, 0 }); } } } else if (selectedItem.Text == "Spawn Delorean (BTTF 3 railroad)") { Model Deloreanmodel = new Model("BTTF3rr"); if (Deloreanmodel.IsValid) { Vehicle Deloreon = null; Vector3 position = Game.Player.Character.Position; // At 90 degrees to the players heading float heading = Game.Player.Character.Heading - 90; while (Deloreon == null) Deloreon = World.CreateVehicle(Deloreanmodel, position, heading); Deloreon.Rotation = Game.Player.Character.Rotation; Deloreon.DirtLevel = 0; Deloreon.NumberPlate = "OutATime"; Deloreon.PlaceOnGround(); // Set the vehicle mods Function.Call(Hash.SET_VEHICLE_MOD_KIT, Deloreon.Handle, 0); Deloreon.ToggleMod(VehicleToggleMod.Turbo, true); Deloreon.SetMod(VehicleMod.Frame, -1, true); Game.Player.Character.Task.WarpIntoVehicle(Deloreon, VehicleSeat.Driver); TimeTravel.instantDelorean.CreateDeloreanfromcurrentcar(Deloreon, false); Deloreon.PrimaryColor = VehicleColor.BrushedAluminium; Deloreon.SecondaryColor = VehicleColor.BrushedAluminium; if (!Function.Call<bool>(Hash.IS_VEHICLE_EXTRA_TURNED_ON, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10 })) { Function.Call(Hash.SET_VEHICLE_EXTRA, new InputArgument[] { TimeTravel.instantDelorean.Deloreanlist[index].Deloreon, 10, 0 }); } } } else if (selectedItem.Text == "Turn current car into a Time Machine") { TimeTravel.instantDelorean.CreateDeloreanfromcurrentcar(Game.Player.Character.CurrentVehicle, false); } else if (selectedItem.Text == "Delete car") { TimeTravel.instantDelorean.RemoveDelorean(); } else if (selectedItem.Text == "Remove Time Travel from current car") { TimeTravel.instantDelorean.RemoveTimeCircuits(); } else if (selectedItem.Text == "Display Adjustment") { TimeTravel.Displayadjustment = true; Show(); } else if (selectedItem.Text.Contains("RC mode: ")) { if (!(TimeTravel.instantDelorean.Deloreanlist.Count == 0)) { TimeTravel.menu = false; myMenu.Visible = false; Variableclass.rcmode_send = true; } } else if (selectedItem.Text == "Play as Marty Mcfly") { UI.Notify("Not Avalible untill skins can be modded"); } else if (selectedItem.Text == "Play as Doc Brown") { UI.Notify("Not Avalible untill skins can be modded"); } else if (selectedItem.Text == "Tutorial mode") { startingscene.Start(); } else if (selectedItem.Text == "Exit") { TimeTravel.menu = false; myMenu.Visible = false; } }
private UIMenu main_menu() { main_m = new UIMenu("", "GTAV BUS MOD"); menu_p.Add(main_m); var mission_ = new UIMenuItem("Mission mod", "Click to start mission mod"); main_m.AddItem(mission_); var routes_ = new UIMenuItem("Routes mod", "Click to start routes mod"); main_m.AddItem(routes_); main_m.SetBannerType("scripts\\bus_mod.png"); main_m.Visible = !main_m.Visible; main_m.OnItemSelect += OnItemSelect; main_m.BindMenuToItem(mis_menu(), mission_); main_m.BindMenuToItem(route_menu(), routes_); main_m.RefreshIndex(); return main_m; }
/// <summary> /// Add an item to the menu. /// </summary> /// <param name="item">Item object to be added. Can be normal item, checkbox or list item.</param> public void AddItem(UIMenuItem item) { item.Offset = _offset; item.Parent = this; item.Position((MenuItems.Count * 25) - 37 + _extraYOffset); MenuItems.Add(item); RecaulculateDescriptionPosition(); }
//menu private UIMenu mis_menu() { mi_menu = new UIMenu("", "GTAV BUS MOD"); menu_p.Add(mi_menu); List<dynamic> mission_name = _get_mission_name(); var start_but = new UIMenuItem("Start", "Click to start mission."); mi_menu.AddItem(start_but); var _mission_list = new UIMenuListItem("Missions List", mission_name, 0, "Choose mission"); mi_menu.AddItem(_mission_list); var _cancel = new UIMenuItem("Cancel", "Cancel current mission"); _cancel.Enabled = false; mi_menu.AddItem(_cancel); if (_lock) { start_but.Enabled = false; _mission_list.Enabled = false; _cancel.Enabled = true; } mi_menu.SetBannerType("scripts\\bus_mod.png"); mi_menu.OnItemSelect += OnItemSelect; mi_menu.OnListChange += OnListChange; mi_menu.RefreshIndex(); return mi_menu; }
/// <summary> /// Remove menu binding from button. /// </summary> /// <param name="releaseFrom">Button to release from.</param> /// <returns>Returns true if the operation was successful.</returns> public bool ReleaseMenuFromItem(UIMenuItem releaseFrom) { if (!Children.ContainsKey(releaseFrom)) return false; Children[releaseFrom].ParentItem = null; Children[releaseFrom].ParentMenu = null; Children.Remove(releaseFrom); return true; }
private void RedrawObjectsMenu(ObjectTypes type = ObjectTypes.Prop) { _objectsMenu.Clear(); switch (type) { case ObjectTypes.Prop: foreach (var u in ObjectDatabase.MainDb) { var object1 = new UIMenuItem(u.Key); if(ObjectDatabase.InvalidHashes.Contains(u.Value)) object1.SetRightLabel("~r~Invalid"); _objectsMenu.AddItem(object1); } break; case ObjectTypes.Vehicle: foreach (var u in ObjectDatabase.VehicleDb) { var object1 = new UIMenuItem(u.Key); _objectsMenu.AddItem(object1); } break; case ObjectTypes.Ped: foreach (var u in ObjectDatabase.PedDb) { var object1 = new UIMenuItem(u.Key); _objectsMenu.AddItem(object1); } break; } _objectsMenu.RefreshIndex(); }