| 230 | } |
| 231 | |
| 232 | void afxChoreographer::onDeleteNotify(SimObject* obj) |
| 233 | { |
| 234 | if (dynamic_cast<SceneObject*>(obj)) |
| 235 | { |
| 236 | SceneObject* scn_obj = (SceneObject*)(obj); |
| 237 | for (S32 i = 0; i < dyn_cons_defs->size(); i++) |
| 238 | if ((*dyn_cons_defs)[i].cons_type != OBJECT_CONSTRAINT || (*dyn_cons_defs)[i].cons_obj.object != scn_obj) |
| 239 | dyn_cons_defs2->push_back((*dyn_cons_defs)[i]); |
| 240 | |
| 241 | Vector<dynConstraintDef>* tmp = dyn_cons_defs; |
| 242 | dyn_cons_defs = dyn_cons_defs2; |
| 243 | dyn_cons_defs2 = tmp; |
| 244 | dyn_cons_defs2->clear(); |
| 245 | |
| 246 | if (isServerObject() && scn_obj->isScopeable()) |
| 247 | constraint_mgr->removeScopeableObject(scn_obj); |
| 248 | } |
| 249 | else if (dynamic_cast<NetConnection*>(obj)) |
| 250 | { |
| 251 | removeExplicitClient((NetConnection*)obj); |
| 252 | } |
| 253 | |
| 254 | Parent::onDeleteNotify(obj); |
| 255 | } |
| 256 | |
| 257 | bool afxChoreographer::onNewDataBlock(GameBaseData* dptr, bool reload) |
| 258 | { |
nothing calls this directly
no test coverage detected