设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3809|回复: 3
打印 上一主题 下一主题

[原创发布] 脚本导出RMXP地图MAP数据带通行优先级地形标志

[复制链接]

Lv1.梦旅人

梦石
0
星屑
404
在线时间
6 小时
注册时间
2010-7-14
帖子
2
跳转到指定楼层
1
发表于 2010-7-22 12:30:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x

  1. $data_actors        = load_data("Data/Actors.rxdata")
  2. $data_classes       = load_data("Data/Classes.rxdata")
  3. $data_skills        = load_data("Data/Skills.rxdata")
  4. $data_items         = load_data("Data/Items.rxdata")
  5. $data_weapons       = load_data("Data/Weapons.rxdata")
  6. $data_armors        = load_data("Data/Armors.rxdata")
  7. $data_enemies       = load_data("Data/Enemies.rxdata")
  8. $data_troops        = load_data("Data/Troops.rxdata")
  9. $data_states        = load_data("Data/States.rxdata")
  10. $data_animations    = load_data("Data/Animations.rxdata")
  11. $data_tilesets      = load_data("Data/Tilesets.rxdata")
  12. $data_common_events = load_data("Data/CommonEvents.rxdata")
  13. $data_system        = load_data("Data/System.rxdata")
  14. $mapinfos           = load_data("Data/MapInfos.rxdata")

  15. for key in $mapinfos.keys
  16.   
  17.   for name in $mapinfos[key].name
  18.     text = sprintf("%s",name)
  19.     file = open("#{text}.txt","w")
  20.     file.write(sprintf("[地图%03d名称]\t%s\n",key,name))
  21.     file.write(sprintf("[地图的父地图ID编号]\t%s\n",$mapinfos[key].parent_id))
  22.     file.write(sprintf("[地图树状显示的顺序]\t%s\n",$mapinfos[key].order))
  23.     file.write(sprintf("[地图树状显示已展开的标记]\t%s\n",$mapinfos[key].expanded))
  24.     file.write(sprintf("[横向滚动的位置]\t%s\n",$mapinfos[key].scroll_x))
  25.     file.write(sprintf("[纵向滚动的位置]\t%s\n",$mapinfos[key].scroll_y))
  26.     map = load_data(sprintf("Data/Map%03d.rxdata",key))
  27.     file.write(sprintf("[地图数据]\n[宽度]\t%s\n[高度]\t%s\n",map.width,map.height))
  28.     file.write("0x01 : 下方向通行不能,0x02 : 左方向通行不能,0x04 : 右方向通行不能\n")
  29.     file.write("0x08 : 上方向通行不能,0x40 : 草木繁茂处标记,0x80 : 柜台标记\n")
  30.     #导出3层数据 图标ID,通行
  31.     for i in [0,1,2]
  32.       file.write(sprintf("[第%d层]\n",i+1))
  33.         for h in 0...map.height
  34.           for w in 0...map.width
  35.             pass = $data_tilesets[map.tileset_id].passages[map.data[w,h,i]]
  36.             if map.data[w,h,i] == 0
  37.               file.write(sprintf("%1d,%X:",0,pass))
  38.             else
  39.               file.write(sprintf("%1d,%X:",map.data[w,h,i]-384,pass))
  40.             end
  41.           end
  42.           file.write("\n")
  43.         end
  44.       file.write("========================================")
  45.       file.write("========================================\n")
  46.     end
  47.     #导出图块通行表-图块优先级-地形标志表
  48.     file.write("[导出图块通行表-图块优先级-地形标志表]\n")
  49.     file.write(sprintf("[图块名字]\t%s\n",$data_tilesets[map.tileset_id].name))
  50.     file.write(sprintf("[图块图像的文件名]\t%s",$data_tilesets[map.tileset_id].tileset_name))
  51.     for i in 0...384
  52.       pass  = $data_tilesets[map.tileset_id].passages[384+i]
  53.       prior = $data_tilesets[map.tileset_id].priorities[384+i]
  54.       tags  = $data_tilesets[map.tileset_id].terrain_tags[384+i]
  55.       if(i%8==0)
  56.           file.write("\n")
  57.       end
  58.       file.write(sprintf("%3X-%d-%d,",pass,prior,tags))
  59.     end
  60.   end
  61.   file.close
  62. end
  63. exit
复制代码
直接插入脚本顶部
输出3层地图数据加通行
还有优先级和标志的查看表
方便使RMXP当作地图编辑器 使用别的编程工具导入RMXP制作的地图

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2010-7-19
帖子
22
2
发表于 2010-7-24 13:32:53 | 只看该作者
原来是方便用其他工具导入RMXP地图时使用
我还在想导出了,怎么导入。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

茄孓

梦石
0
星屑
72
在线时间
140 小时
注册时间
2007-5-29
帖子
956
3
发表于 2010-7-26 12:57:55 | 只看该作者
很好`已经有人写了``顶`
被你这么一弄,我想数据库的数据都可以导出来用了...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
74 小时
注册时间
2011-4-20
帖子
30
4
发表于 2011-12-6 11:24:53 | 只看该作者
谢了,先收藏了!

评分

参与人数 1星屑 -20 收起 理由
冰舞蝶恋 -20 挖坟

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-9-25 21:04

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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