#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; };