Ejemplo n.º 1
0
        public override void FireInternal()
        {
            var mine = new TimedMine(this, Delay);

            ProximityMineDropper.PlaceMineSafe(mine, Holder);
            SpaceTime.CurrentSpaceTime.Add(mine);
            mine.Exploded.SubscribeOnce(this.Exploded.Fire);
        }
Ejemplo n.º 2
0
        public override void FireInternal()
        {
            var ex = new Explosive(this);

            ex.SetProperty <Character>(nameof(Holder), this.Holder);
            ProximityMineDropper.PlaceMineSafe(ex, Holder);
            SpaceTime.CurrentSpaceTime.Add(ex);
        }
Ejemplo n.º 3
0
        public override void FireInternal(bool alt)
        {
            var mine = new ProximityMine(this)
            {
                TargetTag = TargetTag, Range = Range, AngleIncrement = AngleIncrement
            };

            mine.SetProperty(nameof(Holder), this.Holder);
            ProximityMineDropper.PlaceMineSafe(mine, Holder, !alt, Speed);
            SpaceTime.CurrentSpaceTime.Add(mine);
            OnWeaponElementEmitted.Fire(mine);
        }