登录 | 注册 | 购书 New!
卓越网购书 当当网购书 京东网购书
| 铃声下载 | PDF电子书下载 | DVD/CD媒体下载 | 绿色软件下载 | 最新源码 | 今天最热门 | 加入收藏 | 繁體中文 
首页 ASP源码 PHP源码 DotNET源码 JSP源码 CGI源码 FLASH源码 VB源码 VC源码 PB源码 Delphi源码 编程相关 设计方案 网页模板

拼图游戏

  • 源码作者:佚名
  • 源码大小:60.74 MB
  • 源码类别:编程相关
  • 源码格式:完整源码
  • 发布时间:Jun 26, 2010 12:16:00 PM
  • 源码级别:
  • 下载总计:月:0 总:1168

源码简介:

============
== pin tu ==
============

language: delphi
version: 0.02
author: tony (sudahei@citiz.net)
date: 2002.01.13

introduction
============
以前看到的拼图游戏大多是正方型的图块,而且很多甚至只有通过交换两个图块的位置来起到移动的作用,感觉和现实中的拼图实在是相差太远了,非常不舒服。
而前不久看到《三国赵云传》中副送的一个拼图游戏,它的图块是不规则边型的(有凹凸的边缘),又可以在窗口中随便拖动任何图块,这使我萌生了自己制作一个类似软件的想法。(之后又看到了一个名为bjig32的外国的拼图游戏,做得太好了,如果是在我开始开发这个程序前看到它的话,也许我就不会想着自己开发了,因为我看来是开发不出像它那么好的拼图游戏的。。。)

how i implement it
==================
该游戏整个系统中包括两个我自己设计的类,TTuObj和TTuMng。
TTuObj -- 是指图块,即被切割后的一小块图片,它本身具有不规则的边界,并且可以响应鼠标的拖动事件,在它所在的容器中移动。我将该类设计为继承自TObject,然后在constructor中再分别生成一个TPanel和一个TImage(之所以不是继承自TControl或直接继承自TPanel,实在是因为我对使用vcl写控件还不是很熟悉,如果你可以的话,就改写一下吧),TPanel的作用是用来生成不规则边型的形状,因为TImage没有Handle,无法改变它的形状(我认为是这样的),而TImage用来显示图象和提供鼠标事件。另外每个TTuObj中还记录着它四周的TTuObj的指针,以及是否已经建立了连接,这样就可以提供能够判断两个图块是否在靠近时建立连接,以及当图块连接后移动任何一个图块都可以带动和它已连接的图块一起移动。
TTuMng -- 是拼图游戏的管理器,由它负责将一张完整的图片分割后生成一个个图块,集中管理它们,并负责判断是否所有的图块都连接起来了(即游戏结束)。

known bugs
==========
现在整个系统的效率还很低,特别是当移动图块时,闪烁非常厉害,我初步判定后认为,是因为当移动一个图块时,首先会引发该图块本身的PAINT事件,然后会引发该图块所在容器的PAINT事件,这样就意味着所有的图块都将被重绘一次,而不规则边型控件的重绘本来就是低效的,所以会找成如此闪烁。我尝试过自己处理TTuObj中AImage的WM_PAINT消息处理函数(就是当正在拖动图块时不允许重绘),但是发现在移动图块后,它经过的地方都留下了残像。而《三国赵云》中的拼图游戏是用directx写的,一点闪烁都没有,也许以后我会尝试用directx来写它。

hope u can join and improve it!!!!!!

关键字:拼图游戏
上一源码: AdvWebBrowser
下一源码: 捡金豆

重要事项Attentions

  • 本站所有源码都经过我们亲自检查,杀毒,确保每个源码都能正常运行.
  • 为了保证您快速的下载,推荐使用[网际快车]或[迅雷]等专业工具下载.
  • 本站无限制人数下载!如果您发现该源码不能下载,请通知管理员.或先看看下载教程.
  • 为确保所下源码能正常使用,请使用[WinRAR v3.70]或以上版本解压本站源码.
  • 如果你下载的源码是7z,gz格式的话,请安装该类型的解压软件。
  • 站内源码包含整站及企业源码均由网上搜集,若无意中侵犯到您的权利,敬请来信联系我们.
  • 如果需要解压密码的话,解压密码就是:code.anysafer.com