Office中国论坛/Access中国论坛

标题: 游戏----对对碰 [打印本页]

作者: kangking    时间: 2011-5-25 14:21
标题: 游戏----对对碰
闲来无事,偶然看到别人用麻将玩一个游戏,于是动了写一个的念头。这个游戏即简单,可玩性也强,是茶余饭后、工作之余的首选。
游戏规则很简单,如果同花牌在同行或同列且中间没有牌阻隔,则点击这两牌后可以消除;如果不在同行或同列,则如果有空可以将牌移动后(只能移动一次)使同花牌在同行或同列时,点击这两牌可以消除,将牌全部消除游戏结束。
本游戏在ACCESS2007下写的,在2007和2010下运行通过,为方便至今还在用2003的朋友,将代码全部全部拷贝到2003兼容格式,在2007下可以运行,但在2003下不知道可否运行,我没有测试条件。
游戏中的图片来自网上,在些对提供者表示谢意。

[attach]45677[/attach]
[attach]45678[/attach]

本游戏放上来后,还有点下载量,加上T版主相助,于是我将游戏做了修改,加了保存和读取功能,方便不能一次玩完的朋友.
修改后的文件放在下面,欢迎大家交流.
[attach]45755[/attach]
[attach]57288[/attach]


作者: t小宝    时间: 2011-5-25 16:02
谢谢分享
我在ACCESS2003+14英寸显示器+1024x768像素下打开有问题,提示控件位置出错
作者: roych    时间: 2011-5-25 18:05
宝版主改下,好让我们下载玩玩嘛。我不懂类模块(正在考虑要不要学它)~~~
作者: tmtony    时间: 2011-5-25 21:31
谢谢分享
作者: kangking    时间: 2011-5-26 11:37
回复 t小宝 的帖子

找到装有ACCESS XP的电脑试了一下,只要在设计状态下将窗体的主体高度加大,比如加大到20厘米,就可以了。如果屏幕比较小,可以将常数iWidth改小点,比如由900改到800或更小点。

在ACCESS XP下运行了后才发现,程序运行得远不如在2007下流畅,在2007下运行简直看不到屏幕闪动。
作者: roych    时间: 2011-5-26 13:58
本帖最后由 roych 于 2011-5-26 15:12 编辑

回复 kangking 的帖子

发牌和悔牌比较慢~~嗯,没有连连看那么好玩(貌似我经常喜欢打击别人,还望LZ别介意)~~玩到这里都不知道该怎么搞了:
[attach]45693[/attach]


作者: kangking    时间: 2011-5-26 18:59
本帖最后由 kangking 于 2011-7-5 13:02 编辑

回复 roych 的帖子

[attach]45700[/attach]
上图中的六条和四条是可以消的。


[attach]45699[/attach]
上图中的一万是可以消的。

别处还有几对牌是可以消的,比如右下角的三筒。

因为是在2007下写的,速度是完全可以接受的,如果是在2003下做的话,我也许就放弃了。
悔牌的速度改一下是可以加快的,但是发牌我就没有好办法了。
作为休闲,这个游戏还是不错的,放松心情,不疾不徐。

这是无聊之作,能玩且有人玩就达目的了。谢谢!



作者: roych    时间: 2011-5-27 10:32
回复 kangking 的帖子

难得LZ宽宏大量~~作为游戏而言,也是上乘之作了,虽然稍逊于清风连连看(貌似我又在打击了,不好意思^_^),当然,图片比清风连连看要大,也多很多,加载速度可能就慢了些。
作者: kangking    时间: 2011-5-29 07:20
改了一下算法,主要是使悔牌的速度加快,在ACCESS2003下表现非常明显。发牌和重玩还是原样(有高手有办法加快速度望不吝赐教)。
你只要将原文件的代码全部用本附件的代码替换就行了。
[attach]45720[/attach]

作者: t小宝    时间: 2011-5-29 11:22
为何2007和2003速度差别那么大
作者: t小宝    时间: 2011-5-29 15:33
原来2003比2007慢的原因是图片加载速度不同,2007可以直接加载jpg格式的图片,但2003加载过程要转换为bmp的,所以慢了很多
作者: kangking    时间: 2011-5-29 16:22
回复 t小宝 的帖子

哈哈,T版主有很强的突破意思,一般如我等只知道其慢,不知道其为何慢。
我一方面没有深究原因,另,即便想到这一层,恐怕也是得出本来如此的结论,愧!
有版主如此肯下功夫,是我爱好者福气。
谢谢了,有机会我将图片格式变换一下再试试。
作者: t小宝    时间: 2011-5-29 22:08
改了一下,把图片改为bmp格式,转换大小为合适图片框,并预先加载图片到变量,这样发牌可瞬间完成。
里面关于图片的代码改了,算法我不清楚,如果和算法部分有冲突楼主再改一下吧。

作者: kangking    时间: 2011-5-30 10:21
回复 t小宝 的帖子

T版主辛苦了!我看看代码,再找装有2003的电脑试试。谢谢!
作者: kangking    时间: 2011-5-31 21:45
本帖最后由 kangking 于 2011-5-31 21:55 编辑

[attach]45756[/attach]

上面的数据是一个玩通了的示例.
你可以将上面的数据复制到文件中的数据表里(文件在一楼,文件名是DDP2003.RAR),日期和标记可以随便写,牌型,历史和得分要正确复制.
然后打开游戏界面,点击读取按钮,读取刚才写到表中的记录,这时你可以点击悔牌,倒着看看是怎样玩通的.
希望通过这个示例,调动起你的兴趣,祝你玩得愉快!



作者: tanhong    时间: 2011-6-4 20:20
本帖最后由 tanhong 于 2011-6-4 20:38 编辑

不错,支持原创!
要想图加载快,比较好的办法就是先将图片导入,再通过Image的PictureData属性来赋值给界面的各图片框,速度应该会比从外面链接要快。
作者: kangking    时间: 2011-6-6 11:22
回复 tanhong 的帖子

谢谢!
修改后的已经采用了先将图片导入的方法,这要感谢T小宝版主。
文件DDP2003.RAR就是修改后的。其实我还在改,现在又加了声音,哈哈。。。,好玩!
作者: zhuyiwen    时间: 2011-6-10 22:26
如果是用的图像控件,你可以预载,你可以考虑对控件的PictureData属性利用,那么在发牌的时候一定会非常快。不过预载是需要内存的,呵呵。

乱弹琴,不要当真,我没下载代码。
作者: t小宝    时间: 2011-6-10 22:29
朱总对图片很有研究的哦
作者: zhuyiwen    时间: 2011-6-10 22:35
t小宝 发表于 2011-6-10 22:29
朱总对图片很有研究的哦

哪里哪里,最近做一小程序,中间用到很多图片

如标志、广告,我把它加载到一个不关闭窗体中,其它窗体使用时,直接 = 过去,速度很快,同时也会减小应用程序的大小。仅此一点心得而已。
作者: snyg    时间: 2011-6-23 22:20
不错不错!!
作者: ithink2012    时间: 2015-10-7 16:52
好玩




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3