summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2ElvModuleList.h
blob: 1547a0f07861ac6bcf3eb1966c382bfda50e0579 (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
#pragma once
#include "common.h"
#include "T2MoverModuleList.h"

class AFX_CLASS_EXPORT T2ElvModuleList : public T2MoverModuleList {
public:
	T2ElvModuleList();
	virtual ~T2ElvModuleList();
	virtual BOOL Init(T2MoverDef* moverDef, const RECT& baseRect);
	virtual void Destruct(T2TowerDoc*);
	virtual T2MoverModule* ConstructModule();
    virtual void StopAdded(T2TowerDoc*, T2Mover*, int);
    virtual void StopRemoved(T2TowerDoc*, T2Mover*, int);
    virtual void Read(T2Archive&, T2TowerDoc*);
    virtual void Write(T2Archive&);

    void AddModule(T2TowerDoc* towerDoc, int count, int position);
	int DestructModule(T2TowerDoc* towerDoc, T2Mover* mover, POINT pt);
	BOOL IsHomePosition(int position);
	void MoverExpanded(T2Mover*, EEquipPos pos, int count);

protected:
    virtual DWORD GetMMClassID() { return 'ElML'; }
    void CalcBaseQDRect(RECT&);

    RECT mModuleInset;
};