📄 thirdyear.java
字号:
////////////////////////////////////////////////////////////////////////////////
//
// ThirdYear.java
//
// 开发者:刘嘉祥
//
////////////////////////////////////////////////////////////////////////////////
//
// 功能:
// 实现剧情中第三年的动画绘制。
//
////////////////////////////////////////////////////////////////////////////////
import java.awt.Graphics2D;
import java.awt.Color;
import java.awt.Polygon;
import java.awt.geom.Ellipse2D;
class ThirdYear
{
static void drawThirdYear(Graphics2D g2d,int a_frame)
{
int i = (a_frame%20==0) ? 20 : (a_frame%20);
Draw.drawLine(g2d,0,380,600,380);//地板
//配角
//拿武器
if(a_frame<=10)
{
Draw.drawCircle(g2d,200,255,25,25);//头
Draw.drawLine(g2d,200,320,200,280);//身体
Draw.drawLine(g2d,200,320,220,380);
Draw.drawLine(g2d,200,320,180,380);
Draw.drawLine(g2d,200,285,180,305);
Draw.drawLine(g2d,180,305,200,315);
Draw.drawLine(g2d,200,285,225,290);
Draw.drawLine(g2d,225,290,200,315);
}
//持剑
else if(a_frame<=30)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
if(a_frame==11)
Animation.baJianSound.play();
Draw.drawCircle(g2d,200,255,25,25);//头
Draw.drawLine(g2d,200,320,200,280);//身体
Draw.drawLine(g2d,200,320,220,380);
Draw.drawLine(g2d,200,320,180,380);
Draw.drawLine(g2d,200,285,180,305);
Draw.drawLine(g2d,180,305,200,315);
Draw.drawLine(g2d,200,285,225,295);
Draw.drawLine(g2d,225,295,250,290);
g2d.setColor(c);
Draw.drawLine(g2d,245,298,249,282);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,249,282,264,222);
g2d.setColor(c0);
}
//跳跃
else if(a_frame<=40)
{
int j = (i<=15) ? (i-10) : (20-i);
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
if(a_frame==31)
Animation.haJumpSound.play();
Draw.drawCircle(g2d,215+15*(i-10),255-5*j,25,25);//头
Draw.drawLine(g2d,200+15*(i-10),320-5*j,210+15*(i-10),280-5*j);//身体
Draw.drawLine(g2d,200+15*(i-10),320-5*j,230+15*(i-10),350-5*j);//腿
Draw.drawLine(g2d,230+15*(i-10),350-5*j,210+15*(i-10),380-5*j);
Draw.drawLine(g2d,200+15*(i-10),320-5*j,170+15*(i-10),380-5*j);
g2d.setColor(c);
Draw.drawLine(g2d,231+15*(i-10),307-5*j,219+15*(i-10),313-5*j);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,219+15*(i-10),313-5*j,169+15*(i-10),338-5*j);
g2d.setColor(c0);
Draw.drawLine(g2d,210+15*(i-10),285-5*j,180+15*(i-10),295-5*j);//手
Draw.drawLine(g2d,180+15*(i-10),295-5*j,190+15*(i-10),320-5*j);
Draw.drawLine(g2d,210+15*(i-10),285-5*j,235+15*(i-10),295-5*j);
Draw.drawLine(g2d,235+15*(i-10),295-5*j,225+15*(i-10),310-5*j);
}
//上劈(慢镜)
else if(a_frame<=80)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==41)
Animation.baJianSound.play();
if(a_frame==60)
Animation.piJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,375+j*25/20,295-j*12/20);
Draw.drawLine(g2d,375+j*25/20,295-j*12/20,365+j*65/20,310-j*30/20);
g2d.setColor(c);
Draw.drawLine(g2d,371+j*53/20,307-j*25/20,359+j*77/20,313-j*35/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,359+j*77/20,313-j*35/20,309+j*187/20,338-j*80/20);
g2d.setColor(c0);
}
//中劈(慢镜)
else if(a_frame<=120)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==81)
Animation.baJianSound.play();
if(a_frame==100)
Animation.piJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,375+j*20/20,295-j*2/20);
Draw.drawLine(g2d,375+j*20/20,295-j*2/20,365+j*55/20,310-j*10/20);
g2d.setColor(c);
Draw.drawLine(g2d,371+j*43/20,307-j*8/20,359+j*67/20,313-j*14/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,359+j*67/20,313-j*14/20,309+j*177/20,338-j*39/20);
g2d.setColor(c0);
}
//下劈(慢镜)
else if(a_frame<=160)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==121)
Animation.baJianSound.play();
if(a_frame==140)
Animation.piJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,375+j*12/20,295+j*10/20);
Draw.drawLine(g2d,375+j*12/20,295+j*10/20,365+j*40/20,310+j*15/20);
g2d.setColor(c);
Draw.drawLine(g2d,371+j*28/20,307+j*14/20,359+j*52/20,313+j*14/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,359+j*52/20,313+j*14/20,309+j*172/20,338+j*24/20);
g2d.setColor(c0);
}
//劈
else if(a_frame<=240)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
//上劈
if((i==6)||(i==7))
{
if(i==6)
Animation.piJianSound.play();
Draw.drawCircle(g2d,375,255,25,25);//头
Draw.drawLine(g2d,360,320,370,280);//身体
Draw.drawLine(g2d,360,320,390,350);//腿
Draw.drawLine(g2d,390,350,370,380);
Draw.drawLine(g2d,360,320,330,380);
Draw.drawLine(g2d,370,285,340,295);//手
Draw.drawLine(g2d,340,295,350,320);
Draw.drawLine(g2d,370,285,400,283);
Draw.drawLine(g2d,400,283,430,280);
g2d.setColor(c);
Draw.drawLine(g2d,424,282,436,278);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,436,278,496,258);
g2d.setColor(c0);
}
//中劈
else if((i==11)||(i==12))
{
if(i==11)
Animation.piJianSound.play();
Draw.drawCircle(g2d,375,255,25,25);//头
Draw.drawLine(g2d,360,320,370,280);//身体
Draw.drawLine(g2d,360,320,390,350);//腿
Draw.drawLine(g2d,390,350,370,380);
Draw.drawLine(g2d,360,320,330,380);
Draw.drawLine(g2d,370,285,340,295);//手
Draw.drawLine(g2d,340,295,350,320);
Draw.drawLine(g2d,370,285,395,293);
Draw.drawLine(g2d,395,293,420,300);
g2d.setColor(c);
Draw.drawLine(g2d,414,299,426,299);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,426,299,486,299);
g2d.setColor(c0);
}
//下劈
else if((i==16)||(i==17))
{
if(i==16)
Animation.piJianSound.play();
Draw.drawCircle(g2d,375,255,25,25);//头
Draw.drawLine(g2d,360,320,370,280);//身体
Draw.drawLine(g2d,360,320,390,350);//腿
Draw.drawLine(g2d,390,350,370,380);
Draw.drawLine(g2d,360,320,330,380);
Draw.drawLine(g2d,370,285,340,295);//手
Draw.drawLine(g2d,340,295,350,320);
Draw.drawLine(g2d,370,285,387,305);
Draw.drawLine(g2d,387,305,405,325);
g2d.setColor(c);
Draw.drawLine(g2d,399,321,411,327);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,411,327,481,362);
g2d.setColor(c0);
}
//持剑(劈势)
else
{
Draw.drawCircle(g2d,350,255,25,25);//头
Draw.drawLine(g2d,350,320,350,280);//身体
Draw.drawLine(g2d,350,320,360,350);//腿
Draw.drawLine(g2d,360,350,370,380);
Draw.drawLine(g2d,350,320,330,380);
g2d.setColor(c);
Draw.drawLine(g2d,371,307,359,313);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,359,313,309,338);
g2d.setColor(c0);
Draw.drawLine(g2d,350,285,325,295);//手
Draw.drawLine(g2d,325,295,335,320);
Draw.drawLine(g2d,350,285,375,295);
Draw.drawLine(g2d,375,295,365,310);
}
}
//上刺(慢镜)
else if(a_frame<=280)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==241)
Animation.piJianSound.play();
if(a_frame==260)
Animation.ciJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,340+j*60/20,305-j*22/20);
Draw.drawLine(g2d,340+j*60/20,305-j*22/20,360+j*70/20,300-j*20/20);
g2d.setColor(c);
Draw.drawLine(g2d,354+j*70/20,301-j*19/20,366+j*70/20,301-j*23/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,366+j*70/20,301-j*23/20,425+j*71/20,301-j*43/20);
g2d.setColor(c0);
}
//中刺(慢镜)
else if(a_frame<=320)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==281)
Animation.piJianSound.play();
if(a_frame==300)
Animation.ciJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,340+j*55/20,305-j*12/20);
Draw.drawLine(g2d,340+j*55/20,305-j*12/20,360+j*60/20,300);
g2d.setColor(c);
Draw.drawLine(g2d,354+j*60/20,301-j*2/20,366+j*60/20,301-j*2/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,366+j*60/20,301-j*2/20,425+j*61/20,301-j*2/20);
g2d.setColor(c0);
}
//下刺(慢镜)
else if(a_frame<=360)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
int j = (a_frame%40==0) ? 40 : (a_frame%40);
j = (j<=20) ? j : (40-j);
if(a_frame==321)
Animation.piJianSound.play();
if(a_frame==340)
Animation.ciJianSound.play();
Draw.drawCircle(g2d,350+j*20/20,255,25,25);//头
Draw.drawLine(g2d,350+j*10/20,320,350+j*20/20,280);//身体
Draw.drawLine(g2d,350+j*10/20,320,360+j*30/20,350);//腿
Draw.drawLine(g2d,360+j*30/20,350,370,380);
Draw.drawLine(g2d,350+j*10/20,320,330,380);
Draw.drawLine(g2d,350+j*20/20,285,325+j*15/20,295);//手
Draw.drawLine(g2d,325+j*15/20,295,335+j*15/20,320);
Draw.drawLine(g2d,350+j*20/20,285,340+j*47/20,305);
Draw.drawLine(g2d,340+j*47/20,305,360+j*45/20,300+j*25/20);
g2d.setColor(c);
Draw.drawLine(g2d,354+j*45/20,301+j*20/20,366+j*45/20,301+j*26/20);
g2d.setColor(Color.lightGray);
Draw.drawLine(g2d,366+j*45/20,301+j*26/20,425+j*56/20,301+j*61/20);
g2d.setColor(c0);
}
//刺
else if(a_frame<=440)
{
Color c0 = g2d.getColor();
Color c = new Color(146,91,41);
//上刺
if((i==6)||(i==7))
{
if(i==6)
Animation.ciJianSound.play();
Draw.drawCircle(g2d,375,255,25,25);//头
Draw.drawLine(g2d,360,320,370,280);//身体
Draw.drawLine(g2d,360,320,390,350);//腿
Draw.drawLine(g2d,390,350,370,380);
Draw.drawLine(g2d,360,320,330,380);
Draw.drawLine(g2d,370,285,340,295);//手
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -