资源简介
战舰游戏设计课程报告.采用Java语言基于IDEA开发工具完成,有音效,使用的是自定义的线程,信能不太好,可以自己下载下来使用线程池优化一下.源码也包含在压缩包里面了,有直接使用Maven打的jar包运行.
代码片段和文件信息
package com.game.submarine.action;
import com.game.submarine.hit.Blast;
import com.game.submarine.panel.MyPanel;
import com.game.submarine.ship.Submarine;
import com.game.submarine.ship.WarShip;
import javax.swing.*;
import java.awt.*;
import java.net.URL;
/**
* title: com.game.submarine.action
* @author: lixing
* date: 2018/6/2 15:06
* description:潜艇发射鱼雷对象
*/
public class Torpedo implements Runnable {
private MyPanel panel;
private WarShip ship;
private Submarine sm;
/** 默认长度和宽度 参数来自图片*/
private int weight = 5;
private int height = 5;
/** 位置xy*/
private int X;
private int Y;
/** 移动距离*/
private int dy = 1;
/** 运行标记*/
public boolean flag = false;
private Image image;
private Blast blast;
public Torpedo(MyPanel p WarShip ws Submarine sm)
{
this.panel = p;
this.ship = ws;
this.sm = sm;
URL url=Torpedo.class.getResource(“/images/鱼雷.png“);
image = Toolkit.getDefaultToolkit().getImage(url);
image = new ImageIcon(image).getImage();
this.weight = image.getWidth(panel);
this.height = image.getHeight(panel);
this.X = this.sm.getX() + this.weight/ 2;
this.Y = this.sm.getY();
}
public void drawTorpedo(Graphics2D g)
{
g.drawImage(image this.X this.Y panel);
}
public void upMove()
{
this.Y -= this.dy;
if(this.Y <= 150)
{
this.hitting();
this.flag = true;
}
if(this.sm.flag == true)
{
if(this.Y < 150)
{
this.flag = true;
}
}
}
@Override
public void run()
{
while(!flag)
{
this.upMove();
if(this.panel.isStop() == true)
{
synchronized(MyPanel.subLock)
{
try
{
MyPanel.subLock.wait();
}
catch(Exception e)
{
e.printStackTrace();
this.flag = true;
}
}
}
try
{
Thread.sleep(10);
}
catch(Exception e)
{
e.printStackTrace();
this.flag = true;
}
}
}
/** 判断是否击中战舰*/
public void hitting()
{
if(this.X > (this.ship.getBeginX() - this.weight) && this.X < (this.ship.getBeginX() + this.ship.getWidth()-this.getWeight()))
{
int num = this.panel.getLiveNum();
blast = new Blast(this.ship.getBeginX() + this.ship.getWidth() /2 this.ship.getBeginY() + this.ship.getHeight() / 2);
Thread t = new Thread(blast);
thi
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-02-09 13:41 战舰游戏设计课程报告\
目录 0 2019-02-09 13:41 战舰游戏设计课程报告\fight\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\.idea\
文件 622 2018-06-11 21:19 战舰游戏设计课程报告\fight\.idea\compiler.xm
文件 654 2018-06-13 18:47 战舰游戏设计课程报告\fight\.idea\encodings.xm
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\.idea\inspectionProfiles\
文件 1551 2018-06-09 13:27 战舰游戏设计课程报告\fight\.idea\inspectionProfiles\Project_Default.xm
文件 457 2018-06-09 11:15 战舰游戏设计课程报告\fight\.idea\misc.xm
文件 250 2018-06-09 11:15 战舰游戏设计课程报告\fight\.idea\modules.xm
文件 67066 2018-06-17 12:14 战舰游戏设计课程报告\fight\.idea\workspace.xm
文件 1134 2018-06-12 23:36 战舰游戏设计课程报告\fight\fight.iml
文件 2785 2018-06-13 21:02 战舰游戏设计课程报告\fight\pom.xm
文件 1027 2019-02-09 13:41 战舰游戏设计课程报告\fight\readme.md
文件 1018 2018-06-15 11:16 战舰游戏设计课程报告\fight\readme.md.bak
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\action\
文件 4160 2018-06-15 16:04 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\action\Torpedo.java
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\bumb\
文件 3029 2018-06-16 18:36 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\bumb\Bumb.java
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\button\
文件 3126 2018-06-13 12:04 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\button\MyButton.java
目录 0 2019-02-09 13:40 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\dialog\
文件 6574 2018-06-16 19:25 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\dialog\HelpDialog.java
文件 7013 2018-06-15 12:49 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\dialog\InfoDialog.java
文件 10000 2018-06-15 12:49 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\dialog\InputDialog.java
文件 4102 2018-06-15 12:49 战舰游戏设计课程报告\fight\src\main\java\com\game\submarine\dialog\MyDialog.java
............此处省略150个文件信息
相关资源
- JSP/Java网络编程课程设计/登录注册
- jsp课程设计6套完整的课程设计
- 书店售书系统,图书管理系统
- 2016秋广工数据库课程设计学生信息管
- 通信录管理系统-java+sql
- J2EE课程设计酒店订房系统-代码部分
- 软件工程课程设计飞机订票系统Java
- java课程设计通讯录管理软件源代码
- Java课程设计案例精编第二版书中案例
- 数据库课程设计java实现饭卡管理系统
- jsp聊天室课程设计
- 数据库课程设计报刊订阅系统
- 软件工程课程设计图书馆管理系统
- JSP课程设计包含投票系统、通讯簿管
- JAVA-计算机操作系统 多级反馈队列调
- Java课程设计超级万年历文档
- 库存管理系统 数据库课程设计
- 基于java坦克大战课程设计报告
- 基于Java的仓库管理系统课程设计报告
- 网络课程设计报告——网络聊天系统
- 医药进销存管理系统课程设计java工程
- SQLServer课程设计-论坛管理系统
- Java课程设计图书管理系统代码及报告
- SQL Server数据库 + Java 某高校选课系统
- java ee课程设计
- 软件工程课程设计飞机订票系统Java数
- 网上书店-课程设计JSP+JavaBean+Servle
- java_课程设计报告_拼图游戏
- web开发课程设计
- 清爽夏日九宫格日志网源码
评论
共有 条评论