public WeaponBank( App game, IGameObject owner, LogicalBank bank, Module module, LogicalWeapon weapon, int weaponLevel, int designID, int targetFilter, int fireMode, WeaponEnums.WeaponSizes weaponSize, WeaponEnums.TurretClasses turretClass) { this.Owner = owner; this.Weapon = weapon; this.LogicalBank = bank; this.Module = module; this.WeaponLevel = weaponLevel; this.DesignID = designID; this.TargetFilter = targetFilter; this.FireMode = fireMode; this.TurretClass = turretClass; this.WeaponSize = weaponSize; this.m_ToggleStateOn = false; }
public static IEnumerable <LogicalWeapon> EnumerateWeaponFits( string faction, string sectionName, IEnumerable <LogicalWeapon> weapons, WeaponEnums.WeaponSizes mountTurretSize, WeaponEnums.TurretClasses mountTurretClass) { foreach (LogicalWeapon weapon in weapons) { if (weapon.IsVisible && weapon.IsSectionCompatable(faction, sectionName) && LogicalTurretClass.GetLogicalTurretClassForMount((IEnumerable <LogicalTurretClass>)weapon.TurretClasses, weapon.DefaultWeaponSize, weapon.DefaultWeaponClass, mountTurretSize, mountTurretClass) != null) { yield return(weapon); } } }
public static LogicalTurretClass GetLogicalTurretClassForMount( IEnumerable <LogicalTurretClass> turretClasses, WeaponEnums.WeaponSizes defaultWeaponSize, WeaponEnums.TurretClasses defaultWeaponClass, WeaponEnums.WeaponSizes mountSize, WeaponEnums.TurretClasses mountClass) { foreach (LogicalTurretClass turretClass in turretClasses) { if (turretClass.TurretClass == mountClass && turretClass.TurretSize == mountSize) { return(turretClass); } } return((LogicalTurretClass)null); }
public static bool WeaponSizeFitsMount( WeaponEnums.WeaponSizes weaponSize, WeaponEnums.WeaponSizes mountSize) { return(((IEnumerable <WeaponEnums.WeaponSizes>)WeaponSizes.AllowedMountWeaponSizeMap[mountSize]).Contains <WeaponEnums.WeaponSizes>(weaponSize)); }
public static int GuessNumBarrels( WeaponEnums.WeaponSizes weaponSize, WeaponEnums.WeaponSizes mountSize) { return(Math.Max(1, mountSize - weaponSize + 1)); }
public LogicalTurretClass GetLogicalTurretClassForMount( WeaponEnums.WeaponSizes mountTurretSize, WeaponEnums.TurretClasses mountTurretClass) { return(LogicalTurretClass.GetLogicalTurretClassForMount((IEnumerable <LogicalTurretClass>) this.TurretClasses, this.DefaultWeaponSize, this.DefaultWeaponClass, mountTurretSize, mountTurretClass)); }