傳奇lua腳本分客戶端和服務(wù)端。
我看介紹是 客戶端的部分是寫在客戶端的lua文件夾下面。
那比如開區(qū)的話 玩家需要下載這個帶lua腳本的客戶端。那如果玩家看得懂的話,是不是可以隨意修改。
假如玩家不會修改,那比如他玩了我的服,又玩了別人的服,是不是就把我的llua腳本覆蓋了。客戶端的部分是不是 有這樣的問題。
客戶端的傳奇lua腳本在制作成登錄器的時候會集成在里面,然后會進(jìn)行加密,不需要擔(dān)心這個問題。
下面的示例實(shí)現(xiàn)了創(chuàng)建一個窗體, 并在窗體上創(chuàng)建了標(biāo)簽,按鈕,單選框,復(fù)選框等控件.
GameEvent.lua文件中的腳本如下:- function logon()
- local myself = Client.GETGAMEOBJECT('actor', "myself"); -- 獲取當(dāng)前角色對象
- Client.chat(myself.name..", 歡迎你!");
- initUI();
- end;
- function btn1Click(sender, x, y)
- --Client.chat('btn1 click');
- myform.visible = not myform.visible; -- 可見/不可見切換
- end;
- function initUI()
- local btn1 = UI.addButton(0, 20, 10, "test", "btn1Click");
- -- btn1.image = "http://img.cwq.com/weixinimg/1387871337323223553252b93c69c1498.jpg";
-
- -- 創(chuàng)建一個窗體和一組控件
- myform = UI.addForm(0, 100,50, "prguse.pak|607");
- myform.canMove = true; -- 可移動窗口
- myform.visible = false; -- 窗口不可見
- local formid = myform.id;
- local lbl = UI.addLabel(formid, 80, 50, "這是一個標(biāo)簽");
- radioGroup = UI.addRadioGroup(formid, 80, 80, "武士|法師|道士"); -- 標(biāo)題 以 | 分割標(biāo)題
- -- 創(chuàng)建一個復(fù)選框
- checkBox = UI.addCheckBox(formid, 80, 150, "使用太陽水", true); -- 默認(rèn)勾選
- local btnGet = UI.addButton(formid, 80, 180, "獲取選擇數(shù)值", "btnGetClick");
- end;
- -- 按鈕單擊事件
- function btnGetClick(sender, x, y)
- for I =1, #radioGroup do
- if radioGroup[I].checked then
- Client.CHAT(string.format("選中的職業(yè)是: %s, 序號=%d", radioGroup[I].Caption, I));
- break;
- end;
- end;
-
- -- 根據(jù)勾選狀態(tài)處理邏輯
- Client.CHAT(string.format("使用太陽水: %s", tostring(checkBox.checked)));
- end;
復(fù)制代碼 |
|