public RandomTeleport(TargetingInfo effectWho,
                       EffectTypes harmfulEffectTypes,
                       EffectSounds effectSounds, float maxDistance)
     : base(effectWho, harmfulEffectTypes, effectSounds)
 {
     this.maxDistance = maxDistance;
 }
 public BackwardsTeleport(TargetingInfo effectWho,
                          EffectTypes harmfulEffectTypes,
                          EffectSounds effectSounds, float distance)
     : base(effectWho, harmfulEffectTypes, effectSounds)
 {
     this.distance = distance;
 }
 public RemoteActionEffect(TargetingInfo effectsWho,
                           EffectTypes effectTypes,
                           EffectSounds effectSounds,
                           IAction action)
     : base(effectsWho, effectTypes, effectSounds)
 {
     this.action = action;
 }
示例#4
0
 public ShipStateEffect(TargetingInfo effectsWho,
                        EffectTypes effectTypes,
                        EffectSounds effectSounds,
                        ShipStateChange ssc)
     : base(effectsWho, effectTypes | ssc.HarmfulEffectTypes, effectSounds)
 {
     this.ssc       = ssc;
     this.isHarmful = ssc.Energy < 0 || ssc.EnergyChangeRate < 0 || ssc.Health < 0 || ssc.HealthChangeRate < 0;
 }
示例#5
0
 public VuxSlowDownEffect(TargetingInfo effectsWho,
                          EffectTypes effectTypes,
                          EffectSounds effectSounds,
                          LifeSpan lifeTime,
                          ShipMovementInfoChange percents)
     : base(effectsWho, effectTypes, effectSounds, lifeTime, percents)
 {
     this.isHarmful = percents.MaxAngularAcceleration < 1 || percents.MaxAngularVelocity < 1 || percents.MaxLinearAcceleration < 1 || percents.MaxLinearVelocity < 1;
 }
 public MovementInfoEffect(TargetingInfo effectsWho,
                           EffectTypes effectTypes,
                           EffectSounds effectSounds,
                           LifeSpan lifeTime,
                           ShipMovementInfoChange smic)
     : base(effectsWho, effectTypes | smic.HarmfulEffectTypes, effectSounds, lifeTime)
 {
     this.smic      = smic;
     this.isHarmful = smic.MaxAngularAcceleration < 0 || smic.MaxAngularVelocity < 0 || smic.MaxLinearAcceleration < 0 || smic.MaxLinearVelocity < 0;
 }
 protected BaseEffect(BaseEffect copy)
 {
     this.exhausted          = copy.exhausted;
     this.harmfulEffectTypes = copy.harmfulEffectTypes;
     this.weaponInfo         = copy.weaponInfo;
     this.attachie           = copy.attachie;
     this.effectsWho         = copy.effectsWho;
     this.effectSounds       = copy.effectSounds;
     this.isHarmful          = copy.isHarmful;
 }
 public BaseProlongedEffect(TargetingInfo effectsWho,
                            EffectTypes harmfulEffectTypes,
                            EffectSounds effectSounds,
                            LifeSpan lifeTime)
     : base(effectsWho,
            harmfulEffectTypes,
            effectSounds)
 {
     this.lifeTime = lifeTime;
 }
        static void Initialize()
        {
            initialized = true;

            DefaultMovementInfo = new ShipMovementInfo(
                new Bounded <float>(0),
                new Bounded <float>(0),
                new Bounded <float>(0),
                new Bounded <float>(TimeWarp.ScaleVelocity(120)));
            DefaultDelay        = new Bounded <float>(TimeWarp.RateToTime(1));
            DefaultBuildUpDelay = new Bounded <float>(2);
            int length = 4;

            DefaultCost              = new Costs(new ShipStateChange(0, 5, 0, 0), new ShipStateChange(0, TimeWarp.RechargeRateToPerSeconds(4, 1), 0, 0), new ShipStateChange(0, 0, 0, 0));
            DefaultState             = new ShipState[length];
            DefaultLifeTimes         = new LifeSpan[length];
            DefaultEffectCollections = new EffectCollection[length];
            EffectSounds sounds = null;

            for (int pos = 0; pos < length; ++pos)
            {
                switch (pos)
                {
                case 1:
                    sounds = new EffectSounds();
                    break;

                case 2:
                    sounds = new EffectSounds("Boom35", null, null);
                    break;

                case 3:
                    sounds = new EffectSounds();
                    break;

                default:
                    sounds = new EffectSounds();
                    break;
                }
                DefaultEffectCollections[pos] = new EffectCollection();
                DefaultEffectCollections[pos].Effects.Add(new ShipStateEffect(TargetingInfo.All, EffectTypes.None, sounds, new ShipStateChange(-(float)Math.Pow(2, pos + 1), 0, 0, 0)));
                DefaultState[pos]     = new ShipState(new Bounded <float>((float)Math.Pow(2, pos + 1)), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0));
                DefaultLifeTimes[pos] = new LifeSpan(TimeWarp.RangeToTime(21 + 3 * pos, 112));
            }
            DefaultTargetingTypes = TargetingInfo.None;
            DefaultActionSounds   = new ActionSounds(null, null, "EnergyGun2");
        }
