Project1

标题: 偷梁换柱,获取RGSS内建脚本源码 [打印本页]

作者: zh99998    时间: 2008-9-19 03:28
标题: 偷梁换柱,获取RGSS内建脚本源码
看了kissye写的window后的想法
rgss中绝大多数的运算都是类和方法的调用,并且绝大多数都是可以被重定义的
于是我们把所有的方法都重定义掉,让它们直接输出方法名和参数,这样就可以获取rgss内建类的大部分源码了

至于不允许定义的方法,可以在获取到大部分源码后用kissye写window的方法写出


可行否?
作者: hitlerson    时间: 2008-9-19 03:31
花這么大力氣,還是自己寫新的類方便
作者: kissye    时间: 2008-9-19 03:48
提示: 作者被禁止或删除 内容自动屏蔽
作者: 淘金鸭    时间: 2008-9-19 04:03
听不懂哦,讲讲?
作者: orochi2k    时间: 2008-9-19 05:17
谁先对Sprite/TILEMAP/Bitmap之类比较复杂的做下试验吧
另:那个...到底是怎么样"直接输出方法名和参数,这样就可以获取rgss内建类的大部分源码了"呢?
作者: kissue    时间: 2008-9-19 05:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: 雷特爾    时间: 2008-9-19 05:47
获取了又能咋。。

改成中文的?{/se}
作者: orochi2k    时间: 2008-9-19 05:48
呃...还是对取得内建类代码的方法不是很了解-_-0
作者: link006007    时间: 2008-9-19 08:29
输出内部参数和方法名对获取源代码有什么有价值的作用吗?
windows的API可是把几乎说有的方法和参数都写在SDK文档里了   也没有多少人知道它的源代码
作者: orochi2k    时间: 2008-9-19 17:49
呃....对改进原本的内建类有好处,
比如那个BITMAP的诡异的2048*2048限制
作者: zh99998    时间: 2008-9-20 02:01
没人理解咩?
我的意思就是说把默认方法都重定义掉,改为直接输出方法名和参数,生成个window类,他就会自动输出window的源码了
作者: orochi2k    时间: 2008-9-20 02:07
呃...关键问题是怎么写一个可以要求他输出源码的东东-_-0
作者: zh99998    时间: 2008-9-20 02:07
file.write啊
[LINE]1,#dddddd[/LINE]
比如
class Window
alias dispose old_dispose
def dispose
  $file.write "dispose" #事先指定一个用来写源码的文件
  old_dispose
end
这样任何一个Window执行dispose的话,就会在那个文件里输出"dispose"
同理把所有可能用到的内建函数都重定义掉,这样运行的时候就会输出源码了
当然上面那段代码我没试过行不行
作者: zh99998    时间: 2008-9-21 15:42
我……顶……
作者: kissye    时间: 2008-9-21 16:44
提示: 作者被禁止或删除 内容自动屏蔽
作者: zh99998    时间: 2008-9-21 16:47
方法名和参数
例:
class Window
alias dispose old_dispose
def dispose
$file.write "dispose" #事先指定一个用来写源码的文件
old_dispose
end

作者: kissye    时间: 2008-9-21 17:24
提示: 作者被禁止或删除 内容自动屏蔽
作者: orochi2k    时间: 2008-9-21 17:38
如果能直接用这方法整出源码的话,RUBY也太.....那啥了-_-0
作者: zh99998    时间: 2008-9-21 18:12
嘛,不是整Ruby的,是rgss内建类的




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1