The array you use inside a db->select() is the array with the names of the columns that have the information you want to retrieve. What array_unique does is to remove duplicates from that array. So you can't use array_unique inside a db->select for what you want to do.
The usual database functionality that does what you want is Select Distinct, however I don't know how to do that with mysidia's database calls without creating a new database function. So I guess the easiest way is like this:
PHP Code:
$array = $mysidia->db->select("owned_adoptables", array("type"), "owner = '{$mysidia->user->username}'")->fetchAll(PDO::FETCH_UNIQUE);
$owned1 = count($array);