Command *Command::opActivateMesh(const ResourceReference &meshRef) { BonesMesh *mesh = meshRef.resolve<BonesMesh>(); Item *item = mesh->findParent<Item>(); if (!item || (item->getSubType() != Item::kItemGlobalTemplate && item->getSubType() != Item::kItemLevelTemplate && item->getSubType() != Item::kItemModel)) { return nextCommand(); } if (item->getSubType() == Item::kItemModel) { ModelItem *modelItem = Object::cast<ModelItem>(item); modelItem->setBonesMesh(mesh->getIndex()); } else { ItemTemplate *templateItem = Object::cast<ItemTemplate>(item); templateItem->setBonesMesh(mesh->getIndex()); } return nextCommand(); }