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

📄 drawingpanel.java

📁 1。支持双人连线 (适用于TCP/IP
💻 JAVA
字号:
import java.awt.*;
import javax.swing.*;

//the drawing panel class belong to the server program
public class drawingPanel extends JPanel{
	public Image offScreenImage;

	//these are all reference that point to the real thing in serverModel
	public String[] messageQueue;
	public Actor[] actors;
	public boolean gameStarted;
	public int green, red, blue;

	public drawingPanel() {}

	public void paintComponent(Graphics g) {
		Graphics offScreenGraphics;
		if (offScreenImage == null) {
				offScreenImage = createImage(640, 550);
		}
		offScreenGraphics = offScreenImage.getGraphics();
		myPaint(offScreenGraphics);
		g.drawImage(offScreenImage, 0, 0, this);
	}

	public void myPaint(Graphics g) {
		super.paintComponent(g);

		if(gameStarted){
			//draw back ground
			g.setColor(Color.blue);
			g.drawRect(10, 10, 501, 501);

			//draw tanks, terren, etc...
			if(actors != null)
				for(int i = 0; i < actors.length; i++)
					if(actors[i] != null)
						actors[i].draw(g);

			//draw level information
			g.setColor(new Color(81,111, 230));
			g.drawString("第  " + level.currentLevel + "  关", 527, 39);
			g.drawString("敌人数 =  " + level.enemyLeft, 527, 79);

			//draw winning scene
			if(level.winningCount > 150){
				int temp = level.winningCount - 150;
				if(temp*10 >  300)
					temp = 30;
				if(level.winningCount  > 470)
					temp = 500 - level.winningCount;
				g.setColor(Color.gray);
				g.fillRect(11,11, 500, temp*10);
				g.fillRect(11, 500 - temp*10, 500, (1+temp)*10 + 2);

				if(level.winningCount  > 190  &&level.winningCount  < 470){
					if(level.winningCount > 400 ){
						red+=(int)((128-red)*0.2);
						green+=(int)((128-green)*0.2);
					}
					g.setColor(new Color(red, green, blue));
					g.drawString("过 关 了  !", 240, 250);
				}
			}else{
				green = 23; red = 34; blue = 128;
			}

		}

		//draw messages
		g.setColor(new Color(255, 255, 255));
		if(messageQueue  != null){
			for(int i = 0 ; i < 8; i++){
				if(messageQueue[i] != null)
					g.drawString(messageQueue[i] , 5,  12 +i*16);
				else
					break;
			}
		}
	}
}

⌨️ 快捷键说明

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