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}