diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2025-03-31 12:02:44 -0400 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2025-03-31 12:02:44 -0400 |
| commit | 89614d1dee1049a08e64aead95de6fb28fa7b150 (patch) | |
| tree | 77e59a92c370154d7b7d859506e570a1fffd66c3 /src/project.cpp | |
| parent | 119c83096a81c5aef45a0dbef029bd2e49d2e977 (diff) | |
pke: parse uuid from scene and project files
Diffstat (limited to 'src/project.cpp')
| -rw-r--r-- | src/project.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/project.cpp b/src/project.cpp index d371f68..c94451f 100644 --- a/src/project.cpp +++ b/src/project.cpp @@ -175,7 +175,7 @@ void Proj_DeserializeEntityType(std::istream &stream) { // TODO leaks et.EntityTypeCode continue; } - EntityType *etPtr = EntityType_Create(); + EntityType *etPtr = EntityType_Create(et.uuid); strncpy(etPtr->modelAssetKey, et.modelAssetKey, AssetKeyLength); etPtr->entityTypeCode = et.entityTypeCode; if (createInstanceSig[0] == '\0') { @@ -224,6 +224,11 @@ void Proj_DeserializeEntityType(std::istream &stream) { assert(result2 == STR2NUM_ERROR::SUCCESS); continue; } + if (strstr(projReadLine, PKE_PROJ_FILE_ENTITY_TYPE_UUID)) { + uint64_t prefixLen = strlen(PKE_PROJ_FILE_ENTITY_TYPE_UUID); + (projReadLine + prefixLen) >> et.uuid; + continue; + } if (strstr(projReadLine, PKE_PROJ_FILE_ENTITY_TYPE_CREATE_INSTANCE_CALLBACK_SIGNATURE)) { uint64_t prefixLen = strlen(PKE_PROJ_FILE_ENTITY_TYPE_CREATE_INSTANCE_CALLBACK_SIGNATURE); strncpy(createInstanceSig, projReadLine + prefixLen, CallbackSignatureLength + 1); |
