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

📄 znscore.h

📁 基于BREW 2.0 开发的冒险类手机游戏
💻 H
字号:
/*=================================================*\
| BREW Net Score Lib                                |
|---------------------------------------------------|
| 作者 : Zane                                       |
| 最初版本日期 : 2005 - 3 - 31                      |
| 更新日期 : 2005 - 7 - 13                          |
| 版本 : 0.01 build 0006                            |
|---------------------------------------------------|
| 用法 :                                            |
| 先用ZnScore_Init初始化。                          |
| 然后用ZnScore_UploadScore上传分数或               |
| 用ZnScore_QueryList查询高分榜。                   |
| 最终用ZnScore_Release释放。                       |
| 须将ZnScore_HandleEvent放在主事件处理函数中。     |
\*=================================================*/

#ifndef _ZN_SCORE_HEADER_
#define _ZN_SCORE_HEADER_

#include "NetData.h"
#include "AEEAppGen.h"
#include "AEEMenu.h"
#include "AEEText.h"
#include "AEEHtmlViewer.h"
#include "../ZnNet/ZnNet.h"			// Net Lib

#define _ZS_MAJOR_VERSION_			0				// Major Version
#define _ZS_MINOR_VERSION_			01				// Minor Version
#define _ZS_MODIFY_VERSION_			0006			// Modify Version

#define _SCORE_SVR_ADDR_			"server2.starhitel.uniwise"		// Server Address"210.51.14.186"
													// Should be "server2.starhitel.uniwise"
#define _SCORE_SVR_PORT_			50105			// Server Port

// Menu Style
#define _MENU_FT_					AEE_FT_NONE
#define _MENU_SELECT_FT_			AEE_FT_BOX 
#define _MENU_RO_					AEE_RO_TRANSPARENT
#define _MENU_SELECT_RO_			AEE_RO_TRANSPARENT
#define _MENU_COLOR_MASK_			(MC_BACK | MC_SEL_BACK | MC_SEL_TEXT)
#define _MENU_BACKGROUND_			MAKE_RGB(192, 243, 255)
#define _MENU_SELECT_BACKGROUND_	MAKE_RGB(3, 121, 253)
#define _MENU_SELECT_TEXT_			RGB_WHITE

#define _MENU_ITEM_BASE_			1000
#define _CONFIG_FILE_				"scoreconfig.dat"

typedef boolean (* PFNINITGUI)(void *);
typedef boolean (* PFNHANDLEEVENTGUI)(void *, AEEEvent eCode, uint16 wParam, uint32 dwParam);
typedef void (* PFNRELEASEGUI)(void *);

typedef enum _GUISTATE
{
	GS_NONE, 
	GS_IFUPLOAD, 
	GS_INPUTNUM, 
	GS_IFQUERY, 
	GS_QUERY, 
	GS_QUERYRESULT, 
	GS_ERROR, 
	GS_LAST, 
} GUISTATE, * PGUISTATE;

typedef enum _ERRORTYPE
{
	ET_NETERROR, 
	ET_NOSPACE, 
	ET_INPUT, 
	ET_LAST, 
} ERRORTYPE, * PERRORTYPE;

typedef struct _GUIFUNC
{
	PFNINITGUI pFnInitGui;
	PFNHANDLEEVENTGUI pFnHandleEventGui;
	PFNRELEASEGUI pFnReleaseGui;
} GUIFUNC, * PGUIFUNC;

typedef struct _ZNSCORE
{
	AEEApplet m_App;							// Applet
	uint16 m_unScrWidth;						// Screen Width
	uint16 m_unScrHeight;						// Screen Height
	int m_nFontSize;							// Font Size
	DWORD m_dwGameID;							// Game ID
	DWORD m_dwScore;							// Game Score
	GUISTATE m_GuiState;						// Current GUI
	GUISTATE m_LastGuiState;					// Last GUI
	GUISTATE m_SuspendState;					// GUI when suspend
	IStatic * m_pStatic;						// Static Control
	IMenuCtl * m_pMenu;							// Menu Control
	ITextCtl * m_pText;							// Text Control
	IHtmlViewer * m_pViewer;					// HTML Viewer Control
	byte * m_pHTMLBuffer;						// Buffer To Hold HTML Data
	ZNNET m_ZnNet;								// Net Lib Structure
	NETDATA m_NetData;							// Net Lib Data
	byte * m_pBuf;								// Net Lib Buffer
	double m_dbPhoneNum;						// Phone Number
	boolean m_bUploaded;						// Uploaded or not
	boolean m_bUpdated;							// Updated or not
	ERRORTYPE m_ErrorType;						// Error Type
	RGBVAL m_OldTextColor;						// Old Text Color
	RGBVAL m_OldBgColor;						// Old Background Color

	// Gui state functions' pointer
	PFNINITGUI m_pFnInitGui;					// Function Pointer For GUI Initialization
	PFNHANDLEEVENTGUI m_pFnHandleEventGui;		// Function Pointer For GUI Handling Event
	PFNRELEASEGUI m_pFnReleaseGui;				// Function Pointer For GUI Releasing

	// Host function called when exit
	PFNNOTIFY m_pFnExit;						// Function Pointer For Exiting Score Module
	void * m_pData;								// Data For Exiting Function
	
} ZNSCORE, * PZNSCORE;

void ZnScore_Init(PZNSCORE pZnScore, AEEApplet * pApp, DWORD dwGameID);
boolean ZnScore_HandleEvent(PZNSCORE pZnScore, AEEEvent eCode, uint16 wParam, uint32 dwParam);
void ZnScore_Release(PZNSCORE pZnScore);

void ZnScore_UploadScore(PZNSCORE pZnScore, DWORD dwScore, PFNNOTIFY pFnExit, void * pData);
void ZnScore_QueryList(PZNSCORE pZnScore, PFNNOTIFY pFnExit, void * pData);

#endif

⌨️ 快捷键说明

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