摘要: 很多时候,我们需要动态的创建克隆对象,例如菜单形式的Button,九宫格预览图以及地图上各种不同形态的建筑。那么如何动态创建一组克隆对象呢?由于对象(Actor)实际上是一组包含各种不同类型元素的集合,因此如果我们要创建对象的话,就必须先要创建一个对象(Actor)型的指针来存储实例化创建出来的对象: Actor*testClone; testClone = CreateActor("actTestClone", "icon", "(none)", "(none)", -170, - 70, true);当然,这句 阅读全文
posted @ 2013-05-20 17:46 zj_king 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 目标效果:制作潜艇大战时,需要player(海平面上的舰只)根据鼠标点击的位置沿海平面(横版游戏,海平面为y轴)移动分析:player移动时,其在x轴方向的位置固定不变,侦听鼠标y轴坐标的位置移动制作:在背景图片上设置鼠标点击事件,产生移动效果,考虑用Moveto来实现:MoveTo("player", SW_X_PlayerPosition, ymouse, 2, "Game Center", ""); // SW_X_PlayerPosition:player的X轴位置; // ymouse:鼠标的y轴位置; // 2:移动速度。 阅读全文
posted @ 2013-05-20 17:45 zj_king 阅读(615) 评论(0) 推荐(0) 编辑
摘要: MC坐标定位器使用步骤:1、解压压缩包,把压缩包中的.MCD文件拖到MC中打开。2、MC界面中出现添加对象按钮、坐标提示框、三组文字和一个MC默认对象。3、可以对象按钮进行克隆然后添加需要确定坐标的图片,包括背景和背景上的图片。4、坐标提示框不能放在可视界面内,功能是运行程序时候,右击对象可以显示对象的一系列位置信息。5、三组文字可以自由编辑,并添加到界面上,右击同样可以显示文字的位置信息。源代码想下载地址:http://www.dongyo.cn/bbs/forum.php?mod=viewthread&tid=315&extra=page%3D2 阅读全文
posted @ 2013-05-20 17:44 zj_king 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 关于MC坐标系的部分描述:1.Normal actor 为canvas_actor的儿子,则normalactor的xscreen/yscreen 是以游戏视窗的左上角为坐标原点, x/y是以canvas_actor的中心为坐标原点。2.Normal actor 为view 的儿子,则normalactor的xscreen/yscreen和x/y都相等 都是以游戏视窗的左上角为坐标原点。3.Normal actor 为normal actor 的儿子,则normalactor的xscreen/yscreen为相对于游戏视窗左上角的坐标原点,x/y为相对于normal actor的中心作为坐标原 阅读全文
posted @ 2013-05-20 17:42 zj_king 阅读(324) 评论(0) 推荐(0) 编辑
摘要: MC中定义变量有多种形式,最常见的就是使用标准C的方式在本脚本(文件)中定义变量,全局变量和局部变量的用法和作用域都和标准C一致,这里就不多说了。 另一种方式是定义在“全局脚本”中,可以被整个工程中的所有函数或对象引用。例如: 在全局脚本init.c中定义了变量 int step = 5; 表示这个step变量被赋初值5,并且可以在整个工程中被引用。 这里要注意一点,如果只是声明而没有赋值,则变量必须在这个全局脚本的函数中被定义才行。 int step; step = 5;//这是不行的 void init()//应该写成这样 { step = 5; } 第三种方式,也是... 阅读全文
posted @ 2013-05-20 17:35 zj_king 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 在这个帖子里,我们将介绍一种新的网络服务器数据访问的方式。当我们需要从http服务器接收数据的时候,原来那套针对MC本身的服务器使用的方法将不再适用。这里我们提供两个专门针对http服务器的接口。例:接收演示说明:我们需要向以下地址发送请求http://demo.mc.zifugame.com/还需要向他们传送姓名参数,服务器以name变量来识别,完整地址如下http://demo.mc.zifugame.com/?name=Zhang你可以在浏览器(推荐使用谷歌chrome浏览器,因为这个服务器是根据chrome浏览器开发的)地址栏输入以上地址,会返回一串字符{"state&quo 阅读全文
posted @ 2013-05-16 15:25 zj_king 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 1. 服务器连接数据库既然是要用到数据库,那创建数据库是在所难免的,至于数据库中的表有什么样的字段,在你下载下来的包中就有数据库。详见数据库。在服务器程序中Web.config文件配置连接数据库,如下所示:添加代码如下:<addname="ConnectionStrings" connectionString="Data Source=BAMHWZB6DCXVGDR\SQLDB;InitialCatalog=dy_dfw;User ID=dy_zjj;Password=123456"/>2. 发布服务器网站现在大部分的服务器都架设在微软公司的 阅读全文
posted @ 2013-05-16 15:24 zj_king 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 服务器是现在网络游戏一个必不可少的部分。例如手机游戏<动友大富翁>、<斗地主>等,这都需要依赖于服务器。下面是一个游戏登录、注册界面,图10-1是游戏登录界面,图10-2是游戏注册界面。图10-1图10-210.1概念Web服务器是网络最重要的服务器,是直接服务于用户的服务器,通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(b 阅读全文
posted @ 2013-05-16 15:23 zj_king 阅读(920) 评论(0) 推荐(0) 编辑
摘要: 文件操作 就像看书一样,我们并不会总是一次性把游戏玩通关,往往需要做个记号,下次再继续。在单机游戏里,通常的记录方法就是做一个存档文件,把游戏里跟进度有关的参数存下来,然后下次读取存档的时候根据这些参数来还原上一次退出时的进度。在保存和读取存档的时候,就要用到文件操作的方法来实现。相信大家都接触过不少单机RPG游戏吧,那么我们就以火焰纹章为例,来介绍一文件操作的在游戏中的实际应用。图9-4-1 在图中,我们能看到两个角色站在地图上的特定位置,并且这两个人物也是有区别的,他们的外形,血量,移动距离等等的属性都不尽相同。当我们要对游戏当前的状态进行保存时,我们需要关注的数据就包括:地图代... 阅读全文
posted @ 2013-05-16 15:21 zj_king 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 物理碰撞:就是两个实体间发生撞击相互弹开。 举着简单的例子,例如我们小时候玩的弹珠。用一个弹珠去撞击另一个弹珠,会看到一个弹珠往前移,一个往后移。这就是两个弹珠发生物理碰撞后的现象。同样的,在MC中的物理碰撞也是一样的。当一个角色与另一个角色发生碰撞后弹开的现象。 愤怒的小鸟都玩过吧。这里面就有很多物理碰撞。图9-3-1 如上图所示的红色箭头是两个石头的受力方向。向下的一个重力。和石头之间碰撞后的一个力。两个力叠加在一起让石头产生了碰撞后的运动轨迹(黑色线)。碰撞后如下图。图9-3-2物理世界的元素现在我们来看看怎么实现这样的效果。图9-3-1-1 从图9-3-1-1中,我们可以看到创... 阅读全文
posted @ 2013-05-16 15:11 zj_king 阅读(402) 评论(0) 推荐(0) 编辑