易语言DLL在RPG maker里面的应用(windows32api)

生活 CN-P5 1577℃ 0评论

RPG制作大师的脚本是用了ruby语言的一个“特定”变种-"RGG2".
这几天尝试了用易语言写一个DLL在RPG里面调用。先写个简单的“一句话”的DLL:
新建一个windows动态链接库。
易语言代码如下:

.版本 2

.子程序 MSG, 整数型
.参数 窗口标题, 文本型
.参数 提示文本, 文本型
.参数 按钮组合, 整数型

返回 (信息框 (窗口标题, 按钮组合, 提示文本, ))

然后编译成DLL。
运行 rpg maker(xp和vx都行),新建一个工程。
点击脚本编辑器,在main前面插入一个脚本。
脚本内容:
##是注释行,不用写。
$msg = Win32API.new("msg.dll","MSG",["p","p","l"],"l")
# p,p,l对应我们的DLL里面的三个参数,最后面的L是返回值。
$msg.call("title","note",0)
# 提示框创建。标题为“title”,内容为“note”,只有一个确定按钮(0)
保存项目,然后把编译的DLL放在项目保存的目录里。

然后点击“游戏测试”按钮就看见效果了。


在插入的脚本里面注释掉第二句就是:
##是注释行,不用写。

$msg = Win32API.new("msg.dll","MSG",["p","p","l"],"l")
# p,p,l对应我们的DLL里面的三个参数,最后面的L是返回值。
##这里加#注释掉$msg.call("title","note",0)
# 提示框创建。标题为“title”,内容为“note”,只有一个确定按钮(0)

然后,新建一个事件点,编辑事件插入脚本:
$msg.call("title","note",2)
如图:

点击“游戏测试”按钮看效果。


易语言的DLL就这样通过RGG2的windows32api调用执行了。
还可以拓展取得函数的返回值。
(未完 黑白 09-05-18)

转载请注明:黑白的自留地 » 易语言DLL在RPG maker里面的应用(windows32api)

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址