001package com.fs.starfarer.api.impl.campaign.missions.academy;
002
003import java.awt.Color;
004
005import com.fs.starfarer.api.campaign.econ.MarketAPI;
006import com.fs.starfarer.api.characters.PersonAPI;
007import com.fs.starfarer.api.impl.campaign.ids.People;
008import com.fs.starfarer.api.ui.TooltipMakerAPI;
009import com.fs.starfarer.api.util.Misc;
010
011public class GATalkToBaird extends GABaseMission {
012
013        public static enum Stage {
014                TALK_TO_BAIRD,
015                COMPLETED,
016        }
017        
018        protected PersonAPI baird;
019        
020        @Override
021        protected boolean create(MarketAPI createdAt, boolean barEvent) {
022                // if already accepted by the player, abort
023                if (!setGlobalReference("$gaTTB_ref")) {
024                        return false;
025                }
026                
027                baird = getImportantPerson(People.BAIRD);
028                if (baird == null) return false;
029                
030                setStartingStage(Stage.TALK_TO_BAIRD);
031                addSuccessStages(Stage.COMPLETED);
032                
033                setStoryMission();
034                
035                makeImportant(baird, null, Stage.TALK_TO_BAIRD);
036                setStageOnMemoryFlag(Stage.COMPLETED, baird.getMarket(), "$gaTTB_completed");
037                
038                setRepFactionChangesNone();
039                setRepPersonChangesNone();
040                
041                beginStageTrigger(Stage.TALK_TO_BAIRD);
042                triggerSetGlobalMemoryValuePermanent("$bairdWantsToTalk", true);
043                endTrigger();
044                
045                return true;
046        }
047        
048        protected void updateInteractionDataImpl() {
049        
050        }
051        
052        @Override
053        public void addDescriptionForNonEndStage(TooltipMakerAPI info, float width, float height) {
054                float opad = 10f;
055                Color h = Misc.getHighlightColor();
056                if (currentStage == Stage.TALK_TO_BAIRD) {
057                        info.addPara("Talk to Provost " + baird.getName().getLast() + " at the Galatia Academy.", opad);
058                }
059        }
060
061        @Override
062        public boolean addNextStepText(TooltipMakerAPI info, Color tc, float pad) {
063                Color h = Misc.getHighlightColor();
064                if (currentStage == Stage.TALK_TO_BAIRD) {
065                        info.addPara("Talk to Provost " + baird.getName().getLast() + " at the Galatia Academy", tc, pad);
066                        return true;
067                }
068                return false;
069        }
070
071        @Override
072        public String getBaseName() {
073                return "Talk to Provost " + baird.getName().getLast();
074        }
075
076        @Override
077        public String getPostfixForState() {
078                if (startingStage != null) {
079                        return "";
080                }
081                return super.getPostfixForState();
082        }
083
084        
085}
086
087
088
089
090