天工维度魔兽争霸开发者社区-全国最大的TJ集中营-原提百万联盟
标题:
YDWE自带Lua教程第四课:物体编辑器数据的生成
[打印本页]
作者:
提百万
时间:
2019-7-8 12:25
标题:
YDWE自带Lua教程第四课:物体编辑器数据的生成
// 第四课
<?local slk = require 'slk' ?>
function Test1 takes nothing returns nothing
<? local obj = slk.ability.AHtb:new 'A233' ?>
// 以'AHtb'(风暴之锤)为模板,创建一个新的技能对象'A233'。不过你在保存后需要重新打开地图才能看到它。
// 把这个新的对象记下来,等会儿还要用到它
<?
obj.Name = "可以晕10秒的风暴之锤"
obj.levels = 1
obj.Cool = 0
obj.Cost = 0
obj.Rng = 999999
obj.DataA = 0
obj.Dur = 10
obj.HeroDur = 10
?>
// 根据需求,对这个技能的属性进行一些调整
// 现在,这个技能变成了无消耗无冷却无伤害全地图使用,并可以晕眩10秒
// 只要这段代码存在,你的物编中就会存在'A233'这个技能。如果你不想要这个技能了,把这段代码删除即可
// 当有对象创建或移除时你会收到一个报告,试试将第6行的'A233'改成'A234'!
endfunction
function Test2 takes nothing returns nothing
local integer array stuns
<?
for i = 1, 100 do
local obj = slk.ability.AHtb:new("可以晕"..i.."秒的风暴之锤")
?>
// 创建对象时你可以输入任意不符合ID规范的字符串作为标签,创建出一个动态对象
// 编辑器会找到一个可用的ID作为该对象的ID
// 注意,不同对象的标签不能重复!
<?
obj.Name = string.format("风暴之锤[%03d]", i)
obj.levels = 1
obj.Cool = 0
obj.Cost = 0
obj.Rng = 999999
obj.DataA = 0
obj.Dur = i
obj.HeroDur = i
?>
set stuns[<?= i ?>] = '<?= obj:get_id() ?>'
// 使用 obj:get_id() 来获取对象的ID
<?
end
?>
endfunction
欢迎光临 天工维度魔兽争霸开发者社区-全国最大的TJ集中营-原提百万联盟 (http://bbs.mvprpg.com/)
Powered by Discuz! X3.4