📄 guestnum_wellcom.c
字号:
/*===========================================================================
FILE: GuestNum_Wellcom.c
===========================================================================*/
/*===============================================================================
INCLUDES AND VARIABLE DEFINITIONS
=============================================================================== */
#include "GuestNum.h"
#define WELLCOM_IMAGEPATH "BREW.bci"
#define WELLCOM_IMAGEPOS_X 40
#define WELLCOM_IMAGEPOS_Y 50
#define WELLCOMIMAGESHOWTIME 10000
/*-------------------------------------------------------------------
Function Prototypes
-------------------------------------------------------------------*/
static int WELLCOM_Open(GuestNum *pMe);
static int WELLCOM_Draw(GuestNum *pMe);
static void WELLCOM_TimerCB(GuestNum * pMe);
/*===============================================================================
FUNCTION DEFINITIONS
=============================================================================== */
int WELLCOM_InitData(GuestNum *pMe)
{
int nRet = 0;
nRet = WELLCOM_Open(pMe);
return nRet;
}
static int WELLCOM_Open(GuestNum *pMe)
{
int nRet = 0;
ISHELL_CreateInstance(pMe->m_pIShell, AEECLSID_SOUNDPLAYER, (void **)&pMe->pISoundPlayer);
pMe->pISoundPlayer=ISHELL_LoadSound(pMe->m_pIShell,"CIRCUS.MID");
ISOUNDPLAYER_Play(pMe->pISoundPlayer);
//Create Image
pMe->m_pIImage = ISHELL_LoadImage(pMe->m_pIShell, WELLCOM_IMAGEPATH);
nRet = WELLCOM_Draw(pMe);
return nRet;
}
int WELLCOM_Close(GuestNum *pMe)
{
//Cance Timer
ISHELL_CancelTimer(pMe->m_pIShell, (PFNNOTIFY)WELLCOM_TimerCB, pMe);
ISOUNDPLAYER_Stop (pMe->pISoundPlayer);
//Relese Image
if (NULL != pMe->m_pIImage)
{
IIMAGE_Release(pMe->m_pIImage);
pMe->m_pIImage = NULL;
}
return AEE_SUCCESS;
}
static int WELLCOM_Draw(GuestNum *pMe)
{
//Draw Image
AEEImageInfo imageInfo;
if (NULL != pMe->m_pIImage)
{
//IIMAGE_Draw(pMe->m_pIImage, WELLCOM_IMAGEPOS_X, WELLCOM_IMAGEPOS_Y);
IIMAGE_GetInfo(pMe->m_pIImage,&imageInfo);
IIMAGE_SetAnimationRate(pMe->m_pIImage,100);
IIMAGE_Start(pMe->m_pIImage,8,8);
}
//Set Timer
ISHELL_SetTimer(pMe->m_pIShell, WELLCOMIMAGESHOWTIME, (PFNNOTIFY)WELLCOM_TimerCB, pMe);
return AEE_SUCCESS;
}
boolean WELLCOM_HandleEvt(GuestNum * pMe, AEEEvent eCode, uint16 wParam, uint32 dwParam)
{
if (EVT_KEY != eCode)
{
return FALSE;
}
switch (wParam)
{
case AVK_SELECT:
//Close Me
WELLCOM_Close(pMe);
//Open GameIng Status
ISHELL_PostEvent(pMe->m_pIShell, AEECLSID_GuestNum, EVT_COMMAND, GUESTNUM_GAMEING, NULL);
return TRUE;
case AVK_0:
break;
case AVK_1:
break;
case AVK_2:
break;
case AVK_3:
break;
case AVK_4:
break;
case AVK_5:
break;
case AVK_6:
break;
case AVK_7:
break;
case AVK_8:
break;
case AVK_9:
break;
default:
break;
}
return FALSE;
}
//This Fun is Timer Call Back Fun
static void WELLCOM_TimerCB(GuestNum * pMe)
{
//Close Me
WELLCOM_Close(pMe);
//Open GameIng Status
ISHELL_PostEvent(pMe->m_pIShell, AEECLSID_GuestNum, EVT_COMMAND, GUESTNUM_GAMEING, NULL);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -