001package com.fs.starfarer.api.combat; 002 003import org.lwjgl.util.vector.Vector2f; 004 005import com.fs.starfarer.api.loading.WeaponSlotAPI; 006 007public interface FighterLaunchBayAPI { 008 009 /** 010 * Absolute location the fighter should be heading for landing. 011 * @param fighter 012 * @return 013 */ 014 Vector2f getLandingLocation(ShipAPI fighter); 015 016 017 018 /** 019 * This removes the fighter from the engine, so its AI methods will stop being called. 020 * When the fighter is re-launched, a new AI will be created. 021 * @param fighter 022 */ 023 void land(ShipAPI fighter); 024 025 026 /** 027 * @return The ship that this launch bay is on. 028 */ 029 ShipAPI getShip(); 030 031 032 033 int getFastReplacements(); 034 void setFastReplacements(int fastReplacements); 035 036 FighterWingAPI getWing(); 037 void makeCurrentIntervalFast(); 038 int getExtraDeployments(); 039 void setExtraDeployments(int extraDeployments); 040 041 int getExtraDeploymentLimit(); 042 void setExtraDeploymentLimit(int extraDeploymentLimit); 043 044 float getExtraDuration(); 045 void setExtraDuration(float extraDuration); 046 047 int getNumLost(); 048 void setNumLost(int numLost); 049 050 051 WeaponSlotAPI getWeaponSlot(); 052 053 void setCurrRate(float currRate); 054 float getCurrRate(); 055 056 float getCurrReplacementIntervalDuration(); 057 float getTimeUntilNextReplacement(); 058} 059 060 061 062 063