simplify puzzle data and auto run codegen
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
@@ -98,21 +98,10 @@ namespace Generated
|
||||
int8_t X = {};
|
||||
int8_t Y = {};
|
||||
};
|
||||
struct ElemPos
|
||||
{
|
||||
static constexpr uint32_t Hash = 3966109730;
|
||||
PuzPos Position = {};
|
||||
uint8_t ElemIdx = {};
|
||||
};
|
||||
struct PuzzleNode
|
||||
{
|
||||
static constexpr uint32_t Hash = 1417779061;
|
||||
PuzzleElementType::Enum PlacedTypes[4] = {};
|
||||
};
|
||||
struct StaticPuzzleCard
|
||||
{
|
||||
static constexpr uint32_t Hash = 110653106;
|
||||
PuzzleNode Nodes[4] = {};
|
||||
static constexpr uint32_t Hash = 2507139249;
|
||||
PuzzleElementType::Enum Elements[4] = {};
|
||||
uint16_t ModelHandle = {};
|
||||
};
|
||||
struct StaticPuzzleCardHandle
|
||||
@@ -122,7 +111,7 @@ namespace Generated
|
||||
};
|
||||
struct StaticPuzzleData
|
||||
{
|
||||
static constexpr uint32_t Hash = 1881743597;
|
||||
static constexpr uint32_t Hash = 3210954810;
|
||||
StaticPuzzleCard Cards[64] = {};
|
||||
};
|
||||
struct PuzzleCardStack
|
||||
@@ -142,18 +131,18 @@ namespace Generated
|
||||
};
|
||||
struct PuzzleData
|
||||
{
|
||||
static constexpr uint32_t Hash = 255994202;
|
||||
static constexpr uint32_t Hash = 2775382112;
|
||||
uint16_t ID = {};
|
||||
char PuzzleName[64] = {};
|
||||
uint8_t WidthTiles = {};
|
||||
uint8_t HeightTiles = {};
|
||||
uint32_t AvailableCardCount = {};
|
||||
PuzzleCardStack AvailableCards[16] = {};
|
||||
uint32_t PlacedCardCount = {};
|
||||
PlacedPuzzleCard PlacedCards[256] = {};
|
||||
PuzzleNode PlacedNodes[1024] = {};
|
||||
PuzzleElementType::Enum BackgroundTiles[1024] = {};
|
||||
uint32_t GoalPositionCount = {};
|
||||
ElemPos GoalPositions[16] = {};
|
||||
char PuzzleName[64] = {};
|
||||
PuzPos GoalPositions[16] = {};
|
||||
};
|
||||
bool Save(const PuzzleElementType::Enum* obj, uint32_t count, Serializer& serializer);
|
||||
bool Load(PuzzleElementType::Enum* obj, uint32_t count, Deserializer& serializer);
|
||||
@@ -169,10 +158,6 @@ namespace Generated
|
||||
bool Load(Mat4* obj, uint32_t count, Deserializer& serializer);
|
||||
bool Save(const PuzPos* obj, uint32_t count, Serializer& serializer);
|
||||
bool Load(PuzPos* obj, uint32_t count, Deserializer& serializer);
|
||||
bool Save(const ElemPos* obj, uint32_t count, Serializer& serializer);
|
||||
bool Load(ElemPos* obj, uint32_t count, Deserializer& serializer);
|
||||
bool Save(const PuzzleNode* obj, uint32_t count, Serializer& serializer);
|
||||
bool Load(PuzzleNode* obj, uint32_t count, Deserializer& serializer);
|
||||
bool Save(const StaticPuzzleCard* obj, uint32_t count, Serializer& serializer);
|
||||
bool Load(StaticPuzzleCard* obj, uint32_t count, Deserializer& serializer);
|
||||
bool Save(const StaticPuzzleCardHandle* obj, uint32_t count, Serializer& serializer);
|
||||
|
||||
Reference in New Issue
Block a user