public new void Tick() { if (!Installed) { var player = GameManager.GetPlayerById(OwnerId); if (InstallationSecondsLeft > 0) { if (BattleStation.AssetTypeId == AssetTypeModule.ASTEROID) { if (player == null || player.Position.DistanceTo(BattleStation.Position) > 700) { Remove(false, true, true); } } if (installationTime.AddSeconds(1) < DateTime.Now) { InstallationSecondsLeft--; installationTime = DateTime.Now; } } else if (InstallationSecondsLeft <= 0) { Installed = true; if (BattleStation.AssetTypeId == AssetTypeModule.BATTLESTATION) { RemoveVisualModifier(VisualModifierCommand.BATTLESTATION_INSTALLING); } if (player != null) { BattleStation.Click(player.GameSession); } QueryManager.BattleStations.Modules(BattleStation); } } else if (Installed) { if (BattleStation.AssetTypeId == AssetTypeModule.BATTLESTATION) { if (Type != StationModuleModule.DEFLECTOR && Type != StationModuleModule.HULL && Type != StationModuleModule.NONE && Type != StationModuleModule.DAMAGE_BOOSTER && Type != StationModuleModule.EXPERIENCE_BOOSTER && Type != StationModuleModule.HONOR_BOOSTER && Type != StationModuleModule.REPAIR) { foreach (var character in Spacemap.Characters.Values) { if (character is Player || character is Pet) { Attack(character); } } } else if (Type == StationModuleModule.REPAIR) { RepairModules(); } } } }