📄 opening.java
字号:
////////////////////////////////////////////////////////////////////////////////
//
// Opening.java
//
// 开发者:刘嘉祥
//
////////////////////////////////////////////////////////////////////////////////
//
// 功能:
// 实现开场动画的绘制。
//
////////////////////////////////////////////////////////////////////////////////
import java.awt.Graphics2D;
import java.awt.Color;
import java.awt.Polygon;
class Opening
{
static void drawOpening(Graphics2D g2d,int a_frame)
{
if(a_frame<=400)
{
int i = (a_frame%20==0)? 20 : a_frame%20;
Draw.drawLine(g2d,0,380,600,380);//地板
if(a_frame==1)
Animation.beginSound.play();
//人走动
if(i<=10)
{
Draw.drawLine(g2d,0+a_frame,320,0+a_frame,280);//身体
Draw.fillCircle(g2d,0+a_frame,255,25,25);//头
Draw.drawLine(g2d,0+a_frame,285,-20+2*i+a_frame,325+i/2);//后臂
Draw.drawLine(g2d,0+a_frame,285,10-i+a_frame,305+i/4);//前大臂
Draw.drawLine(g2d,10-i+a_frame,305+i/4,30-3*i+a_frame,320+i);//前小臂
Draw.drawLine(g2d,0+a_frame,320,10-i+a_frame,350);//前大腿
Draw.drawLine(g2d,10-i+a_frame,350,20-2*i+a_frame,380);//前小腿
Draw.drawLine(g2d,0+a_frame,320,-5+i+a_frame,350);//后大腿
Draw.drawLine(g2d,-5+i+a_frame,350,-20+a_frame,380-i);//后小腿
}
else
{
Draw.drawLine(g2d,0+a_frame,320,0+a_frame,280);//身体
Draw.fillCircle(g2d,0+a_frame,255,25,25);//头
Draw.drawLine(g2d,0+a_frame,285,0-2*(i-10)+a_frame,330-(i-10)/2);//后臂
Draw.drawLine(g2d,0+a_frame,285,0+(i-10)+a_frame,307-(i-10)/4);//前大臂
Draw.drawLine(g2d,0+(i-10)+a_frame,307-(i-10)/4,0+3*(i-10)+a_frame,330-(i-10));//前小臂
Draw.drawLine(g2d,0+a_frame,320,0-(i-10)/2+a_frame,350);//前大脚
Draw.drawLine(g2d,0-(i-10)/2+a_frame,350,0-2*(i-10)+a_frame,380);//前小腿
Draw.drawLine(g2d,0+a_frame,320,5+(i-10)/2+a_frame,350);//后大腿
Draw.drawLine(g2d,5+(i-10)/2+a_frame,350,-20+4*(i-10)+a_frame,370+(i-10));//后小腿
}
Subtitle.drawTitle_a(g2d,a_frame);
if(a_frame==381)
Animation.wangSound.play();
}
//砸倒
else if(a_frame<=420)
{
int[] x1 = {370,405,440,430,450,410,390,390,345,380};
int[] y1 = {225,240,210,255,290,270,310,280,270,260};
int[] x2 = {340,390,485,470,505,430,385,370,285,340};
int[] y2 = {155,205,160,235,330,315,380,295,310,245};
Color c = g2d.getColor();
if(a_frame<=410)
{
if(a_frame==401)
{
Animation.beginSound.stop();
Animation.crashSound.play();
}
g2d.setColor(Color.red);
g2d.fill(new Polygon(x1,y1,10));
}
else
{
g2d.setColor(Color.yellow);
g2d.fill(new Polygon(x2,y2,10));
g2d.setColor(Color.red);
g2d.fill(new Polygon(x1,y1,10));
}
g2d.setColor(c);
}
//倒地
else if(a_frame<=480)
{
int i = a_frame%10;
if(a_frame<=440)
Subtitle.drawTitle_b(g2d,(a_frame-420));
else
Subtitle.drawTitle_c(g2d);
Draw.drawLine(g2d,0,380,600,380);//地板
Draw.drawLine(g2d,360,380,370,340);
Draw.drawLine(g2d,360,380,340,350);
Draw.drawLine(g2d,340,350,320,380);
Draw.drawLine(g2d,360,380,385,355);
Draw.drawLine(g2d,385,355,400,380);
Draw.drawLine(g2d,370,340,350,320);//左大腿
Draw.drawLine(g2d,370,340,395,330);//右大腿
if((i==6)||(i==8))
{
Animation.legSound.play();
Draw.drawLine(g2d,350,320,360,300);//左小腿
Draw.drawLine(g2d,395,330,380,305);//右小腿
}
else
{
Draw.drawLine(g2d,350,320,345,290);//左小腿
Draw.drawLine(g2d,395,330,415,305);//右小腿
}
if(a_frame>440)
Draw.cleanScreen(g2d,(a_frame-440));
}
}//方法drawOpening结束
}//类Opening结束
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -