bool CUnitHandler::AddUnit(CUnit* unit) { // LoadUnit should make sure this is true assert(CanAddUnit(unit->id)); InsertActiveUnit(unit); teamHandler->Team(unit->team)->AddUnit(unit, CTeam::AddBuilt); VectorInsertUnique(unitsByDefs[unit->team][unit->unitDef->id], unit, false); maxUnitRadius = std::max(unit->radius, maxUnitRadius); return true; }
/* AddLib * adds a dynamic library to end of ordered set * * "lib" [ IN ] - library returned from KDyldLoadLib */ static rc_t KDlsetAddLibInt ( KDlset *self, KDylib *lib ) { uint32_t idx; rc_t rc = VectorAppend ( & self -> ord, & idx, lib ); if ( rc == 0 ) { void *ignore; rc = VectorInsertUnique ( & self -> name, lib, NULL, KDylibSort ); if ( rc == 0 ) return 0; VectorSwap ( & self -> ord, idx, NULL, & ignore ); } return rc; }