Пример #1
0
        protected override Vehicle spawnAirTraffic()
        {
            // randomly select a jet to spawn
            CustomWeaponJet selectedJet = _jets[rng.Next(0, _jets.Length)];

            // determine the position and orientation to spawn the vehicle
            Vector3 spawnPos     = getSpawnPosition();
            float   spawnHeading = (float)rng.NextDouble() * 360f;

            // spawn vehicle
            Vehicle veh = World.CreateVehicle(selectedJet.model, spawnPos, spawnHeading);

            if (veh == null)
            {
                string modelName = selectedJet.modelName;
                GTA.UI.Notification.Show("~r~Jet Intercept: unable to spawn vehicle: " + modelName);
                return(null);
            }

            // configure vehicle
            configureVehicle(veh);

            // spawn pilot in vehicle
            Ped pilot = spawnPilotInVehicle(veh);

            // give the pilot a task
            pilotTasking(veh, pilot);

            // if applicable, make pilot switch weapon
            if (selectedJet.weaponName != "")
            {
                bool pilotSwitchedWeapon = pilotSetVehicleWeapon(pilot, selectedJet.weaponHash);
                if (!pilotSwitchedWeapon)                               // if unsuccessful
                {
                    GTA.UI.Notification.Show("~r~Jet Intercept: pilot of " + selectedJet.modelName +
                                             " unable to switch to weapon " + selectedJet.weaponName);
                }
            }


            // draw blip on vehicle
            if (_drawBlip)
            {
                drawCustomBlip(veh);
            }

            return(veh);
        }
Пример #2
0
        protected CustomWeaponJet[] readCwjFromString(string models)
        {
            // split the string on comma delimiter, then generate hash from each model name
            List <string> modelStrings = models.Split(',').ToList();

            // custom weapons: split each modelString on colon ":"
            CustomWeaponJet[] cwj = new CustomWeaponJet[modelStrings.Count];
            for (int i = 0; i < modelStrings.Count; i++)
            {
                List <string> modelStringSplit = modelStrings[i].Trim().Split(':').ToList();
                cwj[i] = new CustomWeaponJet()
                {
                    modelString = modelStrings[i],
                    modelName   = modelStringSplit[0],
                    model       = Game.GenerateHash(modelStringSplit[0]),
                    weaponName  = modelStringSplit.Count >= 2 ? modelStringSplit[1] : "",
                    weaponHash  = modelStringSplit.Count >= 2 ? (Hash)Game.GenerateHash(modelStringSplit[1]) : (Hash)0
                };
            }

            return(cwj);
        }