Your question is about using Rules and find '... something like "total points of the user" ...' (and related to Rules Event "When user points are granted to a user"). So have a look at this Rules example (in Rules export format):
{ "rules_grant_new_role" : {
"LABEL" : "Grant a new role",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "userpoints_rules", "rules", "rules_conditional" ],
"ON" : { "userpoints_event_points_awarded_after" : [] },
"DO" : [
{ "userpoints_rules_get_current_points" : {
"USING" : { "user" : [ "site:current-user" ], "tid" : "all" },
"PROVIDE" : { "loaded_points" : { "total_points" : "Number of points in all categories together" } }
}
},
{ "CONDITIONAL" : [
{
"IF" : { "NOT data_is" : { "data" : [ "total-points" ], "op" : "\u003C", "value" : "11" } },
"DO" : [
{ "drupal_message" : { "message" : "You have at least 11 points (actually you have [total-points:value] points ...)." } }
]
}
]
}
]
}
}
The above rule does retrieve, as the very first Rules Action (not Rules Condition!) the current amount of user points of a user. If the amount is at least 11, it will show an appropriate message about that (just replace that with a Rules Action to grant a role to fit your case).
In this example I'm using the Conditional Rules module, though you could also rework the Rules Action to performing Rules Components (in which you add the appropriate Rules Conditions), so that you don't need this extra module.
The clue to make this rule work is the very first Rules Action "Load user points of a user". That's the alternative (work around?) for something like a missing Rules Condition to "check the current user points for a user".