示例#10
0
    public void EffectSoundPlay(EffectSounds m_EffectSound)
    {
        if (!GameManager.Instance.Configure._isOnEffectSound)
        {
            return;
        }

#if UNITY_EDITOR
        if (m_ListEffectSound.ContainsKey(m_EffectSound))
        {
            m_Effect_Audio.PlayOneShot(m_ListEffectSound[m_EffectSound]);
        }
#elif UNITY_ANDROID
        if (m_ListEffectSound.ContainsKey(m_EffectSound))
        {
            m_ListEffectSound[m_EffectSound].Play();
        }
#endif
    }
 public MyconShipStateEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, ShipStateChange ssc)
     : base(effectsWho, harmfulEffectTypes, effectSounds, ssc)
 {
 }
 public BlockingSheild(TargetingInfo effectWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds,
                       LifeSpan lifeTime, EffectTypes blockedEffectTypes)
     : base(effectWho, harmfulEffectTypes, effectSounds, lifeTime)
 {
     this.blockedEffectTypes = blockedEffectTypes;
 }
示例#13
0
 public MedKitEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, float Health)
     : base(
         effectsWho, harmfulEffectTypes, effectSounds, new ShipStateChange(Health, 0, 0, 0))
 {
 }
 public EffectBlockEffect(EffectSounds effectSounds, LifeSpan lifeTime) : base(TargetingInfo.All, EffectTypes.None, effectSounds, lifeTime)
 {
 }
示例#15
0
 public BordingPartyEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, LifeSpan lifeTime, Bounded <float> damageDelay, float damageAmount)
     : base(effectsWho, harmfulEffectTypes | EffectTypes.Health, effectSounds, lifeTime)
 {
     this.damageDelay  = damageDelay;
     this.damageAmount = damageAmount;
 }
 public BaseFilterProlongedEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, LifeSpan lifeTime, EffectTypes filteredEffectTypes)
     : base(effectsWho, harmfulEffectTypes, effectSounds, lifeTime)
 {
     this.filteredEffectTypes = filteredEffectTypes;
 }
 public ControlerEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, LifeSpan lifeTime, IControler controler)
     : base(effectsWho, harmfulEffectTypes | EffectTypes.Controls, effectSounds, lifeTime)
 {
     this.controler = controler;
 }
示例#18
0
 public AbsorptionSheild(TargetingInfo effectWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds,
                         LifeSpan lifeTime, EffectTypes filteredEffectTypes,
                         float absorptionRatio)
     : base(effectWho, harmfulEffectTypes, effectSounds, lifeTime, filteredEffectTypes)
 {
     this.absorptionRatio = absorptionRatio;
 }
示例#19
0
 public PhysicsStateEffect(TargetingInfo effectWho,
                           EffectTypes harmfulEffectTypes,
                           EffectSounds effectSounds)
     : base(effectWho, harmfulEffectTypes, effectSounds)
 {
 }
 public BaseEffect(TargetingInfo effectsWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds)
 {
     this.effectsWho         = effectsWho;
     this.harmfulEffectTypes = harmfulEffectTypes;
     this.effectSounds       = effectSounds;
 }