`

足球小游戏

    博客分类:
  • java
阅读更多

    足球游戏真的是用最最简单的代码画出来的,首先是实现定义一个入口的主函数,还有就是画了一个简易的足球场。模拟运动员踢角球的过程,画场地的时候用了重绘,这样就能够每次踢玩球后不用再次重绘嘛,这个比较方便,不用每次试验前运行一次程序,操作方便了一些,这个不是重点。先看前面的代码。

/**
 * 定义一个画画类,用来生成面板和画画。
 * @author 周建权 2013.07.14
 *
 */

public class StartJFrame extends JFrame {

	/**
	 * 定义函数的入口主函数
	 * @param args
	 */
	public static void main(String[] args) {
		// 实例化一个对象
		StartJFrame sta=new StartJFrame();
		sta.showGUI();
		}
	 /**
	 *  定义一个showGUI函数,用显示面板及其组件
	 */
	    public void showGUI() {
		this.setSize(600, 600);//设置大小
		this.setTitle("泰国青年队5:0击败中国队,卡马乔已经被下课!!");
		this.setLayout(new FlowLayout());
		
		JButton jbu=new JButton("开始角球");
		jbu.setFont(new Font("楷体",Font.PLAIN,18));
		this.add(jbu);
		this.setVisible(true);//设置窗体可见	
		Graphics g=this.getGraphics();//获取画布对象
	    GameListener j2=new  GameListener(g);
		jbu.addActionListener(j2);
		
	    }
/**
 *  定义一个重绘函数,用于实现画窗体的基础部件
 */
public void paint(Graphics g) {
	super.paint(g);//调用重绘函数
	g.setColor(Color.RED);
	g.drawLine(550, 200, 550, 295);
	g.drawLine(550, 295, 600, 295);
	g.drawLine(550, 200, 600, 200);
	g.drawLine(5, 515, 5, 595);
	g.drawLine(5, 515, 30, 515);
	g.drawLine(30, 515, 30, 595);
	g.drawLine(5, 595, 30, 595);
	
	
	
	}

 

接下来是一个线程类,用于实现程序的主要功能,首先是用随机数产生小球的初始位置,并在此处定义一个判断语句,如果是超过这个范围就抛出点球越界。在最后不管进球或是不进球都会抛出来发球越界,点球无效。若是在点球区域内的球则再次进行判断,如果球从球门的坐标经过则说明进球是有效的。如果没进则抛出没进球。代码大部分是使用了判断语句,线程知识用的不多。

/**
 * 创建一个新的类,该类继承于线程类,用于实现小球的滚动以及比赛结果的输出
 * @author 周建权 2013.7.14
 *
 */
public class GameThread extends Thread {
	private Graphics g;
	
	private int i;
	public  GameThread(Graphics g )
	{
		this.g=g;

		}

/**
 * 定义一个方法,该方法实现了画移动小球的功能,还有实现了判断进球是否有效,以及
 * 对进球的结果进行输出。
 */
    public void draw05() {
	System.out.println("aaa");
	int m=(int)(5+Math.random()*35);//利用随机数产生小球的初始坐标,这也是小球进与不进的关键
	int n=(int)(515+Math.random()*85);
	if(m>30||n>595){JOptionPane.showMessageDialog(null, "点球位置越线");//判断点球线是否是有效的
	}
	//循环以便画出移动的小球
	for(i=0;i<=300;i++){
			try
			{
				Thread.sleep(30);
			}catch(Exception ef){}
			g.setColor(Color.BLUE);
			g.clearRect(m+2*i-2,n-i+2 ,30, 30);
			g.fillOval(m+2*i, n-i+1, 30, 30);
			 System.out.println(i);
	    /**
	     * 定义一个while判断语句,用来判断小球的进球是否有效以及进球与否
	     */
		while((m+2*i)==550||(m+2*i)==551){
		if((n-i)<295&&(n-i)>205&&m<30&&n<595){
			JOptionPane.showMessageDialog(null, "恭喜你进球了");break;}
		else if(m>30||n>595){JOptionPane.showMessageDialog(null, "点球犯规,此次射门无效");
		;break;}
		else {
			JOptionPane.showMessageDialog(null, "很遗憾你没进球");break;}
		
		}
	}
   }


      public void run(){
	  draw05();
	 }
     
}

 

由于三个类是分开的吗,所以得加一个监听器来完成最后的过程。

/**
 * 创建一个按钮监听器,按钮按下时开始同时画四个小球
 * @author 周建权 2013.7.14
 *
 */
public class GameListener implements  ActionListener{
	private Graphics g;
	
	
	
	public GameListener(Graphics g){
		this.g = g;
		
		
	}

	public void actionPerformed(ActionEvent e){
; 		GameThread thread = new GameThread(g);
        thread.start();
		
    
		}
       

}

  这样一个足球游戏就做好啦!



 

 

 

 

 

 

  • 大小: 20.7 KB
  • 大小: 17.6 KB
  • 大小: 22.7 KB
  • 大小: 24.8 KB
  • 大小: 21.8 KB
  • 大小: 21 KB
分享到:
评论

相关推荐

    Python足球游戏源代码,热血足球小游戏,可双人玩

    【Python足球游戏源代码】是基于Python编程语言的pygame库开发的一款双人对战的足球小游戏。pygame是Python中一个广泛用于开发2D游戏的库,它提供了丰富的图形、音频和事件处理功能,使得创建游戏变得相对简单。在这...

    足球比赛小游戏源码

    【标题】"足球比赛小游戏源码"所涉及的知识点主要集中在游戏开发领域,特别是Web端的游戏编程。这个源码提供了一种实现足球比赛互动体验的方式,可能是通过HTML5、CSS3以及JavaScript等前端技术实现的。以下是相关...

    基于Unity3D和行为树插件制作的AI足球小游戏源码.zip

    基于Unity3D和行为树插件制作的AI足球小游戏源码.zip基于Unity3D和行为树插件制作的AI足球小游戏源码.zip基于Unity3D和行为树插件制作的AI足球小游戏源码.zip基于Unity3D和行为树插件制作的AI足球小游戏源码.zip基于...

    Java-FootballGame.rar_java 足球_java足球小游戏

    【Java 足球小游戏详解】 Java 足球小游戏是一款基于 Java 语言开发的应用程序,它展示了 Java 在游戏编程领域的应用。Java 的跨平台特性使得这款游戏可以在多种操作系统上运行,包括 Windows、Mac 和 Linux。游戏...

    足球小游戏-android入门

    【足球小游戏-android入门】是一款专为初学者设计的Android平台上的小型足球游戏。这款小游戏旨在帮助开发者熟悉Android应用开发的基本流程,尤其是与游戏相关的交互设计和技术。通过此项目,你可以学习到如何创建...

    基于Unity3D和行为树插件制作的AI足球小游戏源码(期末大作业).zip

    基于Unity3D和行为树插件制作的AI足球小游戏源码(期末大作业).zip个人经导师指导并认可通过的98分大作业设计项目,主要针对计算机相关专业的正在做课程设计、期末大作业的学生和需要项目实战练习的学习者。...

    基于Unity3D和行为树插件制作的AI足球小游戏,实现了不同球员的AI,进攻、防守、守门以及防守阵型

    【作品名称】:基于Unity3D和行为树插件制作的AI足球小游戏,实现了不同球员的AI,进攻、防守、守门以及防守阵型 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业...

    matlab足球小游戏-matlab-.zip

    matlab足球小游戏_matlab-.zip matlab足球小游戏_matlab-.zip matlab足球小游戏_matlab-.zip matlab足球小游戏_matlab-.zip matlab足球小游戏_matlab-.zip matlab足球小游戏_matlab-.zip

    两人互动世界杯足球比赛小游戏.sb3

    两人互动世界杯足球小游戏

    基于Unity3D和行为树插件制作实现的AI足球小游戏源码+注释说明

    基于Unity3D和行为树插件制作的AI足球小游戏源码+注释说明 - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载...

    C语言c++编程的小游戏足球.docx

    C语言小游戏足球 本资源是一个使用C语言开发的小游戏足球程序,主要面向C语言初学者,通过循环、选择、调用等基本C语言语句,实现了一段踢足球的小动画。下面是该程序的详细知识点解释: 1. 文件头`# -*- coding: ...

    采用硬件加速的世界杯足球射门游戏JS特效代码

    《采用硬件加速的世界杯足球射门游戏JS特效代码解析》 在现代网页开发中,JavaScript(JS)已经成为不可或缺的一部分,特别是在构建互动性丰富的游戏和特效上。本篇将深入探讨一款利用硬件加速技术的世界杯足球射门...

    soccer_UnityGamesource_unity足球_agoyhq_小游戏_unity_

    《Unity游戏开发:指尖足球小游戏源码解析与素材探索》 Unity引擎,作为全球领先的实时3D创作工具,被广泛应用于游戏开发、影视动画、建筑可视化等领域。在本项目中,我们将深入探讨一个基于Unity开发的指尖足球小...

    小游戏(足球)

    不好可以看看,可以帮助刚开始学游戏的同学.

    matlab运动目标提取代码-matlab-:matlab足球小游戏

    matlab足球小游戏 作者信息: qq:1064950364 程序说明: 该程序为足球小游戏,代码全部为本人所写。 背景图片为文件夹中的court.png,图片读取为相对路径,放到根目录下即可,无需修改目录。 其中,football.m为脚本...

    用Java实现的足球游戏代码

    【Java实现的足球游戏代码解析】 在这个项目中,“用Java实现的足球游戏代码”是一个基于J2SE(Java 2 Standard Edition)平台的程序,旨在帮助学习者深入理解和实践Java编程基础。通过分析这个游戏的代码,我们...

    zuqiu_loosek5w_足球类h5游戏_

    1. **用户交互**:在这款游戏中,用户的点击行为是游戏进程的关键,它直接影响到足球的移动和跳跃,这是H5游戏常见的触摸或鼠标交互方式,要求开发者对事件监听和处理有深入理解。 2. **物理模拟**:为了模拟真实的...

    android游戏疯狂足球带排行榜

    在Android平台上,开发一款名为“疯狂足球”的游戏并集成排行榜功能是一项综合性的技术挑战,涉及到多个方面的知识。首先,我们来看看“疯狂足球”这款游戏可能涉及的技术栈和实现细节。 一、Android开发基础 1. **...

Global site tag (gtag.js) - Google Analytics