001package com.fs.starfarer.api.impl.campaign.rulecmd; 002 003import java.util.ArrayList; 004import java.util.List; 005import java.util.Map; 006 007import com.fs.starfarer.api.campaign.InteractionDialogAPI; 008import com.fs.starfarer.api.campaign.rules.MemoryAPI; 009import com.fs.starfarer.api.util.Misc.Token; 010 011public class SetTextHighlights extends BaseCommandPlugin { 012 013 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) { 014 if (dialog == null) return false; 015 016 List<String> strings = new ArrayList<String>(); 017 //Map<String, String> tokens = Global.getSector().getRules().getTokenReplacements(ruleId, dialog.getInteractionTarget(), memoryMap); 018 for (int i = 0; i < params.size(); i++) { 019 String string = null; 020 021 string = params.get(i).getStringWithTokenReplacement(ruleId, dialog, memoryMap); 022// if (params.get(i).isVariable()) { 023// string = tokens.get(params.get(i).string); 024// if (string == null) { 025// VarAndMemory var = params.get(i).getVarNameAndMemory(memoryMap); 026// string = var.memory.getString(var.name); 027// } 028// } else { 029// string = params.get(i).string; 030// } 031 if (string != null) strings.add(string); 032 } 033 034 dialog.getTextPanel().highlightInLastPara(strings.toArray(new String[0])); 035 036 return true; 037 } 038 039} 040 041