一款以人为射击类小游戏java算法的楼层java游戏

找一个经典横版射击单机小游戏,好像是java游戏._百度知道
找一个经典横版射击单机小游戏,好像是java游戏.
找一个经典横版射击单机小游戏,好像是java游戏,初中(大概年)的时候玩的,过关的,自己控制一个小兵,可以换枪的,中一枪就死,分2层楼,楼上楼下都有敌人,应该还有boss.
能不能来点有营养的回答呀,合金弹头谁没玩过呀..
我有更好的答案
合金弹头。。
采纳率:30%
我觉得楼主你最好是自己去找找768A小游戏你去那里找一找吧我好多小游戏都是那里玩的你最好是在射击小游戏里面找希望能够帮到你 ^_^我现在在找最新的飞鹰武士小游戏,你玩过没?
巷战 battle
chanel .......
好像是英文的,我以前在西门子C65上面玩过
木有哎 那是什么。反正我又不玩跑跑 27号的国际版出了诶 荃秋使命呀
经典但也要创新!权求师名国际版疯狂小镇登陆就有奖!
街机游戏了吧。。。。也是横版的,洛克人。。。。
其他6条回答
为您推荐:
其他类似问题
您可能关注的内容
单机小游戏的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。游戏分类:
热门手机壁纸推荐
设置手机机型
请选择手机品牌:(找游戏),横版射击的java游戏,名字忘了......【javagame吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:22,309贴子:
(找游戏),横版射击的java游戏,名字忘了......
1,大概在2009年玩的2,横版射击游戏,画面挺精美的3,游戏好像有8关以上,开始时使用的是手枪,游戏过程中通过捡取弹药武器会自动升级为步枪,弹药减少后会自动降级到手枪。敌人记得有穿着红色衣服的胖子......游戏中遇到老鼠可以开枪杀掉......4没记错的话应该是gameloft的游戏,因为游戏启动时候会有gameloft的经典logo(就是一个点从尾部调到头部的g上面)
又来麻烦你了嘿嘿
说错的 貌似是glu的游戏 glu的动态logo就是一个点在上面跳到g那里
又来麻烦你了嘿嘿
人不在还是等明天吧
gl射击游戏有很多
你去网站查查吧
智乐的射击游戏没怎么玩过,无能为力
为何心里有无数个草泥马
算坟吗?是NOVA或者现代战争2吧,这2个是横版射击,正好也是GL的
贴吧热议榜
使用签名档&&
保存至快速回贴查看: 5827|回复: 172
【JAVA】精品休闲射击类游戏《植物横扫僵尸》源码
阅读权限255
在线时间 小时
特别声明(务必查看!)
1、JAVA精品休闲益智游戏《植物横扫僵尸》源码
2、非9秒研发项目,所以请不要商用,仅限学习使用,请24小时务必删除。
3、技术问题请到(官方2000人群:)询问。
世界末日来了,僵尸来袭,豌豆射手与同伴们一起组成了最后的防线,玩家只需点击屏幕即可发射子弹横扫僵尸,同时也可以通过释放强力技能瞬间消灭大批僵尸,更有超值奖励关卡。源码包含完整工程,小编亲测啦~
开发环境:
开发语言:
Andriod& && & & && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && &&&
链接:游客,如果您要查看本帖隐藏内容请
本帖子中包含更多资源
才可以下载或查看,没有帐号?
阅读权限140
在线时间 小时
好东西好东西
阅读权限140
在线时间 小时
不要这么贵可好
阅读权限130
在线时间 小时
这画面很渣啊
阅读权限50
在线时间 小时
谢谢楼主分享& && && && && && &
阅读权限120
在线时间 小时
阅读权限140
在线时间 小时
阅读权限120
在线时间 小时
阅读权限120
在线时间 小时
匿名匿名匿名匿名匿名匿名
阅读权限100
在线时间 小时
感觉好像不错的样子啊
不是9秒上乱发的那些破东西,还是有料的。有空会
这套源码免费放出,这套源码免费提供,免费,免
模块名称:
人人商城V3 3.6.5 开源版 新增支付
正版官方一模一样 带女娲大厅 ,带防伪验证,修
部分资源截图,自称2000套微信小程序源码,目测
本套程序由网狐荣耀二次开发,注意:本套源码包
| 联系方式
COPYRIGHT(C)2015 ZHONGQINGLONGTU NETWORK CO.LTD ALL RIGHTS RESERVED.ICP备号-4
北京中清龙图网络技术有限公司Java基于Swing实现的打猎射击游戏代码
转载 &更新时间:日 15:02:05 & 投稿:shichen2014
这篇文章主要介绍了Java基于Swing实现的打猎射击游戏代码,包含完整的游戏事件处理与逻辑流程控制,具有不错的参考借鉴价值,需要的朋友可以参考下
本文实例讲述了Java基于Swing实现的打猎射击游戏代码。分享给大家供大家参考。
具体实现代码如下:
import java.awt.G
import java.awt.I
import javax.swing.JP
public class BackgroundPanel extends JPanel {
&&&&&&& private static final long serialVersionUID = 1L;
&&&&&&& private I// 背景图片
&&&&&&& public BackgroundPanel() {
&&&&&&&&&&&&&&& setOpaque(false);
&&&&&&&&&&&&&&& setLayout(null);
&&&&&&& public void setImage(Image image) {
&&&&&&&&&&&&&&& this.image =
&&&&&&& /**
&&&&&&&& * 画出背景
&&&&&&&& */
&&&&&&& protected void paintComponent(Graphics g) {
&&&&&&&&&&&&&&& if (image != null) {
&&&&&&&&&&&&&&&&&&&&&&& // 图片宽度
&&&&&&&&&&&&&&&&&&&&&&& int width = getWidth();
&&&&&&&&&&&&&&&&&&&&&&& // 图片高度
&&&&&&&&&&&&&&&&&&&&&&& int height = getHeight();
&&&&&&&&&&&&&&&&&&&&&&& // 画出图片
&&&&&&&&&&&&&&&&&&&&&&& g.drawImage(image, 0, 0, width, height, this);
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& super.paintComponent(g);
import java.awt.C
import java.awt.event.*;
import javax.swing.*;
public class BirdLabel extends JLabel implements Runnable {
&&&&&&& private static final long serialVersionUID = 1L;
&&&&&&& // 随机生成线程的休眠时间,即控制小鸟移动速度
&&&&&&& private int sleepTime = (int) (Math.random() * 300) + 5;
&&&&&&& private int y = 100;
&&&&&&& private T// 将线程作为成员变量
&&&&&&& private C
&&&&&&& private int score = 15;// 该类角色对应的分数
&&&&&&& /**
&&&&&&&& * 构造方法
&&&&&&&& */
&&&&&&& public BirdLabel() {
&&&&&&&&&&&&&&& super();
&&&&&&&&&&&&&&& // 创建小鸟图标对象
&&&&&&&&&&&&&&& ImageIcon icon = new ImageIcon(getClass().getResource("bird.gif"));
&&&&&&&&&&&&&&& setIcon(icon);// 设置控件图标
&&&&&&&&&&&&&&& addMouseListener(new MouseAction());// 添加鼠标事件监听器
&&&&&&&&&&&&&&& // 添加控件事件监听器
&&&&&&&&&&&&&&& addComponentListener(new ComponentAction());
&&&&&&&&&&&&&&& thread = new Thread(this);// 创建线程对象
&&&&&&& /**
&&&&&&&& * 控件的控件事件监听器
&&&&&&&& */
&&&&&&& private final class ComponentAction extends ComponentAdapter {
&&&&&&&&&&&&&&& public void componentResized(final ComponentEvent e) {
&&&&&&&&&&&&&&&&&&&&&&& thread.start();// 线程启动
&&&&&&&&&&&&&&& }
&&&&&&& /**
&&&&&&&& * 控件的鼠标事件监听器
&&&&&&&& */
&&&&&&& private final class MouseAction extends MouseAdapter {
&&&&&&&&&&&&&&& public void mousePressed(final MouseEvent e) {
&&&&&&&&&&&&&&&&&&&&&&& if (!MainFrame.readyAmmo())// 如果子弹没有准备好
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&// 什么也不做
&&&&&&&&&&&&&&&&&&&&&&& MainFrame.useAmmo();// 消耗子弹
&&&&&&&&&&&&&&&&&&&&&&& appScore();// 加分
&&&&&&&&&&&&&&&&&&&&&&& destory();// 销毁本组件
&&&&&&&&&&&&&&& }
&&&&&&& public void run() {
&&&&&&&&&&&&&&& parent =
&&&&&&&&&&&&&&& int width = 0;
&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&& while (width &= 0 || parent == null) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& if (parent == null) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& parent = getParent();// 获取父容器
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& } else {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& width = parent.getWidth();// 获取父容器的宽度
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Thread.sleep(10);
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&& for (int i = i & 0 && parent != i -= 8) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& setLocation(i, y);// 从右向左移动本组件位置
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Thread.sleep(sleepTime);// 休眠片刻
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& } catch (InterruptedException e) {
&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& if (parent != null) {
&&&&&&&&&&&&&&&&&&&&&&& MainFrame.appScore(-score * 10); // 自然销毁将扣分
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& destory();// 移动完毕,销毁本组件
&&&&&&& /**
&&&&&&&& * 从容器移除本组件的方法
&&&&&&&& */
&&&&&&& public void destory() {
&&&&&&&&&&&&&&& if (parent == null)
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&& parent.remove(this);// 从父容器中移除本逐渐
&&&&&&&&&&&&&&& parent.repaint();
&&&&&&&&&&&&&&& parent = // 通过该语句终止线程循环
&&&&&&& /**
&&&&&&&& * 加分的方法
&&&&&&&& */
&&&&&&& private void appScore() {
&&&&&&&&&&&&&&& System.out.println("小鸟被击中");
&&&&&&&&&&&&&&& MainFrame.appScore(15);
import java.awt.C
import java.awt.event.*;
import javax.swing.*;
public class PigLabel extends JLabel implements Runnable {
&&&&&&& private static final long serialVersionUID = 1L;
&&&&&&& // 随机生成休眠时间,即野猪移动速度
&&&&&&& private int sleepTime = (int) (Math.random() * 300) + 30;
&&&&&&& private int y = 260;// 控件的垂直坐标
&&&&&&& private int score = 10;// 该角色对应的分数
&&&&&&& private T// 内置线程对象
&&&&&&& private C// 控件的父容器对象
&&&&&&& /**
&&&&&&&& * 构造方法
&&&&&&&& */
&&&&&&& public PigLabel() {
&&&&&&&&&&&&&&& super();
&&&&&&&&&&&&&&& ImageIcon icon = new ImageIcon(getClass().getResource("pig.gif"));// 加载野猪图片
&&&&&&&&&&&&&&& setIcon(icon);// 设置本组件的图标
&&&&&&&&&&&&&&& // 添加鼠标事件适配器
&&&&&&&&&&&&&&& addMouseListener(new MouseAdapter() {
&&&&&&&&&&&&&&&&&&&&&&& // 按下鼠标按键的处理方法
&&&&&&&&&&&&&&&&&&&&&&& public void mousePressed(final MouseEvent e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& if (!MainFrame.readyAmmo())
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MainFrame.useAmmo();// 消耗子弹
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& appScore();// 给游戏加分
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& destory();// 销毁本组件
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& });
&&&&&&&&&&&&&&& // 添加组件事件适配器
&&&&&&&&&&&&&&& addComponentListener(new ComponentAdapter() {
&&&&&&&&&&&&&&&&&&&&&&& // 调整组件大小时
&&&&&&&&&&&&&&&&&&&&&&& public void componentResized(final ComponentEvent e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& thread.start();// 启动线程
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& });
&&&&&&&&&&&&&&& // 初始化线程对象
&&&&&&&&&&&&&&& thread = new Thread(this);
&&&&&&& public void run() {
&&&&&&&&&&&&&&& parent =
&&&&&&&&&&&&&&& int width = 0;
&&&&&&&&&&&&&&& while (width &= 0 || parent == null) {// 获取父容器宽度
&&&&&&&&&&&&&&&&&&&&&&& if (parent == null)
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& parent = getParent();
&&&&&&&&&&&&&&&&&&&&&&& else
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& width = parent.getWidth();
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& // 从左向右移动本组件
&&&&&&&&&&&&&&& for (int i = 0; i & width && parent != i += 8) {
&&&&&&&&&&&&&&&&&&&&&&& setLocation(i, y);
&&&&&&&&&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Thread.sleep(sleepTime);// 休眠片刻
&&&&&&&&&&&&&&&&&&&&&&& } catch (InterruptedException e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& if (parent != null) {
&&&&&&&&&&&&&&&&&&&&&&& MainFrame.appScore(-score * 10); // 自然销毁将扣分
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& destory();
&&&&&&& /**
&&&&&&&& * 从容器移除本组件的方法
&&&&&&&& */
&&&&&&& public void destory() {
&&&&&&&&&&&&&&& if (parent == null)
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&& parent.remove(this);
&&&&&&&&&&&&&&& parent.repaint();
&&&&&&&&&&&&&&& parent = // 通过该语句终止线程循环
&&&&&&& /**
&&&&&&&& * 加分的方法
&&&&&&&& */
&&&&&&& private void appScore() {
&&&&&&&&&&&&&&& System.out.println("野猪被击中");
&&&&&&&&&&&&&&& MainFrame.appScore(10);
import static java.lang.Math.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MainFrame extends JFrame {
&&&&&&& private static final long serialVersionUID = 1L;
&&&&&&& private static long score = 0;// 分数
&&&&&&& private static Integer ammoNum = 5;// 子弹数量
&&&&&&& private static JLabel scoreL// 分数
&&&&&&& private BackgroundPanel backgroundP
&&&&&&& private static JLabel ammoL
&&&&&&& private static JPanel infoP
&&&&&&& /**
&&&&&&&& * 构造方法
&&&&&&&& */
&&&&&&& public MainFrame() {
&&&&&&&&&&&&&&& super();
&&&&&&&&&&&&&&& setResizable(false);// 进制调整窗体大小
&&&&&&&&&&&&&&& setTitle("打猎游戏");
&&&&&&&&&&&&&&& infoPane = (JPanel) getGlassPane();// 获取玻璃面板
&&&&&&&&&&&&&&& JLabel label = new JLabel("装载子弹……");// 创建提示标签组件
&&&&&&&&&&&&&&& label.setHorizontalAlignment(SwingConstants.CENTER);
&&&&&&&&&&&&&&& label.setFont(new Font("楷体", Font.BOLD, 32));
&&&&&&&&&&&&&&& label.setForeground(Color.RED);
&&&&&&&&&&&&&&& infoPane.setLayout(new BorderLayout());
&&&&&&&&&&&&&&& infoPane.add(label);// 添加提示标签组件到玻璃面板
&&&&&&&&&&&&&&& setAlwaysOnTop(true);// 是窗体保持在最顶层
&&&&&&&&&&&&&&& setBounds(100, 100, 573, 411);
&&&&&&&&&&&&&&& setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
&&&&&&&&&&&&&&& backgroundPanel = new BackgroundPanel();// 创建带背景的面板
&&&&&&&&&&&&&&& backgroundPanel.setImage(new ImageIcon(getClass().getResource(
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& "background.jpg")).getImage());// 设置背景图片
&&&&&&&&&&&&&&& getContentPane().add(backgroundPanel, BorderLayout.CENTER);
&&&&&&&&&&&&&&& // 添加鼠标事件适配器
&&&&&&&&&&&&&&& addMouseListener(new FrameMouseListener());
&&&&&&&&&&&&&&& scoreLabel = new JLabel();// 显示分数的标签组件
&&&&&&&&&&&&&&& scoreLabel.setHorizontalAlignment(SwingConstants.CENTER);
&&&&&&&&&&&&&&& scoreLabel.setForeground(Color.ORANGE);
&&&&&&&&&&&&&&& scoreLabel.setText("分数:");
&&&&&&&&&&&&&&& scoreLabel.setBounds(25, 15, 120, 18);
&&&&&&&&&&&&&&& backgroundPanel.add(scoreLabel);
&&&&&&&&&&&&&&& ammoLabel = new JLabel();// 显示自动数量的标签组件
&&&&&&&&&&&&&&& ammoLabel.setForeground(Color.ORANGE);
&&&&&&&&&&&&&&& ammoLabel.setHorizontalAlignment(SwingConstants.RIGHT);
&&&&&&&&&&&&&&& ammoLabel.setText("子弹数量:" + ammoNum);
&&&&&&&&&&&&&&& ammoLabel.setBounds(422, 15, 93, 18);
&&&&&&&&&&&&&&& backgroundPanel.add(ammoLabel);
&&&&&&& /**
&&&&&&&& * 加分方法
&&&&&&&& */
&&&&&&& public synchronized static void appScore(int num) {
&&&&&&&&&&&&&&& score +=
&&&&&&&&&&&&&&& scoreLabel.setText("分数:" + score);
&&&&&&& /**
&&&&&&&& * 消耗子弹的方法
&&&&&&&& */
&&&&&&& public synchronized static void useAmmo() {
&&&&&&&&&&&&&&& synchronized (ammoNum) {
&&&&&&&&&&&&&&&&&&&&&&& ammoNum--;// 子弹数量递减
&&&&&&&&&&&&&&&&&&&&&&& ammoLabel.setText("子弹数量:" + ammoNum);
&&&&&&&&&&&&&&&&&&&&&&& if (ammoNum &= 0) {// 判断子弹是否小于0
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& new Thread(new Runnable() {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public void run() {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 显示提示信息面板
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& infoPane.setVisible(true);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 1秒钟装载子弹的时间
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Thread.sleep(1000);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& } catch (InterruptedException e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ammoNum = 5;// 恢复子弹数量
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 修改子弹数量标签的文本
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ammoLabel.setText("子弹数量:" + ammoNum);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& infoPane.setVisible(false);// 隐藏提示信息面板
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }).start();
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& }
&&&&&&& /**
&&&&&&&& * 判断子弹是否够用
&&&&&&&& *
&&&&&&&& */
&&&&&&& public synchronized static boolean readyAmmo() {
&&&&&&&&&&&&&&& synchronized (ammoNum) {
&&&&&&&&&&&&&&&&&&&&&&& return ammoNum & 0;
&&&&&&&&&&&&&&& }
&&&&&&& public static void main(String args[]) {
&&&&&&&&&&&&&&& EventQueue.invokeLater(new Runnable() {
&&&&&&&&&&&&&&&&&&&&&&& public void run() {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MainFrame frame = new MainFrame();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& frame.setVisible(true);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& frame.start();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& } catch (Exception e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& });
&&&&&&& /**
&&&&&&&& * 启动游戏的方法
&&&&&&&& */
&&&&&&& public void start() {
&&&&&&&&&&&&&&& new PigThread().start();
&&&&&&&&&&&&&&& new BirdThread().start();
&&&&&&& /**
&&&&&&&& * 窗体的鼠标事件监听器
&&&&&&&& *
&&&&&&&& */
&&&&&&& private final class FrameMouseListener extends MouseAdapter {
&&&&&&&&&&&&&&& public void mousePressed(final MouseEvent e) {
&&&&&&&&&&&&&&&&&&&&&&& Component at = backgroundPanel.getComponentAt(e.getPoint());
&&&&&&&&&&&&&&&&&&&&&&& if (at instanceof BackgroundPanel) {// 如果点到面板也扣除子弹
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MainFrame.useAmmo();// 消耗子弹
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&& /*
&&&&&&&&&&&&&&&&&&&&&&&& * if (at instanceof BirdLabel) {// 如果点到小鸟 MainFrame.appScore(32);//
&&&&&&&&&&&&&&&&&&&&&&&& * 加分 } if (at instanceof PigLabel) {// 如果点到野猪
&&&&&&&&&&&&&&&&&&&&&&&& * MainFrame.appScore(11);// 加分 }
&&&&&&&&&&&&&&&&&&&&&&&& */
&&&&&&&&&&&&&&& }
&&&&&&& /**
&&&&&&&& * 生成猪角色的线程
&&&&&&&& *
&&&&&&&& */
&&&&&&& class PigThread extends Thread {
&&&&&&&&&&&&&&& @Override
&&&&&&&&&&&&&&& public void run() {
&&&&&&&&&&&&&&&&&&&&&&& while (true) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 创建代表野猪的标签控件
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& PigLabel pig = new PigLabel();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& pig.setSize(120, 80);// 设置控件初始大小
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& backgroundPanel.add(pig);// 添加控件到背景面板
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 线程随机休眠一段时间
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& sleep((long) (random() * 3000) + 500);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& } catch (InterruptedException e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& }
&&&&&&& /**
&&&&&&&& * 生成鸟角色的线程
&&&&&&&& *
&&&&&&&& */
&&&&&&& class BirdThread extends Thread {
&&&&&&&&&&&&&&& @Override
&&&&&&&&&&&&&&& public void run() {
&&&&&&&&&&&&&&&&&&&&&&& while (true) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 创建代表小鸟的标签控件
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& BirdLabel bird = new BirdLabel();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& bird.setSize(50, 50);// 设置控件初始大小
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& backgroundPanel.add(bird);// 添加控件到背景面板
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& try {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& // 线程随机休眠一段时间
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& sleep((long) (Math.random() * 3000) + 500);
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& } catch (InterruptedException e) {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& e.printStackTrace();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& }
希望本文所述对大家的Java程序设计有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多关于 射击小游戏java 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信