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

Project1

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

[已经解决] 请问读取脚本的语句是什么(非ini檔)

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
95
在线时间
18 小时
注册时间
2008-1-22
帖子
46
跳转到指定楼层
1
发表于 2009-11-22 00:21:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 土撥撥 于 2009-11-22 00:47 编辑

请问读取脚本的语句是什么(非ini檔)

大致如题,我想知道读取Scripts.rxdata的脚本语句

就是”读取Scripts.rxdata的脚本内容”的语句

我想要像这样:

预设脚本档为Scripts_A.rxdata

Scripts_A.rxdata内有读取Scripts_B.rxdata的语句

执行其语句后执行Scripts_B.rxdata的脚本内容

(要能正常执行)
RGSS研究專員

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
2
发表于 2009-11-22 02:29:09 | 只看该作者
首先通过 load_data 读取 rxdata:
  1. scripts = load_data("Data/Scripts.rxdata")
复制代码
然后你就获取到了一个二维数组,第一维是脚本页数组,第二维是脚本标题及其内容,然后通过 Zlib 解压缩即可:
  1. scripts[0][2] = Zlib::Inflate.inflate(scripts[0][2])
  2. p scripts[0][2]
复制代码
上面就是获取到了 Game_Temp 的内容,因为第一维为 0 则指向 Game_Temp 脚本页,第二维为 2 则是 Game_Temp 的内容(如果是 1 的话,则是 Game_Temp 这个脚本名称)
之后你就可以通过 eval 去动态解释脚本内容:
  1. eval(script[0][2])
复制代码
当然如果要执行整个脚本的话,你需要一个循环,重复以上两步~

这是一个用 eval 执行整个脚本的例子:
http://rpg.blue/viewthread.php?tid=134316
你只需要参考脚本最后的循环部分就行了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

℃ake

梦石
0
星屑
50
在线时间
8 小时
注册时间
2009-6-6
帖子
787
3
发表于 2009-11-22 09:08:11 | 只看该作者
首先通过 load_data 读取 rxdata:scripts = load_data("Data/Scripts.rxdata")然后你就获取到了一个二维数组,第一维是脚本页数组,第二维是脚本标题及其内容,然后通过 Zlib 解压缩即可:scripts[0][2] = Zlib::In ...
紫苏 发表于 2009-11-22 02:29

一直以为.rxdata是RM加密的数据是不能用脚本调用的,原来只是用Zlib压缩的。
我爱66RPG,但我讨厌66.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
95
在线时间
18 小时
注册时间
2008-1-22
帖子
46
4
 楼主| 发表于 2009-12-19 00:26:23 | 只看该作者
Sorry,我晚来了
---
太谢谢你了 这样我就知道要怎么用了

感激不尽..
---
那这样如果把整个系统改掉 再把他提出来修改,就能够做出加密的效果啰?
RGSS研究專員
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-25 10:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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