📄 animationx.java~9~
字号:
package GoGoGo;
public class AnimationX
{
//方向状态
public int Left_run=0;
public int right_run=1;
public int up_run=2;
public int down_run=3;
public int Left_stand=4;
public int right_stand=5;
public int up_stand=6;
public int down_stand=7;
//当前播放帧数
public int Action_run_left = 0;
public int Action_run_right = 0;
public int Action_run_up = 0;
public int Action_run_down = 0;
public int Action_stand_left = 0;
public int Action_stand_right = 0;
public int Action_stand_up = 0;
public int Action_stand_down = 0;
//帧播放初始位置
int Station_start []={0,0,0,0,2,2,6,6};//左右上下(跑),左右上下(站立)
//帧播放结束位置
int Station_end []={5,5,5,5,2,2,6,6};//左右上下(跑),左右上下(站立)
//帧间距
int distance_W[]={28,28,34,34,28,28,34,34};//左右上下(跑),左右上下(站立)
//帧高度
int distance_H[]={42,42,42,42,42,42,42,42};//左右上下(跑),左右上下(站立)
//动画最大数量
int animation_number=8;
public AnimationX()
{
init_animation();
}
//初始化帧位置
public void init_animation()
{
for (int i = 0; i < animation_number; i++)
{
switch (i)
{
case 0: //向左跑动
Action_run_left = Station_start[i];
break;
case 1: //向右跑动
Action_run_right = Station_start[i];
break;
case 2:
Action_run_up = Station_start[i];
break;
case 3:
Action_run_down = Station_start[i];
break;
case 4:
Action_stand_left =Station_start[i];
break;
case 5:
Action_stand_right =Station_start[i];
break;
case 6:
Action_stand_up =Station_start[i];
break;
case 7:
Action_stand_down =Station_start[i];
break;
}
}
}
//动画播放控制 返回需要绘制的原图位置
public int Animation_run(int animation)
{
int Distance = 0;
switch (animation)
{
case 0: //向左跑动
Action_run_left++;
if (Action_run_left > Station_end[animation])
{
Action_run_left = Station_start[animation];
}
Distance = Action_run_left;
break;
case 1: //向右跑动
Action_run_right++;
if (Action_run_right > Station_end[animation])
{
Action_run_right = Station_start[animation];
}
Distance = Action_run_right;
break;
case 2:
Action_run_up++;
if (Action_run_up > Station_end[animation])
{
Action_run_up = Station_start[animation];
}
Distance = Action_run_up;
break;
case 3:
Action_run_down++;
if (Action_run_down > Station_end[animation])
{
Action_run_down = Station_start[animation];
}
Distance = Action_run_down;
break;
case 4:
Action_stand_left++;
if (Action_stand_left > Station_end[animation])
{
Action_stand_left = Station_start[animation];
}
Distance = Action_stand_left;
break;
case 5:
Action_stand_right++;
if (Action_stand_right > Station_end[animation])
{
Action_stand_right = Station_start[animation];
}
Distance = Action_stand_right;
break;
case 6:
Action_stand_up++;
if (Action_stand_up > Station_end[animation])
{
Action_stand_up = Station_start[animation];
}
Distance = Action_stand_up;
break;
case 7:
Action_stand_down++;
if (Action_stand_down > Station_end[animation])
{
Action_stand_down = Station_start[animation];
}
Distance = Action_stand_down;
break;
}
return Distance * distance_W[animation];
}
//原图每帧宽
public int getwidth(int animation)
{
return distance_W[animation];
}
//原图每帧高
public int getheight(int animation)
{
return distance_H[animation];
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -