Dùng mảng để viết code LUA !
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Trang 1 của 2 1 2 CuốiCuối
Kết quả 1 đến 10 của 15
  1. #1
    Super Moderator thaihoa91's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    12,110
    Thanks
    662
    Thanked 3,168 Times in 1,602 Posts

    Dùng mảng để viết code LUA !

    Có lẽ nếu ai từng viết code, chắc hẳn sẽ bít dùng mảng, mình thì ko dám gọi là ng` nghĩ ra ý tưởng dùng mảng đầu tiên vào code LUA, chỉ là giới thiệu cho những ai chưa bít cách dùng mảng thui để khi viết code dễ nhìn 1 chút

    Thay vì ta viết 1 đoạn code sau:

    Code:
    --Author: thaihoa91
    
    function main()
    	Say("<bclr=red><color=yellow>Ngo Than y<color><bclr>: Bon tiem deu la than duoc! Co benh se khoi benh, khong benh se khoe, gia ca phai chang. Mua mot it chu?",3,"Giao dich/giaodich","Ta den nhan nhiem vu So nhap/nvsonhapngothany","Khong giao dich/kogiaodich")
    end;
    
    function giaodich()
    	Sale(39);
    end;
    
    function nvsonhapngothany()
    	Talk(1,"","Luc bi thuong nho uong thuoc, phong benh hon chua benh.")
    end;
    
    function kogiaodich()
    end;
    Thì ta có thể viết lại thế này cho dễ nhìn:

    Code:
    --Author: thaihoa91
    
    MacDinhNgoThanY = {
    	{"<bclr=red><color=yellow>Ngo Than y<color><bclr>: Bon tiem deu la than duoc! Co benh se khoi benh, khong benh se khoe, gia ca phai chang. Mua mot it chu?"},
    	{"Giao dich/giaodich"},
    	{"Ta den nhan nhiem vu So nhap/nvsonhapngothany"},
    	{"Khong giao dich/kogiaodich"}
    }
    
    function main()
    	Say(MacDinhNgoThanY[1][1],3,MacDinhNgoThanY[2][1],MacDinhNgoThanY[3][1],MacDinhNgoThanY[4][1])
    end;
    
    function giaodich()
    	Sale(39);
    end;
    
    function nvsonhapngothany()
    	Talk(1,"","Luc bi thuong nho uong thuoc, phong benh hon chua benh.")
    end;
    
    function kogiaodich()
    end;
    Các loại code thế này, mình đang dev cho Server Tiếu Ngạo và mình quyết định tự code lại toàn bộ file LUA theo ý mình

    Vì khi mình tự viết ra thì mình sẽ tự nhớ dc cấu trúc mình đã viết, nhớ dc ID task đã dùng ID nào rùi ! Chứ dùng của ng` khác thì test rùi sửa lại theo ý mình còn lâu hơn là viết lại
    Khách viếng thăm hãy cùng thaihoa91 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. The Following 6 Users Say Thank You to thaihoa91 For This Useful Post:

    chuongga2vn (14-03-11), jxvietnam (22-12-10), kemdenny (26-12-10), khoamamktvn (23-12-10), thanh159 (23-12-10), [S]ocola[S]an (05-01-11)

  3. #2
    Thành Viên
    Ngày tham gia
    Feb 2009
    Đang ở
    USA
    Bài viết
    144
    Thanks
    7
    Thanked 16 Times in 7 Posts

    Ðề: Dùng mảng để viết code LUA !

    Nếu đoán không nhầm thì có 1 files .LUA có để lại tóm tắt của các Task đang được sử dụng... không nhớ rõ trong file nào, mà coder chuyên nghiệp chắc có để lại, còn Server moi móc làm lại thì không biết có hay không mà cách viết thế này nhìn sơ sơ giống cách viết trong Script Vinagame, hơi dài dòng....
    Lần sửa cuối bởi kenshiwo, ngày 23-12-10 lúc 08:35 AM.
    Khách viếng thăm hãy cùng kenshiwo xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #3
    Super Moderator thaihoa91's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    12,110
    Thanks
    662
    Thanked 3,168 Times in 1,602 Posts

    Ðề: Dùng mảng để viết code LUA !

    Mình lấy ý tưởng này từ code map_index.lua (file xa phu làm quest Dã Tẩu) của VNG đó Hàng này tui share trong bài tọa độ move maps full

    Nó ko dài dòng đâu ! Ứng dụng nó rất nhìu, có thể làm cho chuyển sinh, tẩy tủy, hay add quái SLL dễ dàng
    Khách viếng thăm hãy cùng thaihoa91 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #4
    Thành Viên
    Ngày tham gia
    Feb 2009
    Đang ở
    USA
    Bài viết
    144
    Thanks
    7
    Thanked 16 Times in 7 Posts

    Ðề: Dùng mảng để viết code LUA !

    Tiếp tục phát huy nhé bạn hiền, Server Online cũng có khi có lỗi khi Script dùng mảng quá nhiều đó... Chỉ ứng dụng được cho vài chức năng thôi.. Nhưng cũng là 1 ý kiến hay để học hỏi và phát huy thêm nhiều cách viết...
    Khách viếng thăm hãy cùng kenshiwo xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  6. Các thành viên gởi lời cảm ơn đến kenshiwo vì bài viết này !

    thaihoa91 (23-12-10)

  7. #5
    CyBerTeam
    Ngày tham gia
    Apr 2007
    Đang ở
    Hà Nội
    Bài viết
    736
    Thanks
    64
    Thanked 229 Times in 95 Posts

    Ðề: Dùng mảng để viết code LUA !

    Cách viết hay đó.
    Phát triển tốt nhé
    Khách viếng thăm hãy cùng khoamamktvn xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. Các thành viên gởi lời cảm ơn đến khoamamktvn vì bài viết này !

    thaihoa91 (23-12-10)

  9. #6
    Thành Viên
    Ngày tham gia
    Feb 2009
    Đang ở
    USA
    Bài viết
    144
    Thanks
    7
    Thanked 16 Times in 7 Posts

    Ðề: Dùng mảng để viết code LUA !

    Code:
    --Author: KenShiWo
    --Title: Doi Xu
    
    DOIXU = {
    	{"Ngang hang chuyen tien <color=yellow>Van<color> thanh <color=fire>Xu<color>Cac ha hien tai co <color=fire>"..GetTask(66).." Xu"},
    	{"Ta muon doi Xu/exchange"},
    	{"Ghe ngang/out"}
    }
    
    SELXU = {
    	{"<color=blue>Cac ha muon doi bao nhieu Xu <color>"},
    	{"1 Xu = 500v/ex1xu"},
    	{"2 Xu = 1000v/ex2xu"},
    	{"5 Xu = 2500v/ex5xu"},
    	{"10 Xu = 5000v/ex10xu"},
    	{"Khong muon/out"}
    }
    
    
    
    function main()
    	Say(DOIXU[1][1],2,DOIXU[2][1],DOIXU[3][1])
    end;
    
    function exchange()
    	Say(SELXU[1][1],5,SELXU[2][1],SELXU[3][1],SELXU[4][1],SELXU[5][1],SELXU[6][1])
    end;
    
    function out()
    	Talk(1,"","Neu muon doi <color=fire>Xu<color>, Xin hay quay lai lan sau!")
    end;
    
    
    function ex1xu()
    XU = GetTask(66)
    if (GetCash() >= 5000000)
    then 
    Pay(5000000)
    SetTask(66,XU+1)
    Msg2Player("Doi tien van thanh xu thanh cong");
    Msg2Player("Ban da doi 500v thanh 1 Xu");
    Msg2Player("Ban nhan duoc +1 Xu");
    else
    Msg2Player("Ngan luong trong hanh trang khong du, xin thu lai!");
    end
    end;
    
    function ex2xu()
    XU = GetTask(66)
    if (GetCash() >= 10000000)
    then 
    Pay(10000000)
    SetTask(66,XU+2)
    Msg2Player("Doi tien van thanh xu thanh cong");
    Msg2Player("Ban da doi 1000v thanh 2 Xu");
    Msg2Player("Ban nhan duoc +2 Xu");
    else
    Msg2Player("Ngan luong trong hanh trang khong du, xin thu lai!");
    end
    end;
    
    function ex5xu()
    XU = GetTask(66)
    if (GetCash() >= 25000000)
    then 
    Pay(25000000)
    SetTask(66,XU+5)
    Msg2Player("Doi tien van thanh xu thanh cong");
    Msg2Player("Ban da doi 2500v thanh 5 Xu");
    Msg2Player("Ban nhan duoc +5 Xu");
    else
    Msg2Player("Ngan luong trong hanh trang khong du, xin thu lai!");
    end
    end;
    
    function ex10xu()
    XU = GetTask(66)
    if (GetCash() >= 50000000)
    then 
    Pay(50000000)
    SetTask(66,XU+10)
    Msg2Player("Doi tien van thanh xu thanh cong");
    Msg2Player("Ban da doi 5000v thanh 10 Xu");
    Msg2Player("Ban nhan duoc +10 Xu");
    else
    Msg2Player("Ngan luong trong hanh trang khong du, xin thu lai!");
    end
    end;
    Xem coi ứng dụng như vậy có lỗi phần nào không?
    Lần sửa cuối bởi kenshiwo, ngày 23-12-10 lúc 11:39 AM. Lý do: thiếu
    Khách viếng thăm hãy cùng kenshiwo xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  10. #7
    ±‡[̲̅ə̲̅٨̲̅٥̲̅٦� �� �̅]‡± Čħīċķėň's Avatar
    Ngày tham gia
    Jul 2009
    Đang ở
    TP HCM
    Bài viết
    1,349
    Thanks
    62
    Thanked 101 Times in 48 Posts

    Ðề: Dùng mảng để viết code LUA !

    Cách này e phát triển làm bang hội, chuyển sinh, liên đấu, lưu mảng dữ liệu( nhưng muốn đưa lên onl phải suy nghĩ một cách lưu khác ) rất hữu ích ^^

    Rồi nó cũng sẽ thành cách viết script chính của chúng ta ^^
    Chúc 4rum ngày càng phát triển

  11. #8
    Thành Viên thanh159's Avatar
    Ngày tham gia
    Dec 2008
    Bài viết
    217
    Thanks
    7
    Thanked 18 Times in 9 Posts

    Ðề: Dùng mảng để viết code LUA !

    Trích dẫn Gửi bởi khoamamktvn [Only registered and activated users can see links. ]
    Cách viết hay đó.
    Phát triển tốt nhé

    Tên miền cbgame.vn đã hết hạn sử dụng, đang bị tạm ngừng. Để biết thông tin chi tiết, mời nhập mã xác thực phía dưới.
    [SIGPIC][/SIGPIC]

  12. #9
    Super Moderator thaihoa91's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    12,110
    Thanks
    662
    Thanked 3,168 Times in 1,602 Posts

    Ðề: Dùng mảng để viết code LUA !

    Uh Cái nào hạn chế dc thì anh hạn chế Sau này còn cho test trước khi ra chính thức mà ! Để coi chạy ổn ko đã
    Khách viếng thăm hãy cùng thaihoa91 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  13. #10
    Thành Viên
    Ngày tham gia
    Feb 2009
    Đang ở
    USA
    Bài viết
    144
    Thanks
    7
    Thanked 16 Times in 7 Posts

    Icon9 Ðề: Dùng mảng để viết code LUA !

    Mới đem ra xài xong, nó lỗi nhiều hơn xài SayEx({"",n,"","",}); Tình hình là xài cái này rắc rối lắm, khi Include sang Script khác
    Cái mảng này làm script nhiều ra thêm chứ O.o chẳng có hay gì bằng Script trên
    Script mảng:
    MODAU = {
    {"Noi 1"},
    {"Chon 1"},
    {"Thoat"}
    }

    function main()
    SAY(MODAU[1][1],2,MODAU[2]1,MODAU[3]1)
    end;
    Script Thường
    function main()
    SayEx({
    "Noi 1",2,
    "Chon 1",
    "Thoat"
    });
    end;
    Mình đã đưa vào dùng thử, xài nhiều quá Bug lỗi thì phải, vì nó chạy không hay bằng SayEX
    Khách viếng thăm hãy cùng kenshiwo xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 
Trang 1 của 2 1 2 CuốiCuối

Các Chủ đề tương tự

  1. help me thêm code cho web
    Bởi darkmagician trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 5
    Bài viết cuối: 29-05-11, 12:17 PM
  2. Code sách
    Bởi carotkhoaitay trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 6
    Bài viết cuối: 24-10-10, 08:28 PM
  3. Xin code đồ Mu
    Bởi kubill trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 11
    Bài viết cuối: 21-10-10, 11:58 PM
  4. code làm Huy hiệu Hoàng Tộc rơi ít ở đâu
    Bởi mrgacon trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 1
    Bài viết cuối: 06-09-10, 06:24 PM
  5. Cho mình hỏi Code 2 con quái vật này với
    Bởi quan1402 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 3
    Bài viết cuối: 22-07-10, 01:46 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 10:54 PM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.