001package com.fs.starfarer.api.impl.combat.threat; 002 003import com.fs.starfarer.api.GameState; 004import com.fs.starfarer.api.Global; 005import com.fs.starfarer.api.combat.ShipAPI; 006import com.fs.starfarer.api.combat.WeaponAPI; 007 008public interface FragmentWeapon { 009 public int getNumFragmentsToFire(); 010 011 012 default public void showNoFragmentSwarmWarning(WeaponAPI w, ShipAPI ship) { 013 boolean playerShip = Global.getCurrentState() == GameState.COMBAT && 014 Global.getCombatEngine() != null && Global.getCombatEngine().getPlayerShip() == ship; 015 016 if (playerShip) { 017 RoilingSwarmEffect swarm = RoilingSwarmEffect.getSwarmFor(ship); 018 if (swarm == null && ship.getFullTimeDeployed() > 0.1f) { 019 Global.getCombatEngine().maintainStatusForPlayerShip(w.getSpec(), 020 Global.getSettings().getSpriteName("ui", "icon_tactical_fragment_swarm"), 021 w.getDisplayName(), 022 "REQ: FRAGMENT SWARM", 023 true); 024 } 025 } 026 } 027}