1package com.fs.starfarer.api.impl.hullmods;
3import com.fs.starfarer.api.Global;
4import com.fs.starfarer.api.combat.BaseHullMod;
5import com.fs.starfarer.api.combat.CombatEngineAPI;
6import com.fs.starfarer.api.combat.MutableShipStatsAPI;
7import com.fs.starfarer.api.combat.ShipAPI;
8import com.fs.starfarer.api.combat.WeaponAPI;
9import com.fs.starfarer.api.combat.ShipAPI.HullSize;
10import com.fs.starfarer.api.combat.WeaponAPI.WeaponType;
11import com.fs.starfarer.api.util.IntervalUtil;
18 public static class PeriodicMissileReloadData {
19 IntervalUtil interval =
new IntervalUtil(10f, 15f);
31 super.advanceInCombat(ship, amount);
33 if (!ship.isAlive())
return;
38 PeriodicMissileReloadData data = (PeriodicMissileReloadData) engine.getCustomData().get(key);
40 data =
new PeriodicMissileReloadData();
41 engine.getCustomData().put(key, data);
44 data.interval.advance(amount);
45 if (data.interval.intervalElapsed()) {
46 for (WeaponAPI w : ship.getAllWeapons()) {
47 if (w.getType() != WeaponType.MISSILE)
continue;
49 if (w.usesAmmo() && w.getAmmo() < w.getMaxAmmo()) {
50 w.setAmmo(w.getMaxAmmo());
static CombatEngineAPI getCombatEngine()
static String MR_DATA_KEY
void applyEffectsBeforeShipCreation(HullSize hullSize, MutableShipStatsAPI stats, String id)
String getDescriptionParam(int index, HullSize hullSize)
void advanceInCombat(ShipAPI ship, float amount)