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.AbilityPlugin; 011import com.fs.starfarer.api.util.Misc.Token; 012 013 014/** 015 * ActivateAbility <fleet id> <ability id> 016 */ 017public class DeactivateAbility extends BaseCommandPlugin { 018 019 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) { 020 021 String entityId = params.get(0).getString(memoryMap); 022 String abilityId = params.get(1).getString(memoryMap); 023 024 SectorEntityToken entity = Global.getSector().getEntityById(entityId); 025 if (entity == null) return false; 026 027 AbilityPlugin ability = entity.getAbility(abilityId); 028 if (ability == null) return false; 029 030 ability.deactivate(); 031 032 return true; 033 } 034 035}