Phương Châm : devGame | Diễn đàn phát triển Game Private | DevGame.Ga Bài gửi : 1688 Coin : 30924148 Like : 8105 Tuổi : 27 Đến từ : devGame
Yêu cầu của mục này là bạn phải biết sơ sơ về một số ngôn ngữ lập trình cơ bản như Pascal, C, C++,... Biết những cái này làm gì? Biết những cái này để ta nắm sơ qua ý tưởng cũng như là một số câu lệnh điều kiện mà ta sắp dùng đến.
Cấu trúc của một đoạn code đại diện cho NPC chuyên về sự kiện. 1. Phần khởi động: Phần này là phần mà ta phải khai báo ID của NPC cũng như viết một số chú thích cho người xem hiểu đoạn code nói gì. 2. Phần mở đầu: Giới thiệu sự kiện, các mục chọn lựa hoặc chỉ đơn giản là phần duy nhất trong đoạn code với NPC viết ra chỉ để nói một vài dòng. 3. Phần điều kiện: Không cần thiết phải có. Dùng để kiểm tra điều kiện cần thiết để có thể vào được thân sự kiện. ( Ví dụ cấp 10 trở lên mới được vào gọi là một điều kiện ). 4. Phần thân: Đây chính là thân sự kiện với các lệnh do chính bạn viết nên. Có thể nói cái này là cái quan trọng quyết định chức năng của NPC ( đa số là thế ). 5. Các phần khác: Các bạn có thể sáng tạo ra các hàm khác phục vụ cho đoạn code của mình.
Chi tiết:
A/ PHẦN KHỞI ĐỘNG:
Phần này đa số toàn là chú thích cho người đọc. Và cái quan trọng nhất của phần này chính là cái khai báo một biến hằng số đại diện cho ID của NPC. Nếu như không khai báo kiểu này, mỗi khi dùng một cái lệnh liên quan đến ID của NPC ( lệnh viết ) thì bạn sẽ phải nhập đi nhập lại cái ID đó, có nhàm không? Và xét trường hợp nhiều file, và bạn là một người ngồi soát lỗi chẳng hạn, việc không chú thích cũng như không khai báo ID trên đầu liệu bạn có khó chịu không? Một khuyến cáo là tất cả các khóa từ tên từng hàm một cũng nên kèm theo cái ID ở đầu để tiện quan sát, lý do mình đã trình bày bên trên. Một ví dụ về phần này như sau:
Code:
--NPC: Đại Lý --Tên: Sói Đẹp Zai --Tittle: Hỗ trợ tân thủ --Edit: By Sói Kool
x002097_g_ScriptId = 002097
Giải thích: Những ký tự sau cụm dấu "--" đều được coi là "chú thích" và không liên quan gì đến chương trình của ta cả. Cái biến đại diện cho ID Script kia bạn có thể đặt tên nào cũng được nhưng thống nhất là đặt theo kiểu kia để tiện sau này lục lại NPC. Biến x002097_g_ScriptId sẽ mang giá trị là 002097, giá trị này đại diện cho ID của NPC thực hiện chức năng được viết trong code này.
B/ PHẦN MỞ ĐẦU:
Mở đầu sẽ là lời gọi tới cái mà các ngôn ngữ lập trình kia gọi là "Chương trình chính" hay "Hàm chính". Và như trong game các bạn sẽ thấy cái bảng này sẽ hiện lên khi bấm vào NPC ( Đương nhiên lỗi hoặc không có câu lệnh viết ra cái gì đó thì không tính nhé ). Cấu trúc của phần này sẽ là
Code:
function xID_NPC_OnDefaultEvent(sceneId,selfId,targetId) Các lệnh cơ bản, thường sẽ là lệnh để viết ra một cái gì đó end
Trong đó cái ID_NPC là ID của NPC tương tự như trên. Còn các cái còn lại đừng thay đổi. Mình đã thử đổi tên và kết quả lỗi Script. Một ví dụ:
Code:
function x002097_OnDefaultEvent(sceneId,selfId,targetId) local nam = LuaFnGetName(sceneId,selfId)
BeginEvent(sceneId) AddText(sceneId,"Hi "..nam..", have a good day!") AddNumText(sceneId,x002097_g_ScriptId,"Chức năng tân thủ",1,1) EndEvent(senceId) DispatchEventList(sceneId,selfId,targetId)
end
Lưu ý sau dấu "=" là hàm đã được Lập trình viên viết sẵn chỉ việc dùng thôi nhé ( Hàm_Hằng). Như các bạn thấy bên trong là cụm lệnh bắt đầu bằng khóa BeginEvent(sceneId) và kết thúc bằng khóa EndEvent(SceneId) Hàm AddText(sceneId,"Text") tác dụng chính của nó là thêm vào một chuỗi ký tự, như trên thì hàm này sẽ có tác dụng ghi ra cái bảng nói chuyện của NPC. Ví dụ bạn tên Test, cái bảng sẽ hiện lên "Hi Test, have a good day!", tương tự như printf trongC. AddNumText(sceneId,NPC_ID,"Text",x,y) nó có tác dụng ghi ra một chuỗi ký tự nào đó mà khi người dùng ấn vào chuỗi này thì sẽ thực hiện một số câu lệnh phía sau. Trong đó "x" là biểu tượng đầu của chuỗi ký tự này, và "y" sẽ là "mã số" của cái lệnh mà nó sẽ thực hiện phía sau. DispatchEventList(sceneId,selfId,targetId) đây là lệnh đóng cái bảng lại. Như các bạn thấy trong ví dụ trên, cái bảng của chúng ta sẽ hiện ra.
Code:
Hi Test, have a good day! (image) Chức năng tân thủ
Cái (image) chính là biểu tượng trong game đó mà cụ thể (image)=1 sẽ ra hình cuốn sách cuộn tròn như các bạn thường thấy khi nhận nhiệm vụ ở các NPC. Và khi bạn bấm vào cái "Chức năng tân thủ", nó sẽ làm gì tiếp thì hãy chuyển sang phần sau.
Phương Châm : devGame | Diễn đàn phát triển Game Private | DevGame.Ga Bài gửi : 1688 Coin : 30924148 Like : 8105 Tuổi : 27 Đến từ : devGame
C/PHẦN ĐIỀU KIỆN: Tác dụng cơ bản của phần này chỉ là để kiểm tra điều kiện của người chơi sao cho thỏa mãn với mục đích của sự kiện được viết ra. Cấu trúc của phần này là
Code:
function xID_NPC_OnConditionCheck(sceneId,selfId ) Một số lệnh end
Ví dụ mình sẽ xây dựng một phần điều kiện để kiểm tra xem người chơi có đủ cấp độ 10 và không vượt quá cấp độ 50 mới có thể tham gia sự kiện.
Code:
function x002097_OnConditionCheck(sceneId,selfId ) local lev=GetLevel(sceneId,selfId)
if lev < 10 then BeginEvent(sceneId) AddText(sceneId,"Khi nào đạt cấp 11 trở lên hãy đến tìm ta") DispatchEventList(sceneId,selfId,targetId) return 0 EndEvent(sceneId) elseif lev > 50 then BeginEvent(sceneId) AddText(sceneId,"Lớn hơn cấp 50 mà gọi là tân thủ à?") DispatchEventList(sceneId,selfId,targetId) return 0 EndEvent(sceneId) end
end
Câu lệnh if điều kiện then thực hiện lệnh end các bạn tự hiểu nó giống trong các ngôn ngữ lập trình khác. elseif điều kiện then thực hiện lệnh end tương tự như if chỉ khác cái này là kiểm tra lệnh if trên không thỏa mãn thì nó sẽ kiểm tra điều kiện sau. Hay theo C++ thì nó tương đương lệnh
Code:
else if (Điều kiện) { thực hiện lệnh; }
Ngoài ra còn lệnh else nữa nhé. Kết thúc else sẽ là khóa end vì thật ra else cũng là một câu lệnh nhỏ trong cụm if then end và kết thúc lệnh này phải có end => Logic phết return 0, giống hệt C++, gần như stop chương trình luôn đó. Ngoài ra nó còn lệnh tên là returnkhông thôi có tác dụng trở lại bảng sự kiện ban đầu.
D/ PHẦN THÂN
Cấu trúc
Code:
function xID_NPC_OnEventRequest(sceneId,selfId,targetId,eventId) Lệnh end
Đây chính là phần mà các bạn sáng tạo nhiều nhất ví dụ của mình có hàm Add Level cho nhân vật.
Code:
function x002097_OnEventRequest(sceneId,selfId,targetId,eventId) local key = GetNumText() if key == 1 then SetLevel(sceneId,selfId,120) BeginEvent(sceneId) AddText(sceneId,"Chúc mừng bạn thăng cấp 120 thành công") EndEvent(scneneId) DispatchEventList(sceneId,selfId,targetId) end end
"==" là phép so sánh bằng nhé giống bên C. SetLevel(sceneId,selfId,x) là hàm Set cho nhân vật level x tùy ý ( không vượt quá 150 ) local Tên_Biến = Hàm_Hằng GetNumText() tức là hàm lấy giá trị ẩn của cái chỗ mà người chơi vừa kick vào ( Hơi khó hiểu nhưng đại khái theo cái phần mở đầu, người dùng ấn vào cái cụm ký tự mà có chữ số đại diện cho các câu lệnh ngầm phía sau là 1 ) Ở đây có thể bao gồm nhiều lệnh nhé, và phần này là phần đòi hỏi người viết phải có kiến thức lập trình, rà soát các trường hợp cẩn thận.
Phương Châm : devGame | Diễn đàn phát triển Game Private | DevGame.Ga Bài gửi : 1688 Coin : 30924148 Like : 8105 Tuổi : 27 Đến từ : devGame
E/PHẦN KHÁC
Ở phần này các bạn có thể sáng tạo các hàm khác cho riêng mình được, ví dụ đoạn code bên trên mình có thể biến nó về sử dụng một hàm khác và lấy hàm chính của chương trình gọi tới nó. Vẫn thống nhất như trên thêm xID_NPC_Tên_chương_trình(tham biến) nhé
Code:
--NPC: Đại Lý --Tên: Sói Đẹp Zai --Tittle: Hỗ trợ tân thủ --Edit: By Sói Kool
function x002097_OnDefaultEvent(sceneId,selfId,targetId) local nam = LuaFnGetName(sceneId,selfId)
BeginEvent(sceneId) AddText(sceneId,"Welcome "..nam..", have a good day!") AddNumText(sceneId,x002097_g_ScriptId,"Chức năng tân thủ",1,1) EndEvent(senceId) DispatchEventList(sceneId,selfId,targetId)
end
function x002097_OnConditionCheck(sceneId,selfId ) local lev=GetLevel(sceneId,selfId)
if lev < 10 then BeginEvent(sceneId) AddText(sceneId,"Khi nào đạt cấp 11 trở lên hãy đến tìm ta") DispatchEventList(sceneId,selfId,targetId) return 0 EndEvent(sceneId) elseif lev > 50 then BeginEvent(sceneId) AddText(sceneId,"Lớn hơn cấp 50 mà gọi là tân thủ à?") DispatchEventList(sceneId,selfId,targetId) return 0 EndEvent(sceneId) end
end
function x002097_OnEventRequest(sceneId,selfId,targetId,eventId) local key = GetNumText() if key == 1 then x002097_LenLevel(sceneId,selfId) end end
function x002097_LenLevel(sceneId,selfId) BeginEvent(sceneId) AddText(sceneId,"Chúc mừng bạn thăng cấp 120 thành công") EndEvent(scneneId) DispatchEventList(sceneId,selfId,targetId) end
Đây gọi là một cái hay mà các ngôn ngữ lập trình khác đều có đó là thuật "Chia để trị", sau này bạn sẽ rất cần thiết đến cách phân chia này với các script có nhiều phần... Lưu ý: Phân biệt chữ hoa chữ thường nên phải cẩn thận.
MỘT SỐ CÂU LỆNH SƯU TẬP:
Add KNB:
Code:
YuanBao(sceneId,selfId,targetId,x,y)
Trong đó y là số KNB cần add và x là số lượng, hiểu nôm na là số phiếu KNB
Trong đó x là ID quyển tâm pháp cần thêm, y là số điểm tâm pháp
OK như vậy là đủ để viết được Script đơn giản. Còn các cái cao siêu mình không nói đến nhé.
Và đây là 1 script mẫu nhận tâm pháp và lev 120 cho anh em tham khảo
Code:
--ÐÕi Lý NPC --ID: 002097 --Script test code by Sói Kool --************************ x002097_g_ScriptId = 002097 --************************ --Kh·i ðµng --************************ function x002097_OnDefaultEvent(sceneId,selfId,targetId)
BeginEvent(sceneId) AddText(sceneId,"Chào m×ng bÕn ðªn v¾i Thiên Long Bát Bµ edit by Sói Kool...Các hÕ có mu¯n gia nh§p môn phái và nh§n tâm pháp c¤p 120 không ? Nªu ð°ng ý, các hÕ s¨ l§p tÑc thång lên c¤p ðµ 120 cùng tâm pháp môn phái tß½ng Ñng...") AddNumText(sceneId,x002097_g_ScriptId,"Xác nh§n",1,1) AddNumText(sceneId,x002097_g_ScriptId,"Nh§n yªu quyªt phái Mµ Dung",1,2) EndEvent(senceId) DispatchEventList(sceneId,selfId,targetId)
end --************************ --Thân chß½ng trình --************************ function x002097_OnEventRequest(sceneId,selfId,targetId,eventId) local key = GetNumText() local lev = GetLevel(sceneId,selfId)
--Gia nh§p môn phái if key == 1 then BeginEvent(sceneId) AddText(sceneId,"Hãy lña ch÷n môn phái mu¯n gia nh§p...#r Lßu ý: C¤p 120 tr· lên không nên dùng chÑc nång này v¸ nó s¨ hÕ c¤p ðµ cüa bÕn xu¯ng 120....") AddNumText(sceneId,x002097_g_ScriptId,"Thiªu Lâm",2,3) AddNumText(sceneId,x002097_g_ScriptId,"Minh Giáo",2,4) AddNumText(sceneId,x002097_g_ScriptId,"Cái Bang",2,5) AddNumText(sceneId,x002097_g_ScriptId,"Thiên S½n",2,6) AddNumText(sceneId,x002097_g_ScriptId,"#YMµ Dung",2,7) AddNumText(sceneId,x002097_g_ScriptId,"Nga My",2,8) AddNumText(sceneId,x002097_g_ScriptId,"Tiêu Dao",2,9) AddNumText(sceneId,x002097_g_ScriptId,"Tinh Túc",2,10) AddNumText(sceneId,x002097_g_ScriptId,"Võ Ðang",2,11) AddNumText(sceneId,x002097_g_ScriptId,"Thiên Long",2,12) EndEvent(sceneId) DispatchEventList( sceneId,selfId, targetId ) end --*** if key == 3 then --Thiªu Lâm --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId,0) --ID 0 là Thiªu Lâm --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,1,120) LuaFnSetXinFaLevel(sceneId,selfId,2,120) LuaFnSetXinFaLevel(sceneId,selfId,3,120) LuaFnSetXinFaLevel(sceneId,selfId,4,120) LuaFnSetXinFaLevel(sceneId,selfId,5,120) LuaFnSetXinFaLevel(sceneId,selfId,6,120) LuaFnSetXinFaLevel(sceneId,selfId,55,120) LuaFnSetXinFaLevel(sceneId,selfId,72,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Thiªu Lâm, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --*** if key == 4 then --Minh Giáo --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 1) --ID 1 là Minh Giáo --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,7,120) LuaFnSetXinFaLevel(sceneId,selfId,8,120) LuaFnSetXinFaLevel(sceneId,selfId,9,120) LuaFnSetXinFaLevel(sceneId,selfId,10,120) LuaFnSetXinFaLevel(sceneId,selfId,11,120) LuaFnSetXinFaLevel(sceneId,selfId,12,120) LuaFnSetXinFaLevel(sceneId,selfId,56,120) LuaFnSetXinFaLevel(sceneId,selfId,73,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Minh Giáo, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 5 then --Cái Bang --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 2) --ID 2 là Cái Bang --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,13,120) LuaFnSetXinFaLevel(sceneId,selfId,14,120) LuaFnSetXinFaLevel(sceneId,selfId,15,120) LuaFnSetXinFaLevel(sceneId,selfId,16,120) LuaFnSetXinFaLevel(sceneId,selfId,17,120) LuaFnSetXinFaLevel(sceneId,selfId,18,120) LuaFnSetXinFaLevel(sceneId,selfId,57,120) LuaFnSetXinFaLevel(sceneId,selfId,74,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Cái Bang, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 6 then --Thiên S½n --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 7) --ID 7 là Thiên S½n --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,43,120) LuaFnSetXinFaLevel(sceneId,selfId,44,120) LuaFnSetXinFaLevel(sceneId,selfId,45,120) LuaFnSetXinFaLevel(sceneId,selfId,46,120) LuaFnSetXinFaLevel(sceneId,selfId,47,120) LuaFnSetXinFaLevel(sceneId,selfId,48,120) LuaFnSetXinFaLevel(sceneId,selfId,62,120) LuaFnSetXinFaLevel(sceneId,selfId,79,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Thiên S½n, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 7 then --Mµ Dung --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 9) --ID 9 là Mµ Dung --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,64,120) LuaFnSetXinFaLevel(sceneId,selfId,65,120) LuaFnSetXinFaLevel(sceneId,selfId,66,120) LuaFnSetXinFaLevel(sceneId,selfId,67,120) LuaFnSetXinFaLevel(sceneId,selfId,68,120) LuaFnSetXinFaLevel(sceneId,selfId,69,120) LuaFnSetXinFaLevel(sceneId,selfId,70,120) LuaFnSetXinFaLevel(sceneId,selfId,71,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Mµ Dung Gia, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 8 then --Nga My --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 4) --ID 4 là Nga My --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,25,120) LuaFnSetXinFaLevel(sceneId,selfId,26,120) LuaFnSetXinFaLevel(sceneId,selfId,27,120) LuaFnSetXinFaLevel(sceneId,selfId,28,120) LuaFnSetXinFaLevel(sceneId,selfId,29,120) LuaFnSetXinFaLevel(sceneId,selfId,30,120) LuaFnSetXinFaLevel(sceneId,selfId,59,120) LuaFnSetXinFaLevel(sceneId,selfId,76,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Nga My, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 9 then --Tiêu Dao --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 8) --ID 8 là Tiêu Dao --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,49,120) LuaFnSetXinFaLevel(sceneId,selfId,50,120) LuaFnSetXinFaLevel(sceneId,selfId,51,120) LuaFnSetXinFaLevel(sceneId,selfId,52,120) LuaFnSetXinFaLevel(sceneId,selfId,53,120) LuaFnSetXinFaLevel(sceneId,selfId,54,120) LuaFnSetXinFaLevel(sceneId,selfId,63,120) LuaFnSetXinFaLevel(sceneId,selfId,80,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Tiêu Dao, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 10 then --Tinh Túc --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 5) --ID 5 là Tinh Túc --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,31,120) LuaFnSetXinFaLevel(sceneId,selfId,32,120) LuaFnSetXinFaLevel(sceneId,selfId,33,120) LuaFnSetXinFaLevel(sceneId,selfId,34,120) LuaFnSetXinFaLevel(sceneId,selfId,35,120) LuaFnSetXinFaLevel(sceneId,selfId,36,120) LuaFnSetXinFaLevel(sceneId,selfId,60,120) LuaFnSetXinFaLevel(sceneId,selfId,77,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Tinh Túc, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 11 then --Võ Ðang --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 3) --ID 3 là Võ Ðang --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,19,120) LuaFnSetXinFaLevel(sceneId,selfId,20,120) LuaFnSetXinFaLevel(sceneId,selfId,21,120) LuaFnSetXinFaLevel(sceneId,selfId,22,120) LuaFnSetXinFaLevel(sceneId,selfId,23,120) LuaFnSetXinFaLevel(sceneId,selfId,24,120) LuaFnSetXinFaLevel(sceneId,selfId,58,120) LuaFnSetXinFaLevel(sceneId,selfId,75,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Võ Ðang, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 12 then --Thiên Long --Gia nh§p môn phái LuaFnJoinMenpai(sceneId,selfId, targetId, 6) --ID 6 là Thiên Long --Tâm pháp LuaFnSetXinFaLevel(sceneId,selfId,37,120) LuaFnSetXinFaLevel(sceneId,selfId,38,120) LuaFnSetXinFaLevel(sceneId,selfId,39,120) LuaFnSetXinFaLevel(sceneId,selfId,40,120) LuaFnSetXinFaLevel(sceneId,selfId,41,120) LuaFnSetXinFaLevel(sceneId,selfId,42,120) LuaFnSetXinFaLevel(sceneId,selfId,61,120) LuaFnSetXinFaLevel(sceneId,selfId,78,120) LuaFnSendSpecificImpactToUnit(sceneId,selfId,selfId,selfId,148,0) --Thång c¤p SetLevel(sceneId,selfId,120)
BeginEvent(sceneId) AddText(sceneId,"Chúc m×ng ngß½i ðã là ð® tØ Thiên Long, nh§n thành công tâm pháp 120 môn phái ð°ng th¶i thång lên c¤p 120...") EndEvent(sceneId)
DispatchEventList(sceneId,selfId,targetId ) end --** if key == 2 then --Nh§n Yªu quyªt Mµ Dung Gia BeginAddItem(sceneId) AddItem(sceneId,30308099,1)--YQ 35 - Lñc Chí Ti«n Thích AddItem(sceneId,30308097,1)--YQ 45 - Phá Thiên ThÑc AddItem(sceneId,30308096,1)--YQ 65 - Hóa Khí ThÑc AddItem(sceneId,30308100,1)--YQ 80 - Lång Thiên ThÑc EndAddItem(sceneId,selfId) AddItemListToHuman(sceneId,selfId)