以下引用亿万星辰于2007-4-14 9:43:40的发言:
1、能有的F1里都有了
2、不知道指啥
point = [640, 480].pack('ll')
p point
x, y = point.unpack('ll')
p x, y
以下引用kylixs于2007-4-14 17:41:38的发言:
放弃从外部读取RM的数据库....(Map001.rxdata,Animations.rxdata这些..)
目前的进展是可以脱离RMXP及其RTP打开*.rxdata(这个'外部'即是说跟RM没有任何关系...),但遇到非常麻烦的问题难以解决------->Marshal.load 加载后的数据解码问题...
举例,今天下午碰到的问题: Color的加载
Color是内部类,没有其代码,我根据它的数据结构写了一个简单的Color类,这个类自定义了_dump和_load方法(即是加载时是自行解释的数据,而不是ruby系统解释),据帮助描述,Color(red,green,blue,alpha)为浮点形式存储,我检测到的一个Color对象32字节数据,4个值,每个值8字节,应该就是浮点类型的数
问题是!!!!!!ruby没有读取字节转换成浮点数的类/方法!!???或者将字节转换成浮点的类/方法....!!!最新版本1.8.5我都找了不下10遍,应该是没有的
分析RGSS102J.dll发现,里面有个函数
RGSSGetDouble..
这个应该就是RMXP用来读取/转换浮点数的方法,但无奈,dll只能看到方法名,不能简单分析出其参数,无法调用!!!!
要真正独立外部打开所有*.rxdata的数据,我想不是简单的事...与其分时间去分析格式,还不如老老实实在RMXP环境下写代码,应该简单多了,起码想打开什么没有问题,就是显示出来成了最大的问题........rmxp的ui..哎...
今天深深体会到 ruby的无能一面------二进制操作,类型强制转换,io操作....
指针是万恶的,但指针进行这些操作的时候的确方便....
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |