// either from or to any filed,
// draw lib, from battle to grave etc
public static boolean isMoveGood(CardSim card, String key)
{
boolean ret = false;
HintBundle bundle = new HintBundle();
bundle.add(SY_HAND_TO_LAND);
bundle.add(SY_HAND_TO_FIELD);
bundle.add(SY_LIBRARY_TO_HAND);
bundle.add(SY_LIBRARY_TO_LAND);
bundle.add(SY_LIBRARY_TO_FIELD);
bundle.add(SY_GRAVE_TO_HAND);
bundle.add(SY_GRAVE_TO_FIELD);
bundle.add(SY_GRAVE_TO_LAND);
bundle.add(SY_GRAVE_TO_LIBRARY);
bundle.add(TY_HAND_TO_LAND);
bundle.add(TY_HAND_TO_FIELD);
bundle.add(TY_LIBRARY_TO_HAND);
bundle.add(TY_LIBRARY_TO_LAND);
bundle.add(TY_LIBRARY_TO_FIELD);
bundle.add(TY_GRAVE_TO_HAND);
bundle.add(TY_GRAVE_TO_FIELD);
bundle.add(TY_GRAVE_TO_LAND);
bundle.add(TY_GRAVE_TO_LIBRARY);
// MIGHT be good if healer!
bundle.add(SY_FIELD_TO_HAND);
bundle.add(TY_FIELD_TO_HAND);
ret = hasHint(card.getCard(), key, bundle);
if (!ret)
{
bundle = new HintBundle();
bundle.add(TY_LIBRARY_TOP);
bundle.add(TA_FROM_LIBRARY);
ret = hasAllHints(card.getCard(), key, bundle);
}
if (!ret)
{
bundle = new HintBundle();
bundle.add(SY_LIBRARY_TOP);
bundle.add(S_FROM_LIBRARY);
ret = hasAllHints(card.getCard(), key, bundle);
}
return ret;
}