打砖块 java_java实现打砖块小游戏
本文实例为大家分享了java实现打砖块小游戏的具体代码,供大家参考,具体内容如下
源码共包含两个文件
文件1:play_zhuankuai.java
import java.awt.*;
import javax.swing.JPanel;
@SuppressWarnings("serial")
public class play_zhuankuai extends JPanel implements Runnable{
boolean exit=false;
boolean end=false;
double x=100; //控制小球坐标
double y=100;
double x1=300; //控制底板坐标
double y1=300;
int score=0;
int index[]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //标记,记录砖块是否被打中
int x2[]=new int[15]; //控制砖块数量和坐标
int y2[]=new int[15];
double degree=3.14/3;
Image fangxing;
Image diban;
Image zhuankuai;
Image heiping;
Thread thread;
play_zhuankuai(){ //设置面板属性
jiazai();
thread = new Thread(this);
setSize(500,500);
setLocation(0,0);
setBackground(Color.black);
setVisible(true);
thread.start();
}
void jiazai(){ //导入图片
fangxing=Toolkit.getDefaultToolkit().getImage("images/方形.jpg").getScaledInstance(10,10,Image.SCALE_DEFAULT);
diban=Toolkit.getDefaultToolkit().getImage("images/底版.jpg").getScaledInstance(100, 10, Image.SCALE_DEFAULT);
zhuankuai=Toolkit.getDefaultToolkit().getImage("images/砖块.jpg").getScaledInstance(50, 20, Image.SCALE_DEFAULT);
heiping=Toolkit.getDefaultToolkit().getImage("images/黑屏.png").getScaledInstance(50, 20, Image.SCALE_DEFAULT);
}
public void paintComponent(Graphics g){
super.paintComponent(g);
paint_zhuankuai(g);
g.setColor(Color.blue);
g.drawLine(0, 350, 500, 350);
g.drawImage(diban,(int)x1, (int)y1, null);
paint_heiping(g);
g.drawImage(fangxing, (int)x, (int)y, null);
paint_wenzi(g);
rule();
}
void rule(){
x=x+1*Math.cos(degree);
y=y+1*Math.sin(degree);
if(y>=500-50||score==1500){
end=true;
}
if(x>=500-20||x<=0)
degree=3.14-degree;
if(x1<=0)
x1=0;
if(x1>=400)
x1=400;
if(y1>=500-50)
y1=500-50;
if(y1<=350)
y1=350;
if(y>=y1-10&&x>=x1&&x<=x1+100||y<=0)
degree=-degree;
for(int i=0;i
if((y>=y2[i]&&y<=y2[i]+20)&&((x>=x2[i]&&x<=x2[i]+50))&&index[i]==0){
index[i]=1;
degree=-degree;
score+=100;
}
}
}
void paint_heiping(Graphics g){
for(int i=0;i
if(index[i]==1)
g.drawImage(heiping, x2[i], y2[i], null);
}
}
void paint_wenzi(Graphics g){
g.setColor(Color.red);
g.drawString("分数:"+score, 0, 340);
if(end){
if(score<1500)
g.drawString("游戏结束!!!",200,250);
else
g.drawString("闯关成功!!!",200,250);
exit=true;
}
}
void paint_zhuankuai(Graphics g){
int p=0;
int k=0;
for(int i=0,j=0;i
p=100*j;
j++;
if(p+100>500){
j=1;
p=0;
k=k+60;
}
x2[i]=p;
y2[i]=k;
g.drawImage(zhuankuai, p,k,null);
}
}
@Override
public void run() {
while(!exit){
repaint();
try {
Thread.sleep(5);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
System.out.println("出现错误:"+e+"\n");
}
}
}
}
文件2:jframe_main.java
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
@SuppressWarnings("serial")
public class jframe_main extends JFrame implements KeyListener{
play_zhuankuai play=new play_zhuankuai();
jframe_main(){
addKeyListener(this);
add(play);
setSize(500,500);
setLocation(0, 0);
setVisible(true);
}
public static void main(String[] args) {
new jframe_main();
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==38)
play.y1-=20;
if(e.getKeyCode()==40)
play.y1+=20;
if(e.getKeyCode()==37)
play.x1-=20;
if(e.getKeyCode()==39)
play.x1+=20;
}
@Override
public void keyReleased(KeyEvent e) {
}
}
友情提示:该段源码会调用相关图片素材,请自行添加,本人在此不方便上传,望谅解
更多精彩游戏,请参考专题《java经典小游戏》
更多有趣的经典小游戏实现专题,分享给大家:
C++经典小游戏汇总
python经典小游戏汇总
python俄罗斯方块游戏集合
JavaScript经典游戏 玩不停
javascript经典小游戏汇总
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。
打砖块 java_java实现打砖块小游戏相关推荐
- 24点游戏java_Java实现24点小游戏
一.引育Java是当今最热门的编程语言,它的跨平台与网络应用方面的强大功能使之非常适用于网络游戏的开发.Jav.不仅功能简单,还很容易上手,对于新手来说,做一些简单的游戏相对容易.24点小游戏涉及Ja ...
- 敲地鼠java_Java实现的打地鼠小游戏完整示例【附源码下载】
本文实例讲述了Java实现的打地鼠小游戏.分享给大家供大家参考,具体如下: 这里涉及到java线程和GUI的相关知识,一个简单的java小游戏打地鼠,有兴趣的朋友可以优化一下.先来看看运行效果: 具体 ...
- 单机java_java实现单机版五子棋小游戏
简单的java小游戏–单机版五子棋 学了java有一段时间了,今天就来搞一个简单的单机版五子棋游戏. 实现功能:那必须能进行基础的输赢判断.还有重新开始的功能,悔棋的功能,先手设置的功能和退出的功能. ...
- 猜字游戏java_Java实现猜字小游戏
猜字游戏是一款益智游戏,喜欢玩具有挑战性单词游戏的你就可以来体验一下了,给你一个字母板.尝试通过想象相邻字母的单词.您将获得一个分数,根据您使用的字母,你已经使用了多少个字母,并以这些字母相关联的任何 ...
- 五子棋聊天java_Java如何实现五子棋小游戏(1)
1. 前言 该项目为经典版本的五子棋游戏和自创的毁灭玩法所结合,总体而言是一个休闲的小游戏.其中的规则不难,主要是为了丰富大家的文娱生活,让大家在忙碌的学习课后可以轻松一小下.这就是本程序的编写初衷. ...
- 飞翔的小鸟java_java 飞翔的小鸟 小游戏源码
[实例简介]小鸟躲避障碍物,以及计分. 游戏规则:只要鼠标 不断点击,小鸟就向上飞,不要小鸟碰到障碍物 为赢 [实例截图] [核心代码] package day06; import java.awt. ...
- 空战小游戏(控制台应用) c/c++实现
首发地址:https://www.cnblogs.com/saw96x/p/12465195.html 笔者也算是学了小半年的c++,之前都停留在控制台做做题,最近觉得这样实在是差点成就感,于是就想试 ...
- Python游戏开发,pygame模块,Python实现打砖块小游戏
前言: 本期我们将利用python制作一个打砖块小游戏,废话不多说,让我们愉快地开始吧~ 效果展示 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RdjcY4gn-16 ...
- python小游戏代码大全-Python实现打砖块小游戏代码实例
这次用Python实现的是一个接球打砖块的小游戏,需要导入pygame模块,有以下两条经验总结: 1.多父类的继承2.碰撞检测的数学模型 知识点稍后再说,我们先看看游戏的效果和实现: 一.游戏效果 二 ...
- bat小游戏代码大全_Python打砖块小游戏源代码
这次用Python实现的是一个接球打砖块的小游戏,最核心的就是:碰撞检测的数学模型 程序运行截图: 其实,编程问题到最后就是数学问题,这个游戏涉及到2D圆形与矩形的碰撞检测问题: 碰撞检测原理:通过找 ...
最新文章
- 艾麦捷科技-铂金小猪新年致辞
- 天兔(Lepus)监控系统慢查询分析平台安装配置
- 深度盘点:详细介绍机器学习中的7种交叉验证方法!
- Fedora 18 在线升级至 Fedora 19 命令步骤
- 广州的11个辖区_广州上半年经济发展情况,天河区总量超过2000亿
- redhat7.4启动telnet和SSH服务,修改IP地址
- 在IIS中部署SPA应用,多么痛的领悟!
- 计算机组成原理期末复习题
- Java-环境搭建(Mac版)
- 1.11 UML 类图(多看多用就熟悉了)(节选自:《大话设计模式》)
- First of all, let’s talk about the richest man in Japan
- MySQL基础与操作
- java毕业设计小区停车场管理系统(附源码、数据库)
- 台式电脑桌面没有计算机图标,电脑桌面图标全部消失怎么恢复 电脑桌面图标设置随意放置的方法...
- RK3399平台开发系列讲解(高速设备驱动篇)6.46、蓝牙驱动
- 点到点法式平面投影点的计算
- 怎么判断电脑是32位还是64位呢
- IDEA如何创建XML文件并用浏览器打开
- WebGL技术,让你可以在浏览器编辑模型
- 语言学句法分析树形图怎么画_教你如何能画语言学树型图
热门文章
- Go语言单向通道——通道中的单行道
- csv to dbf java_CSV to DBF
- 关于then()方法的理解
- 微信小程序使用sass
- php cdr,cdr文件用什么打开
- 台式机+笔记本的扩展模式+远程登录设置
- 金彩教育:店铺中的人才布局
- 大型网站架构“三高”(高并发、高可用、高性能)
- Android手机ram大小,安卓手机RAM容量演进史,如何从192MB走到16GB,HTC:我有话要说...
- 原子弹级别牛股发动机指标软件开发收获