• 坦克大战--Java类型


    写在前面

          Java编译器下载教程(真的良心):https://blog.csdn.net/Haidaiya/article/details/81230636

          本项目为本人独自制作,请各位尊重我的努力成果谢谢。同时,这个项目中也存在一些问题,请见谅。

            本项目需要启动服务器,在类Server中启动主函数,随后启动类Main中的main方法即可开始运行,服务器的地址默认为本地,如需修改,请在类Client中进行修改,谢谢。

            本项目中的图片音乐均来自网络,请不要用于商用(说起来我也不知道是否可以),仅用于学习和自己本地玩就好,否则,后果自负。

            文件源码和图片在博客最后面

    项目要求

          

    项目制作思路

    (1)为了实现图形界面,我们需要学习一波JFrame(画框),JPanel(画布 ), JButton(按钮)等等.....具体请参考我的另一篇博客

    (2)自定义按键,嗯,学习一波KeyListener,为了能够使用JButton(按钮)进行各种操作,学习一波ActionListener;同时,为了能够让用户更好的自定义按键,采用JComboBox(多选框)进行选择,学习一波嗯。

    (3)计时器,嗯,多线程

    (4)联系移动,嗯,这个设置为,每次点击移动键后,将坦克位置移动相同距离就好了

    (5)障碍物,嗯,为了更好的游戏体验,我用了7天试用期的PS CC 完成了所有图片制作,不得不说,PS是个好东西。图片都是网上找,然后用PS进行修改。同时,为了可以判断坦克和坦克之间、坦克和墙之间、子弹和墙、坦克之间的碰撞,专门用了一个Jduge类来判断各种碰撞,同时也进行坦克移动的判断。

    (6)AI坦克,嗯,偷了个懒,我用的是随机数,让坦克往一个方向一段一段距离,期间每隔一段时间,射出炮弹,同时遇到墙或者坦克就换一个方向继续行走。

    (7)服务器,嗯,学习一波socket

    扩展内容

    (1)作为一个游戏,怎么能没有好的background和background music呢,为此使用了PS CC进行背景处理,又学习了一个剪辑音乐的软件,说起来,我这个剪辑音乐的软件真心不错,还可以剪辑视频呢,微软商城找的,名字是剪影,轻度广告,而且你一般看不到(只在导出文件的时候弹出,而且不会挡住屏幕,比某剪辑良心不少)

    (2)然后,障碍物、子弹、坦克的图片也很重要,为此,借助了PS CC 和百度的强大,完成了这方面的制作。

    (3)由于一般的游戏不止有一个地图,为了制作多个地图,我利用excel进行构建地图(说起来,这个还真是好用)

    (4)对于音乐,我们需要学习一波URI , URL ,AudioClip等等,具体内容请百度或者看我的另一篇博客。我的音乐可能不让各位满意,如需更改,请在类Music进行修改。

    (5)之后,在项目完成的前几天,我觉得gif是个好东西,为此又下了一个软件进行gif制作.....说到gif,我有觉得,如果可以实现点击图片,然后.....(不剧透,因为也就那么回事)

    (6)为了增加游戏体验,我为部分墙壁增加了奖励物品,包括加速,伤害增加,加血等等,其中在第三关,我增加了随机生成岩浆的功能,就是因为这个功能,我自己都很少过关(微笑)。本来最开始的时候想过进行坦克升级的,后来做完了后忘记了,现在因为没有PS了,所以就放弃了,哎,PS是个好东西呀!

    (7)然后呢,似乎没得写了耶,最后的扩展就是........(永远不可能停止更新的游戏,“只要你肯加”)。

    游戏截图

     

     

     

    写在最后

    这个项目我也是写了比较久的,这篇文章是个综述,游戏的源码也放在这里,之后会写几篇博客,分开讲解整个程序。算是作为Java学习的总结了。

    文件源码(包括图片)

    下载链接:https://pan.baidu.com/s/1j-FDcvwuLST6hr8my2F3QA

    提取码:qwdz

    二维码:

     

     

  • 相关阅读:
    Java_Activiti5_菜鸟也来学Activiti5工作流_之入门简单例子(一)
    Java_Activiti5_菜鸟也来学Activiti5工作流_之初识BPMN2.0的简单结构(五)
    Java_Activiti5_菜鸟也来学Activiti5工作流_之JUnit单元测试(四)
    Java_Activiti5_菜鸟也来学Activiti5工作流_之与Spring集成(三)
    Java_Activiti5_菜鸟也来学Activiti5工作流_之初识常用服务类和数据表(二)
    Html+Css+Js_之table每隔3行显示不同的两种颜色
    Java使用poi对Execl简单操作_总结
    Java使用poi对Execl简单_写_操作
    Java使用poi对Execl简单_读_操作
    Java使用poi对Execl简单_读和写_操作
  • 原文地址:https://www.cnblogs.com/winter-bamboo/p/10692527.html
Copyright © 2020-2023  润新知