summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2SantaClaus.h
blob: a6ba86642acabad19802a7b0a1f1cac3ff784a0a (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#pragma once
#include "common.h"
#include "LAttachment.h"
#include "T2EventItem.h"

class T2SantaClausAttach;

class AFX_CLASS_EXPORT T2SantaClaus : public T2EventItem {
public:
	T2SantaClaus(T2TowerEvent* inTowerEvent, CResFile* inResFile, int inSubID);
	virtual ~T2SantaClaus();
	virtual BOOL Start(T2TowerDoc* inDoc);
	virtual BOOL IsBeginTime(unsigned int inTime);
	virtual int Exec(T2TowerDoc* inDoc);
	virtual void StopEvent(T2TowerDoc* inDoc);
	virtual DWORD GetID() { return 'SaEv'; }

private:
	void Show();
	void Hide();

	friend class T2SantaClausAttach;

	int m30;
	int mSpriteWidth;
	int mSpriteHeight;
	int mWidth;
	CPoint mPosition;
	int m48;
	int m4C;
	unsigned int mCounter;
	int mSpriteID;
	T2Sprite *mSprite;
	T2BitImage *mImage;
	T2ImageObj *mImageObj;
	T2TowerMainView *mMainView;
	T2SantaClausAttach *mAttach;
	BOOL m6C;
	BOOL mVisible;
};

class T2SantaClausAttach : public LAttachment {
public:
	T2SantaClausAttach(T2SantaClaus* inOwner, unsigned int inMessage, BOOL inExecuteHost);
	virtual ~T2SantaClausAttach();
protected:
	virtual void ExecuteSelf(unsigned int inMessage, void* ioData);
	T2SantaClaus *mOwner;
};