public static TargetObstructionEnum TagTargetObstructionEnumCheck(string tag) { TargetObstructionEnum result = TargetObstructionEnum.None; var tagSplit = ProcessTag(tag); if (tagSplit.Length == 2) { if (TargetObstructionEnum.TryParse(tagSplit[1], out result) == false) { return(TargetObstructionEnum.None); } } return(result); }
public NewWeaponSystem(IMyRemoteControl remoteControl = null) { UseStaticGuns = false; UseTurrets = true; AllowedObstructions = TargetObstructionEnum.DefenseShield; MaxStaticWeaponRange = 1500; WeaponMaxAngleFromTarget = 6; UseBarrageFire = false; MaxFireRateForBarrageWeapons = 200; UseAmmoReplenish = true; AmmoReplenishClipAmount = 15; MaxAmmoReplenishments = 10; Weapons = new List <IWeaponProfile>(); _withinTargetAngle = false; _allowedFlags = new List <WaypointModificationEnum>(); _allowedFlags.Add(WaypointModificationEnum.TargetIsInitialWaypoint); _allowedFlags.Add(WaypointModificationEnum.WeaponLeading); _allowedFlags.Add(WaypointModificationEnum.CollisionLeading); _restrictedFlags = new List <WaypointModificationEnum>(); _restrictedFlags.Add(WaypointModificationEnum.Collision); _restrictedFlags.Add(WaypointModificationEnum.Offset); _restrictedFlags.Add(WaypointModificationEnum.PlanetPathing); if (remoteControl == null || !MyAPIGateway.Entities.Exist(remoteControl?.SlimBlock?.CubeGrid)) { return; } _remoteControl = remoteControl; }