Crear script un poco raro

A ver si me explico bien para que me podáis ayudar, quiero crear un script seria de la siguiente manera:
X=20:30 o ---- que sería la hora o las rayas que lo pongo yo.
Y= 22/10/2013 que sería la fecha, que se pone sola.
Z=
Lo que quiero es que si hay hora en Z= PONGA LA FECHA QUE PONE EN Y
Y si no hay hora ---- en Z=NO CAMBIE LA FECHA
No lo entendí muy bien pero a ver si es esto lo que dices:
<script>
var x = '20:30';
var y = '22/10/2013';
var z = '10:00';

if(z != '----'){
  z = y;
}
</script>

Con eso lo que haces es que si z es diferente a ----, el valor de z sea igual al valor de y
Con esto vamos bien, pero hay una pega, en el valor de z sea igual al valor de y, que dicho valor no pudiera cambiarse, hasta que z fuese diferente a ----
No acabo de comprender muy bien lo que quieres hacer :(
Si pudieras explicarlo un poco mejor o poner un ejemplo de que quieras lograr sería de gran ayuda.
Lo primero darte las gracias por estar ayudándome.
Lo que quiero es que var y = '22/10/2013' que es la fecha no cambie asta que var x = '----'; se cambie a var x = '20:00';

var x = '----';
var y = '22/10/2013'; Esta fecha no cambiaría, hasta que a pareciera en var x = '20:00';
var z = y

if(x != '20:00'){
z = y;
}
Pero entonces no entiendo por qué haces una tercera variable llamada z si va a tener el mismo valor que y? XD
A ver si esta vez lo he entendido:
<script>
var x = '----';
var y = '22/10/2013';

if(x == '20:00'){
  y = [I][B]valor nuevo de y[/B][/I];
}
</script>
Haber si ahora me explico mejor tengo el script de fecha, lo que quiero es que esa fecha que a generado, con var x = '20:00' dicha fecha no podrá cambiarse asta que aparezca otra vez el valor var x = '20:00'

<script language="javascript">
<!--

var fecha=new Date();
var diames=fecha.getDate();
var diasemana=fecha.getDay();
var mes=fecha.getMonth() +1 ;
var ano=fecha.getFullYear();

var x = '----';
var y = diames + "/" + mes + "/" + ano); Esto es lo que no tiene que cambiar, hasta que cambia el var x = '20:00'