public AbilityFactory_GainControl(AbilityFactory newAF) {
        af = newAF;
        params = af.getMapParams();
        hostCard = af.getHostCard();
        if (params.containsKey("LoseControl")) {
            lose = new ArrayList<String>(Arrays.asList(params.get("LoseControl").split(",")));
        }
        if (params.containsKey("Untap")) {
            bUntap = true;
        }
        if (params.containsKey("TapOnLose")) {
            bTapOnLose = true;
        }
        if (params.containsKey("AddKWs")) {
            kws = new ArrayList<String>(Arrays.asList(params.get("AddKWs").split(" & ")));
        }
        if (params.containsKey("DestroyTgt")) {
            destroyOn = new ArrayList<String>(Arrays.asList(params.get("DestroyTgt").split(",")));
        }
        if (params.containsKey("NoRegen")) {
            bNoRegen = true;
        }
    }