`

玩游戏?写游戏!

 
阅读更多

 

         玩游戏,我猜每个人都会偶尔玩一下,但是每次玩完就感觉时间过的好快,感觉时间都给浪费掉了,最近有一则新闻:“学长遗言”,就是讲大四的学长给学弟学妹们的真言,具体就是不要花太多时间玩游戏。这我也就不多做评价了。

        当然,相反的是,如果我们可以做游戏给自己玩,然后再玩(测试代码)的时候不断完善我们的游戏,使之更具趣味化,人性化,合理化,我想这未尝不是一种好的方式来转换我们对游戏的痴迷。

        大多数同学遨游在课本与考试之间,如果真正实践就只能望而却步,如果能够写一个游戏那就真的高大上了,有木有?今天我就浅谈我对写一些小游戏的简单看法。

        男人游戏系列,我想在大多数同学的记忆中应该都无法磨灭吧!今天我就对“是男人就撑过20秒”这个游戏讲讲我自己的理解和实现。

        (1)你要准备好导弹的图片,飞机的图片,碰撞后的效果图片,背景图片,然后用一个文件夹images保存。

        (2)准备一个背景音乐以及碰撞后产生的效果音效用audio文件夹保存

          前两步很简单有木有!

         (3)我们需要将用鼠标来控制飞机的行动,当然用键盘也可以

         (4)碰撞效果,这里我们需要判断导弹(圆形)的圆心和飞机的圆心距是否大于飞机和导弹的实际距离,如是则结束游戏,结束的弹出窗口

         (5)时间计数,在左上角显示时间

         (6)导弹出现的位置,从边框随机出现,出现50个,具体的导弹的轨迹可以自己设置

         (7)界面   
          菜单栏, 开始,结束,暂停,游戏设置
          难度设置:简单,中等,困难。通过设置小球的移动方法
          历史记录:最高时间
          游戏帮助等

         (8)当然如果觉得死的太快也可以设置子弹碰到飞机后,子弹消失,当然我们在这里规定飞机有一定量的血,低于一定值时就结束游戏

           具体实现:

           首先要将我们需要的数据存入GameData类中,便于修改,测试数据

           接着写好实体类,所有实体都继承Entity类,本类中有未实现的move()和draw()方法,由子类实现,子类包括背景,子弹,飞机等

           其次要写主函数,写好界面,启动线程,添加实体,绘制实体

           在接下来是监听方法,实现菜单中的开始,暂停,结束,继续方法。

           然后是线程方法,其中实例化一个Entity类的对象,然后调用move()方法

           最后就是测试代码。

     数据类:

public class GameData {
        //窗体的大小
	    public static  final int width = 500;
        public static  final int height = 400;
        //子弹的大小
        public static final int bwidth = 5;
        public static final int bheight = 5;
                      .
                      .
                      .
                      .

}

 实体类

public class Entity {
	public void draw(Graphics g){
	}
	public void move(){	
		System.out.println("进入Entity的move方法*************************");
	}

}

 设置鼠标光标为飞机图像

     	Toolkit toolkit = Toolkit.getDefaultToolkit();
     	Cursor cursor = toolkit.createCustomCursor(GameData.icon1.getImage(), new Point(16,16), "MyCursor");
     	jP.setCursor(cursor);

 监听中,开始,暂停,结束,继续实现:我就列出一种的代码,其他的类似

		 if(e.getActionCommand().equals("结束")){
			 //循环list为空
			 while(!GameData.list.isEmpty()){
			  //循环删除导弹并设置当前状态
				 Entity en = GameData.list.remove(0);
			         cn.setStop(true);			     
			 }
		 } 

 子弹中的绘制方法,x,y开始位置可以由自己设置,我这里用的是随机类Ramdom对象的nextint()方法随机产生

        public void draw(Graphics g){
                g.drawImage(GameData.icon.getImage(), x, y,
            	GameData.bwidth, GameData.bheight, null); 
        }

 移动的方法我就不附代码了,现在我移动的方法还比较幼稚,也不太合理,就只是从左上到坐下移动,后面还会修改~~

至于其他对象方法也是类似的。

 

         由于现在也只是初步完成一部分的工作,所以到之后如果做好了,在进行修改!^ _ ^

 

 

 

 

 

 

 

 

 

 

 

        

分享到:
评论

相关推荐

    玩游戏机器人指南.7z

    Python编程快速上手--让繁琐工作自动化 实践项目18.14.3 玩游戏机器人指南 自己写的代码 可以稳定玩完第一关 有一个很不错的指南名为“How to Build a Python Bot That Can Play Web Games”,网址是 ...

    Unity4.x 2D游戏开发基础教程(内部教程)

    玩过打飞机吧,玩过连连看吧,30天时间,这本资料可以让你熟悉Unity的方方面面,甚至还可以山寨2个类似的游戏!说我吹牛?店家反正是看过了,信不信由你,反正我信了!Unity4.x 2D游戏开发基础教程(内部教程)

    从玩游戏到写外挂,C语言C 程序员大神是怎样做到的!.docx

    ### 从玩游戏到写外挂:C语言程序员的成长之路 #### C语言的重要性及应用场景 C语言作为一门历史悠久的编程语言,至今仍具有重要的地位。它不仅是一门基础性的编程语言,还是很多高级语言如Java、.NET底层实现的...

    【毕业设计】pytorch训练AI自动玩小游戏代码合辑(含游戏代码)AITetris俄罗斯方块.zip

    《PyTorch训练AI自动玩小游戏:以俄罗斯方块为例》 在当今的深度学习领域,人工智能已经不再局限于复杂的任务,而是逐渐渗透到日常生活中的各个方面,包括娱乐领域。本项目【毕业设计】pytorch训练AI自动玩小游戏...

    控制儿童玩在线小游戏计时器(游戏防沉迷小工具)

    当孩子开始计时玩游戏的时候,系统将本程序文件夹下面的没有限制的hosts_yes文件替换掉系统hosts文件,系统开始玩游戏计时,然后就可以打开网页访问游戏网站并玩游戏了。 当计时结束,系统将本程序文件夹下面的限制...

    玩游戏卡慢怎么回事 玩游戏卡慢原因分析【介绍】.docx

    标题中的“玩游戏卡慢怎么回事 玩游戏卡慢原因分析”是一个常见的问题,涉及到电脑硬件、软件优化和网络条件等多个方面。以下是对这个问题的详细分析: 首先,玩游戏卡慢并不一定是由于电脑被恶意程序入侵,更可能...

    怎么利用ChatGPT写一个好玩的游戏?.docx

    明确游戏的玩法,如玩家如何与ChatGPT交互,消耗分数的机制,时间限制以及可能的奖励或惩罚。例如,玩家每次提问都要消耗分数,游戏需在限定时间内完成,允许多次尝试但会消耗分数,可以通过购买或道具来获取额外...

    学《电玩游戏java实战diy》需要的一些代码和资源

    跟着《电玩游戏java实战diy》这本书做游戏,写的java游戏代码和做的素材资源。其实大多数都是书上原本的代码啦,但是该书没有光盘装源代码。还有素材是我做的,所以用起来会比较方便。给不擅长制作图片素材的人方便...

    纯js写的小游戏,打开就可以玩,类似于是男人就坚持20秒

    【标题】"纯js写的小游戏,打开就可以玩,类似于是男人就坚持20秒",这是一款基于JavaScript实现的在线小游戏,无需安装任何软件,只需在浏览器中打开即可进行游玩。JavaScript是一种广泛用于Web开发的脚本语言,它...

    VC 写的三子棋游戏源码,玩过么?.rar

    VC 写的三子棋游戏源码,玩过么?听说过五子棋,没见过也没听过三子棋啊,究竟是怎么回事呢?玩法大致和五子棋相似:使自己的棋子凑成‘三’,这时你可以把对方任一个子废掉,游戏主程序分服务端和客户端,并自动...

    玩游戏游戏学编程 CodeCombat.zip

    CodeCombat 是一个通过玩游戏来学习编程的网站,也是GitHub上最大的开源CoffeeScript(一种脚本语言,类似JavaScript)项目,构筑在几十个开源项目之上的,有上千程序员和玩家为其编写程序、测试游戏。到目前为止,...

    java写的网络猜数字游戏

    【Java网络猜数字游戏】是一个基于Java编程语言开发的多用户互动游戏,它利用了Java的Socket编程技术来实现客户端和服务器之间的通信。在这款游戏中,服务器端会随机生成一个数字,然后各个客户端通过网络连接向...

    C++写的小游戏

    一个特别的亮点是它自带了地图设计程序,允许用户自编生成游戏地图,增加了游戏的可玩性和创造性。 关于这个小游戏的知识点可以从多个角度进行解析: 1. **C++编程语言**:C++是一种面向对象的编程语言,具有高效...

    C#写的手机拼图游戏能实现游戏功能

    标题中的“C#写的手机拼图游戏能实现游戏功能”表明这是一个使用C#编程语言开发的手机应用程序,其核心功能是拼图游戏。C#是一种广泛应用于桌面、Web以及移动平台开发的面向对象的编程语言,由微软公司推出,特别...

    Python-使用遗传算法和深度学习训练AI来玩贪吃蛇的游戏

    训练过程中,AI会在模拟环境中不断玩游戏,每次游戏结束时,都会更新策略网络的权重,使其能更好地预测每个动作的未来奖励。随着训练的进行,AI会逐渐学会避免碰撞、持续吃食物以及适应游戏难度的变化。 在"AI_...

    用DEV C++做的游戏,有170多个游戏,超好玩。

    在描述中,“下载了用DEV C++打开就可以玩”提示我们,这些游戏的源代码是以C++语言编写,并且可能包含了必要的头文件、库和资源文件,可以直接在DEV C++环境中编译运行。这为学习C++编程和游戏开发提供了一个实践...

    虚拟桌面 上班玩游戏真需要

    在“上班玩游戏真需要”的场景中,虚拟桌面可以帮助员工在工作时间专注于工作,而在休息时间快速切换到娱乐模式,如玩游戏,而不会被他人轻易发现。 首先,我们来详细了解一下虚拟桌面的概念。虚拟桌面是通过软件...

    用Python和Pygame写游戏-从入门到精通 – 目光博客.rar

    《用Python和Pygame写游戏-从入门到精通》是一本深入浅出的教程,旨在帮助初学者和有一定编程基础的读者掌握使用Python语言和Pygame库开发游戏的方法。Pygame是Python的一个流行模块,提供了丰富的功能,用于创建2D...

    java写的简化版飞机大战游戏

    【标题】:“java写的简化版飞机大战游戏”揭示了...同时,对于经验丰富的开发者,这个项目也是一个优化和扩展的起点,可以在此基础上添加更多的功能和特性,比如网络对战、排行榜系统等,以提升游戏的趣味性和可玩性。

    麻将游戏源码VB写的麻将游戏源码

    标题中的“麻将游戏源码VB写的麻将游戏源码”表明这是一个使用Visual Basic(VB)编程语言编写的麻将游戏的源代码。VB是一种流行的面向对象的编程语言,常用于开发图形用户界面(GUI)应用程序,包括游戏。源码是...

Global site tag (gtag.js) - Google Analytics