Board logo

標題: [文字教學] Lua教學 [打印本頁]

作者: agent0800    時間: 2018-10-27 10:13     標題: Lua教學

先來個冗贅開頭作為起手式,不喜歡聽我講一些無用話的人可以直接跳過 --- 內的內容
--------------------------
大家好,我是Agent,好久不見

好久沒在論壇上發教學文章惹(X

主要原因是大部分的人都只想要使用而不是分享,待在這樣的環境久了自然也不會想把自己創作的東西分享出來

最近買了一台NAS在整理資料剛好看到之前留的凝夢端,想說好久沒玩架起來跑一下,上去走走晃晃之突然想把一些東西分享給大家

我後期在開發石器比較多的心力是放在LUA跟改端上,改端基本上沒辦法用文字教學來教,但LUA卻是可以加減提供一些sample code來參考的

所以我發了一些凝夢閣伺服器中的一些lua上來論壇,並透過這篇文章稍微對lua再做一個簡述

基本上看完這篇文章應該就可以好好的活用lua所提供的功能,想要再進階的話就是去改端去新增功能接出來lua了
--------------------------

在研究LUA之前可以先拜讀一下YANG大的文章
研究LUA者須知!

1. 還不會使用lua的人請先看這篇文章,文章會帶你把lua npc"架"出來
http://lab.welovesa.com/viewthread.php?tid=2722&highlight=lua

2. 接著熟悉LNS看他有提供那些功能能玩,並且google關於lua的語法,譬如if, for, while等一些lua的教學與使用搭配著sample code看
lua與石器時代的結合可以參考LNS這份資料(如果lns打開空白的話,可以對LNS.chm按右鍵內容->一般->於下方有一個解除封鎖需要打勾,接著按套用即可)
http://www.mediafire.com/file/fau4bb7hg5krkoy/LNS.rar
舉個應用的例子
假如我想做一個 如果你身上有編號111道具,我就刪除你身上的111道具,如果身上沒有111道具就出現"沒有111道具"的字 的功能
這時我就翻LNS看有沒有這三樣功能
1. 判斷身上有沒有道具
2. 可以刪除身上道具
3. 對玩家傳送文字
[attach]751[/attach]
在NLG底下找到 DelItem( CharIndex, ItemId, [Num]); 看起來是刪除道具的沒錯

[attach]752[/attach]
在Char底下找到 FindItemId(_Index, _ItemId); 看起來是判斷身上有沒有特定道具

接著把三個都找出來之後就可以這樣寫(注意 Char底下找到的就用Char. NLG底下找到的就用NLG)

if (Char.FindItemId( _PlayerIndex, 111) > 0) then -- 假如從對象身上找到編號 111 的道具,則Char.FindItemId會回吐>0的數值(回吐數值表示該道具位在地道具欄位置 所以道具欄有該道具一定會>0)
    NLG.DelItem( _PlayerIndex, 111); -- 刪除對象身上的編號 111 道具
else
    NLG.TalkToCli( _PlayerIndex, "沒有111道具", %白色%, 0, -1); -- 對對象傳送文字
end


3. 學會怎麼看LNS並且熟悉LUA語法後就可以開始自由創作了( 灑花,可以先透過大量的sample code閱讀讓自己更快速的上手

想知道寵物尾數怎麼取得,可以參考
[吉仔LUA]寵物尾數7777換獎品

想知道任務旗標怎麼控制使用,可以參考
[吉仔LUA]速解完美任務

想知道怎麼更改寵物數值,可以參考
[吉仔LUA]2D人龍以lua實現

想知道戰鬥NPC如何創建,可以參考
財神爺
走動與自動重生Boss 簡單版

想知道人物數值如何修改,可以參考
點數重置NPC

想知道道具數值如何修改,可以參考
衝裝系統NPC
精煉系統

總之就是無腦翻sample code吸收一下各功能大概如何使用,再把自己的想法透過這些功能實現出來

如果你覺得這篇文章對你有用,歡迎留言給我個鼓勵(X,當你有一些作品時,也期盼你能一起分享你的創作,看能不能激盪出更多的火花 ^^

[ 本帖最後由 agent0800 於 2020-9-13 10:31 編輯 ]
作者: kaqhahk    時間: 2018-10-27 23:25

好久沒人發新文了 謝謝大大分享

貢獻值0 不能看 xd
作者: yang    時間: 2018-10-29 08:14     標題: 回復 2# 的帖子

已取消看文章貢獻值的設定了
作者: 為何無名    時間: 2018-10-30 03:17

感謝分享文章,
很久沒看到發新文章了,
雖然沒辦法下載參考文章的檔案,
但還是感謝有人發這篇文章。
作者: o3124568    時間: 2018-11-3 16:59

慣用ablua路過......
作者: 67063285    時間: 2018-12-6 09:32

現在是LUA當道,謝謝分享,希望多分享
作者: wontinhang    時間: 2018-12-18 09:15

聲望不夠不能看其他的XDDDD
作者: 唉唷不得了    時間: 2019-2-19 15:20

正在學習如何架設,製作 謝謝分享
作者: oubml123    時間: 2019-3-6 16:51     標題: 太需要你这样的大大分享

一直想学,但是好像资料都太匮乏了,多谢分享。
作者: jc28735250    時間: 2020-7-16 19:33

內容非常詳細 感謝大大分享 回去研究研究
作者: 31558770    時間: 2020-10-30 14:40

来学习了 最近刚接触这个
作者: oshgg    時間: 2020-12-13 11:51

thank you! thank you! push!! push!!
作者: wjfdx1124    時間: 2021-10-27 12:08

写的非常详细,感谢大神分享。好好研究中。。。
作者: a0912201610    時間: 2021-10-31 03:10

感謝大大 來學習一下!!
作者: kinkin    時間: 2021-11-5 12:53

內容非常詳細 感謝大大分享
作者: qkdt8620    時間: 2022-1-9 18:08

感謝大大分享教學,雖然我什麼都還不會 要慢慢研究了
作者: bombond    時間: 2022-7-16 09:18

內容非常詳細 回去研究研究 感謝大大分享
作者: azzipstar    時間: 2022-10-10 17:08

感謝分享實用資訊
一切從0開始努力學習中
作者: gg8611    時間: 2022-10-24 16:23     標題: gg

感謝分享實用資訊
一切從0開始努力學習中
作者: hwh018920    時間: 2022-12-23 07:48

开始爬楼学习,自学很久终于找到比较友好的地方了。
作者: sunny221117    時間: 2022-12-24 08:51

正在學習如何架設,製作 謝謝分享
作者: sunny221221    時間: 2022-12-24 08:52

正在學習如何架設,製作 謝謝分享
作者: 112967240    時間: 2022-12-24 11:50

哎,看不了,好几年的贴了,2022年还有人研究吗
作者: c819737137    時間: 2023-1-21 18:29

想做一個快速解各種任務的NPC 但不知道能不能實現,因為有的任務NPC有BUG無法完成
如果可以做的話就方便很多
作者: lkl12345    時間: 2023-3-26 19:44     標題: THANKS FOR SHARING~~!!!!!!

提示: 作者被禁止或刪除 內容自動屏蔽
作者: jooney3123    時間: 2023-4-21 12:01

感谢大大分享  非常棒 学习一下 回去研究研究
作者: xox456    時間: 2023-11-17 23:52

感謝大大 來學習一下!!




歡迎光臨 We Love SA 石器時代研討中心 (http://lab.welovesa.com/) Powered by Discuz! 6.0.0