001package com.fs.starfarer.api.impl.campaign.rulecmd.academy;
002
003import java.util.List;
004import java.util.Map;
005
006import com.fs.starfarer.api.Global;
007import com.fs.starfarer.api.campaign.InteractionDialogAPI;
008import com.fs.starfarer.api.campaign.rules.MemoryAPI;
009import com.fs.starfarer.api.characters.PersonAPI;
010import com.fs.starfarer.api.impl.campaign.ids.People;
011import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
012import com.fs.starfarer.api.util.Misc.Token;
013
014/**
015 * Does not start an actual conversation, but does set them as the active person (so $heOrShe etc tokens work)
016 */
017public class ShowGAOfficer extends BaseCommandPlugin {
018
019        public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
020                if (dialog == null) return false;
021                
022//              PersonAPI person = Global.getSector().getFaction(Factions.HEGEMONY).createRandomPerson();
023//              person.setRankId(Ranks.GROUND_LIEUTENANT);
024//              person.setGender(Gender.MALE);
025//              person.getName().setFirst("Caliban");
026//              person.getName().setLast("Tseen Ke");
027//              person.setPortraitSprite(Global.getSettings().getSpriteName("characters", "ga_officer"));
028                
029                PersonAPI person = Global.getSector().getImportantPeople().getPerson(People.HEGEMONY_GA_OFFICER);
030                if (person == null) return false;
031                
032                // so that $herOrShe tokens work
033                dialog.getInteractionTarget().setActivePerson(person);
034                
035                dialog.getVisualPanel().showPersonInfo(person, false, true);
036                
037                
038                // if we did this, it would also change the current memory; don't want that
039                //((RuleBasedDialog) dialog.getPlugin()).notifyActivePersonChanged();
040
041                return true;
042        }
043}
044
045
046
047
048
049
050
051
052
053