001package com.fs.starfarer.api.campaign;
002
003import java.util.List;
004
005import org.lwjgl.util.vector.Vector2f;
006
007import com.fs.starfarer.api.Script;
008import com.fs.starfarer.api.campaign.ai.FleetAssignmentDataAPI;
009import com.fs.starfarer.api.campaign.listeners.FleetEventListener;
010import com.fs.starfarer.api.campaign.rules.MemoryAPI;
011
012/**
013 * NOT USED, UNFINISHED.
014 * 
015 * @author Alex Mosolov
016 *
017 * Copyright 2017 Fractal Softworks, LLC
018 */
019public interface FleetStubAPI extends FleetOrStubAPI {
020
021        LocationAPI getContainingLocation();
022        void setContainingLocation(LocationAPI containingLocation);
023        FleetAssignmentDataAPI getCurrentAssignment();
024        List<FleetAssignmentDataAPI> getAssignmentsCopy();
025        void addAssignment(FleetAssignment assignment, SectorEntityToken target,
026                        float maxDurationInDays, Script onCompletion);
027        void addAssignment(FleetAssignment assignment, SectorEntityToken target,
028                        float maxDurationInDays, String actionText, Script onCompletion);
029        void addAssignmentAtStart(FleetAssignment assignment,
030                        SectorEntityToken target, float maxDurationInDays,
031                        String actionText, Script onCompletion);
032        void addAssignmentAtStart(FleetAssignment assignment,
033                        SectorEntityToken target, float maxDurationInDays,
034                        Script onCompletion);
035        boolean isCurrentAssignment(FleetAssignment assignment);
036        void removeFirstAssignmentIfItIs(FleetAssignment assignment);
037        void removeFirstAssignment();
038        void clearAssignments();
039        
040        
041        void setMemory(MemoryAPI memory);
042        Object getParams();
043        void setParams(Object params);
044        Vector2f getLocation();
045        List<String> getCargoList();
046        String getId();
047        void setId(String fleetId);
048        
049        void advance(float amount);
050        MemoryAPI getMemoryWithoutUpdate();
051        FleetStubConverterPlugin getConverter();
052        void repickConverter();
053        List<FleetEventListener> getEventListeners();
054        String getAdmiralRank();
055        void setAdmiralRank(String admiralRank);
056        String getAdmiralPost();
057        void setAdmiralPost(String admiralPost);
058        
059        CampaignFleetAPI getFleet();
060        void setFleet(CampaignFleetAPI fleet);
061
062}