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.util.Misc; 011import com.fs.starfarer.api.util.Misc.Token; 012 013/** 014 * DespawnEntity <optional entity id> 015 * 016 * Copyright 2015 Fractal Softworks, LLC 017 */ 018public class DespawnEntity extends BaseCommandPlugin { 019 020 public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) { 021 if (dialog == null) return false; 022 if (!(dialog.getInteractionTarget() instanceof SectorEntityToken)) return false; 023 024 SectorEntityToken entity = dialog.getInteractionTarget(); 025 if (params.size() >= 1) { 026 String id = params.get(0).getString(memoryMap); 027 entity = Global.getSector().getEntityById(id); 028 } 029 030 if (entity != null) { 031 Misc.fadeAndExpire(entity); 032 } 033 034 return true; 035 } 036 037} 038 039 040 041 042