--- deliantra/server/common/arch.C 2006/08/13 17:16:00 1.1 +++ deliantra/server/common/arch.C 2006/08/28 14:05:23 1.5 @@ -1,6 +1,6 @@ /* * static char *rcsid_arch_c = - * "$Id: arch.C,v 1.1 2006/08/13 17:16:00 elmex Exp $"; + * "$Id: arch.C,v 1.5 2006/08/28 14:05:23 root Exp $"; */ /* @@ -31,6 +31,8 @@ #include #include +#include + /* IF set, does a little timing on the archetype load. */ #define TIME_ARCH_LOAD 0 @@ -399,7 +401,7 @@ * Reads/parses the archetype-file, and copies into a linked list * of archetype-structures. */ -void first_arch_pass(FILE *fp) { +void first_arch_pass(object_thawer &fp) { object *op; archetype *at,*head=NULL,*last_more=NULL; int i,first=2; @@ -546,7 +548,10 @@ #if TIME_ARCH_LOAD GETTIMEOFDAY(&tv1); #endif - first_arch_pass(fp); + { + object_thawer thawer (fp); + first_arch_pass (thawer); + } #if TIME_ARCH_LOAD { int sec, usec; GETTIMEOFDAY(&tv2); @@ -593,6 +598,7 @@ } op=get_object(); copy_object(&at->clone,op); + op->instantiate (); op->arch=at; return op; } @@ -731,6 +737,7 @@ return NULL; } copy_object(&at->clone,op); + op->instantiate (); return op; }