spg系列c语言开发---改变 sprite 的帧的函数
来源:互联网 发布:php 生成推广 编辑:程序博客网 时间:2024/05/01 14:41
分两种,一种是动画放完后sprite消失
void Change_Sp(void)
{
int i;
for(i=13;i<17;i++)
{
//Check
if(Sprite_Buff[i].sprcell==0)
continue;
if(Sprite_Buff[i].ActKind==0)//if ActKind==0 , this Spirte no movement
continue;
//Timer of Change Sprites's Index
if( ((++Sprite_Buff[i].ChangeIdxCnt)%5)!=0)
continue;
Sprite_Buff[i].sprcell = Sp_Idx_Tab[ Sprite_Buff[i].SpType ][ Sprite_Buff[i].ActKind ][ Sprite_Buff[i].ActCounter ].sprcell;
if( Sp_Idx_Tab[Sprite_Buff[i].SpType][Sprite_Buff[i].ActKind][Sprite_Buff[i].ActCounter+1].sprcell==(const int *)0xffff)//Check End Flag
{
Sprite_Buff[i].ActKind = 0;//Begin Index
Sprite_Buff[i].sprcell = 0;//when action finish ,sprite disappear
}
++Sprite_Buff[i].ActCounter;
}
}
sprite 保持最后一帧 不消失
void Change_Sp(void)
{
int i;
i=0;
//Check
if(Sprite_Buff[i].sprcell==0)
return;
if(Sprite_Buff[i].ActKind==0)
return;
if( ((++Sprite_Buff[i].ChangeIdxCnt)%5)!=0)
return;
Sprite_Buff[i].sprcell = Sp_Idx_Tab[ Sprite_Buff[i].SpType ][ Sprite_Buff[i].ActKind ][ Sprite_Buff[i].ActCounter ].sprcell;
if( Sp_Idx_Tab[Sprite_Buff[i].SpType][Sprite_Buff[i].ActKind][Sprite_Buff[i].ActCounter+1].sprcell==(const int *)0xffff)//Check End Flag
{
Sprite_Buff[i].ActKind = 0;//Begin Index
//Sprite_Buff[i].sprcell = 0;//no disappear
}
++Sprite_Buff[i].ActCounter;
}
- spg系列c语言开发---改变 sprite 的帧的函数
- 【C语言】【unix c】改变信号的处理函数
- C/C++开发语言系列之25---不能声明为虚函数的函数
- C语言chdir()函数:改变当前的工作目录
- C/C++开发语言系列之11---使用默认参数的构造函数
- C/C++开发语言系列之12---C++析构函数的定义和使用
- C/C++开发语言系列之21---C++函数指针的2个例子
- C/C++开发语言系列之23---C++中虚析构函数的作用
- UGUI中动态改变image的sprite
- AS3.0 设置sprite的锚点,不改变注册点的的函数
- ios开发-c语言之C语言函数的学习
- spg
- cocos2dx sprite的draw函数
- C语言基本功教程系列 快速的函数调用
- C语言基本功教程系列(3) - 快速的函数调用
- C语言中字符串系列函数的实现以及注意事项
- C语言ctype.h系列的字符函数
- c语言strcpy函数和memcpy函数,拷贝后,源数组的内容改变了
- VS.net调试javascript
- [转贴]使UltraEdit支持Python的方法
- 论C/C++函数间动态内存的传递
- 本期核心事件:第三届ChinaJoy
- 攻心术赢得人才战
- spg系列c语言开发---改变 sprite 的帧的函数
- html
- 梦
- 哪个Blog好?
- 排序算法
- 各种内部排序方法的比较和选择
- 冒泡排序
- 快速排序
- ClearQuest数据库的迁移,复制可以参考的办法