Exemple #1
0
INode* SpriteReader::CreateNodeWithFlatBuffers(INodeEditor& editor, const flatbuffers::Table* spriteOptions, const StringRef& className /*= StringRef::Empty*/, NodeCreateFlags flags /*= NodeCreateFlags::None*/)
{
	auto options = (flatbuffers::SpriteOptions*)spriteOptions;
	auto sprite = CreateSprite(options->fileNameData()->path()->c_str());
	SetPropsWithFlatBuffers(sprite, (flatbuffers::Table*) options->nodeOptions());
	return sprite;
}
 void ComAudioReader::setPropsWithFlatBuffers(cocos2d::Node *node,
                                              const flatbuffers::Table *comAudioOptions)
 {
     auto options = (ComAudioOptions*)comAudioOptions;
     
     auto nodeReader = NodeReader::getInstance();
     nodeReader->setPropsWithFlatBuffers(node, (Table*)(options->nodeOptions()));
 }
 void ProjectNodeReader::setPropsWithFlatBuffers(cocos2d::Node *node,
                                                 const flatbuffers::Table* projectNodeOptions)
 {
     auto options = (ProjectNodeOptions*)projectNodeOptions;
     
     auto nodeReader = NodeReader::getInstance();
     
     nodeReader->setPropsWithFlatBuffers(node, (Table*)options->nodeOptions());
 }
INode* ProjectNodeReader::CreateNodeWithFlatBuffers(INodeEditor& editor, const flatbuffers::Table* nodeOptions, const StringRef& className, NodeCreateFlags flags /*= NodeCreateFlags::None*/)
{
	auto projectNodeOptions = (flatbuffers::ProjectNodeOptions*)nodeOptions;
	StringRef filePath = projectNodeOptions->fileName()->c_str();
	filePath = Path::GetFileName(filePath);
	RETURN_NULL_IF_FALSE(FileSystem::Instance().AssertExists(filePath));
	INode* node = editor.Create("", filePath,IEventArg::Empty, flags);
	SetPropsWithFlatBuffers(node, (flatbuffers::Table*)(projectNodeOptions->nodeOptions()), flags);
	return node;
}