EFUN: call_out

SYNTAX:
void call_out( fun, delay[, arg] );
  string fun | closure fun;
  int delay;
  mixed arg;

DESCRIPTION:
Call_out sets up a delayed call to function 'fun' in this_object().
The call will be issued after 'delay' seconds. If 'arg' is given, its
value will be passed as an argument to 'fun'.
NOTE: Call_out is a memory expensive function. If you need repeated
calls consider using heart_heat instead. Make sure that call_out does
not accidentally call itself again.

RETURN VALUE
none

SEE ALSO:
remove_call_out
find_call_out
call_out_info
set_heart_beat

EXAMPLE:
int do_cast( string str ) {
  if( str != "delayed blast fireball" ) return 0;
  write( "You cast a delayed blast fireball.\n"
    + "Now leave quickly before it goes off in your face.\n" );
  call_out( "trigger_blast", 15 );
  return 1;
}

void trigger_blast() {
  write( "In the distance you hear the room explode.\n" );
}
// At 15 seconds after the spell is cast, the blast message is written.
