001package com.fs.starfarer.api.campaign;
002
003import java.util.Set;
004
005import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.MarketCMD.RaidDangerLevel;
006import com.fs.starfarer.api.loading.WithSourceMod;
007
008public interface SpecialItemSpecAPI extends WithSourceMod {
009        String getIconName();
010        
011        int getStackSize();
012        float getOrder();
013        float getCargoSpace();
014        
015        String getId();
016        String getName();
017        float getBasePrice();
018        
019        Set<String> getTags();
020        boolean hasTag(String tag);
021
022        /**
023         * If null is passed in for a stack, the init() method of the plugin will not be called.
024         * @param stack
025         * @return
026         */
027        SpecialItemPlugin getNewPluginInstance(CargoStackAPI stack);
028
029        String getDesc();
030
031        void setDesc(String desc);
032
033        String getParams();
034
035        float getRarity();
036
037        String getSoundId();
038
039        String getSoundIdDrop();
040
041        String getDescFirstPara();
042
043        void setBaseDanger(RaidDangerLevel danger);
044        RaidDangerLevel getBaseDanger();
045
046        String getManufacturer();
047
048        void setManufacturer(String manufacturer);
049
050        void setParams(String params);
051
052        void setIconName(String iconName);
053
054        void setName(String displayName);
055
056        void setBasePrice(float baseValue);
057
058        void setOrder(float displayNumber);
059        
060}
061
062
063