首页 > 作文

免费java游戏代码大全(编程一个最简单游戏代码)

更新时间:2023-04-05 02:29:30 阅读: 评论:0

本文实例为大家分享了java实现方块赛跑小游戏的具体代码,供大家参考,具体内容如下

在一个图形界面上构造两个位于同一起跑线方块,起跑线位于界面靠左位置, a 方块先开始运动,向右移动 50 像素后停止,b 方块开始运动,向右移动 100 像素后停 止,a 方块继续向右运动 100 像素后停止,b 方块开始运动,如此循环接替执行,直至 某一个方块到达终点,界面显示该方块胜利信息。

1) 自定义一个threada,threadb, 重庆二本大学threadframe类(均继承自thread)。

2) 定义全局变量,方块的位置,总长度,冠军,睡眠时间等,布尔值方块等待变量、游戏继续变量、绘图变量

3) threada(threadb):等待waita(waitb)变量释放,即:等待另一个方块更新完位置;然后随机产生要移动的长度,检查运动后位置与总长度的关系,以此判断游戏是否结束。更新位置信息,更改绘图变量,通知绘图线程重绘。自锁本身,释放另一个方块线程。

4) threadframe:创个人年度工作计划建类对象,重写run函数,等待绘图变量的命令。接到绘图命令,重绘,判断游戏释放结束,重置绘图命令。

5) 构造函数,paint函数绘制,并进行游戏是否结束的判断,若结束,则打印冠军是谁,退出

教师节英语祝福语简短6) 主函数,定义threada,threadb, threadframe类的对象,运行。用jion函数等待子线程的结束。

import java.awt.*;import javax.swing.*;public class four3 extends jframe { // 全局变量 static int positiona = 50, positionb = 50, distanceall = 1600; static int recwidth = 50, recheight = 50; static char winner; static long sleeptime = 300; static boolean waita = true, waitb = true, gaming = true, unrepaint = true; //构造函数 public four3(福州高中排名) { ttitle("多线程:方块赛跑"); tbackground(color.white); tsize(1600, 500); tlocation(0, 200); tresizable(fal); tvisible(true); tdefaultclooperation(exit_on_clo); } //绘图函数 public void paint(graphics g) { // todo auto-generated method stub g.clearrect(0, 0, 1600, 900); g.tcolor(color.red); g.fillrect(positiona - 50, 100, recwidth, recheight); g.tcolor(color.blue); g.fillrect(positionb - 50, 300, recwidth, recheight); if (!gaming) {  g.tfont(new font("宋体", allbits, 50));  if (winner == 'a') {  g.tcolor(color.red);  g.drawstring(new string("winner is the red one!"), 550, 250);  } el if (winner == 'b') {  g.tcolor(color.blue);  g.drawstring(new string("winner is the blue one!"), 550, 250);  } } } public static void main(string[] args) { waita = fal; waitb2020平安夜是几月几日日 = true; unrepaint = fal; threadframe tf = new threadframe(); threada ta = new threada(); threadb tb = new threadb(); tf.start(); ta.start(); tb.start(); try {  tf.join();  ta.join();  tb.join(); } catch (exception e) {  // todo: handle exception } return; } //红色方块线程 public static class threada extends thread { public void run() {  while (gaming) {  while (waita) {   if (!gaming)return;   system.out.print("");  }  try {   sleep(sleeptime);  } catch (interruptedexception e) {   // todo auto-generated catch block   e.printstacktrace();  }  int distance = (int) (math.random() * 100000) % 100;  positiona += distance;  if (positiona >= distanceall) {   positiona = distanceall;   unrepaint = fal;   gaming = fal;   winner = 'a';  }  unrepaint = fal;  waita = true;  waitb = fal;  } } } //蓝色方块线程 public static class threadb extends thread { public void run() {  while (gaming) {  while (waitb) {   if (!gaming)return;   system.out.print("");  }  try {   sleep(sleeptime);  } catch (interruptedexception e) {   // todo auto-generated catch block   e.printstacktrace();  }  int distance = (int) (math.random() * 100000) % 100;  positionb += distance;  if (positionb >= distanceall) {   positionb = distanceall;   unrepaint = fal;   gaming = fal;   winner = 'b';  }  unrepaint = fal;  waitb = true;  waita = fal;  } } } //框架刷新线程 public static class threadframe extends thread { four3 jiemian = new four3(); public void run() {  while (gaming) {  while (unrepaint) {   if (!gaming)return;   system.out.print("");  }  jiemian.repaint();  unrepaint = true;  } } }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

本文发布于:2023-04-05 02:29:29,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/3eb2a5ae30cce297d65fc36c5338305a.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:免费java游戏代码大全(编程一个最简单游戏代码).doc

本文 PDF 下载地址:免费java游戏代码大全(编程一个最简单游戏代码).pdf

上一篇:清洗槽罐车
下一篇:返回列表
标签:方块   线程   函数   变量
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图