Lua制图

来自咸鱼维基
跳转至: 导航 搜索

魔兽地图编辑器导航

本页面地址:https://xywiki.com/we/lua

Lua制图是指通过使用YDWE的Lua引擎来使用Lua语言进行魔兽争霸3地图制作的技术。

由于Lua制图缺少足够的学习资料和良好社区氛围,并且拥有较高门槛,导致这项地图制作技术并没有普及开。

注:可以在11对战平台魔兽争霸官方对战平台运行,其他平台需使用内置JAPI。不过要注意,虽然内置JAPI引用了YDWE的Lua引擎,但是由于两个项目的更新速度不同,可能出现较大差异(在YDWE用的好好的,改用内置japi出问题)。 魔兽争霸官方对战平台的环境与11对战平台,YDWE也有差异。

1 演示地图[编辑]

看了一眼1.31魔兽的lua_魔兽地图编辑器吧_百度贴吧

大概标准库的函数 io os loadfile loadlib require 被屏蔽掉了 
连require都没了 只能在单文件里写脚本 想想十几万行代码塞一个文件里 low得要命
像火鸟说的 只是把语法换成lua 加了table 剩下的跟jass没什么区别
什么热更新 什么文件读写 什么自行车
连log都没有,出了bug报错都无从查起 什么玩意
load 函数还被保留着,想着可以利用一下Preloader 来热加载jass 再加载字符串到内存 
尝试了一下 Preloader似乎没作用 不清楚 这个test版本太粗糙了 等出正式版了再看看吧
JASS等于Just Another Scripting Syntax. 
1.31的Lua等于Limited usage alternative
function InitGlobals()
print(_VERSION)--显示Lua版本(Lua5.3)
end
//!beginusercode
--自定义Lua代码
//!endusercode

2 相关工具[编辑]

3 相关链接[编辑]

4 Q&A[编辑]

4.1 我完全按照教程中的代码来编写了Lua,但无法正常运行,为什么?[编辑]

  • 你需要通过YDWE的“测试地图”来运行Lua,Lua引擎是YDWE的特有功能,直接通过魔兽运行地图不会有效。

目前的YDWE版本(1.32.2~1.32.13)有时无法运行Lua,你可以尝试1.32.1及之前的版本。(https://bbs.wow8.org/forum.php?mod=viewthread&tid=75)

4.2 vscode写lua怎么跳转函数定义和查找所有引用[编辑]

4.3 怎么打开Lua调试窗口?[编辑]

require("jass.runtime").console = true
print("lua console initialized.")