開發工具eclipse,jdk1.8?
文檔截圖:
?
package com.qd.fish;import java.awt.Graphics;
import java.io.File;
import java.util.ArrayList;
import java.util.List;import javax.imageio.ImageIO;public class Fishes {//定義一個集合來管理魚List<Fish> fishes=new ArrayList<>();//定義魚群的幀數數組int[] fishNum={8,8,8,8,8,10,10,12,12,12,12,12};//定義不同魚的寬高數組int[][] fishSize={{55,296/8},{78,512/8},{72,448/8},{77,472/8},{107,976/8},{92,1510/10},{178,1870/10},{105,948/12},{174,1512/12},{166,2196/12},{509,3240/12},{516,3276/12}};//定義一個不同魚的概率數組int[] rate={2,3,4,5,6,7,8,9,10,11,15,20};//定義漁場對象FishPool fp;//定義分值數組int[] point={2,3,8,15,20,40,50,60,100,120,150,200};public Fishes(FishPool fp){this.fp=fp;addFish();}public void addFish(){try {for(int i=1;i<=12;i++){Fish fish=new Fish(ImageIO.read(new File("images/fish"+i+".png")),fishNum[i-1],fishSize[i-1][0],fishSize[i-1][1],rate[i-1],point[i-1]);fishes.add(fish);}} catch (Exception e) {}}public void move(){for(int i=0;i<fishes.size();i++){fishes.get(i).move();}}public void draw(Graphics g){for(int i=0;i<fishes.size();i++){Fish fish=fishes.get(i);fish.draw(g);//判斷被捕捉并且已播放完被捕捉動畫,刪除if(fish.isCatch&&fish.frameIndex>=fish.num){fishes.remove(fish);//創建金幣Money money=new Money(fish.x, fish.y, fp);fp.moneys.add(money);//加分fp.point=fp.point+fish.point;//如果漁場中的魚少于5條,再次初始化魚群if(fishes.size()<5){addFish();}}}}
}