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.rules.MemoryAPI;
009import com.fs.starfarer.api.graphics.SpriteAPI;
010import com.fs.starfarer.api.impl.SharedUnlockData;
011import com.fs.starfarer.api.util.Misc.Token;
012
013/**
014 * ShowImageVisual <category> <key>
015 */
016public class ShowImageVisual extends BaseCommandPlugin {
017
018        public ShowImageVisual() {
019                
020        }
021        
022        public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
023                
024                
025                String category = "illustrations";
026                String key = null;
027                
028                if (params.size() <= 1) {
029                        key = params.get(0).string;
030                } else {
031                        category = params.get(0).string;
032                        key = params.get(1).string;
033                }
034                
035                SharedUnlockData.get().reportPlayerAwareOfIllustration(key, true);
036                SharedUnlockData.get().saveIfNeeded();
037                
038                SpriteAPI sprite = Global.getSettings().getSprite(category, key);
039                dialog.getVisualPanel().showImagePortion(category, key, sprite.getWidth(), sprite.getHeight(), 0, 0, 480, 300);
040                
041                return true;
042        }
043
044}
045
046