simplify puzzle data and auto run codegen

This commit is contained in:
Asuro
2025-03-14 01:33:38 +01:00
parent 97146664f2
commit de88190c47
9 changed files with 82 additions and 143 deletions

View File

@@ -144,50 +144,12 @@ namespace Generated
}
return isOk;
}
bool Save(const ElemPos* obj, uint32_t count, Serializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Save(&obj[i].Position, 1, serializer) && isOk;
isOk = Save(&obj[i].ElemIdx, 1, serializer) && isOk;
}
return isOk;
}
bool Load(ElemPos* obj, uint32_t count, Deserializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Load(&obj[i].Position, 1, serializer) && isOk;
isOk = Load(&obj[i].ElemIdx, 1, serializer) && isOk;
}
return isOk;
}
bool Save(const PuzzleNode* obj, uint32_t count, Serializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Save(obj[i].PlacedTypes, 4, serializer) && isOk;
}
return isOk;
}
bool Load(PuzzleNode* obj, uint32_t count, Deserializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Load(obj[i].PlacedTypes, 4, serializer) && isOk;
}
return isOk;
}
bool Save(const StaticPuzzleCard* obj, uint32_t count, Serializer& serializer)
{
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Save(obj[i].Nodes, 4, serializer) && isOk;
isOk = Save(obj[i].Elements, 4, serializer) && isOk;
isOk = Save(&obj[i].ModelHandle, 1, serializer) && isOk;
}
return isOk;
@@ -197,7 +159,7 @@ namespace Generated
bool isOk = true;
for (uint32_t i = 0; i < count; ++i)
{
isOk = Load(obj[i].Nodes, 4, serializer) && isOk;
isOk = Load(obj[i].Elements, 4, serializer) && isOk;
isOk = Load(&obj[i].ModelHandle, 1, serializer) && isOk;
}
return isOk;
@@ -290,16 +252,16 @@ namespace Generated
for (uint32_t i = 0; i < count; ++i)
{
isOk = Save(&obj[i].ID, 1, serializer) && isOk;
isOk = Save(obj[i].PuzzleName, 64, serializer) && isOk;
isOk = Save(&obj[i].WidthTiles, 1, serializer) && isOk;
isOk = Save(&obj[i].HeightTiles, 1, serializer) && isOk;
isOk = Save(&obj[i].AvailableCardCount, 1, serializer) && isOk;
isOk = Save(obj[i].AvailableCards, 16, serializer) && isOk;
isOk = Save(&obj[i].PlacedCardCount, 1, serializer) && isOk;
isOk = Save(obj[i].PlacedCards, 256, serializer) && isOk;
isOk = Save(obj[i].PlacedNodes, 1024, serializer) && isOk;
isOk = Save(obj[i].BackgroundTiles, 1024, serializer) && isOk;
isOk = Save(&obj[i].GoalPositionCount, 1, serializer) && isOk;
isOk = Save(obj[i].GoalPositions, 16, serializer) && isOk;
isOk = Save(obj[i].PuzzleName, 64, serializer) && isOk;
}
return isOk;
}
@@ -309,16 +271,16 @@ namespace Generated
for (uint32_t i = 0; i < count; ++i)
{
isOk = Load(&obj[i].ID, 1, serializer) && isOk;
isOk = Load(obj[i].PuzzleName, 64, serializer) && isOk;
isOk = Load(&obj[i].WidthTiles, 1, serializer) && isOk;
isOk = Load(&obj[i].HeightTiles, 1, serializer) && isOk;
isOk = Load(&obj[i].AvailableCardCount, 1, serializer) && isOk;
isOk = Load(obj[i].AvailableCards, 16, serializer) && isOk;
isOk = Load(&obj[i].PlacedCardCount, 1, serializer) && isOk;
isOk = Load(obj[i].PlacedCards, 256, serializer) && isOk;
isOk = Load(obj[i].PlacedNodes, 1024, serializer) && isOk;
isOk = Load(obj[i].BackgroundTiles, 1024, serializer) && isOk;
isOk = Load(&obj[i].GoalPositionCount, 1, serializer) && isOk;
isOk = Load(obj[i].GoalPositions, 16, serializer) && isOk;
isOk = Load(obj[i].PuzzleName, 64, serializer) && isOk;
}
return isOk;
}