JASS萌新学习指南(1.3)
上集我們講了一個空觸發器轉J后的代碼,大部分解釋了一遍。
記不住沒關系,可以寫在紙上。
記住要自己動手實驗一遍。
接下來仍然是T轉J。
這里隨便舉了個例子
殺死觸發單位。
?
如果你對上集 理解了。
這里就多了一個東西
call KillUnit(GetTriggerUnit())
call 調用 函數 KillUnit Kill=殺 Unit=單位
如果你記不住可以寫紙上,當然你如果記電腦里面也可以
Get=獲取 Trigger=觸發 Unit=單位
獲取觸發單位 其實就是觸發單位
調用 ?殺死單位(觸發單位)
這個call KillUnit在Trig_aActions里面
上集我們已經說了?
Trig_aActions就是T里面的動作函數
下面的示意圖:
?我們來看看事件
?
注意:不要管是否能在魔獸里真正有效執行的問題,著重點在于能不能理解。
T轉J后:
?
我們可以看到是和之前一樣的(把#之類預處理全刪了,方便理解,不知道要刪的看上一集1.2)
區別在于
?
?
地圖初始化運行
這里是勾上的
地圖初始化這個事件是很特殊的 他不會在編輯器里面生成代碼,而是轉成J后的一個選項
同樣,T里面還有一個很特殊的選項
注意 這里是T如果把它去掉我們可以看到?
?
多了一個這么個東西
就是和初始打開是一個功能,但是轉J后沒有初始打開這個選項,僅僅是多了一行代碼。
call DisableTrigger(gg_trg_a)
disable不使用 Trigger 觸發器
這樣翻譯不一定正確,但你能理解即可。
看完了不正常的事件。我們來看看正常的事件轉J后是什么樣子
?
任意單位進入可用地圖區域殺死觸發單位
?
我們發現加了這個事件?
InitTrig_a里面加了一句
call TriggerRegisterEnterRectSimple( gg_trg_a, GetPlayableMapRect() )
很長 但是很容易解釋
Trigger 觸發器
Register 注冊
Enter 進入
Rect 矩形(區域)
Simple 簡單的
即:觸發器注冊進入區域事件(觸發器gg_trg_a,可用地圖區域())
Get 獲取
Playable 可以玩的
Map 地圖
Rect 矩形區域
我們可以看到?
?
這條函數和其他函數顏色不一樣(如果你顯示不出來顏色 建議用YDWE,有tesh插件。或者可能你的tesh被關閉,或者存在問題)
這個是紅色的。(如果你沒有改tesh配置的話是如此)
而其他的是紫色的
關于這點我們先提一下
TriggerRegisterEnterRectSimple、GetPlayableMapRect是blizzar.j文件里面的函數。
(通常被稱作bj函數)
這類函數通常是封裝過的。
而紫色的CreateTrigger 這類是common.j文件里面的函數
(通常被叫做cj函數,這里的cj函數和cjass不能混為一談!)
這類函數是底層的函數。
那么兩者具體區別在哪里?
紅色的函數其內部是需要調用紫色的函數,這類函數通常不推薦使用,因為這里面一些東西可能存在泄漏 或者 有一些你并不想要的多余步驟。
上面那段不理解沒有關系,關于這個我們可以以后說
我們只需要記住 通常情況下使用紫色的函數 而盡量避免使用 紅色的函數
這集就到這里了,講了一些事件 動作 轉J后的代碼。
關于條件以及其他的東西,我們以后講。
下集1.4再見。
?
總結
以上是生活随笔為你收集整理的JASS萌新学习指南(1.3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html转盘游戏代码,html5 can
- 下一篇: 客制化实用知识