Beispiel #1
0
        public void StartEntry(int entryPoint, Ped[] team)
        {
            switch (entryPoint)
            {
            case 0:     // Rappel
                Vector3[] helipads = new[]
                {
                    new Vector3(311.313f, -1466f, 46.9f),
                    new Vector3(299.75f, -1453f, 46.9f),
                };
                for (int i = 0; i < Convert.ToInt32(team.Length / 2); i++)
                {
                    var rappel = new RappelEntry(helipads[i], new Vector3(-92.5652f, -2362.343f, 31.9f));
                    var team2  = team.Reverse().ToList();
                    for (int d = 0 + (2 * i); d < 2 + (2 * i); d++)
                    {
                        Ped t = team2[d];
                        rappel.AddPassenger(t);
                    }
                    rappelUpdates.Add(rappel);
                }
                break;

            case 1:     //boat
                BadGuys[BadGuys.Count - 1].Character.Delete();
                BadGuys.RemoveAt(BadGuys.Count - 1);

                var boatModel = new Model(VehicleHash.Dinghy2);
                int counter   = 0;
                do
                {
                    boatModel.Request();
                    Script.Yield();
                    counter++;
                } while (!boatModel.IsLoaded && counter < 2000);

                var boat = World.CreateVehicle(boatModel, new Vector3(-253.971f, -2367.186f, -0.89f), 185.44f);
                boat.MarkAsNoLongerNeeded();
                CleanupBag.Add(boat);

                foreach (Ped t in team)
                {
                    t.Position = new Vector3(-249.4635f, -2366.84f, 9.319f);
                    t.Heading  = -180f;
                }
                EntryComplete = true;
                break;
            }
        }
Beispiel #2
0
        public void StartEntry(int entryPoint, Ped[] team)
        {
            switch (entryPoint)
            {
            case 0:     //boat
                BadGuys[BadGuys.Count - 1].Character.Delete();
                BadGuys.RemoveAt(BadGuys.Count - 1);

                var boatModel = new Model(VehicleHash.Dinghy2);
                int counter   = 0;
                do
                {
                    boatModel.Request();
                    //Script.Yield();
                    counter++;
                } while (!boatModel.IsLoaded && counter < 2000);

                var boat = World.CreateVehicle(boatModel, new Vector3(-2015.075f, -1040.253f, 0.5699487f), 341.2882f);
                boat.MarkAsNoLongerNeeded();
                boat.FreezePosition = true;
                CleanupBag.Add(boat);
                foreach (Ped t in team)
                {
                    t.Position = new Vector3(-2015.249f, -1041.006f, 2.072449f);
                    t.Heading  = 63.90365f;
                }
                EntryComplete = true;
                break;

            case 1:     // Rappel
                for (int i = 0; i < Convert.ToInt32(team.Length / 2); i++)
                {
                    var rappel = new RappelEntry(new Vector3(-1492.215f, -1230.166f, 2.87f).Around(20f), new Vector3(-2109.796f, -1009.942f, 22.83442f));
                    var team2  = team.Reverse().ToList();
                    for (int d = 0 + (2 * i); d < 2 + (2 * i); d++)
                    {
                        Ped t = team2[d];
                        rappel.AddPassenger(t);
                    }
                    rappelUpdates.Add(rappel);
                }
                break;
            }
        }