易码技术论坛

 找回密码
 加入易码
搜索
楼主: Alanwywy

[工具] [测试]通用地图编辑器v0.10于06_12_19

[复制链接]
 楼主| 发表于 2006-12-21 23:12:30 | 显示全部楼层
引用第20楼wqstar0282006-12-21 22:22发表的“”:
在说清楚一些,
比如现在这个编辑器来说吧,48*44图素的,那么第一行的每一个图素编号自动为0~47,第二行就为48~95......以此类推,保存地图时就把这些数据一块保存起来,你说这样好不好呢?

我不知道你说的48*44是只地图还是图素,非常抱歉我前面没表清楚48*44的意思……我说的48*44是地图尺寸,不是图素文件的尺寸。
保存地图的时候……如果每张地图保存一次对应的地图图素的话,是非常浪费空间的!
正确的做法是将图素分类,保存为一个data,然后在读取地图数据时读取对应的图素数据。
 楼主| 发表于 2006-12-21 23:16:21 | 显示全部楼层
引用第19楼wqstar0282006-12-21 22:18发表的“”:
其实很想楼主做一个这样的地图编辑器!:
我们把所有可能用到的地图图素用两位十六进制数或对应的十进数(如0x0~0xff或0~255)来表示,如用0x0表示路,0x1表树..................0x25表示水等。
当我们把对应的图素按编号顺序载入图素区,然后我们用现在这个方法来绘图,当我们保存成地图时同时保存一个数据,而这个数据就是地图的数据,比如一幅地图是4*4图素的地图。我们以0x0表示★,0x1表示○,0x2表示●,0x3表示◆,画成的地图如下:
○●◆★
●★○●
.......

我这个地图编辑器本来就是你说的那样保存的……用数组的方式。
如果你要读的话,每个地图文件的前48*44字节就是一张地图数据。
char mapdata[48][44];
fread(mapdata,1,sizeof(mapdata),fp);
这样就把地图数据读到数组mapdata里了。

如果以后加了自定义地图大小,只要改mapdata的大小就可以了。

至于地图图素数据保存,请看楼上……
 楼主| 发表于 2006-12-21 23:19:06 | 显示全部楼层
补充下:
地图图素的编号请看地图图素那张图,每张12行,每行10个,编号是:
0  1  2  3  4  5  6  7  8  9
10 11 12 13 14 15 16 17 18 19
20……
发表于 2006-12-22 14:36:17 | 显示全部楼层
我描述的就是你说的那种方法,因为有一幅图以后我们就要把这个地图中对应的图素定义一个数据,以便在程序中来对地图上的物体进行判断,
最好能把地图数据用文本文件(*.txt)的格式来保存,对应的地图用位图(*.bmp或*.jpg)来保存,这样有便适用于各种不同的编译器,比如LAVA要把地图转换成数据以后用WriteBlock来绘制。而GVM则可以直接用一张图。
当然,你够强的话,还可以把LEE的seestar与你的这个编译器进行一次溶合,可以进行选择,保存成可以用WriteBlock读的地图数据或位图两种方式(地图上图素数据通用)。这样对编RPG游戏来说就更方便了!
再次感谢楼主为我们提供了这么好的工具!希望你能做得更好的!
发表于 2006-12-22 14:51:30 | 显示全部楼层
顶一下~支持!
发表于 2006-12-22 18:03:13 | 显示全部楼层
有现成的还用自己做什么!
真正的通用地图编辑器可以自己定义图素大小的
我找找,发上来
发表于 2006-12-22 18:05:28 | 显示全部楼层
好东西,收了
发表于 2006-12-22 18:13:43 | 显示全部楼层
这个是我以前找到的地图编辑器,一直在用,非常的好
楼主不用那么麻烦自己开发了!!

http://www2.emsky.net/bbs/read.php?tid=19742
 楼主| 发表于 2006-12-22 18:23:17 | 显示全部楼层
呵呵,开发是乐趣啊~~~
我做做嘛~~~
而且可以做自己想要的样子,自己想要的功能~
发表于 2006-12-23 08:54:57 | 显示全部楼层
恩,加油
发表于 2006-12-23 11:19:25 | 显示全部楼层
就是,开发是乐趣嘛!
发表于 2006-12-23 18:20:30 | 显示全部楼层
偶关心什么时候出来~~
发表于 2006-12-23 18:36:24 | 显示全部楼层
楼主好厉害啊~
而且咱们俩是同名啊 我叫王曜
发表于 2006-12-23 20:35:54 | 显示全部楼层
偶哟
~~~~~
支持啊
我就要它也~
 楼主| 发表于 2006-12-23 21:00:57 | 显示全部楼层
引用第33楼w16356102006-12-23 18:36发表的“”:
楼主好厉害啊~
而且咱们俩是同名啊 我叫王曜
哈,真有意思!

出来的时间可能会是这几天吧。呵呵。
发表于 2006-12-23 21:35:48 | 显示全部楼层
建议再底层图块上再加一层掩模的object
发表于 2006-12-24 13:00:25 | 显示全部楼层
程序闪烁很严重啊,建议改一下PAINT消息处理程序
 楼主| 发表于 2006-12-24 14:10:02 | 显示全部楼层
改来改去没什么实际提升……学了DX直接用DX去……嘿嘿。
不过现在还没学好就是了。
---------------特别功能分割---------------------
添加了一棵Tree,用来组织管理地图。不过还在修改中……tree很复杂对目前的我来说。
添加了右键在绘制区内选择图素 的功能。这个可以代替草稿区功能哦~
地图图素文件已经支持任意大小了,图素的大小还没搞好,发现之前做的不够优秀现在改代码很痛苦。。哈

新版本将很快放出!
发表于 2006-12-24 19:10:33 | 显示全部楼层
建议下楼上的老大:
新的地图要有地图测试行走范围的工具.
要有个地图测试工具!
发表于 2006-12-24 19:11:10 | 显示全部楼层
加油哦~~死顶上去!
老大快点弄新的出来!!!
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-23 15:44 , Processed in 0.012951 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表