现在可以用ironruby控制乌龟爬了
[code]
up 10
lt 5
up 10
lt 10
up 11
rt 10
[/code]
[img]http://dl.iteye.com/upload/attachment/249223/c2c6e30a-6e99-35e8-a5c6-4d53d1deb66e.png[/img]
但是问题有2
1. ScriptEngin.Runtime.Globals里的变量 为什么在ruby里无法得到?
public void SetupGlobals(ScriptEngine engine)
{
engine.Runtime.Globals.SetVariable("test_global", "This is a test global variable.");
}
如果是ironruby,那么$test_global总是个nil,在ironpython里,还可以用
import test_global
这样就可以正常使用。。。难道ir忘记了?
解决这个问题用
RubyContext context = GetExecutionContext(ruby);
context.DefineGlobalVariable("logowin",logowin);
context的globals里大概有40个变量,而rubytime的globals只有一个。。。有啥区别,待研究吧
2. RubyCommandLine.scriptscope都是null,如何设置呢?没有什么类touch到这个scriptscope,那么打开一个ir console之后,宿主就无法往其中设置变量、方法、类了。。。
[img]http://dl.iteye.com/upload/attachment/251622/d438ace7-0296-302f-94c6-887b71589b31.png[/img]
[code]
up 10
lt 5
up 10
lt 10
up 11
rt 10
[/code]
[img]http://dl.iteye.com/upload/attachment/249223/c2c6e30a-6e99-35e8-a5c6-4d53d1deb66e.png[/img]
但是问题有2
1. ScriptEngin.Runtime.Globals里的变量 为什么在ruby里无法得到?
public void SetupGlobals(ScriptEngine engine)
{
engine.Runtime.Globals.SetVariable("test_global", "This is a test global variable.");
}
如果是ironruby,那么$test_global总是个nil,在ironpython里,还可以用
import test_global
这样就可以正常使用。。。难道ir忘记了?
解决这个问题用
RubyContext context = GetExecutionContext(ruby);
context.DefineGlobalVariable("logowin",logowin);
context的globals里大概有40个变量,而rubytime的globals只有一个。。。有啥区别,待研究吧
2. RubyCommandLine.scriptscope都是null,如何设置呢?没有什么类touch到这个scriptscope,那么打开一个ir console之后,宿主就无法往其中设置变量、方法、类了。。。
[img]http://dl.iteye.com/upload/attachment/251622/d438ace7-0296-302f-94c6-887b71589b31.png[/img]