001package com.fs.starfarer.api.campaign;
002
003import com.fs.starfarer.api.PluginPick;
004import com.fs.starfarer.api.campaign.ai.AbilityAIPlugin;
005import com.fs.starfarer.api.campaign.ai.AssignmentModulePlugin;
006import com.fs.starfarer.api.campaign.ai.ModularFleetAIAPI;
007import com.fs.starfarer.api.campaign.ai.NavigationModulePlugin;
008import com.fs.starfarer.api.campaign.ai.StrategicModulePlugin;
009import com.fs.starfarer.api.campaign.ai.TacticalModulePlugin;
010import com.fs.starfarer.api.campaign.econ.ImmigrationPlugin;
011import com.fs.starfarer.api.campaign.econ.MarketAPI;
012import com.fs.starfarer.api.campaign.rules.MemoryAPI;
013import com.fs.starfarer.api.characters.AbilityPlugin;
014import com.fs.starfarer.api.characters.PersonAPI;
015import com.fs.starfarer.api.fleet.FleetMemberAPI;
016import com.fs.starfarer.api.plugins.AutofitPlugin;
017
018
019/**
020 * Extend this class instead of implementing CampaignPlugin for convenience if you do not
021 * intend to implement all the methods. This will also help avoid your mod breaking
022 * when new methods are added to CampaignPlugin, since default implemenations will be
023 * added here and your implementation will inherit them.
024 * 
025 * @author Alex Mosolov
026 *
027 * Copyright 2013 Fractal Softworks, LLC
028 */
029public class BaseCampaignPlugin implements CampaignPlugin {
030
031        public String getId() {
032                return null;
033        }
034
035        public boolean isTransient() {
036                return true;
037        }
038
039        public PluginPick<BattleCreationPlugin> pickBattleCreationPlugin(SectorEntityToken opponent) {
040                return null;
041        }
042
043        public PluginPick<InteractionDialogPlugin> pickInteractionDialogPlugin(SectorEntityToken interactionTarget) {
044                return null;
045        }
046        
047        public PluginPick<InteractionDialogPlugin> pickInteractionDialogPlugin(Object param, SectorEntityToken interactionTarget) {
048                return null;
049        }
050
051        public PluginPick<BattleAutoresolverPlugin> pickBattleAutoresolverPlugin(BattleAPI battle) {
052                return null;
053        }
054        
055        public PluginPick<ReputationActionResponsePlugin> pickReputationActionResponsePlugin(Object action, String factionId) {
056                return null;
057        }
058
059        
060        public void updateEntityFacts(SectorEntityToken entity, MemoryAPI memory) {
061                
062        }
063
064        public void updateFactionFacts(FactionAPI faction, MemoryAPI memory) {
065                
066        }
067
068        public void updateGlobalFacts(MemoryAPI memory) {
069                
070        }
071
072        public void updatePersonFacts(PersonAPI person, MemoryAPI memory) {
073                
074        }
075
076        public void updatePlayerFacts(MemoryAPI memory) {
077                
078        }
079
080        public void updateMarketFacts(MarketAPI market, MemoryAPI memory) {
081                
082        }
083
084        public PluginPick<ReputationActionResponsePlugin> pickReputationActionResponsePlugin(Object action, PersonAPI person) {
085                return null;
086        }
087
088        public PluginPick<AbilityAIPlugin> pickAbilityAI(AbilityPlugin ability, ModularFleetAIAPI ai) {
089                return null;
090        }
091
092        public PluginPick<AssignmentModulePlugin> pickAssignmentAIModule(
093                        CampaignFleetAPI fleet, ModularFleetAIAPI ai) {
094                return null;
095        }
096
097        public PluginPick<NavigationModulePlugin> pickNavigationAIModule(
098                        CampaignFleetAPI fleet, ModularFleetAIAPI ai) {
099                return null;
100        }
101
102        public PluginPick<StrategicModulePlugin> pickStrategicAIModule(
103                        CampaignFleetAPI fleet, ModularFleetAIAPI ai) {
104                return null;
105        }
106
107        public PluginPick<TacticalModulePlugin> pickTacticalAIModule(
108                        CampaignFleetAPI fleet, ModularFleetAIAPI ai) {
109                return null;
110        }
111
112        public PluginPick<FleetStubConverterPlugin> pickStubConverter(FleetStubAPI stub) {
113                return null;
114        }
115
116        public PluginPick<FleetStubConverterPlugin> pickStubConverter(CampaignFleetAPI fleet) {
117                return null;
118        }
119
120        public PluginPick<AutofitPlugin> pickAutofitPlugin(FleetMemberAPI member) {
121                return null;
122        }
123
124        public PluginPick<InteractionDialogPlugin> pickRespawnPlugin() {
125                return null;
126        }
127
128        public PluginPick<ImmigrationPlugin> pickImmigrationPlugin(MarketAPI market) {
129                return null;
130        }
131
132        public PluginPick<AICoreAdminPlugin> pickAICoreAdminPlugin(String commodityId) {
133                return null;
134        }
135
136        /**
137         * @param fleet  
138         * @param params 
139         */
140        public PluginPick<FleetInflater> pickFleetInflater(CampaignFleetAPI fleet, Object params) {
141                return null;
142        }
143
144        public PluginPick<AICoreOfficerPlugin> pickAICoreOfficerPlugin(String commodityId) {
145                return null;
146        }
147
148}
149
150
151