一:坦克大战

源码import java.util.ArrayList;

import java.awt.*;

import java.awt.event.*;

import java.util.List;

import javax.swing.JOptionPane;

public class TankClient extends Frame implements ActionListener {

/**

*

*/

private static final long serialVersionUID = 1L;

public static final int Fram_width = 800; //

public static final int Fram_length = 600;

public static boolean printable = true;

MenuBar jmb = null;

Menu jm1 = null, jm2 = null, jm3 = null, jm4 = null;

MenuItem jmi1 = null, jmi2 = null, jmi3 = null, jmi4 = null, jmi5 = null,

jmi6 = null, jmi7 = null, jmi8 = null, jmi9 = null;

Image screenImage = null;

Tank homeTank = new Tank(300, 560, true, Direction.STOP, this);//

GetBlood blood = new GetBlood();

Home home = new Home(373, 545, this);

List theRiver = new ArrayList();

List tanks = new ArrayList();

List bombTanks = new ArrayList();

List bullets = new ArrayList();

List trees = new ArrayList();

List homeWall = new ArrayList();

List otherWall = new ArrayList();

List metalWall = new ArrayList();

public void update(Graphics g) {

screenImage = this.createImage(Fram_width, Fram_length);

Graphics gps = screenImage.getGraphics();

Color c = gps.getColor();

gps.setColor(Color.GRAY);

gps.fillRect(0, 0, Fram_width, Fram_length);

gps.setColor(c);

framPaint(gps);

g.drawImage(screenImage, 0, 0, null);

}

public void framPaint(Graphics g) {

Color c = g.getColor();

g.setColor(Color.green);

Font f1 = g.getFont();

g.setFont(new Font("TimesRoman", Font.BOLD, 20));

g.drawString("最高分: ", 200, 70);

g.setFont(new Font("TimesRoman", Font.ITALIC, 30));

g.drawString("" + tanks.size(), 400, 70);

g.setFont(new Font("TimesRoman", Font.BOLD, 20));

g.drawString("得分ֵ: ", 500, 70);

g.setFont(new Font("TimesRoman", Font.ITALIC, 30));

g.drawString("" + homeTank.getLife(), 650, 70);

g.setFont(f1);

if (tanks.size() == 0 && home.isLive() && homeTank.isLive()) {

Font f = g.getFont();

g.setFont(new Font("TimesRoman", Font.BOLD, 60));

this.otherWall.clear();

g.drawString(" ", 310, 300);

g.setFont(f);

}

if (homeTank.isLive() == false) {

Font f = g.getFont();

g.setFont(new Font("TimesRoman", Font.BOLD, 40));

tanks.clear();

bullets.clear();

g.setFont(f);

}

g.setColor(c);

for (int i = 0; i < theRiver.size(); i++) {

River r = theRiver.get(i);

r.draw(g);

}

for (int i = 0; i < theRiver.size(); i++) {

River r = theRiver.get(i);

homeTank.collideRiver(r);

r.draw(g);

}

home.draw(g);

homeTank.draw(g);

homeTank.eat(blood);

for (int i = 0; i < bullets.size(); i++) {

Bullets m = bullets.get(i);

m.hitTanks(tanks);

m.hitTank(homeTank);

版权属于:逍遥子大表哥

按照知识共享署名-非商业性使用 4.0 国际协议进行许可,转载引用文章应遵循相同协议。

java小游戏源码_分享几款java小游戏源码相关推荐

  1. layui生产管理系统_分享两款Java Spring框架的开源MES制造执行系统

    随着工业互联网.智能制造的快速发展,MES制造执行系统的需求量也渐渐变大,有不少软件企业或者互联网企业都在做一块,现在可谓是百家争鸣.在国内影响力比较大的MES企业有SAP(思爱普).Siemens( ...

  2. java毕设用的框架_分享四个Java低代码快速开发平台贼好用, 私活毕设神器

    一.OPSLI 快速开发平台 OPSLI 快速开发平台基于springboot.vue.element-ui .vue-admin-beautiful,项目采用前后端分离架构,热插拔式业务模块与插件扩 ...

  3. 同城跑腿微信小程序制作步骤_分享下同城跑腿小程序的作用

    跑腿小程序的开发真正实现大家花钱买服务的要求,随时办事随时下单,只需在手机上轻轻一点,即可完成你的要求,省心省力省时间. 跑腿小程序开发市场情况分析: 1.市场需求量大 现代社会经济发展越来越快,人们 ...

  4. 生鲜水果店小程序的好处_分享生鲜水果店小程序有什么功能

    1.吸引附近的用户: 通过小程序吸引附近的用户,为线下店铺引流,比如利用消费奖励.优惠券赠送等活动,增加店内的客流量,从而提高店铺销量. 2.线上线下会员沉淀: 水果店可以通过微信小程序累计会员积分. ...

  5. java数独最快解_[分享]数独的JAVA解法

    package sodoku.puzzler; /** * 求解Sodoku Puzzler的工具类 * @author Eastsun */ public class Solver{ protect ...

  6. 分享两款智慧物业系统源码,前后端分离,前端VUE,Uni-app框架

    分享两款智慧物业管理系统源码,源码免费分享,需要源码学习参考的小伙伴可以私信我. ▶▶▶1:Java智慧物业管理系统源码(App+业主端微信小程序+物业端H5) 智慧物业介绍: 一.技术架构 基于Sp ...

  7. 分享五款java学习辅助工具,总有你用的上的~

    想要学好java技术,除了自身的努力,辅助工具也不缺少,辅助工具可以帮助大家在今后的工作中可以提高工作效率,下面小编就来分享五款java学习辅助工具,总有你用的上的~ 五款java学习辅助工具: 1. ...

  8. vscode regex previewer插件怎么用_分享五款开挂神器!助你效率倍增!做PPT怎么能不会用插件?...

    是不是经常觉得自己做出来的PPT很辣眼睛?是不是觉得别人只要十几分钟就搞定一个PPT可是自己却要花好几个小时?那是因为别人都偷偷开挂啦!你还不知道?今天小编就来给大家分享几款超好用的PPT插件,每一款 ...

  9. 文字转语音小助手有哪些?分享三款,配音免费还易操作

    文字转语音小助手有哪些?分享三款,配音免费还易操作 文字转语音,其实就是将我们撰写好的文档转为语音进行播放,比如为短视频配音,其实也可以理解成为文字转语音.很多小伙伴会直接自己配音,但是对于不会配音的 ...

  10. 腾讯沙盒游戏计算机,最好玩的五款沙盒游戏 腾讯新作上榜

    原标题:最好玩的五款沙盒游戏 腾讯新作上榜 沙盒游戏在目前的大环境下属于小众游戏,如果你真的花时间去玩一款沙盒游戏就会爱上沙盒游戏.沙盒游戏的节奏平缓,和MOBA游戏不一样没有什么激动人心的瞬间,不过 ...

最新文章

  1. 你可能没那么了解 JWT
  2. 基于协同训练的半监督文本分类算法
  3. jQuery框架风云榜案例
  4. 从web编辑器 UEditor 中单独提取图片上传,包含多图片单图片上传以及在线涂鸦功能...
  5. 【CASS精品教程】CASS9.1土方量的计算方法汇总
  6. cc笔记_robotium_01
  7. 查询sql执行计划_使用SQL执行计划进行查询性能调整
  8. 今天我理解了妈妈为什么会被电信诈骗
  9. IntersectionObserver API
  10. OD使用教程23 - 调试篇23
  11. python 快速排名发包_2019年SEO快速排名发包技术及原理 - 立金哥
  12. YUV Alpha Blend 推导过程
  13. 软件架构设计入门学习
  14. 微型计算机要与局域网连接必须安装的硬件,计算机与局域网连接需要什么硬件...
  15. H5跳转微信公众号解决方案
  16. 基于STM32单片机采集数据数据上云
  17. JS实现保存当前页面
  18. Ubuntu 14.04连接上海大学ShuWlan-1X与eduroam
  19. Js 之移动端图片上传插件mbUploadify
  20. 使用NOWSMS搭建自己的彩信中心

热门文章

  1. 天涯明月刀开发_天涯明月刀手游公测上线,斗鱼暗地操作,打造第二个PDD
  2. POJ 2686 Traveling by Stagecoach
  3. 2.1.6 用ProtectX实现扫描的反击与追踪
  4. ARC官方文档翻译! - iPhone App开发外包专区 - 威锋论坛 - 威锋网
  5. POJ 2989 All Friends
  6. The Beauty of DirectX 11 (3) --- constant buffer, buffered/structure buffer
  7. 【转】Hadoop API 使用介绍
  8. TensorFlow实现对花朵数据集的图片分类(保证运行成功)
  9. 决策树,随机森林,集成学习的算法实现
  10. python选择排序代码_Python 数据结构与算法——选择排序(迭代版、递归版)