哇噢星球

 找回密码
 申请注册
搜索
热搜: 地形 技能 Lua

YDWE自带Lua教程第一课:简单的演示

[复制链接]
皇家骑士 发表于 2019-5-26 13:37:23 | 显示全部楼层 |阅读模式
[Jass] 纯文本查看 复制代码
// 第一课只是帮助大家了解一个完整的读取物体编辑器数据的过程

// 初始化整个系统,具体的语法可以不必深究,只需要记得,把这一行放在最前面就行了
// 一张地图只需要调用一次
<?local slk = require 'slk' ?>

function Test1 takes nothing returns nothing
    // 读取物品'afac'的'goldcost'值
    // 'afac'是物品的id,相信会用Jass的人都不会陌生,具体的值可以在物体编辑器中按Ctrl+D看到
    // 'goldcost'是物品的一个属性,其中文的含义是这个物品在商店的售价,同样可以在物体编辑器中按Ctrl+D看到
    local integer gold1 = <?=slk.item['afac']['goldcost']?>
    
    // 这两种写法是等价的
    local integer gold2 = <?=slk.item.afac.goldcost?>
    
    
    // 小提示:为了让你更好地理解lua模版到底干了些什么,你可以在下面简单加一个a,
    //    让Jass产生语法错误,这样你就可以在JassHelper的语法错误提示框中看到,上
    //    面的语句最后的面目了。这个小技巧在之后的演示都可以用到。
endfunction

function Test2 takes nothing returns nothing
    // 读取物品'afac'的'Name'值,也就是物品的名字
    //     注意这次加了双引号(为什么?)
    local string item_name = "<?=slk.item.afac.Name?>"
    
    // 读取物品'afac'的'Art'值,也就是物品的图标路径
    //     注意这次加了string.format('%q', xx) 
    //     为什么?请自行试试不加的语句 <?=slk.item.afac.Art?>
    local string item_icon = <?=string.format('%q', slk.item.afac.Art)?>
    
    
    // 读取单位'hfoo'的'Art'值,也就单位的名字
    //     注意和物品的区别在哪里
    local string unit_name = "<?=slk.unit.hfoo.Name?>"    
    
    // 依次为 技能、魔法效果、可破坏物、地形装饰物、科技
    local string ability_name      = "<?=slk.ability.Aply.Name?>"    
    local string buff_name         = "<?=slk.buff.BHbd.Bufftip?>"    
    local string destructable_name = "<?=slk.destructable.ATtc.Name?>"    
    local string doodad_name       = "<?=slk.doodad.AOgs.Name?>"  
    local string upgrade_name      = "<?=slk.upgrade.Rhri.Name?>"
endfunction
回复

使用道具 举报

Archiver|手机版|小黑屋|哇噢星球  

GMT+8, 2019-6-25 05:16 , Processed in 1.442659 second(s), 13 queries , File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表