Kết quả 1 đến 10 của 23
-
05-04-11, 09:41 PM #1
- Ngày tham gia
- Jun 2006
- Đang ở
- GameZone
- Bài viết
- 932
- Thanks
- 6
- Thanked 576 Times in 183 Posts
Hướng dẫn để viết 1 kịch bản game đơn giản và cách sử dụng hàm
Hiện tại box dạo này vắng vẻ. Tài liệu thì có nhiều nhưng nằm rải rác khắp nơi trong clb.
Nên DNT lập topic này nhằm hướng dẫn cho các Newbie tập trở thành 1 Dev Jx.
Hi vọng sẽ giúp ích được nhiều người.
Chú ý: Không được Spam vào Topic này.
Các Mod đừng khóa Topic này mọi người có thể vào tham khảo và post thêm phụ với DNT nhưng tuyệt đối đừng SPAM để topic được trơn tru và sạch đẹp
Bài 1
Hàm Say
Say là 1 hàm thực thi dùng để nói chuyện giữa 1 nhân vật và NPC.
Cấu trúc:
Code:Say(<Câu thoại>,<Số lượng lựa chọn>,<lựa chọn 1>,<lựa chọn 2>,..<lựa chọn n>) Say(<Số ID trong StringResource.txt>,<Số lượng lựa chọn>,<lựa chọn 1>,<lựa chọn 2>,..<lựa chọn n>) Say(<Câu thoại>,<Số lượng lựa chọn>,<Table(Mảng 1 chiều)>)
Code:Say("Xa phu: ban co muon roi khoi noi nay",2,"Toi dong y/yes","Thoi toi muon o lai/no"); Khi bạn chọn lựa chọn: Toi dong y thì nó sẽ thực thi hàm yes() trong file Tương tự với lựa chọn còn lại.
Code:luachon = {"Toi dong y/yes","Thoi toi muon o lai/no"}; Say("Xa phu: ban co muon roi khoi noi nay",2,luachon)
Hàm Talk
Talk cũng tương tự như hàm Say nhưng không có lựa chọn mà mặc định phải thực thi một lệnh nào đó nếu có.
Cấu trúc
Code:Talk(<số lượng câu thoại>,<[Hàm thực thi]>,<câu thoại 1>,<câu thoại 2>,..,<câu thoại n>)
Code:Talk(1,"","Xa phu: Nguoi khong co 500 luong de di duyen sang khu vuc khac"); Talk(2,"","Xa Phu: nguoi cap 10 nen tu luyen tai lang","Sau khi hon cap 10 hay quay lai tim ta");
Code:Talk(1,"dichuyenblh","Xa Phu: Chuan bi ta di den ba lang huyen"); Ở đây khi đối thoại xong thì sẻ thực thi hàm dichchuyenblh
Msg2Player và Msg2SubWorld
Đây là 2 hàm hiện lên dòng thông báo của hệ thống (Tức dòng chữ màu đỏ góc trái phía dưới)
Cấu trúc
Code:Msg2Player(<Câu thoại>) Msg2SubWorld(<Câu thoại>)
Code:Msg2Player("Ban chua khong co 500 luong") Msg2SubWorld("10 phut nua se bat dau mo cua Sieu Thi Hoang Kim")
SetTask() và GetTask()
Hàm này nói ra rất trừu tượng nhưng nó dùng để viết ra các nhiệm vụ. Dùng nó thay thế cho các loại điểm như Phúc Duyên,Luyện Skills...
Tóm lại nói ngắn gọn nó là 1 hàm dùng lưu lại các bước đã thao tác.
Cấu trúc
Code:SetTask(<ID Task>,<Giá trị>) GetTask(<ID Task>)
Code:ID Task là giá trị từ 1-255 Giá trị là do mình mặc định
Code:SetTask(1,3) Tức ta đặt giá trị cho ID Task 1 là 3 Vậy khi ta thực thi hàm GetTask(1) nó sẽ trả về là 3
Code:Chú ý: Các ID Task mà ta chưa sữ dụng thì tất cả giá trị khi thực thi hàm GetTask() sẽ là 0
Tương tự như vậy với 2 hàm SetTaskTemp() và GetTaskTemp()
Nhưng TaskTemp là 1 loại Task sau khi nhân vật thoát khỏi game thì tất cả các TaskTemp để trở về giá trị 0 toàn bộ
Còn tiếp
-
The Following 33 Users Say Thank You to DNTmaster For This Useful Post:
094103 (03-03-19), aoxanhst (08-04-11), dragonfly816 (16-02-12), duynguyenjx (05-11-11), harrythai (15-04-11), kesangame (17-04-11), kidcrazy187 (14-04-11), KingStone (06-04-11), kunno001 (06-04-11), kutunvg2010 (16-11-11), lichnt (09-02-12),
Linh_JX(02-06-12), mathien02 (07-04-11), minhclub102 (15-02-17), Mr.Lady (30-01-12), mrvu058 (29-04-11), muserverconfig (02-05-20), nh0xthien (05-06-13), oceankingdom (06-04-11), ph4mduc4n (05-04-13), quangken (27-04-11), quocthien87 (13-10-14), rainyway8x (05-04-11), satthulauhyh (19-12-11), satthupro95 (22-06-12), TaeYen (06-04-11), thaihoa91 (06-04-11), tieudieuphong (03-05-13), vinhngocclup (17-07-11), vipprolc (17-04-11), woodes123 (12-06-11), [B.M.W]Sports (07-04-11), [S]ocola[S]an (06-04-11)
-
08-04-11, 12:43 PM #2
- Ngày tham gia
- Jun 2006
- Đang ở
- GameZone
- Bài viết
- 932
- Thanks
- 6
- Thanked 576 Times in 183 Posts
Ðề: Hướng dẫn để viết 1 kịch bản game đơn giản và cách sữ dụng hà
Include
Tác dụng:
Code:Kết nối tới 1 file Lua khác để lấy dữ liệu như biến,hàm,v.v....
Code:Include("<đường dẫn>");
Code:Include("\\script\\gm.lua"); Kết nối tới file GM.lua để lấy dữ liệu hoặc thông tin
Bao gồm 4 hàm cơ bản thường sữ dụng
Tác dụng
Code:Hiển thị dòng thông báo chạy chữ trên màn hình
Code:AddGlobalNews("<Thông điệp>"); AddGlobalCountNews("<Thông điệp>",<Số lần xuất hiện>); AddLocalNews("<Thông điệp>"); AddLocalCountNews("<Thông điệp>",<Số lần xuất hiện>);
Code:AddGlobalNews("Chao mung den voi Vo Lam Offline"); Xuất hiện 1 lần rồi tắt AddGlobalCountNews("Chao mung den voi Vo Lam Offline",3); Xuất hiện 3 lần rồi tắt
AddRepute và GetRepute
Tác dụng:
Code:Cộng điểm danh vọng và lấy điểm danh vọng
Code:AddRepute(<Điểm>); Cộng thêm điểm danh vọng (Đồi với số dương); Trừ đi điểm danh vọng (Đồi với số âm); GetRepute(); Lấy điểm danh vọng hiện tai
Ví dụ
Code:AddRepute(50); Cộng 50 danh vọng AddRepute(-50); Trừ 50 danh vọng GetRepute(); Trả về số điểm danh vọng Để thấy được điểm danh vọng thì Msg2Player("Diem danh vong hien la: "..GetRepute());
Tác dụng
Code:Cộng điểm kinh nghiệm cho 1 nhóm Party Cộng điểm kinh nghiệm cho 1 nhân vật Lấy điểm kinh nghiệm hiện có
Code:AddExp(<Số điểm>,<Level>,<Party>); AddOwnExp(<Số điểm>); GetExp();
Code:AddExp(5000,200,1); Các nhân vật trong nhóm(Bao gồm chính bạn) sẽ nhận một phần kinh nghiệm trong 5000 điểm chia sẽ ra AddOwnExp(5000); Nhân vật được nhận 5000 điểm kinh nghiệm GetExp(); Kiểm tra số điểm kinh nghiệm Để thấy được số điểm kinh nghiệm trả về từ hàm GetExp() thì Msg2Player("Diem kinh nghiem hien la: "..GetExp());
2 Hàm này có tác dụng cộng Kinh nghiệm cho Tài Lãnh Đạo của nhân vật
AddLeadExp(<Số điểm>); Cộng kinh nghiệm tài lãnh đạo
GetLeadLevel();Kiểm tra cấp độ của tài lãnh đạo
-
The Following 10 Users Say Thank You to DNTmaster For This Useful Post:
094103 (03-03-19), duynguyenjx (05-11-11), kidcrazy187 (14-04-11), ph4mduc4n (05-04-13), quangken (08-05-12), quocthien87 (13-10-14), satthupro95 (22-06-12), vipprolc (17-04-11), woodes123 (12-06-11), [B.M.W]Sports (09-04-11)
-
08-04-11, 08:37 PM #3
Ðề: Hướng dẫn để viết 1 kịch bản game đơn giản và cách sữ dụng hà
góp zui thêm vài hàm nữa :
Hàm PlayerIndex
Sử dụng check bản thân của 1 nhân vật nào đó . Ví dụ nhân vật có tên "KingMax" thì sử dụng hàm nt này
for i = 1,300 do --Số Player sẽ kiểm tra
PlayerIndex = i -- Gán vào biến i
if (GetName() == "KingMax") then --Kiểm tra tên Player
return 1
else
return 0
end
end
Chicken : PlayerIndex là biến ko phải hàmLần sửa cuối bởi Čħīċķėň, ngày 09-04-11 lúc 08:46 PM. Lý do: Comment Of Chicken (COC)...
Comeback JXP
-
The Following 8 Users Say Thank You to KingMax For This Useful Post:
duynguyenjx (05-11-11), kidcrazy187 (14-04-11), quangken (10-05-12), satthulauhyh (19-12-11), satthupro95 (22-06-12), thaihoa91 (09-04-11), vipprolc (17-04-11), [B.M.W]Sports (09-04-11)
-
10-04-11, 07:05 AM #4
Ðề: Hướng dẫn để viết 1 kịch bản game đơn giản và cách sữ dụng hà
tiếp tục các hàm Get
GetItemCount
Code:Cách sử dụng: GetItemCount(xzy) trong đó xzy : có thể là ID của item hoặc tên của item (questkey.txt) nhé Ví dụ: function main() if GetItemCount("Tu Thuy Tinh") >= 1 then Talk(1,"","Ban co Thuy tinh") else Talk(1,"","Ban khong co Thuy Tinh") end end
GetMagicLevel(id)
Code:Cách sử dụng : GetMagicLevel(id) trong đó : id là thứ tự của Skill trong skills.txt
Code:Cách sử dụng GetSex() trả về giá trị : 0 : Nam 1 : Nu Ví dụ: if GetSex() == 0 then return "Nam" else return "Nu" end
Code:Hàm này thì kiểm tra số người đang online thôi ví dụ: Talk(1,"","Co "..GetPlayerCount().." nguoi dang online")
Lần sửa cuối bởi KingMax, ngày 10-04-11 lúc 07:08 AM.
Comeback JXP
-
The Following 5 Users Say Thank You to KingMax For This Useful Post:
duynguyenjx (05-11-11), kidcrazy187 (14-04-11), quangken (10-05-12), satthupro95 (22-06-12), woodes123 (12-06-11)
-
10-04-11, 07:50 AM #5
- Ngày tham gia
- Feb 2011
- Bài viết
- 259
- Thanks
- 11
- Thanked 13 Times in 12 Posts
Ðề: Hướng dẫn để viết 1 kịch bản game đơn giản và cách sữ dụng hà
Tự sướng hàm GetPlayerCount()
Code:player = GetPlayerCount() a = GetMissionV(80) playerao = player + a
Code:ví dụ: Talk(1,"","Co "..playerao.." nguoi dang online")
Code:SetMissionV(80,GetMissionV(80)+10)
ví dụ có 10 ng` onl khi sử dụng hàm
Code:SetMissionV(80,GetMissionV(80)+10)
Sau khi sử dụng
hàm xóa a
Code:SetMissionV(80,0)
Khách viếng thăm hãy cùng GameMaster72 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
The Following 2 Users Say Thank You to GameMaster72 For This Useful Post:
quocthien87 (13-10-14), satthupro95 (22-06-12)
-
12-04-11, 02:17 PM #6
- Ngày tham gia
- Jun 2006
- Đang ở
- GameZone
- Bài viết
- 932
- Thanks
- 6
- Thanked 576 Times in 183 Posts
Anh em cố gắng phát huy để hướng dẫn được tất cả các hàm trong JX
Cảm ơn các bạn đã góp sức vào Nhưng chú ý ở đây mình sẽ chỉ các cấu trúc Hàm sau đó sẽ đi vào phần viết script nên mọi người hãy cùng nhau phát huy
Hum nay hơi bận nên không update thêm cho mọi người
-
Các thành viên gởi lời cảm ơn đến DNTmaster vì bài viết này !
phamanh2510 (20-03-16)
-
13-04-11, 02:32 AM #7
Ðề: Anh em cố gắng phát huy để hướng dẫn được tất cả các hàm tron
Mấy ông chỉ cách dùng hàm kiểm tra và Del trang bị đi, hôm nọ có mấy đứa hỏi mà dạo nay không quan tâm lắm nên cũng không biết. Hướng dẫn đi cho mấy đứa nó tham khảo viết nâng cấp trang bị.
VLTK, huyền thoại sẽ trở lại...
-
Các thành viên gởi lời cảm ơn đến thachlong78 vì bài viết này !
NgoiSao123 (18-09-11)
-
13-04-11, 03:10 AM #8
- Ngày tham gia
- Nov 2010
- Đang ở
- —»(¯™°•¤_kµ†€_£øñ€_ £¥_¤•°™¯) ¯ßuNyE JEn???´¯)
- Bài viết
- 1,233
- Thanks
- 244
- Thanked 593 Times in 121 Posts
Ðề: Anh em cố gắng phát huy để hướng dẫn được tất cả các hàm tron
Thử một lần thôi, sống giản dị bao dung chân thật sẽ thấy vui hơn. Bằng lòng và nâng niu trân trọng cho những gì mình đang có trong đời. Tính toán làm chi se sua làm chi hơn thua hình thức kia. Có khó gì đâu cho câu cảm ơn hay câu xin lỗi trên môi mình.
Khổ thế đấy
-
16-04-11, 02:36 PM #9
- Ngày tham gia
- May 2009
- Đang ở
- Nơi rất xa
- Bài viết
- 2,479
- Thanks
- 572
- Thanked 1,848 Times in 503 Posts
Ðề: Hướng dẫn để viết 1 kịch bản game đơn giản và cách sữ dụng hà
sau khi view datau.lua của TQ thì rút ra đc 2 hàm : Del trang bị và kiểm tra trang bị
Cấu trúc :
Hàm kiểm tra : HaveBaseItem(cột B,cột C,cột D,hệ của trang bị,cột L)
Del trang bị : DelBaseItem(cột B,cột C,cột D,hệ của trang bị,cột L)
* cột B,C,D ở đây là cột của file item ta view = Excel ai biết AddItem chẳng lẽ ko biết cái này @@Khách viếng thăm hãy cùng jxvietnam xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
The Following 2 Users Say Thank You to jxvietnam For This Useful Post:
quangken (23-07-11), [B.M.W]Sports (27-04-11)
-
19-04-11, 01:41 PM #10
Các Chủ đề tương tự
-
thoát game không thể đăng nhập vào game được
Bởi daicahoanh trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 0Bài viết cuối: 15-08-11, 12:01 AM -
[Help] Vào game không có Máy chủ để chọn & Item trong game lỗi !!
Bởi Zin Kull trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 2Bài viết cuối: 09-05-11, 09:36 AM -
Cần hướng dẫn hex file game.exe để vào game
Bởi Minh Phụng trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 2Bài viết cuối: 06-01-10, 06:43 AM