⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 thirdyear.java

📁 用java开发的一段小动画片 包含技术文档和用户手册
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
////////////////////////////////////////////////////////////////////////////////
//
// 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 + -