⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 colorlinezuitwplay.h

📁 使用CarbideC++编程工具
💻 H
字号:
/*
========================================================================
 Name        : ColorLinezUITwPlay.h
 Author      : 
 Copyright   : 
 Description : 
========================================================================
*/
#ifndef COLORLINEZUITWPLAY_H
#define COLORLINEZUITWPLAY_H

// [[[ begin generated region: do not modify [Generated Includes]
#include <coecntrl.h>		
// ]]] end generated region [Generated Includes]
#include <aknnavide.h>
#include <aknnavi.h>
#include "ColorLinezUITwoModel.h"
#include "CActiveTimer.h"
#include "ActiveTimerNotify.h"
// [[[ begin [Event Handler Includes]
// ]]] end [Event Handler Includes]

// [[[ begin generated region: do not modify [Generated Forward Declarations]
class MEikCommandObserver;		
class CEikImage;
// ]]] end generated region [Generated Forward Declarations]

/**
 * Container class for ColorLinezUITwPlay
 * 
 * @class	CColorLinezUITwPlay ColorLinezUITwPlay.h
 */
class CColorLinezUITwPlay : public CCoeControl,MActiveTimerNotify
	{
public:
	// constructors and destructor
	CColorLinezUITwPlay(CColorLinezUITwoModel& aModel);
	static CColorLinezUITwPlay* NewL( 
		const TRect& aRect, 
		const CCoeControl* aParent, 
		MEikCommandObserver* aCommandObserver,
		CColorLinezUITwoModel& aModel);
	static CColorLinezUITwPlay* NewLC( 
		const TRect& aRect, 
		const CCoeControl* aParent, 
		MEikCommandObserver* aCommandObserver,
		CColorLinezUITwoModel& aModel);
	void ConstructL( 
		const TRect& aRect, 
		const CCoeControl* aParent, 
		MEikCommandObserver* aCommandObserver );
	virtual ~CColorLinezUITwPlay();

public:
	// from base class CCoeControl
	TInt CountComponentControls() const;
	CCoeControl* ComponentControl( TInt aIndex ) const;
	TKeyResponse OfferKeyEventL( 
			const TKeyEvent& aKeyEvent, 
			TEventCode aType );
	void HandleResourceChange( TInt aType );	
	
	void DrawBitmap(const TPoint& aPoint,const CFbsBitmap* aBitmap,const TSize& aSize); 	
	//当重启游戏时,将XY坐标置0
	void ResumePos();
	//一次性随机显示三个色球
	void ThreeColorBallsRandom();
	//更新状态窗格
	void UpdateNaviPaneL();
	
	TBool JudgeLine(TInt aPosX,TInt aPosY,const CFbsBitmap* aCurrentBitmap);
	void ClearLine(TInt aTimesForward,TInt aTimesBehind,short aDirection,TInt iPosX,TInt iPosY);
	
	void TimerComplete(TInt aError);
protected:
	// from base class CCoeControl
	void SizeChanged();

private:
	// from base class CCoeControl
	void Draw( const TRect& aRect ) const;

private:
	void InitializeControlsL();
	void LayoutControls();
	CCoeControl* iFocusControl;
	MEikCommandObserver* iCommandObserver;
	
	//检测方格是否被占有
	TBool iPaneStatus[7][7];
	
	TPoint lastBmpPos;//记录上一个位置的坐标
	
	CFbsBitmap* iBkgBitmap;
	CFbsBitmap* iBkgBasicPaneBitmap;
	CFbsBitmap* iBkgMovePaneBitmap;
	CFbsBitmap* iBkgBallsBitmap[3];
	CFbsBitmap* iBkgBallsSelectedBmp[3];
	CFbsBitmap* iBkgBallsPassedBmp[3];
	
	CFbsBitmap* iLastBmp;//记录上一个位置的图像
	CFbsBitmap* iCurrentBmp;//记录当按下上下左右键时当前的图像
	CFbsBitmap* GetCurrentBitmap;
	CFbsBitmap* GetLastBitmap;
	
	//定义 7×7=49块小方格的起始坐标
	//initialize the point of 49 small panes
	TInt iImagePointX[7];
	TInt iImagePointY[7];
	//定义光标的位置坐标
	// remember the position of cursor
	TInt iCursorPosX;
	TInt iCursorPosY;
	//为判断路径传递元坐标
	short iLastX;
	short iLastY;
	//记录临时的坐标下标
	TInt iTemX;
	TInt iTemY;
	//记录1,2,3,4方向上相同颜色球的个数
	TInt iTimesForward;
	//记录5,6,7,8方向上相同颜色球的个数
	TInt iTimesBehind;
	//保存8个方向上的临时图像
	CFbsBitmap* iTempCurrentBmp;
	//标记是哪个方向连线
	short iDirection;
	//活动对象,控制图像显示时间
	CCActiveTimer *iActiveTimer;
	//判断是否连续点击了两次不同图像
	TBool iIsFirstClick;
	//记录分数
	TInt iScore;
	
	TBool IsBallsAppear;
	CAknNavigationDecorator* iNaviDecorator;
	CAknNavigationControlContainer* iNaviPane;	
	CColorLinezUITwoModel& iModel;
	
	// [[[ begin generated region: do not modify [Generated Methods]
public: 
	// ]]] end generated region [Generated Methods]
	
	// [[[ begin generated region: do not modify [Generated Type Declarations]
public: 
	// ]]] end generated region [Generated Type Declarations]
	
	// [[[ begin generated region: do not modify [Generated Instance Variables]
private: 
	CEikImage* iImage1;
	CEikImage* iImage2;
	CEikImage* iImage3;
	// ]]] end generated region [Generated Instance Variables]
	
	TInt Rondom;
	

	// [[[ begin [Overridden Methods]
protected: 
	// ]]] end [Overridden Methods]	
	// [[[ begin [User Handlers]
protected: 
	// ]]] end [User Handlers]
	
public: 
	enum TControls
		{
		// [[[ begin generated region: do not modify [Generated Contents]
		EImage1,
		EImage2,
		EImage3,
		
		// ]]] end generated region [Generated Contents]
	//	EImageRondom,
		// add any user-defined entries here...
		
		ELastControl
		};
	};
				
#endif // COLORLINEZUITWPLAY_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -