用java编写五子棋游戏_java编写一个五子棋游戏,拜托了
展开全部
保存为appwzq.java
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
public class appwzq extends Applet implements MouseListener
{
al;
static int nu=29;
int x1,x2,y1,y2,width,height;
int[][] A=new int[nu][nu];
int j=20; //记录间隔长度
int lj=16; //记录棋子直径62616964757a686964616fe4b893e5b19e31333262353965
int user=1;
boolean flag=false;
public void init() //初始化方法
{
this.addMouseListener(this);
}
public void mousePressed(MouseEvent e)
{
flag= true;
x1=e.getX();
y1=e.getY();
deal();
}
public void mouseReleased(MouseEvent e)
{
Graphics g=getGraphics();
paintblack(g);
}
public void paintblack(Graphics g)
{
int a=1;
for(int i=1;i<=nu;i++)
{ a=i*j;
g.drawLine(a,j,a,j*nu);
}
for(int i=1;i<=nu;i++)
{ a=i*j;
g.drawLine(j,a,j*nu,a);
}
}
public void paint(Graphics g)
{
if (user==1)
{
g.setColor(Color.black); //setColor(Color c); 设置绘图区颜色
g.fillOval(x2*j-j/2,y2*j-j/2,lj,lj); //fillOval(int x,int y, int width,int height) 画椭圆并用当前颜色填充
//drawOval(int x,int y, int width,int height) 画椭圆
}else
if (user==2)
{
g.setColor(Color.red); //setColor(Color c); 设置绘图区颜色
g.fillOval(x2*j-j/2,y2*j-j/2,lj,lj); //fillOval(int x,int y, int width,int height) 画椭圆并用当前颜色填充
//drawOval(int x,int y, int width,int height) 画椭圆
}
win(); //判断是否赢
}
public void deal()
{
int x3,y3;
x2=x1/j;
y2=y1/j;
x3=x2*j;
y3=y2*j;
if (x2<=nu && y2<=nu)
{
if (((x3-x1)*(x3-x1)+(y3-y1+j)*(y3-y1+j))<=lj*lj/4)
{
y2++;
}else
if (((x3-x1+j)*(x3-x1+j)+(y3-y1)*(y3-y1))<=lj*lj/4)
{
x2++;
}else
if (((x3-x1+j)*(x3-x1+j)+(y3-y1+j)*(y3-y1+j))<=lj*lj/4)
{
y2++;
x2++;
}else
{
y2=-1;
x2=-1;
}
if (y2>=0&&x2>=0&&A[x2][y2]==0)
{
A[x2][y2]=user;
Graphics g=getGraphics();
paint(g);
}
}
}
public void win()
{
int x3,y3,x=0,y=0,xy=0,yx=0;
for (int i=-5;i<6 ;i++ )
{
x3=x2;
y3=y2;
x3=x3+i;
if (0<=x3&&x3<=nu&&0<=y3&&y3<=nu) //x轴
{
if (A[x3][y3]==user)
{ x++; } else { x=0; }
}
y3=y3+i; //xy轴
if (0<=x3&&x3<=nu&&0<=y3&&y3<=nu)
{
if (A[x3][y3]==user)
{ xy++; } else { xy=0; }
}
x3=x3-i; //y轴
if (0<=x3&&x3<=nu&&0<=y3&&y3<=nu)
{
if (A[x3][y3]==user)
{ y++; } else { y=0; }
}
x3=x3-i; //yx轴
if (0<=x3&&x3<=nu&&0<=y3&&y3<=nu)
{
if (A[x3][y3]==user)
{ yx++; } else { yx=0; }
}
if (x>4||y>4||xy>4||yx>4)
{
i=7;
Graphics g=getGraphics();
if (user==1)
{
g.drawString("黑方赢",j*nu+30,300);goto al;
}else { g.drawString("红方赢",j*nu+30,300);goto al; }
}
}
if (user==1)
{
user=2;
}else{ user=1; }
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mouseClicked(MouseEvent e){}
}
保存为。html格式
width=800
height=600>
输赢出来之后还能下棋,我没写结束的语句。你们自己写吧。
已赞过
已踩过<
你对这个回答的评价是?
评论
收起
用java编写五子棋游戏_java编写一个五子棋游戏,拜托了相关推荐
- java applet 游戏_Java Applet实现五子棋游戏
从谷歌的AlphaGo到腾讯的绝艺,从人脸识别到无人驾驶,从谷歌眼镜到VR的兴起,人工智能领域在不断的向前迈进,也在不断深入的探索.但背后错综复杂的技术和利益成本也是很多企业亟待解决的难题.对于人工智 ...
- java 五子棋项目_Java项目实现五子棋小游戏
本文实例为大家分享了Java实现五子棋小游戏的具体代码,供大家参考,具体内容如下 项目名称 五子棋小游戏 项目描述 可以改变获胜棋子数,率先连成棋数的人获胜 代码实现 测试类 public class ...
- java 拼图游戏_Java学员作品-拼图游戏
由于大多数的手机都内置了Java的运行环境,加上Java语言自身的跨平台特性,Java成为了编写手机游戏时最常使用的语言之一. 拼图游戏很多人都玩过,它的游戏规则是将图片进行分割,然后将顺序打乱,要求 ...
- java赛马游戏_Java小程序赛马游戏实现过程详解
这是当时做的一个小游戏,大概就是程序开始后,会进入用户登录界面,用户输入自己的姓名和密码后,选择登录会进入到赛马比赛的界面,这时可以看见赛马场和马匹的编号,用户可以选择任何一个编号的马进行投注,输入有 ...
- java中人机猜拳_Java实现人机猜拳游戏
本文实例为大家分享了Java实现人机猜拳游戏的具体代码,供大家参考,具体内容如下 实现: User类 public class User { private String name; private ...
- java贪吃蛇代码_java实现贪吃蛇游戏代码(附完整源码)
先给大家分享源码,喜欢的朋友点此处下载. 游戏界面 GUI界面 java实现贪吃蛇游戏需要创建一个桌面窗口出来,此时就需要使用java中的swing控件 创建一个新窗口 JFrame frame = ...
- java d打字游戏_java实现快速打字游戏
本文实例为大家分享了java实现打字游戏的具体代码,供大家参考,具体内容如下 import java.util.Random; import java.util.Scanner; public cla ...
- 手把手教你架构3d游戏引擎pdf_一个在游戏行业摸爬滚打了十几年的人,为何我对这本书情有独钟...
Big News!<游戏开发:世嘉新人培训教材>今日开始预售啦!经过漫长的等待,这次终于可以买到了.现在下单,你将在图书出印厂的第一时间收到书哦- 这本书由世嘉一线开发者执笔,并被选为世嘉 ...
- java数字计算结果_Java编写程序之输入一个数字实现该数字阶乘的计算
需求说明: 编写Java程序,输入一个数字,实现该数字阶乘的计算.一个数字的阶乘是所有小于及等于该数的正整数的积,自然数n的阶乘写作n! .例如,5的阶乘等于1*2*3*4*5,表示为5! = 120 ...
最新文章
- 《深入理解Elasticsearch(原书第2版)》——第2章 查询DSL进阶 2.1 Apache Lucene默认评分公式解释...
- 大数据项目产品选型的五个建议
- mysql 存储过程月单拆天单_为部门整理的mysql_db使用军规
- 周长相等的正方形面积一定相等_万萍:画图研究图形与几何问题—怎样围面积更大(四下)...
- BZOJ 3224 普通平衡树 treap or vector
- 案例演示按角色的form认证实现过程
- 《中国人工智能学会通讯》——11.28 统一先验建模框架 II:整数规划
- 函数二的变量作用域,多函数执行,返回值,函数参数,拆包,引用
- Kafka配置文件及解释
- OpenCV图像处理基础(变换和去噪)
- 安装Windows 和linux双系统失败导致Windows无法引导的解决方法
- NodeMCU-ESP8266开发(VSCODE+PlatformIO+Arduino框架):第5篇--Blinker_MIOT_MULTI_OUTLE(点灯科技APP+小爱同学控制插座多个插孔)
- MySQL数据库简单了解
- STM32CubeMX创建F429/L475 HAL库工程并移植UCOSIII (二)(文末附源码)
- IBM SPSS Modeler Social Network Analysis 的介绍和日常应用
- Unity Shader Graph 制作 Fade 淡入淡出效果
- iOS开发者的一些前端感悟
- 如何利用Syncthing+蒲公英快速实现异地文件同步
- javaSE-day04--ArrayList基本用方法、类内定义方法和方法重载、静态方法static(类的方法)、工具方法(static)的定义和使用
- linux学习之linux百问,不断更新
热门文章
- 一起来学Spring Cloud | 第五章:熔断器 ( Hystrix)
- 【LUOGU P1220】关路灯(区间dp)
- Java使用MyEclipse2017时的一些小细节
- day57:00:26:34
- 基于Bootstrap的jQuery开关按钮插件
- [转]机器视觉开源代码集合
- [转载]我看到的最好的解释AngularJs中Factory和Service和Provide不同
- 将Bitmap byte裸数据转换成Bitmap图片int数据
- 做到这23条,你就成熟了!
- 从理论到实践,机器人SLAM技术详解