1 /*
2  * OpenClonk, http://www.openclonk.org
3  *
4  * Copyright (c) 1998-2000, Matthes Bender
5  * Copyright (c) 2001-2009, RedWolf Design GmbH, http://www.clonk.de/
6  * Copyright (c) 2009-2016, The OpenClonk Team and contributors
7  *
8  * Distributed under the terms of the ISC license; see accompanying file
9  * "COPYING" for details.
10  *
11  * "Clonk" is a registered trademark of Matthes Bender, used with permission.
12  * See accompanying file "TRADEMARK" for details.
13  *
14  * To redistribute this file separately, substitute the full license texts
15  * for the above references.
16  */
17 
18 /* Holds crew member information */
19 
20 #ifndef INC_C4ObjectInfo
21 #define INC_C4ObjectInfo
22 
23 #include "graphics/C4FacetEx.h"
24 #include "graphics/C4Surface.h"
25 #include "object/C4InfoCore.h"
26 #include "object/C4Object.h"
27 
28 class C4ObjectInfo: public C4ObjectInfoCore
29 {
30 public:
31 	C4ObjectInfo();
32 	~C4ObjectInfo();
33 public:
34 	bool WasInAction;
35 	bool InAction;
36 	int32_t InActionTime;
37 	bool HasDied;
38 	int32_t ControlCount;
39 	class C4Def *pDef; // definition to ID - only resolved if defs were loaded at object info loading time
40 	char Filename[_MAX_PATH+1];
41 	C4ObjectInfo *Next;
42 public:
43 	void Default();
44 	void Clear();
45 	void Evaluate();
46 	void Retire();
47 	void Recruit();
48 	void SetBirthday();
49 	bool Save(C4Group &hGroup, bool fStoreTiny, C4DefList *pDefs);
50 	bool Load(C4Group &hGroup);
51 	bool Load(C4Group &hMother, const char *szEntryname);
52 };
53 
54 #endif
55