001package com.fs.starfarer.api.loading; 002 003import java.util.Set; 004 005import com.fs.starfarer.api.combat.HullModEffect; 006import com.fs.starfarer.api.combat.HullModFleetEffect; 007import com.fs.starfarer.api.combat.ShipAPI.HullSize; 008 009public interface HullModSpecAPI extends WithSourceMod { 010 011 HullModEffect getEffect(); 012 HullModFleetEffect getFleetEffect(); 013 boolean isAlwaysUnlocked(); 014 boolean isHidden(); 015 boolean isHiddenEverywhere(); 016 void setHidden(boolean isHidden); 017 void setHiddenEverywhere(boolean isHiddenEverywhere); 018 void setAlwaysUnlocked(boolean isStarting); 019 String getEffectClass(); 020 void setEffectClass(String effectClass); 021 String getDisplayName(); 022 void setDisplayName(String displayName); 023 String getId(); 024 void setId(String id); 025 String getDescriptionFormat(); 026 void setDescriptionFormat(String descriptionFormat); 027 int getFrigateCost(); 028 void setFrigateCost(int frigateCost); 029 int getDestroyerCost(); 030 void setDestroyerCost(int destroyerCost); 031 int getCruiserCost(); 032 void setCruiserCost(int cruiserCost); 033 int getCapitalCost(); 034 void setCapitalCost(int capitalCost); 035 int getTier(); 036 void setTier(int tier); 037 String getSpriteName(); 038 void setSpriteName(String spriteName); 039 int getCostFor(HullSize size); 040 Set<String> getTags(); 041 void addTag(String tag); 042 boolean hasTag(String tag); 043 float getBaseValue(); 044 void setBaseValue(float baseValue); 045 float getRarity(); 046 void setRarity(float rarity); 047 048 String getDescription(HullSize size); 049 String getManufacturer(); 050 Set<String> getUITags(); 051 void addUITag(String tag); 052 boolean hasUITag(String tag); 053 void setManufacturer(String manufacturer); 054 String getSModDescription(HullSize hullSize); 055 void setSModEffectFormat(String sModEffectFormat); 056 String getSModEffectFormat(); 057 058}