Difference for common/loader.l from version 1.8 to 1.9


version 1.8 version 1.9
Line 1
 
Line 1
 %{  %{
 /*  /*
  * static char *rcsid_object_c =   * static char *rcsid_object_c =
  *   "$Id: loader.l,v 1.8 2001/01/24 05:01:36 cvs Exp $";   *   "$Id: loader.l,v 1.9 2001/02/11 09:12:12 cvs Exp $";
  */   */
   
 /*  /*
Line 87
 
Line 87
 };  };
   
   
 #define YY_DECL int lex_load(object *op)  #define YY_DECL int lex_load(object *op, int map_flags)
   
 static char *yval();  static char *yval();
   
Line 199
 
Line 199
      tmp->arch = find_archetype(yval());       tmp->arch = find_archetype(yval());
      if (tmp->arch!=NULL)        if (tmp->arch!=NULL)
  copy_object(&tmp->arch->clone,tmp);   copy_object(&tmp->arch->clone,tmp);
      lex_load(tmp);       lex_load(tmp, map_flags);
      insert_ob_in_ob(tmp,op);       insert_ob_in_ob(tmp,op);
  }   }
  /* This is the actual archetype definition then */   /* This is the actual archetype definition then */
Line 233
 
Line 233
 ^last_eat{S}     op->last_eat = IVAL;  ^last_eat{S}     op->last_eat = IVAL;
 ^speed{S}     { op->speed = FVAL;  ^speed{S}     { op->speed = FVAL;
  if (op->speed<0) op->speed_left = op->speed_left-RANDOM()%100/100.0;   if (op->speed<0) op->speed_left = op->speed_left-RANDOM()%100/100.0;
  update_ob_speed(op);   if (!(map_flags & MAP_STYLE)) update_ob_speed(op);
      }       }
 ^speed_left{S}    op->speed_left = FVAL;  ^speed_left{S}    op->speed_left = FVAL;
 ^slow_move{S}     { SET_SLOW_PENALTY(op,FVAL);  ^slow_move{S}     { SET_SLOW_PENALTY(op,FVAL);
Line 512
 
Line 512
  *   *
  */   */
   
 int load_object(FILE *fp, object *op, int bufstate) {  int load_object(FILE *fp, object *op, int bufstate, int map_flags) {
     int retval;      int retval;
     char inbuf[MAX_BUF];      char inbuf[MAX_BUF];
   
     if (bufstate==LO_NEWFILE || bufstate==LO_NOREAD) {      if (bufstate==LO_NEWFILE || bufstate==LO_NOREAD) {
  LOG(llevDebug,"Switching lex buffers\n");  /* LOG(llevDebug,"Switching lex buffers\n");*/
  yy_delete_buffer(YY_CURRENT_BUFFER);   yy_delete_buffer(YY_CURRENT_BUFFER);
  yy_switch_to_buffer(yy_create_buffer(fp, YY_BUF_SIZE));   yy_switch_to_buffer(yy_create_buffer(fp, YY_BUF_SIZE));
  if (bufstate==LO_NOREAD) return LL_NORMAL;   if (bufstate==LO_NOREAD) return LL_NORMAL;
Line 526
 
Line 526
  YY_BUFFER_STATE  yybufstate;   YY_BUFFER_STATE  yybufstate;
  while (fgets(inbuf, MAX_BUF-3, fp)) {   while (fgets(inbuf, MAX_BUF-3, fp)) {
      yybufstate=yy_scan_string(inbuf);       yybufstate=yy_scan_string(inbuf);
      retval=lex_load(op);       retval=lex_load(op, map_flags);
      yy_delete_buffer(yybufstate);       yy_delete_buffer(yybufstate);
      if (retval==LL_NORMAL) return retval;       if (retval==LL_NORMAL) return retval;
  }   }
Line 534
 
Line 534
  return LL_EOF;   return LL_EOF;
     }      }
   
     retval=lex_load(op);      retval=lex_load(op, map_flags);
 /*    LOG(llevDebug," load completed, object=%s\n",op->name);*/  /*    LOG(llevDebug," load completed, object=%s\n",op->name);*/
     return retval;      return retval;
 }  }
Line 552
 
Line 552
   
     yy_push_state(INITIAL);      yy_push_state(INITIAL);
     yybufstate=yy_scan_string(buf);      yybufstate=yy_scan_string(buf);
     retval=lex_load(op);      retval=lex_load(op,0);
     yy_switch_to_buffer(yycurbuf);      yy_switch_to_buffer(yycurbuf);
     yy_delete_buffer(yybufstate);      yy_delete_buffer(yybufstate);
     yy_pop_state();      yy_pop_state();


Legend:
line(s) removed in v.1.8 
line(s) changed
 line(s) added in v.1.9

File made using version 1.98 of cvs2html by leaf at 2011-07-21 17:12