mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-25 22:42:04 +02:00
Rotation rebase2 (#912)
* Instead of [x][y][z] coordinates, map will be stored as [z][x][y]. * Nullkiller AI can get it too. * Use boost::multi_array instead of nested vectors * In MapHandler too * Rotate foreach algorithms, too * VCAI gets rotated, too
This commit is contained in:
@@ -350,6 +350,18 @@ public:
|
||||
save((ui8)0);
|
||||
}
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
void save(const boost::multi_array<T, 3> &data)
|
||||
{
|
||||
ui32 length = data.num_elements();
|
||||
*this & length;
|
||||
auto shape = data.shape();
|
||||
ui32 x = shape[0], y = shape[1], z = shape[2];
|
||||
*this & x & y & z;
|
||||
for(ui32 i = 0; i < length; i++)
|
||||
save(data.data()[i]);
|
||||
}
|
||||
};
|
||||
|
||||
class DLL_LINKAGE CSaveFile : public IBinaryWriter
|
||||
|
||||
Reference in New Issue
Block a user