001package com.fs.starfarer.api.impl.campaign;
002
003import java.awt.Color;
004import java.util.Random;
005
006import com.fs.starfarer.api.Global;
007import com.fs.starfarer.api.campaign.AICoreOfficerPlugin;
008import com.fs.starfarer.api.campaign.econ.CommoditySpecAPI;
009import com.fs.starfarer.api.characters.PersonAPI;
010import com.fs.starfarer.api.ui.Alignment;
011import com.fs.starfarer.api.ui.TooltipMakerAPI;
012
013/**
014 * 
015 */
016public class BaseAICoreOfficerPluginImpl implements AICoreOfficerPlugin {
017        public PersonAPI createPerson(String aiCoreId, String factionId, Random random) {
018                return null;
019        }
020
021        public void createPersonalitySection(PersonAPI person, TooltipMakerAPI tooltip) {
022                float opad = 10f; 
023                Color text = person.getFaction().getBaseUIColor();
024                Color bg = person.getFaction().getDarkUIColor();
025                CommoditySpecAPI spec = Global.getSettings().getCommoditySpec(person.getAICoreId());
026                
027                tooltip.addSectionHeading("Personality: fearless", text, bg, Alignment.MID, 20);
028                tooltip.addPara("In combat, the " + spec.getName() + " is single-minded and determined. " +
029                                "In a human captain, its traits might be considered reckless. In a machine, they're terrifying.", opad);
030        }
031        
032
033//      public StoryPointActionDelegate createIntegrateDelegate(final PersonAPI person, final FleetMemberAPI member) {
034//              return new StoryPointActionDelegate() {
035//                      public String getTitle() {
036//                              return "Integrating " + person.getNameString() + " into " + member.getShipName();
037//                      }
038//                      public TextPanelAPI getTextPanel() {
039//                              return null;
040//                      }
041//                      public float getBonusXPFraction() {
042//                              return 1f;
043//                      }
044//                      public void createDescription(TooltipMakerAPI info) {
045//                              float opad = 10f;
046//                              float pad = 3f;
047//                              float small = 5f;
048//                              Color h = Misc.getHighlightColor();
049//                              
050//                              info.addPara("Fully integrate this AI core into the ship, giving it improved access to all " +
051//                                                       "subsystems.", 0f);
052//                              
053//                              info.addPara(BaseIntelPlugin.BULLET + "Increases the AI core's level by %s and grants an additional skill", small, h, "1");
054//                              info.addPara(BaseIntelPlugin.BULLET + "Can not be removed by any means short of scuttling the ship", 0f);
055//                      }
056//                      
057//                      public void confirm() {
058//                              OfficerLevelupPlugin plugin = (OfficerLevelupPlugin) Global.getSettings().getPlugin("officerLevelUp");
059//                              List<String> skills = plugin.pickLevelupSkills(person, null);
060//                              if (!skills.isEmpty()) {
061//                                      Misc.setUnremovable(person, true);
062//                                      person.getStats().setLevel(person.getStats().getLevel() + 1);
063//                                      person.getStats().setSkillLevel(skills.get(0), 2);
064//                              }
065//                      }
066//              };
067//      }
068
069}
070
071
072
073