public void Initialize(IWeaponSelectionModel weaponSelectionModel) { _weaponSelectionModel = weaponSelectionModel; OnPropertyChanged(Properties.IsMissile); OnPropertyChanged(Properties.IsWeaponSelected); SelectedCoilgunType = CoilgunTypes.FirstOrDefault(); SelectedMissileType = MissileTypes.FirstOrDefault(); }
public void ReadFrom(BinaryReader r) { // 1st section Unknown1 = r.ReadByte(); Unknown2 = r.ReadByte(); MissilesType = (MissileTypes)r.ReadByte(); MissilesDriveSystem = (MissileDriveSystems)r.ReadByte(); MissilesReloads = r.ReadInt16(); TotalTubesCount = r.ReadInt16(); TotalMissilesReadyAndStored = r.ReadInt16(); TotalMissilesReady = r.ReadInt16(); TotalMissilesStored = r.ReadInt16(); MissileHardpoints = new MissileHardpoint[25]; for (int i = 0; i < 25; i++) { MissileHardpoints[i].MissilesReady = r.ReadInt16(); MissileHardpoints[i].MissilesStored = r.ReadInt16(); MissileHardpoints[i].TubesCount = r.ReadInt16(); MissileHardpoints[i].TubesCapacity = r.ReadInt16(); } GeneralMax = r.ReadByte(); GeneralBase = r.ReadByte(); General = r.ReadByte(); Unknown3 = r.ReadBytes(Size_Unknown3); // 2nd section int c = r.ReadInt32(); if (c == 0) { TransportItems = null; } else { TransportItems = new TransportItem[c]; for (int i = 0; i < c; i++) { TransportItems[i].Item = (ScriptTransportItems)r.ReadInt32(); TransportItems[i].Count = r.ReadInt32(); } } // 3rd section Unknown4 = r.ReadBytes(Size_Unknown4); // 4th section BoardingPartiesMax = r.ReadByte(); BoardingPartiesBase = r.ReadByte(); BoardingParties = r.ReadByte(); TBombsMax = r.ReadByte(); TBombsBase = r.ReadByte(); TBombs = r.ReadByte(); DamageControlMax = r.ReadByte(); DamageControlBase = r.ReadByte(); DamageControl = r.ReadByte(); // 5th section FighterBays = new FighterBay[4]; for (int i = 0; i < 4; i++) { FighterBays[i].FightersCount = r.ReadByte(); FighterBays[i].FightersLoaded = r.ReadByte(); FighterBays[i].FightersMax = r.ReadByte(); FighterBays[i].Unknown = r.ReadByte(); Utils.ReadString(r, out FighterBays[i].FighterType); Utils.ReadString(r, out FighterBays[i].FighterSubType); } }
public RangeAttack(Enemy being, float minDamage, float maxDamage, MissileTypes missileType, TimeSpan?cooldown = null) : base(AbilityTypes.Melee, being, cooldown ?? TimeSpan.Zero, TimeSpan.Zero, 0, "") { _minDamage = minDamage; _maxDamage = maxDamage; _missileType = missileType; }