Asteroid* UnitFactory::createAsteroid( const char *filename, int faction, Flightgroup *fg, int fg_snumber, float difficulty, ObjSerial netcreate ) { _Universe->netLock( true ); Asteroid *ast = new Asteroid( filename, faction, fg, fg_snumber, difficulty ); _Universe->netLock( false ); if (netcreate) //Only allow creating through system files? Doesn't make sense to be able to dynamically generate these. ast->SetSerial( netcreate ); /* * if ( !_Universe->netLocked()) { * NetBuffer netbuf; * addAsteroidBuffer( netbuf, ast); * endBuffer(netbuf); * // NETFIXME: addBuffer for all subunits? * VSServer->broadcast( netbuf, 0, _Universe->activeStarSystem()->GetZone(), CMD_ENTERCLIENT, true); * } * VSServer->invalidateSnapshot(); */ return ast; }
Asteroid* UnitFactory::createAsteroid( const char * filename, int faction, Flightgroup* fg, int fg_snumber, float difficulty, ObjSerial netcreate ) { Asteroid * ast = new GameAsteroid( filename, faction, fg, fg_snumber, difficulty ); if( netcreate) { KillDuplicateUnits( netcreate); ast->SetSerial( netcreate); } return ast; }