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; 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 AbsorptionSheild(TargetingInfo effectWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, LifeSpan lifeTime, EffectTypes filteredEffectTypes, float absorptionRatio) : base(effectWho, harmfulEffectTypes, effectSounds, lifeTime, filteredEffectTypes) { this.absorptionRatio = absorptionRatio; }
void Awake() { targetInfo = Utilities.CheckComponent <TargetingInfo>(gameObject); var header = shipDetails.shipName + " - PILOTNAMEHERE"; targetInfo.Init(header, health); }
public void AddIndicator(TargetingInfo info) { var newIndicator = Instantiate(indicatorPrefab, indicatorLayer); newIndicator.SetTarget(info); newIndicator.Selected += HandleIndicatorSelected; }
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; 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"); }
public void Setup(TargetingInfo info, Color color, Camera cam) { targetRb = info.GetComponent <Rigidbody>(); Ship = info.GetComponent <Ship>(); if (Ship != null) { Ship.Died += (s) => { Destroy(gameObject); } } ; targetRb = info.GetComponent <Rigidbody>(); name = "T_IND: " + info.name; target = info; this.cam = cam ?? Camera.main; buttonImage.color = color; ToggleHealthBars(false); ShowName(false); StartCoroutine(RefreshHeader(2)); enabled = true; }
public BackwardsTeleport(TargetingInfo effectWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, float distance) : base(effectWho, harmfulEffectTypes, effectSounds) { this.distance = distance; }
static void Initialize() { initialized = true; InitShape(); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(100), new Bounded <float>(TimeWarp.ScaleTurning(0.9f)), new Bounded <float>(8000), new Bounded <float>(TimeWarp.ScaleVelocity(60))); DefaultState = new ShipState(new Bounded <float>(20), new Bounded <float>(10), new Bounded <float>(0), new Bounded <float>(TimeWarp.RechargeRateToPerSeconds(8, -1), TimeWarp.RechargeRateToPerSeconds(8, -1), TimeWarp.RechargeRateToPerSeconds(8, -1), false)); DefaultTargetingTypes = TargetingInfo.All; DefaultActions.Add(new NullAction()); DefaultActions.Add(new NullAction()); DefaultActions.Add(new NullAction()); DefaultActions.Add(new NullTransformAction()); DefaultActions[3].Costs = new Costs(new ShipStateChange(0, 0, 0, 0), null, null); DefaultActions[3].ActionSounds = new ActionSounds(); DefaultEffectCollection.Effects.Add(new ShipStateEffect( DefaultTargetingTypes, EffectTypes.None, new EffectSounds(), new ShipStateChange(-3, 0, 0, 0))); DefaultEffectCollection.AttachmentFlags = EffectAttachmentFlags.ClonedAttachment; DefaultControlableSounds = new ControlableSounds(null, "ShipDies"); DefaultShipSounds = new ShipSounds("AndrosynthGuardianDitty"); }
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; 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; } }
ISolidWeapon CreatePrimaryWeapon() { EffectCollection DefaultEffectCollection = new EffectCollection(); DefaultEffectCollection.Effects.Add(new ShipStateEffect(TargetingInfo.All, EffectTypes.None, new EffectSounds(), new ShipStateChange(-4, 0, 0, 0))); ISolidWeapon w = new SpawningSolidWeapon( new LifeSpan(TimeWarp.RangeToTime(60, 80)), new PhysicsState(), BodyFlags.None, GetPrimaryWeaponShape(), new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(3)), new Bounded <float>(TimeWarp.ScaleAcceleration(80, 0)), new Bounded <float>(TimeWarp.ScaleVelocity(80))), new ShipState( new Bounded <float>(1), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)), new ControlableSounds(), new WeaponsLogic( new TargetingInfo(TargetingTypes.All, TargetingTypes.None, TargetingTypes.None), new EffectCollection(DefaultEffectCollection)), CreatePrimarySpawn(), true); w.ControlHandler = new DefaultControlHandler(); w.AddControler(null, new MissileControler(TargetingInfo.FromRequireAll(TargetingTypes.Enemy | TargetingTypes.Ship))); return(w); }
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(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); }
static void Initialize() { initialized = true; DefaultEffectsWho = new TargetingInfo(TargetingTypes.None, TargetingTypes.Enemy | TargetingTypes.Ship, TargetingTypes.None); InitShape(); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(TimeWarp.ScaleTurning(0)), new Bounded <float>(TimeWarp.ScaleAcceleration(20, 0)), new Bounded <float>(TimeWarp.ScaleVelocity(33))); DefaultState = new ShipState(new Bounded <float>(3), new Bounded <float>(0), new Bounded <float>(0), new Bounded <float>(0)); DefaultLifeTime = new LifeSpan(60); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Ship); DefaultEffectCollection.Effects.Add( new ShipStateEffect(DefaultEffectsWho, EffectTypes.None, new EffectSounds("DogiBark", null, null), new ShipStateChange(0, -8, 0, 0))); DefaultEffectCollection.AttachmentFlags |= EffectAttachmentFlags.ClonedAttachment; DefaultControlableSounds = new ControlableSounds(null, "DogiDie"); }
public RandomTeleport(TargetingInfo effectWho, EffectTypes harmfulEffectTypes, EffectSounds effectSounds, float maxDistance) : base(effectWho, harmfulEffectTypes, effectSounds) { this.maxDistance = maxDistance; }
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; InitShape(); DefaultLifeTime = new LifeSpan(TimeWarp.RangeToTime(400, 35)); DefaultMovementInfo = new ShipMovementInfo( new Bounded <float>(TimeWarp.AngularAcceleration), new Bounded <float>(20), new Bounded <float>(1000), new Bounded <float>(TimeWarp.ScaleVelocity(35))); DefaultState = new ShipState( new Bounded <float>(1), new Bounded <float>(1), new Bounded <float>(0), new Bounded <float>(1)); DefaultEffectCollection.Effects.Add(new MedKitEffect(new TargetingInfo(TargetingTypes.None, TargetingTypes.Ally | TargetingTypes.Ship, TargetingTypes.None), EffectTypes.None, new EffectSounds(null, "FighterGet", null), 1)); DefaultEffectsWho = new TargetingInfo(TargetingTypes.None, TargetingTypes.Ally | TargetingTypes.Ship, TargetingTypes.None); DefaultActions.Add(EarthlingFighterPrimary.Create()); DefaultControlableSounds = new ControlableSounds(); DefaultShipSounds = new ShipSounds(); }
static ISolidWeapon CreateWeapon() { ISolidWeapon w = ChenjesuBroodhomeDogi.Create(); w.ControlHandler = new DefaultControlHandler(); w.AddControler(null, new SmartMissileControler(TargetingInfo.FromRequireAll(TargetingTypes.Enemy | TargetingTypes.Ship))); return(w); }
public RemoteActionEffect(TargetingInfo effectsWho, EffectTypes effectTypes, EffectSounds effectSounds, IAction action) : base(effectsWho, effectTypes, effectSounds) { this.action = action; }
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, 2, 0, 0), null, null); DefaultDelay = new Bounded <float>(TimeWarp.RateToTime(0)); DefaultTargetingTypes = new TargetingInfo(TargetingTypes.Self); DefaultActionSounds = new ActionSounds("EchoBoom", null, null); }
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; }
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(); }
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; }
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); }
static ISolidWeapon CreateWeapon() { ISolidWeapon w = EarthlingFighter.Create(); w.ControlHandler = new DefaultControlHandler(); w.AddControler(null, new MannedOrbitControler(TargetingInfo.FromRequireAll(TargetingTypes.Enemy | TargetingTypes.Ship), TimeWarp.ScaleRange(2))); w.AddControler(null, new FireAllControler()); return(w); }