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
011/**
012 * SetTooltipHighlights <option id> params
013 */
014public class SetTooltipHighlights extends BaseCommandPlugin {
015
016        public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
017                if (dialog == null) return false;
018                
019                String option = params.get(0).string;           
020                List<String> strings = new ArrayList<String>();
021                //Map<String, String> tokens = Global.getSector().getRules().getTokenReplacements(ruleId, dialog.getInteractionTarget(), memoryMap);
022                for (int i = 1; i < params.size(); i++) {
023                        String string = null;
024                        
025                        string = params.get(i).getStringWithTokenReplacement(ruleId, dialog, memoryMap);
026//                      if (params.get(i).isVariable()) {
027//                              string = tokens.get(params.get(i).string);
028//                              if (string == null) {
029//                                      VarAndMemory var = params.get(i).getVarNameAndMemory(memoryMap);
030//                                      string = var.memory.getString(var.name);
031//                              }
032//                      } else {
033//                              string = params.get(i).string;
034//                      }
035                        if (string != null) strings.add(string);
036                }
037        
038                dialog.getOptionPanel().setTooltipHighlights(option, strings.toArray(new String[0]));
039                return true;
040        }
041
042}
043
044