本文整理汇总了C++中CCObject::Unserialize方法的典型用法代码示例。如果您正苦于以下问题:C++ CCObject::Unserialize方法的具体用法?C++ CCObject::Unserialize怎么用?C++ CCObject::Unserialize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CCObject
的用法示例。
在下文中一共展示了CCObject::Unserialize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Unserialize
void AGSDeSerializer::Unserialize(int index, const char *objectType, const char *serializedData, int dataSize) {
if (strcmp(objectType, "GUIObject") == 0) {
ccDynamicGUIObject.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Character") == 0) {
ccDynamicCharacter.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Hotspot") == 0) {
ccDynamicHotspot.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Region") == 0) {
ccDynamicRegion.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Inventory") == 0) {
ccDynamicInv.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Dialog") == 0) {
ccDynamicDialog.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "GUI") == 0) {
ccDynamicGUI.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "Object") == 0) {
ccDynamicObject.Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "String") == 0) {
ScriptString *scf = new ScriptString();
scf->Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "File") == 0) {
// files cannot be restored properly -- so just recreate
// the object; attempting any operations on it will fail
sc_File *scf = new sc_File();
ccRegisterUnserializedObject(index, scf, scf);
}
else if (strcmp(objectType, "Overlay") == 0) {
ScriptOverlay *scf = new ScriptOverlay();
scf->Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "DateTime") == 0) {
ScriptDateTime *scf = new ScriptDateTime();
scf->Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "ViewFrame") == 0) {
ScriptViewFrame *scf = new ScriptViewFrame();
scf->Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "DynamicSprite") == 0) {
ScriptDynamicSprite *scf = new ScriptDynamicSprite();
scf->Unserialize(index, serializedData, dataSize);
}
else if (strcmp(objectType, "DrawingSurface") == 0) {
ScriptDrawingSurface *sds = new ScriptDrawingSurface();
sds->Unserialize(index, serializedData, dataSize);
if (sds->isLinkedBitmapOnly)
{
dialogOptionsRenderingSurface = sds;
}
}
else if (strcmp(objectType, "DialogOptionsRendering") == 0)
{
ccDialogOptionsRendering.Unserialize(index, serializedData, dataSize);
}
else if (!unserialize_audio_script_object(index, objectType, serializedData, dataSize))
{
// check if the type is read by a plugin
for (int ii = 0; ii < numPluginReaders; ii++) {
if (strcmp(objectType, pluginReaders[ii].type) == 0) {
pluginReaders[ii].reader->Unserialize(index, serializedData, dataSize);
return;
}
}
quitprintf("Unserialise: unknown object type: '%s'", objectType);
}
}