001package com.fs.starfarer.api.impl.campaign.rulecmd; 002 003import java.util.List; 004import java.util.Map; 005 006import com.fs.starfarer.api.campaign.CampaignFleetAPI; 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 * HighlightComms 013 * 014 * Changes the "open comm link" option to a yellow color. Undecided whether it's good to use this; creates the 015 * expectation that comms are pointless unless highlighted. 016 * 017 * So, probably: only highlight comes (via other means) when the player is being hailed. See: HailPlayer. 018 * 019 * Copyright 2020 Fractal Softworks, LLC 020 */ 021public class HighlightComms extends BaseCommandPlugin { 022 023 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) { 024 025 if (dialog == null) return false; 026 if (!(dialog.getInteractionTarget() instanceof CampaignFleetAPI)) return false; 027 028 CampaignFleetAPI fleet = (CampaignFleetAPI) dialog.getInteractionTarget(); 029 030 fleet.getMemoryWithoutUpdate().set("$highlightComms", true, 0); 031 032 return true; 033 } 034 035} 036 037 038 039 040