static void Initialize() { initialized = true; InitShape(); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(0)), new Bounded <float>(8000), new Bounded <float>(TimeWarp.ScaleVelocity(25))); DefaultState = new ShipState(new Bounded <float>(1), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(0, 2, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(7)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(35, 25)); DefaultEffectCollection.Effects.Add( new VuxSlowDownEffect( DefaultTargetingTypes, EffectTypes.None, new EffectSounds("Bite", null, null), new LifeSpan(), new ShipMovementInfoChange(0, -.125f, -.125f, 0))); DefaultActionSounds = new ActionSounds("OrganicGun2", null, null); DefaultEffectCollection.AttachmentFlags |= EffectAttachmentFlags.WeaponExpires; }
static void Initialize() { initialized = true; InitShape(); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(3)), new Bounded <float>(TimeWarp.ScaleAcceleration(40, 4)), new Bounded <float>(TimeWarp.ScaleVelocity(40))); DefaultState = new ShipState(new Bounded <float>(3), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(1, 0, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(12)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(600, 80)); DefaultEffectCollection.Effects.Add(new MedKitEffect(new TargetingInfo(TargetingTypes.None, TargetingTypes.Ally | TargetingTypes.Ship, TargetingTypes.None), EffectTypes.None, new EffectSounds(), 1)); DefaultEffectCollection.ProlongedEffects.Add(new BordingPartyEffect( new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None), EffectTypes.Health, new EffectSounds("Intruder", "Zap", "Argh"), new LifeSpan(), new Bounded <float>(TimeWarp.RateToTime(7)), 1)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultActionSounds = new ActionSounds("Go", null, null); }
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(20)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(45, 120)); DefaultState = new ShipState(new Bounded <float>(99), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(0, 20, 0, 0), null, null); DefaultEffectCollection.ProlongedEffects.Add( new ControlerEffect( TargetingInfo.All, EffectTypes.Controls, new EffectSounds(), new LifeSpan(12), new ConfusionControler(new LifeSpan(12)) )); DefaultTargetingTypes = TargetingInfo.None; DefaultActionSounds = new ActionSounds("EnergyGun2", null, null); }
public BuildUpGunAction( Bounded <float> delay, TargetingInfo targetableTypes, Costs costs, bool needsTarget, ActionSounds actionSounds, Bounded <float> buildUpDelay, float velocityAngle, float offsetAngle, ISolidWeapon[] weapons) : base(delay, targetableTypes, costs, needsTarget, actionSounds) { this.buildUpDelay = buildUpDelay; this.velocityAngle = velocityAngle; this.offsetAngle = offsetAngle; this.weapons = weapons; this.maxBoundingRadius = 0; this.stage = 0; this.stageCount = weapons.Length; foreach (ISolidWeapon weapon in weapons) { maxBoundingRadius = MathHelper.Max(maxBoundingRadius, weapon.BoundingRadius); } this.aIInfo = new BuildUpGunActionAIInfo(null); }
static void Initialize() { initialized = true; DefaultTargetingTypes = TargetingInfo.None; DefaultEffectsWho = DefaultTargetingTypes; InitShape(); DefaultState = new ShipState(new Bounded <float>(99), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultMovementInfo = new ShipMovementInfo(new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(TimeWarp.ScaleVelocity(20))); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(5, 20)); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(9)); DefaultCost = new Costs(new ShipStateChange(0, 21, 0, 0), null, null); DefaultEffectCollection.Effects.Add(new ShipStateEffect(DefaultEffectsWho, EffectTypes.None, new EffectSounds(), new ShipStateChange(-3, 0, 0, 0))); DefaultActionSounds = new ActionSounds("FlameThrower2", null, null); DefaultOffsetAngles = new float[anglecount]; DefaultVelocityAngles = new float[anglecount]; float da = (2 * MathHelper.PI) / (float)anglecount; int pos = 0; for (float angle = 0; angle < 2 * MathHelper.PI; angle += da, pos++) { DefaultOffsetAngles[pos] = angle; DefaultVelocityAngles[pos] = angle; } }
static void Initialize() { initialized = true; InitShape(); 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(4)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(20, 120)); DefaultState = new ShipState(new Bounded <float>(3), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(0, 6, 0, 0), null, null); DefaultEffectCollection.Effects.Add( new ShipStateEffect( TargetingInfo.All, EffectTypes.None, new EffectSounds("Boom23", null, null), new ShipStateChange(-3, 0, 0, 0))); DefaultTargetingTypes = TargetingInfo.None; DefaultActionSounds = new ActionSounds("Gun2", null, null); }
static void Initialize() { initialized = true; DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultEffectsWho = new TargetingInfo(TargetingTypes.Enemy | TargetingTypes.Debris); InitShape(); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(TimeWarp.ScaleVelocity(64))); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultLifeTime = new LifeSpan(20); SubDefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(9, 64)); DefaultState = new ShipState(new Bounded <float>(6), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); SubDefaultState = new ShipState(new Bounded <float>(2), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(0, 5, 0, 0), new ShipStateChange(), new ShipStateChange()); DefaultEffectCollection.Effects.Add(new ShipStateEffect(DefaultEffectsWho, EffectTypes.None, new EffectSounds(), new ShipStateChange(-6, 0, 0, 0))); SubDefaultEffectCollection.Effects.Add(new ShipStateEffect(DefaultEffectsWho, EffectTypes.None, new EffectSounds(), new ShipStateChange(-2, 0, 0, 0))); DefaultActionSounds = new ActionSounds("Crystal", null, "GlassBreak"); }
static void Initialize() { initialized = true; DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(4)), new Bounded <float>(TimeWarp.ScaleAcceleration(2, 1)), new Bounded <float>(TimeWarp.ScaleVelocity(28))); DefaultState = new ShipState(new Bounded <float>(1), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(2.8f, 28)); DefaultCost = new Costs(new ShipStateChange(0, 1, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultInitialRadius = 3; DefaultExpansionRate = 5 + TimeWarp.ScaleRange(5); DefaultMass = .1f; DefaultEffectCollection.Effects.Add(new ShipStateEffect(TargetingInfo.All, EffectTypes.None, new EffectSounds(), new ShipStateChange(-1, 0, 0, 0))); DefaultActionSounds = new ActionSounds("FlameThrower", null, "Uncloak"); }
static void Initialize() { initialized = true; InitShape(); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(9)), new Bounded <float>(10000), new Bounded <float>(TimeWarp.ScaleVelocity(80))); DefaultState = new ShipState(new Bounded <float>(1), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultCost = new Costs(new ShipStateChange(0, 1, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(20)); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(50, 80)); DefaultEffectCollection.Effects.Add( new ShipStateEffect( TargetingInfo.All, EffectTypes.None, new EffectSounds("Boom1", null, null), new ShipStateChange(-1, 0, 0, 0))); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Other | TargetingTypes.Ship, TargetingTypes.None); DefaultEffectsWho = TargetingInfo.All; DefaultActionSounds = new ActionSounds("MissileLaunch2", null, null); }
static void Initialize() { initialized = true; DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(TimeWarp.ScaleAcceleration(30, 0)), new Bounded <float>(TimeWarp.ScaleVelocity(80))); DefaultState = new ShipState(new Bounded <float>(2), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultLifeTime = new LifeSpan(3); DefaultCost = new Costs(new ShipStateChange(0, 1, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = TargetingInfo.None; DefaultInitialRadius = 20; DefaultExpansionRate = 6; DefaultMass = .8f; DefaultEffectCollection.Effects.Add( new ShipStateEffect( TargetingInfo.All, EffectTypes.None, new EffectSounds("Boom23", null, null), new ShipStateChange(-2, 0, 0, 0))); DefaultActionSounds = new ActionSounds("FlameThrower3", null, null); }
protected TransformAction(TransformAction copy) : base(copy) { this.mirrorActionSounds = copy.mirrorActionSounds;; this.mirrorShip = (IShip)copy.mirrorShip;; this.recosts = copy.recosts; this.zeroVelocity = copy.zeroVelocity; }
public JumpShipEffect(TargetingInfo effectsWho, int count, ActionSounds actionSounds) : base( effectsWho, EffectTypes.HealthSteal, new EffectSounds(), new JumpShipAction(count, actionSounds)) { }
static void Initialize() { initialized = true; DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Self); DefaultActionSounds = new ActionSounds("Transform", null, null); }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(0, 0, 0, 0), null, null); DefaultDelay = new Bounded <float>(0); DefaultTargetingTypes = TargetingInfo.None; DefaultActionSounds = new ActionSounds(); }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(0, 2, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Self); DefaultActionSounds = new ActionSounds("EchoBoom", null, null); }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(0, 3, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(7)); DefaultTargetingTypes = TargetingInfo.None; DefaultActionSounds = new ActionSounds("Cloak", null, "Uncloak"); }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(-4, 40, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(30)); DefaultTargetingTypes = TargetingInfo.None; DefaultActionSounds = new ActionSounds("DeepBirdCall", null, null); }
public InstantAction( Bounded <float> delay, TargetingInfo targetableTypes, Costs costs, ActionSounds actionSounds, IWeapon weapon) : base(delay, targetableTypes, costs, true, actionSounds) { this.weapon = weapon; }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(1, 4, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(9)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultEffectsWho = new TargetingInfo(TargetingTypes.All, TargetingTypes.None, TargetingTypes.None); DefaultActionSounds = new ActionSounds("launchFighters", null, null); }
static void Initialize() { initialized = true; //what the weapon can effect. DefaultEffectsWho = new TargetingInfo( TargetingTypes.None, //must be ANY one of these. TargetingTypes.None, //must be ALL of these. TargetingTypes.Ally //must be NONE of these. ); //Note: about TargetingInfo. if a parameter is set to TargetingTypes.None then it is not applied. //what the weapon can target. DefaultTargetingTypes = new TargetingInfo( TargetingTypes.None, //must be ANY one of these. TargetingTypes.Enemy, //must be ALL of these. TargetingTypes.None //must be NONE of these. ); //Note: about TargetingInfo. if the ANY or the ALL parameter has only one //and the other one is set to TargetingTypes.None then they can be //swaped and still act the same. //what the action cost. DefaultCost = new Costs( new ShipStateChange( // the cost for it to activate. 0, //the cost in health. 2, //the cost in energy. 0, //the cost in health recharge rate. 0), //the cost in energy recharge rate. null, // the cost in per seconds for it to run. If null then it has no running logic. null // the cost for it to deactivate. If null then it has no deactivate logic. ); //what the weapon does on contact. DefaultEffectCollection.Effects.Add( new ShipStateEffect( //Its a ShipState effect so it can effect health or energy or the recharge of both. DefaultEffectsWho, //what the weapon can effect. EffectTypes.None, //extra info about what effects the effect does. usualy is EffectTypes.None new EffectSounds(), //the sounds assoiated with the effect. right now it has none. new ShipStateChange( // the change it cuases. -1, //change in health. 0, //change in energy. 0, //change in health's recharge rate. 0) //change in energy's recharge rate. ) ); //The amount of time to wait before the action can be triggered again. DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(1)); //The sounds associated with the Action. DefaultActionSounds = new ActionSounds( "Laser5", // the sound played on activation. null, // the sound played on running. null); // the sound played on deactivation. }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(0, 2, 0, 0), null, null); DefaultRange = TimeWarp.ScaleRange(120); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultImpulse = -25000; DefaultActionSounds = new ActionSounds("TractorBeam", null, null); }
static void Initialize() { initialized = true; DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Debris); DefaultEffectsWho = DefaultTargetingTypes; DefaultCost = new Costs(new ShipStateChange(0, 0, 0, 0), null, null); DefaultEffectCollection.Effects.Add(new ShipStateEffect(DefaultEffectsWho, EffectTypes.None, new EffectSounds(), new ShipStateChange(-1, 0, 0, 0))); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(2)); DefaultActionSounds = new ActionSounds("Energize", null, null); }
static void Initialize() { initialized = true; DefaultEffectsWho = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Ship | TargetingTypes.Enemy, TargetingTypes.None); DefaultCost = new Costs(new ShipStateChange(0, 5, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(20)); DefaultActionSounds = new ActionSounds("SirensCall", null, null); DefaultEffectCollection.Effects.Add(new JumpShipEffect(DefaultEffectsWho, 5, new ActionSounds())); }
public ProximityInstantAction(Bounded <float> delay, TargetingInfo targetableTypes, Costs costs, ActionSounds actionSounds, float radius, int maxNumberofTargets, IWeapon weapon) : base(delay, targetableTypes, costs, actionSounds, radius, maxNumberofTargets) { this.weapon = weapon; }
protected BaseAction(BaseAction copy) { this.source = copy.source; this.target = copy.target; this.delay = new Bounded <float>(copy.delay); this.targetableTypes = copy.targetableTypes; this.costs = copy.costs; this.needsTarget = copy.needsTarget; this.actionSounds = copy.actionSounds; this.aIInfo = Functions.Clone <IActionAIInfo>(copy.aIInfo); }
public TransporterAction( Bounded <float> delay, TargetingInfo targetableTypes, Costs costs, bool needsTarget, ActionSounds actionSounds, ISolidWeapon weapon) : base(delay, targetableTypes, costs, needsTarget, actionSounds) { this.weapon = weapon; }
public GunPointDefence(Bounded <float> delay, TargetingInfo targetableTypes, Costs costs, ActionSounds actionSounds, float radius, int maxNumberofTargets, ISolidWeapon weapon) : base(delay, targetableTypes, costs, actionSounds, radius, maxNumberofTargets) { this.weapon = weapon; }
static void Initialize() { initialized = true; DefaultCost = new Costs(new ShipStateChange(0, 30, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); DefaultActionSounds = new ActionSounds("Crystal2", null, null); }
static void Initialize() { initialized = true; DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Self); DefaultEffectsWho = DefaultTargetingTypes; DefaultCost = new Costs(new ShipStateChange(0, 1, 0, 0), new ShipStateChange(0, 1, 0, 0), null); DefaultEffectCollection.ProlongedEffects.Add(new AbsorptionSheild(DefaultEffectsWho, EffectTypes.None, new EffectSounds(), new LifeSpan(TimeWarp.RateToTime(7)), EffectTypes.Health, 1)); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultActionSounds = new ActionSounds(new MeleeSound("Shield1"), new MeleeSound("Shield1", new Bounded <float>(.3f)), null); }
static void Initialize() { initialized = true; DefaultEffectCollection.Effects.Add(new ShipStateEffect(new TargetingInfo(TargetingTypes.Enemy | TargetingTypes.Debris), EffectTypes.None, new EffectSounds(), new ShipStateChange(-1, 0, 0, 0))); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Enemy); DefaultCost = new Costs(new ShipStateChange(0, 0, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(8)); DefaultRadius = TimeWarp.ScaleRange(3); DefaultMaxNumberofTargets = 1; DefaultActionSounds = new ActionSounds("Laser3", null, null); }