「java实现麻将」js麻将源码
本篇文章给大家谈谈java实现麻将,以及js麻将源码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、麻将游戏一般是用什么语言开发的,哪部分代码最难实现?
- 2、计算麻将的番数(C++/Java)
- 3、原创干货!麻将平胡算法
- 4、谁有Java 游戏编程开发教程这本书二人麻将游戏源代码或这本书的电子版
- 5、求JAVA游戏 麻将连连看 下载地址
- 6、谁用java做过麻将
麻将游戏一般是用什么语言开发的,哪部分代码最难实现?
多是C++语言,其他的语言只有能实现,也可以。
最重要也是最难实现的部分,应该是核心玩法的代码,需要考虑周到,仔细架构。
如果你要做,建议找经验丰富的技术公司,像是摩天游科技,专门做地方游戏的,技术经验丰富,基本不会出现太大问题。
计算麻将的番数(C++/Java)
import java.util.Scanner;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
String string=null;
Scanner cin = new Scanner(System.in);
while (cin.hasNext()){
string=cin.next();
}
String str[]=string.split(",");
int i=0;
int count=0;
if(str.length==7){
count=count+2;
}
else{
for(i=0;istr.length;i++){
if(str[i].length()==6str[i].charAt(0)=='1'str[i].charAt(2)=='2'
str[i].charAt(4)=='3'str[i].charAt(1)=='T'
str[i].charAt(3)=='T'str[i].charAt(5)=='T'){
count=count+1;
}
else if(str[i].length()==8){
count=count+2;
}
}
}
System.out.println(count);
}
}
原创干货!麻将平胡算法
此算法基本可以通用于所有麻将的平胡规则,即满足m * ABC + n * AAA + AA(其中m、n可为0)的胡牌公式,红黑字牌也可由此算法演变。
首先,我们要约定每张麻将都可以由一个数字表示,比如11表示一万,12表示二万,21表示一条,22表示二条,31表示一筒,32表示二筒……
即所有牌用两位数表示,表示万条筒的两位数个位为牌点,十位为牌类型,其它表示非字牌的两位数与牌类型相同,以下用一个枚举类定义:
以上定义了各张牌的数字表示,接下来我们分析手牌的存储结构,手牌可以用一个数组表示,数组下标号能除尽10的数组元素为保留位,不用于存储任何数据。举例解释此数组存储牌的数据结构:
0号下标保留位
1~9号下标为万字牌牌点,其对应的数组元素为牌的张数
10号下标保留位
11~19号下标为条字牌牌点,其对应的数组元素为牌的张数
20号下标为保留位
21~29号下标为筒字牌牌点,其对应的数组元素为牌的张数
40~46号下标分别表示东、南、西、北、中、发、白的存储位。
根据以上的定义,则可以根据数组下标获得万条筒字牌的类型和牌点,(下标/10 + 1) 则为字牌类型,(下标%10) 则为字牌点数。
准备工作都做好了,怎么使用上面定义的数据结构实现平胡算法呢?平胡满足m * ABC + n * AAA + AA(其中m、n可为0)的胡牌公式,分析此公式,AA表示一对牌,则算法必然需要分析手牌中是否含有一对牌,ABC表示三张相同类型且连续的牌,AAA表示三张相同类型且牌点也相同的牌。
依据公式,我们用递归思路编写一个平胡胡牌算法(其中包含简单的测试用例):
觉得不错请点赞支持,欢迎留言或进我的个人群855801563领取【架构资料专题目合集90期】、【BATJTMD大厂JAVA面试真题1000+】,本群专用于学习交流技术、分享面试机会,拒绝广告,我也会在群内不定期答题、探讨。
谁有Java 游戏编程开发教程这本书二人麻将游戏源代码或这本书的电子版
String []mapimg={"source/font.png","source/ks.jpg","source/1.jpg","source/2.png",
"source/3.jpg","source/youknow.jpg","fight/js.jpg","fight/js1.jpg"};
//获得工具包
Toolkit tool=Toolkit.getDefaultToolkit()
//开始图片
Image startimg;
//背景图片
Image bjimg,fontimg;
//画开始界面
public void drawstart(Graphics g){
startimg=tool.getImage(mapimg[1]);
g.drawImage(startimg, 0, 0, frame.getWidth(), frame.getHeight(), frame);
fontimg=tool.getImage(mapimg[0]);
g.drawImage(fontimg, 20, 30, frame);
};
这是我以前做的一个很简单的游戏中的几行代码,对你的问题,你要手动选择图片,那做个文件选择器,把图片路径作为方法参数传进去就ok了
求JAVA游戏 麻将连连看 下载地址
可以吧~!以前我也是用的这个机子,把游戏下载了安装到java就行了。
谁用java做过麻将
简单的说一下,页面这个没问题。swing。
就是业务逻辑方面的,
业务逻辑我感觉一步一步的来,也不会太难。
首先,分牌,这个设个list链表,里面包含麻将所有的对象,随机分配。
第二出牌,一人一张,设个标记位,4个线程,一个出牌之后改标记位让下一个线程运行。
第三判断,手下判断是否胡了,然后再判断是否杠上,然后判断。。。。。
当然,实际做的过程中会很多未知的问题,慢慢做吧。
其实解决这些未知的问题才是收获最大的地方。
java实现麻将的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js麻将源码、java实现麻将的信息别忘了在本站进行查找喔。