Ejemplo n.º 1
0
 public void IsHurtBad(bool willKill)
 {
     if (Hits < 15 || willKill)
     {
         BaseAttackHelperSE.SpillAcid(this, false);
     }
 }
Ejemplo n.º 2
0
        public override void OnThink()
        {
            if (DateTime.Now >= m_NextAbilityTime)
            {
                Mobile target = BaseAttackHelperSE.GetRandomAttacker(this, Yamandon.AbilityRange);

                if (target != null)
                {
                    BaseAttackHelperSE.SpillAcid(target, true);
                }

                m_NextAbilityTime = DateTime.Now + TimeSpan.FromSeconds(Utility.RandomMinMax(m_MinTime, m_MaxTime));
            }

            base.OnThink();
        }
Ejemplo n.º 3
0
		public override void OnThink()
		{
			double value;
			int i;

			if ( Hits != m_HitsLast )
			{
				if ( m_HitsLast != -1 )
				{
					for ( i = 0; i < m_Mods.Length; i++ )
					{
						RemoveResistanceMod( m_Mods[ i ] );
					}
				}

				for ( i = 0; i < m_Mods.Length; i++ )
				{
					value = ((double) (HitsMax - Hits))*((double) ((m_ResistMax[ i ] - m_Resist[ i ])/(double) HitsMax));

					m_Mods[ i ] = new ResistanceMod( (ResistanceType) i, m_Resist[ i ] + (int) value );
				}

				for ( i = 0; i < m_Mods.Length; i++ )
				{
					AddResistanceMod( m_Mods[ i ] );
				}

				m_HitsLast = Hits;
			}

			if ( DateTime.Now >= m_NextAbilityTime )
			{
				Mobile target = BaseAttackHelperSE.GetRandomAttacker( this, Yamandon.AbilityRange );

				if ( target != null )
				{
					BaseAttackHelperSE.SpillAcid( target, true );
				}

				m_NextAbilityTime = DateTime.Now + TimeSpan.FromSeconds( Utility.RandomMinMax( m_MinTime, m_MaxTime ) );
			}

			base.OnThink();
		}