Using Pathauto and custom nodes
You can define custom tokens such that they can be replaced by pathauto. 

See Implementation with a custom Module

The idea is to define tokens such that they get displayed in pathauto's admin page. and we manage the token from our code; after checking conditions. 

AS OP's request here's my D6 code that i've implemented. 

function MODULENAME_token_list($type = 'all') {
  $tokens['MODULENAME']['fullname'] = 'The Use\'r Display Name';
  return $tokens;
}


function MODULENAME_token_values($type, $object = NULL, $options = array()) {
  $tokens['fullname'] = _MODULENAME_get_display_name($object-&gt;uid);
  return $tokens;
}

function _MODULENAME_get_display_name($uid) {
  //load corresponding user and  get $displayname 
  return $displayname;
}