summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2PeopleArray.h
blob: f59f090ce6209d79a78e9b553575663931c9a4e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef T2DLL_T2PEOPLEARRAY_H
#define T2DLL_T2PEOPLEARRAY_H
#include "../common.h"
#include "T2ObjectArray.h"
#include "T2People.h"

class AFX_CLASS_EXPORT T2PeopleArray : public T2ObjectArray {
public:
	enum { kGroupSize = 256 };

	T2PeopleArray(unsigned int startID = 1);
    virtual ~T2PeopleArray() {}
    virtual void DispatchIdle(T2TowerDoc*, int);
	T2People* FindPeople(unsigned int);
	void ResolveLink(T2PeopleArrayList*);
	T2People* FindUnusedPeople();
	void DrawSearchedPerson(T2TowerDoc*);
	void SetWalkPeople(int);
	void DayChanged();
	void TenantRemoved(unsigned int);
	void AddStress(int);
	void BreakoutEmergency(T2TowerDoc*);
	void Read(T2Archive&, T2TowerDoc*);
	void Write(T2Archive&);

	T2People* GetIndexPeople(int i) { return &mPeople[i]; }

protected:
    T2People mPeople[kGroupSize];
	friend class DbgPeopleView;
    friend class T2TowerDoc;
};
#endif