001package com.fs.starfarer.api.impl.campaign.rulecmd;
002
003import java.util.List;
004import java.util.Map;
005
006import com.fs.starfarer.api.campaign.InteractionDialogAPI;
007import com.fs.starfarer.api.campaign.rules.MemKeys;
008import com.fs.starfarer.api.campaign.rules.MemoryAPI;
009import com.fs.starfarer.api.characters.CharacterCreationData;
010import com.fs.starfarer.api.util.Misc.Token;
011
012/**
013 *      NGCSetCustom <string> <boolean>
014 */
015public class NGCSetCustom extends BaseCommandPlugin {
016
017        public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
018                if (dialog == null) return false;
019                
020                String id = params.get(0).getString(memoryMap);
021                boolean value = params.get(1).getBoolean(memoryMap);
022                
023                CharacterCreationData data = (CharacterCreationData) memoryMap.get(MemKeys.LOCAL).get("$characterData");
024
025                data.getCustomData().put(id, value);
026                
027                return true;
028        }
029
030}