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

📄 yishen.java

📁 简单的贪吃蛇源码
💻 JAVA
字号:
import java.util.*;
import java.awt.*;

import com.sun.corba.se.impl.orbutil.graph.Graph;

public class Yishen {
	public static LinkedList<Block> blocks = new LinkedList<Block>();
	private static heads b = null;		
	private Direction dir;
	private int x,y;
	private static boolean Colorchanger = true;
	private Color c1,c2;
	private Snake s;
	private boolean pasue = false;
	
	private boolean live = true;
	
	public Yishen(Color c1,Color c2,heads h){
		this.c1 = c1;
		this.c2 = c2;
		b = h;			
	}
	
	public void draw(Graphics g){
		if(!live){
			blocks = new LinkedList<Block>();
			return;
		}		
		for(int i=0;i<blocks.size();i++){
			blocks.get(i).Draw(g);
		}	
		move(pasue);
	}
	
	public boolean pongBlood(Blood b){
		if(live){
			for(int i=0;i<blocks.size();i++){
				if(b.getRect().intersects(blocks.get(i).getRect()))
					return true;
			}
		}
			return false;	
	}
	
	public void add(){
		if(blocks.size()==0){
			x = b.getOldx();
			y = b.getOldy();			
		}
		else{
			x = blocks.getLast().x;
			y = blocks.getLast().y;
		}
			if(Direction.U == dir){
				y += 20;
			}
			if(Direction.D == dir){
				y -= 20;
			}
			if(Direction.L == dir){
				x += 20;
			}
			if(Direction.R == dir){
				x -= 20;
			}
			if(0==blocks.size()%2)
				blocks.addLast(new Block(x ,y ,c1));
			else 
				blocks.addLast(new Block(x ,y ,c2));
	}
	
	public Rectangle getRect() {
		return new Rectangle(x, y, Blood.BloodSize , Blood.BloodSize);
	}
	
	public void move(boolean pasue){
		if(!pasue){
			if(Colorchanger){
				Block b1 = new Block(b.getOldx(),b.getOldy(),c1);
				blocks.addFirst(b1);
				blocks.removeLast();
				Colorchanger = false;}
			else {
				Block b1 = new Block(b.getOldx(),b.getOldy(),c2);
				blocks.addFirst(b1);
				blocks.removeLast();
				Colorchanger = true;}
			}
			
			
		}		
	

	public boolean isLive() {
		return live;
	}

	public void setLive(boolean live) {
		this.live = live;
	}

	public boolean isPasue() {
		return pasue;
	}

	public void setPasue(boolean pasue) {
		this.pasue = pasue;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -