Changeset 2533 for code/branches/bugger/src/network/packet
- Timestamp:
- Dec 23, 2008, 11:34:35 PM (16 years ago)
- Location:
- code/branches/bugger
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/bugger
- Property svn:mergeinfo changed
/code/branches/lodfinal (added) merged: 2372,2380,2388,2394-2395,2402,2411
- Property svn:mergeinfo changed
-
code/branches/bugger/src/network/packet/Gamestate.cc
r2532 r2533 349 349 Gamestate *gs = new Gamestate(gdata); 350 350 uint8_t *newdata = gdata + sizeof(GamestateHeader); 351 //uint8_t *origdata = GAMESTATE_START(data_);351 uint8_t *origdata = GAMESTATE_START(data_); 352 352 353 353 //copy the GamestateHeader … … 357 357 uint32_t objectOffset; 358 358 unsigned int objectsize, destsize=0; 359 Synchronisable *object; 359 // TODO: Why is this variable not used? 360 //Synchronisable *object; 360 361 361 362 //call TrafficControl … … 366 367 if((*it).objSize==0) 367 368 continue; 368 oldobjectheader = (synchronisableHeader*) (data_ + (*it).objDataOffset);369 oldobjectheader = (synchronisableHeader*)origdata; 369 370 newobjectheader = (synchronisableHeader*)newdata; 370 object = Synchronisable::getSynchronisable( (*it).objID );371 assert(object->objectID == oldobjectheader->objectID);371 // object = Synchronisable::getSynchronisable( (*it).objID ); 372 // assert(object->objectID == oldobjectheader->objectID); 372 373 objectsize = oldobjectheader->size; 373 *newobjectheader = *oldobjectheader;374 374 objectOffset=sizeof(synchronisableHeader); //skip the size and the availableData variables in the objectheader 375 if ( /*object->doSelection(HEADER->id)*/true ){ 375 if ( (*it).objID == oldobjectheader->objectID ){ 376 memcpy(newdata, origdata, objectsize); 376 377 assert(newobjectheader->dataAvailable==true); 377 memcpy(newdata+objectOffset, data_ + (*it).objDataOffset + objectOffset, objectsize-objectOffset);378 ++it; 378 379 }else{ 380 *newobjectheader = *oldobjectheader; 379 381 newobjectheader->dataAvailable=false; 380 382 memset(newdata+objectOffset, 0, objectsize-objectOffset); 381 assert(objectOffset==objectsize);382 383 } 383 384 newdata += objectsize; 385 origdata += objectsize; 384 386 destsize += objectsize; 385 387 // origdata += objectsize; 386 388 } 387 389 ((GamestateHeader*)gdata)->datasize = destsize; 390 assert(destsize==HEADER->datasize); 388 391 assert(destsize!=0); 389 392 return gs;
Note: See TracChangeset
for help on using the changeset viewer.