1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-25 22:42:04 +02:00

Partially redone combined artifacts.

This commit is contained in:
Michał W. Urbańczyk
2011-01-22 03:43:20 +00:00
parent 591ba76f69
commit 3fde9e45df
16 changed files with 291 additions and 48 deletions

View File

@@ -746,6 +746,10 @@ struct StackLocation
struct CGarrisonOperationPack : CPackForClient
{
};
struct CArtifactOperationPack : CPackForClient
{
};
struct ChangeStackCount : CGarrisonOperationPack //521
{
@@ -856,7 +860,7 @@ struct ArtifactLocation
}
};
struct PutArtifact : CGarrisonOperationPack //526
struct PutArtifact : CArtifactOperationPack //526
{
ArtifactLocation al;
ConstTransitivePtr<CArtifactInstance> art;
@@ -870,7 +874,7 @@ struct PutArtifact : CGarrisonOperationPack //526
}
};
struct EraseArtifact : CGarrisonOperationPack //527
struct EraseArtifact : CArtifactOperationPack //527
{
ArtifactLocation al;
@@ -883,7 +887,7 @@ struct EraseArtifact : CGarrisonOperationPack //527
}
};
struct MoveArtifact : CGarrisonOperationPack //528
struct MoveArtifact : CArtifactOperationPack //528
{
ArtifactLocation src, dst;
@@ -896,6 +900,35 @@ struct MoveArtifact : CGarrisonOperationPack //528
}
};
struct AssembledArtifact : CArtifactOperationPack //529
{
ArtifactLocation al; //where assembly will be put
CArtifact *builtArt;
//std::vector<CArtifactInstance *> constituents;
void applyCl(CClient *cl);
DLL_EXPORT void applyGs(CGameState *gs);
template <typename Handler> void serialize(Handler &h, const int version)
{
h & al & builtArt/* & constituents*/;
}
};
struct DisassembledArtifact : CArtifactOperationPack //530
{
ArtifactLocation al;
void applyCl(CClient *cl);
DLL_EXPORT void applyGs(CGameState *gs);
template <typename Handler> void serialize(Handler &h, const int version)
{
h & al;
}
};
struct NewTurn : public CPackForClient //101
{
enum weekType {NORMAL, DOUBLE_GROWTH, BONUS_GROWTH, DEITYOFFIRE, PLAGUE, CUSTOM, NO_ACTION, NONE};