Пример #1
0
    public void SetFuse(float timeToExplode)
    {
        FuseTimer t = HUDCameraScript.Instance.mobTimer;

        t.IsActive     = true;
        t.Monitor      = this;
        countdownTimer = timeToExplode;
    }
Пример #2
0
        public override void Delete()
        {
            //stop the fuse first, before beginning the delete process!
            if (_FuseTimer != null)
            {
                _FuseTimer.Stop();
                _FuseTimer = null;
            }

            base.Delete();
        }
Пример #3
0
		public void Explode( BlastDirection inhibitdirection )
		{

			if( _FuseTimer != null )
			{
				_FuseTimer.Stop();
				_FuseTimer = null;
			}
			
			if( BombBag != null )
			{
				BombBag.Bombs.Remove( this );
			}

			//sound effect of explosion
			Effects.PlaySound( Location, Map, Utility.RandomList( 0x11B, 0x305, 0x306, 0x307, 0x11C, 0x308, 0x11D, 0x309, 0x4CF, 0x11E, 0x207  ) );
			
			//bomb explosion graphics effect: 0x36CB
			Effects.SendLocationEffect( new Point3D( X + 1, Y + 1, Z ), Map, 0x36CB, 10 );
			
			//set off fire blowout
			foreach( int blastdirection in Enum.GetValues( typeof( BlastDirection ) ) )
			{
				BlastDirection curdirection = (BlastDirection)blastdirection;
				
				if( curdirection != BlastDirection.None && curdirection != inhibitdirection )
				{
					BombBlast blast = new BombBlast( Location, Map, curdirection, BombBag, Planter, _Strength - 1, _BaddaBoom != null );
				}
				
			}
			//check for damagable at spot
			if( BombBag != null && !BombBag.Deleted )
			{
				BombBag.ControlItem.CheckForMobileVictims( Location, Map, BombBag );
			}
			
			Delete();
		}
Пример #4
0
        public void Explode(BlastDirection inhibitdirection)
        {
            if (_FuseTimer != null)
            {
                _FuseTimer.Stop();
                _FuseTimer = null;
            }

            if (BombBag != null)
            {
                BombBag.Bombs.Remove(this);
            }

            //sound effect of explosion
            Effects.PlaySound(Location, Map,
                              Utility.RandomList(0x11B, 0x305, 0x306, 0x307, 0x11C, 0x308, 0x11D, 0x309, 0x4CF, 0x11E, 0x207));

            //bomb explosion graphics effect: 0x36CB
            Effects.SendLocationEffect(new Point3D(X + 1, Y + 1, Z), Map, 0x36CB, 10);

            //set off fire blowout
            foreach (int blastdirection in Enum.GetValues(typeof(BlastDirection)))
            {
                var curdirection = (BlastDirection)blastdirection;

                if (curdirection != BlastDirection.None && curdirection != inhibitdirection)
                {
                    var blast = new BombBlast(Location, Map, curdirection, BombBag, Planter, _Strength - 1,
                                              _BaddaBoom != null);
                }
            }
            //check for damagable at spot
            if (BombBag != null && !BombBag.Deleted)
            {
                BombBag.ControlItem.CheckForMobileVictims(Location, Map, BombBag);
            }

            Delete();
        }
Пример #5
0
		//start the timer for the explosion
		public void StartFuse()
		{
			_FuseTimer = new FuseTimer( this );
			_FuseTimer.Start();
		}
Пример #6
0
		public override void Delete()
		{
			//stop the fuse first, before beginning the delete process!
			if( _FuseTimer != null )
			{
				_FuseTimer.Stop();
				_FuseTimer = null;
			}
			
			base.Delete();
		}
Пример #7
0
 //start the timer for the explosion
 public void StartFuse()
 {
     _FuseTimer = new FuseTimer(this);
     _FuseTimer.Start();
 }
Пример #8
0
 void Start()
 {
     mobCountdownTimer = GetComponentInChildren <FuseTimer>();
 }
Пример #9
0
 void Start()
 {
     mobCountdownTimer = GetComponentInChildren<FuseTimer>();
 }