Example #1
0
        public void Handle(Chaos mod, String from, IEnumerable <String> rest)
        {
            var player = Game.Player.Character;

            if (player == null)
            {
                mod.ShowText($"{from} tried to enable matrix slam :(");
                return;
            }

            var entities = World.GetNearbyEntities(player.Position, 1000f);

            foreach (var entity in entities)
            {
                if (entity == player)
                {
                    continue;
                }

                if (entity is Ped)
                {
                    var ped = (Ped)entity;
                    mod.AddTicker(ped.Levitate(mod.Rnd, mod.AnonymousTimer(10f)));
                    continue;
                }

                if (entity is Vehicle)
                {
                    var vehicle = (Vehicle)entity;
                    mod.AddTicker(vehicle.Levitate(mod.Rnd, mod.AnonymousTimer(10f)));
                    continue;
                }
            }

            mod.AddUniqueTicker(TickerId.LevitatingEntities, new TimerTicker(mod.Timer("Levitating things", 10f)));
        }
Example #2
0
        public void Handle(Chaos mod, String from, IEnumerable <String> rest)
        {
            Ped player = Game.Player.Character;

            if (player == null)
            {
                mod.ShowText($"{from} tried to make EVERYONE attack you!");
                return;
            }

            var peds  = World.GetNearbyPeds(player.Position, 5000f);
            var count = 0;

            foreach (var ped in peds)
            {
                if (!ped.Exists() || !ped.IsHuman || !ped.IsAlive || ped == player)
                {
                    continue;
                }

                ped.NeverLeavesGroup  = true;
                ped.RelationshipGroup = mod.HateGroup.GroupId;

                // var blip = ped.AddBlip();
                // mod.AddTicker(new EnemyBlipTicker(blip, ped));

                ped.SetCombatAttributes(CombatAttributes.AlwaysFight, true);
                ped.SetCombatAttributes(CombatAttributes.CanFightArmedPedsWhenNotArmed, true);

                ped.Task.ClearAll();
                ped.Task.FightAgainst(player);

                count += 1;
            }

            if (count == 0)
            {
                mod.ShowText($"{from} tried to set pedestrians on you, but there are none :(");
                return;
            }

            var timer = mod.AnonymousTimer(30f);

            mod.AddUniqueTicker(TickerId.SuppressShocking, new SuppressShockingTicker(timer));
            mod.ShowText($"{from} set {count} pedestrians on you!");
        }
Example #3
0
        public void Handle(Chaos mod, String from, IEnumerable <String> rest)
        {
            Ped     player  = Game.Player.Character;
            Vehicle vehicle = player.CurrentVehicle;

            if (vehicle == null)
            {
                mod.ShowText($"{from} tried to cause your fuel tank to leak :(");
                return;
            }

            var initial = vehicle.FuelLevel / 100f;
            var timer   = mod.AnonymousTimer(30f * initial, 30f);
            var gauge   = mod.Gauge("Fuel Level");

            mod.AddTicker(new FuelLeakageTicker(vehicle, gauge, timer));
            mod.ShowText($"{from} caused your fuel tank to leak!");
        }
Example #4
0
        public void Handle(Chaos mod, String from, IEnumerable <String> rest)
        {
            var player = Game.Player.Character;

            if (player == null)
            {
                mod.ShowText($"{from} tried to enable matrix slam :(");
                return;
            }

            var entities = World.GetNearbyEntities(player.Position, 100f);

            var timer      = mod.AnonymousTimer(2f);
            var controller = new MatrixController(entities, player, timer);

            mod.AddTicker(controller);
            mod.ShowText($"{from} performed a matrix slam!");
        }