CObject::CObject(CDummyObject *object) { SetModelIndexNoCreate(object->model_index); if(object->m_pRwObject) { AttachToRwObject(object->m_pRwObject, 1); } else { if(!object->m_xyz) { object->AllocateMatrix(); object->placement.RotateZ(object->m_xyz->matrix); } SetMatrix(object->m_xyz->matrix); } DetachFromRwObject(object); Init(); m_iplIndex = object->m_iplIndex; m_areaCode = object->m_areaCode; bRenderDamaged = object->bRenderDamaged; RpClump *rwobj = m_pRwObject; if(rwobj) { if(rwobj->object.type != TYPE_CLUMP) { rwobj = (RpAtomic*)getFirstAtomicInClump(rwobj); } if(!isAtomicHaveNightColor((RpAtomic*)rwobj)) { bLightObject = true; } } }
CObject::CObject(int modelIndex, bool create) { m_relatedDummy = NULL; if (create) { SetModelIndex(modelIndex); } else { SetModelIndexNoCreate(modelIndex); } Init(); }
CObject::CObject(int iModelIndex, bool bCreate) { m_pRelatedDummy = NULL; if(bCreate) { SetModelIndex(iModelIndex); } else { SetModelIndexNoCreate(iModelIndex); } Init(); }