aniParticle.c 2.56 KB

/*
+-----------------------------------------------------------------------------
|  File     : aniParticle.c
+-----------------------------------------------------------------------------
|                 Copyright (C) 2009-2010 SKY-MOBI AS.
|                 All rights reserved.
+-----------------------------------------------------------------------------
|  Purpose  : Definitions for the particle animation <-> MMI interface
|  History  : qgp 2009-11-17 create.
|			
+-----------------------------------------------------------------------------
*/
#ifdef __SKY_3DGUI_ANIMASTER__

#include "aniAdapt.h"
#include "ATS_adaptation_include.h"
//add test end
#ifndef WIN32
void  animation_engine_init(void);
#endif /*WIN32*/

/*********************************************************************
函数名:aniParticle_StartAniInternal
功     能:启动粒子特效
参     数:无
返回值:无
*********************************************************************/
int32 aniParticle_StartAniInternal(void)
{

 	int32 ret = ANIMA_ERROR;
	int i;
 	int32  timeDelayMan = 0;
 	int32 timeDelayAuto = 0;
 	int32 type = 0;
 	uint16 backTransparenceColor = 0x0;
	
	#ifndef WIN32
	animation_engine_init();	
	#endif /*__MTK_TARGET__*/
	
    //g_aniParticle_type = ANIMATION_9_WATERWAVE;
        i = sky_animaster_get_config_index();
        if(i >= 0)
        {
    		if(sky_animaster_mem_left() / 1024 < gAnimation9Config[i].animationMemNeed)
    		{
    			ret = 0;
    		}
    		else
    		{
    		      if(gAnimation9Config[i].animationHdlr)
    		      {
    			    ret = gAnimation9Config[i].animationHdlr();
    		      }
                  else
                  {
                       ret = 0; 
                  }
                  
    		}
    		
    		if(!ret)
    			return 0;
    		else if(ret == 2)//当为蝴蝶追逐效果时
    			return 1;
    		else if (ret == 1) //最老版动画王产品
    			return g_oldAniPtclInitFlag;
         }
	return ret;  
}
  
void aniSetMouseDownPos(int32 x, int32  y)
{
     int i = sky_animaster_get_config_index();
     if(i >= 0)
     {
	if(gAnimation9Config[i].animationPenHdlr)
		gAnimation9Config[i].animationPenHdlr(x,y);
	return;
     }
}

void aniMasterMouseUp(int32 x, int32  y)
{
     int i = sky_animaster_get_config_index();
     if(i >= 0)
    {
	if(gAnimation9Config[i].animationPenUpHdlr)
		gAnimation9Config[i].animationPenUpHdlr(x,y);
	return;
    }
}


void aniMasterMouseMove(int32 x, int32  y)
{
     int i = sky_animaster_get_config_index();
     if(i >= 0)
    {
	if(gAnimation9Config[i].animationPenMoveHdlr)
		gAnimation9Config[i].animationPenMoveHdlr(x,y);
	return;
    }
}
#endif