@Override
    public boolean equals(Object o)//TODO: triggers affecting other cards
    {
        if (!(o instanceof Ability_Triggered)) return false;
        Ability_Triggered tmp = (Ability_Triggered) o;
        return tmp.getSourceCard().equals(getSourceCard()) && tmp.trigger.equals(trigger) && tmp.todo.equals(todo)
                && Arrays.equals(tmp.restrictions, restrictions);
    }