1package com.fs.starfarer.api.combat;
7import org.lwjgl.util.vector.Vector2f;
9import com.fs.starfarer.api.campaign.CombatDamageData;
10import com.fs.starfarer.api.combat.WeaponAPI.WeaponType;
11import com.fs.starfarer.api.combat.listeners.CombatListenerManagerAPI;
12import com.fs.starfarer.api.loading.DamagingExplosionSpec;
13import com.fs.starfarer.api.loading.WeaponSlotAPI;
14import com.fs.starfarer.api.loading.WeaponSpecAPI;
15import com.fs.starfarer.api.mission.FleetSide;
89 float damageAmount,
DamageType damageType,
float empAmount,
90 boolean bypassShields,
boolean dealsSoftFlux,
91 Object source,
boolean playSound);
94 float damageAmount,
DamageType damageType,
float empAmount,
95 boolean bypassShields,
boolean dealsSoftFlux,
99 float damageAmount,
DamageType damageType,
float empAmount,
100 boolean bypassShields,
boolean dealsSoftFlux,
101 Object source,
boolean playSound);
109 void addHitParticle(Vector2f loc, Vector2f vel,
float size,
float brightness,
float duration, Color color);
115 public void addSmoothParticle(Vector2f loc, Vector2f vel,
float size,
float brightness,
float duration, Color color);
122 public void addSmokeParticle(Vector2f loc, Vector2f vel,
float size,
float opacity,
float duration, Color color);
128 void spawnExplosion(Vector2f loc, Vector2f vel, Color color,
float size,
float maxDuration);
156 Vector2f point,
float angle, Vector2f shipVelocity);
182 String impactSoundId,
184 Color fringe, Color core);
192 float damAmount,
float empDamAmount,
float maxRange,
193 String impactSoundId,
float thickness, Color fringe, Color core);
276 String weaponId, String projSpecId, Vector2f point,
float angle,
277 Vector2f shipVelocity);
367 void addHitParticle(Vector2f loc, Vector2f vel,
float size,
float brightness,
float durationIn,
float totalDuration, Color color);
377 void addHitParticle(Vector2f loc, Vector2f vel,
float size,
float brightness, Color color);
380 float thickness, Color fringe, Color core);
383 float brightness,
float rampUpFraction,
float totalDuration,
386 void addNegativeParticle(Vector2f loc, Vector2f vel,
float size,
float rampUpFraction,
float totalDuration, Color color);
389 float endSizeMult,
float rampUpFraction,
390 float fullBrightnessFraction,
float totalDuration, Color color);
393 float endSizeMult,
float rampUpFraction,
394 float fullBrightnessFraction,
float totalDuration, Color color);
397 float endSizeMult,
float rampUpFraction,
398 float fullBrightnessFraction,
float totalDuration, Color color);
403 float endSizeMult,
float rampUpFraction,
404 float fullBrightnessFraction,
float totalDuration, Color color,
405 boolean expandAsSqrt);
408 float endSizeMult,
float rampUpFraction,
409 float fullBrightnessFraction,
float totalDuration, Color color,
410 boolean expandAsSqrt);
413 float size,
float endSizeMult,
float rampUpFraction,
414 float fullBrightnessFraction,
float totalDuration, Color color);
427 float flashFrequency,
float flashDuration,
float durInPlace,
float durFloatingUp,
float durFadingOut,
float baseAlpha);
442 float fullBrightnessFraction,
float totalDuration, Color color);
445 float fullBrightnessFraction,
float totalDuration, Color color,
boolean expandAsSqrt);
void addNebulaParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color, boolean expandAsSqrt)
void addHitParticle(Vector2f loc, Vector2f vel, float size, float brightness, float duration, Color color)
ShipAPI createFXDrone(ShipVariantAPI variant)
void removeObject(Object object)
EmpArcEntityAPI spawnEmpArcVisual(Vector2f from, CombatEntityAPI fromAnchor, Vector2f to, CombatEntityAPI toAnchor, float thickness, Color fringe, Color core)
CombatUIAPI getCombatUI()
boolean isUIShowingDialog()
CombatNebulaAPI getNebula()
ShipAPI getShipPlayerLastTransferredCommandTo()
boolean isAwareOf(int owner, CombatEntityAPI other)
void addHitParticle(Vector2f loc, Vector2f vel, float size, float brightness, Color color)
boolean isInPlay(Object object)
ViewportAPI getViewport()
CombatEntityAPI addLayeredRenderingPlugin(CombatLayeredRenderingPlugin plugin)
CollisionGridAPI getAiGridMissiles()
CollisionGridAPI getShipGrid()
boolean isEnemyInFullRetreat()
void maintainStatusForPlayerShip(Object key, String spriteName, String title, String data, boolean isDebuff)
CombatFleetManagerAPI getFleetManager(FleetSide side)
void addHitParticle(Vector2f loc, Vector2f vel, float size, float brightness, float durationIn, float totalDuration, Color color)
void setSideDeploymentOverrideSide(FleetSide sideDeploymentOverrideSide)
void applyDamage(CombatEntityAPI entity, Vector2f point, float damageAmount, DamageType damageType, float empAmount, boolean bypassShields, boolean dealsSoftFlux, Object source, boolean playSound)
boolean isFleetsInContact()
Vector2f getAimPointWithLeadForAutofire(CombatEntityAPI from, float accuracyFactor, CombatEntityAPI to, float projSpeed)
void addSmoothParticle(Vector2f loc, Vector2f vel, float size, float brightness, float duration, Color color)
CollisionGridAPI getAiGridAsteroids()
void spawnExplosion(Vector2f loc, Vector2f vel, Color color, float size, float maxDuration)
boolean playerHasNonAllyReserves()
void setCustomExit(String buttonTitle, String confirmString)
BattleCreationContext getContext()
List< BattleObjectiveAPI > getObjectives()
void addNebulaSmoothParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color)
boolean isInCampaignSim()
void removeEntity(CombatEntityAPI entity)
Map< String, Object > getCustomData()
DamagingProjectileAPI spawnDamagingExplosion(DamagingExplosionSpec spec, ShipAPI source, Vector2f location)
void addFloatingDamageText(Vector2f loc, float damage, Color color, CombatEntityAPI attachedTo, CombatEntityAPI damageSource)
void addNebulaSmoothParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color, boolean expandAsSqrt)
CombatEntityAPI spawnProjectile(ShipAPI ship, WeaponAPI weapon, String weaponId, Vector2f point, float angle, Vector2f shipVelocity)
CombatFleetManagerAPI getFleetManager(int owner)
void spawnMuzzleFlashOrSmoke(ShipAPI ship, Vector2f point, WeaponSpecAPI spec, float targetAngle)
boolean isInFastTimeAdvance()
EmpArcEntityAPI spawnEmpArcPierceShields(ShipAPI damageSource, Vector2f point, CombatEntityAPI pointAnchor, CombatEntityAPI empTargetEntity, DamageType damageType, float damAmount, float empDamAmount, float maxRange, String impactSoundId, float thickness, Color fringe, Color core)
void headInDirectionWithoutTurning(MissileAPI missile, float desiredHeading, float desiredSpeed)
List< CombatEntityAPI > getAsteroids()
void removePlugin(EveryFrameCombatPlugin plugin)
FogOfWarAPI getFogOfWar(int owner)
boolean playerHasAllyReserves()
List< DamagingProjectileAPI > getProjectiles()
void addSmokeParticle(Vector2f loc, Vector2f vel, float size, float opacity, float duration, Color color)
ShipAPI getShipPlayerIsTransferringCommandFrom()
void addFloatingTextAlways(Vector2f loc, String text, float size, Color color, CombatEntityAPI attachedTo, float flashFrequency, float flashDuration, float durInPlace, float durFloatingUp, float durFadingOut, float baseAlpha)
DamagingProjectileAPI spawnDamagingExplosion(DamagingExplosionSpec spec, ShipAPI source, Vector2f location, boolean canDamageSource)
List< MissileAPI > getMissiles()
String getCustomExitButtonConfirmString()
CombatEntityAPI spawnAsteroid(int size, float x, float y, float dx, float dy)
boolean isEntityInPlay(CombatEntityAPI entity)
boolean isBackgroundGlowColorNonAdditive()
Color getBackgroundColor()
boolean isMissileAlive(MissileAPI missile)
MutableStat getTimeMult()
void setPlayerShipExternal(ShipAPI ship)
float getCombatNotOverFor()
void addSwirlyNebulaParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color, boolean expandAsSqrt)
void addNegativeParticle(Vector2f loc, Vector2f vel, float size, float rampUpFraction, float totalDuration, Color color)
void setBackgroundGlowColor(Color backgroundGlowColor)
void spawnMuzzleFlashOrSmoke(ShipAPI ship, WeaponSlotAPI slot, WeaponSpecAPI spec, int barrel, float targetAngle)
List< ShipAPI > getAllShips()
CollisionGridAPI getAsteroidGrid()
float getTotalElapsedTime(boolean includePaused)
void setMaxFleetPoints(FleetSide side, int fleetPoints)
CollisionGridAPI getAllObjectGrid()
void addPlugin(EveryFrameCombatPlugin plugin)
void addNegativeNebulaParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color)
void setPaused(boolean paused)
CollisionGridAPI getMissileGrid()
CombatEntityAPI spawnProjectile(ShipAPI ship, WeaponAPI weapon, String weaponId, String projSpecId, Vector2f point, float angle, Vector2f shipVelocity)
void applyDamageModifiersToSpawnedProjectileWithNullWeapon(ShipAPI source, WeaponType type, boolean isBeam, DamageAPI damage)
boolean isUIAutopilotOn()
CollisionGridAPI getAiGridShips()
void addNebulaSmokeParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color)
CombatListenerManagerAPI getListenerManager()
void addEntity(CombatEntityAPI entity)
void setBackgroundColor(Color backgroundColor)
void setShipPlayerLastTransferredCommandTo(ShipAPI ship)
void setRenderStarfield(boolean renderStarfield)
float getElapsedInLastFrame()
WeaponAPI createFakeWeapon(ShipAPI ship, String weaponId)
boolean isRenderStarfield()
void endCombat(float delay, FleetSide winner)
String getCustomExitButtonTitle()
List< ShipAPI > getShips()
List< BeamAPI > getBeams()
EmpArcEntityAPI spawnEmpArc(ShipAPI damageSource, Vector2f point, CombatEntityAPI pointAnchor, CombatEntityAPI empTargetEntity, DamageType damageType, float damAmount, float empDamAmount, float maxRange, String impactSoundId, float thickness, Color fringe, Color core)
void setBackgroundGlowColorNonAdditive(boolean backgroundGlowColorNonAdditive)
void endCombat(float delay)
Color getBackgroundGlowColor()
void setCombatNotOverFor(float seconds)
void headInDirectionWithoutTurning(ShipAPI ship, float desiredHeading, float desiredSpeed)
boolean hasAttachedFloaty(CombatEntityAPI entity)
void applyDamage(Object damageModifierParam, CombatEntityAPI entity, Vector2f point, float damageAmount, DamageType damageType, float empAmount, boolean bypassShields, boolean dealsSoftFlux, Object source, boolean playSound)
CombatDamageData getDamageData()
void addNebulaParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color)
void setDoNotEndCombat(boolean doNotEndCombat)
void setCombatNotOverForAtLeast(float seconds)
ShipAPI getShipPlayerIsTransferringCommandTo()
void addFloatingText(Vector2f loc, String text, float size, Color color, CombatEntityAPI attachedTo, float flashFrequency, float flashDuration)
void updateStationModuleLocations(ShipAPI station)
void applyDamage(CombatEntityAPI entity, Vector2f point, float damageAmount, DamageType damageType, float empAmount, boolean bypassShields, boolean dealsSoftFlux, Object source)
List< BattleObjectiveAPI > getAllObjectives()
float getElapsedInContactWithEnemy()
void addSmoothParticle(Vector2f loc, Vector2f vel, float size, float brightness, float rampUpFraction, float totalDuration, Color color)
void addNegativeSwirlyNebulaParticle(Vector2f loc, Vector2f vel, float size, float endSizeMult, float rampUpFraction, float fullBrightnessFraction, float totalDuration, Color color)