001package com.fs.starfarer.api.impl.campaign.rulecmd;
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.SectorEntityToken;
009import com.fs.starfarer.api.campaign.rules.MemoryAPI;
010import com.fs.starfarer.api.characters.PersonAPI;
011import com.fs.starfarer.api.impl.campaign.FleetInteractionDialogPluginImpl;
012import com.fs.starfarer.api.impl.campaign.ids.Factions;
013import com.fs.starfarer.api.util.Misc.Token;
014
015public class ShowThreatPersonVisual extends BaseCommandPlugin {
016
017        public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
018                
019                SectorEntityToken target = dialog.getInteractionTarget();
020                if (target == null) return false;
021                
022                target.getMemoryWithoutUpdate().set(FleetInteractionDialogPluginImpl.DO_NOT_AUTO_SHOW_FC_PORTRAIT, true, 0f);
023                PersonAPI person = Global.getSector().getFaction(Factions.THREAT).createRandomPerson();
024                dialog.getVisualPanel().showPersonInfo(person, false, false);
025                dialog.getVisualPanel().hideRankNamePost();
026        
027                return true;
028        }
029
030}