Em cần giúp đỡ về 1 hàm script
Hello & Welcome to our community. Is this your first visit? Đăng Ký
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Kết quả 1 đến 10 của 10
  1. #1
    Thành Viên
    Ngày tham gia
    Aug 2010
    Bài viết
    93
    Thanks
    15
    Thanked 0 Times in 0 Posts

    Em cần giúp đỡ về 1 hàm script

    Vấn đề của em là em cần 1 hàm khi nhấp vào NPC để làm gì đó ví dụ nhận 1 vật phẩm bất kỳ thì ngày mai mới có thể nhận tiếp (mỗi ngày chỉ nhận 1 lần) em đã tìm hiểu hàm SetTask và SetTaskTemp nhưng SetTask thì sẽ mãi mãi đến khi SetTask về 0 còn SetTaskTemp thì out ra sẽ = 0 em rất khó hiểu em mong pro nào có thể viết đc hàm em nói trên xin comment phía dưới .... P/s:Thanks các pro nhiều
    Khách viếng thăm hãy cùng Tôilàai xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. #2
    Thành Viên
    Ngày tham gia
    Aug 2010
    Bài viết
    93
    Thanks
    15
    Thanked 0 Times in 0 Posts

    Ðề: Em cần giúp đỡ về 1 hàm scirpt mà cả tuần nay khổng thể nào l

    Up................................................ .....
    Khách viếng thăm hãy cùng Tôilàai xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

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

    Ðề: Em cần giúp đỡ về 1 hàm scirpt mà cả tuần nay khổng thể nào l

    Bạn cần học về hàm SetTimer, hàm này tui ít dùng nên ko rõ mấy !

    Xem các hàm ở đây : [Only registered and activated users can see links. ]

    Vào đây tham khảo code viết sẵn : [Only registered and activated users can see links. ]
    Khách viếng thăm hãy cùng thaihoa91 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #4
    trí tưởng tượng quan trọn [M]r[K]id's Avatar
    Ngày tham gia
    Aug 2010
    Đang ở
    Đà Lạt City
    Bài viết
    934
    Thanks
    73
    Thanked 97 Times in 85 Posts

    Icon6 Ðề: Em cần giúp đỡ về 1 hàm script

    Trích dẫn Gửi bởi Tôilàai [Only registered and activated users can see links. ]
    Vấn đề của em là em cần 1 hàm khi nhấp vào NPC để làm gì đó ví dụ nhận 1 vật phẩm bất kỳ thì ngày mai mới có thể nhận tiếp (mỗi ngày chỉ nhận 1 lần) em đã tìm hiểu hàm SetTask và SetTaskTemp nhưng SetTask thì sẽ mãi mãi đến khi SetTask về 0 còn SetTaskTemp thì out ra sẽ = 0 em rất khó hiểu em mong pro nào có thể viết đc hàm em nói trên xin comment phía dưới .... P/s:Thanks các pro nhiều
    cách viết code cần rất nhiều vân đề
    đầu tiên và quang trọng nhất đó là tìm hướng giải quyết vấn đề. níu code bạn giỏi và thuộc hết các hàm mà ko có tư duy tốt cũng như không
    vấn đề của bạn nếu ra mình có hướng giải quyết thế này

    vì nhận vật phẩm nên nó là hàm AddEventItem().
    mà vật phẩm bất kì thì phải có hàm random().
    mà đã có hàm random() thì nhất định phải có hàm gán ở đây tớ lấy là a
    thì ta sẽ có code lấy a như thế này a = random(1,250)
    và nó hỉu là số a sẽ nhảy ngẫu nhiên tứ 1 đến 250 ta coi đây là ID item
    và nhận ngầu nhiên là code thế này AddEventItem(a).
    mà mỗi ngày 1 lần thì cần có SetTask()
    SetTask() thì mình lại phải có 1 số thể hiện Task Đó (số lưu trữ task)
    Ví dụ mình lấy Task 200 là task lưu trữ xem nó nhận chưa
    mà để khó quên tớ sẽ chú thích và gán cho nó 1 hàm nữa là b
    vậy b = 200
    và chúng ta đã có 2 hàm gãn là a và b
    và bạn đã tìm hiểu về SetTaskTemp() rùi thì SetTask() cũng tương tự
    mình giải thích dễ hỉu 1 xíu là thế này
    SetTask(200,0) là đặt cho task đó là 0. như là bố bạn đặt tên bạn là 0
    SetTask(200,1) là dặt cho task đó là 1. như bạn đổi tên lại là 1 như vậy bạn không còn là 0 nữa.
    cái 200 thực chất là ID task và 0 và 1 là cái để nó nhận biết để làm theo
    nói theo ví dụ thì 200 là tên và 0 và 1 là tên của bạn vậy
    Và đi vs SetTask thì có GetTask dùng để kiểm tra task đó
    GetTask(200) kiểm tra task 200, kiểm tra tên của bạn
    và hàm trên dc sử dụng để so sánh như sau
    GetTask(200) = 0 kiểm tra xem task 200 có bằng 0 hay không, kiểm tra tên bạn có phải là 0 không
    GetTask(200) = 1 tương tự trên
    như vậy thì ta đã biết được hàm SetTask() Và GetTask()bậy giờ đi vào code
    ta đặt task 200 là task lưu trữ xem nó nhận item hay chưa và thông số của Task đó mình cho là 0 và 1.
    Nếu là 0 là chưa nhận còn 1 là nhận rồi mai nhận tiếp. và bạn phải có chút kiến thức về hàm If nữa. tự tìm hỉu

    -- Sau khi nhấp vào Npc và nhận Item Nha
    Code:
    a = random(1,250)
    b = 200
    
    function main()
    sayex{("nguoi mun lam gi?",
    "nhan item 1 ngay 1 lan/item",
    "thoat/out")}
    end.
    
    function item()
     if GetTask(b) = 0 then 
    AddEventItem(a)
    SetTask(b) = 1
    end.
     else
    Say("Ban Nhan Cua Ngay Hum Nay Rui Nhaz")
     end
    end.
    
    function out()
    end.
    còn nhận 1 ngày 1 lần tí nói típ mệt quá
    Ta đã trở lại và ngu hơn xưa!

  5. #5
    trí tưởng tượng quan trọn [M]r[K]id's Avatar
    Ngày tham gia
    Aug 2010
    Đang ở
    Đà Lạt City
    Bài viết
    934
    Thanks
    73
    Thanked 97 Times in 85 Posts

    Ðề: Em cần giúp đỡ về 1 hàm script

    cái thời gian thfi bạn tham khảo bài này nhé:
    [Only registered and activated users can see links. ]
    Lần sửa cuối bởi [M]r[K]id, ngày 16-05-11 lúc 08:13 PM.
    Ta đã trở lại và ngu hơn xưa!

  6. #6
    Moderator
    Ngày tham gia
    May 2009
    Đang ở
    Nơi rất xa
    Bài viết
    2,479
    Thanks
    572
    Thanked 1,847 Times in 502 Posts

    Ðề: Em cần giúp đỡ về 1 hàm script

    góp ý Mr Kid 1 chút
    SetTask(b,1) chứ ko phải là SetTask(b) == 1
    Chủ topic nói là hôm nay nhận xong rồi => ko nhận đc nữa => ngày mai nhận đc lại
    Theo hàm của Kid thì ngày mai sẽ ko nhận đc nữa
    Khách viếng thăm hãy cùng jxvietnam xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

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

    Ðề: Em cần giúp đỡ về 1 hàm script

    Trích dẫn Gửi bởi jxvietnam [Only registered and activated users can see links. ]
    góp ý Mr Kid 1 chút
    SetTask(b,1) chứ ko phải là SetTask(b) == 1
    Chủ topic nói là hôm nay nhận xong rồi => ko nhận đc nữa => ngày mai nhận đc lại
    Theo hàm của Kid thì ngày mai sẽ ko nhận đc nữa
    Uhm ! Có lẽ chắc thiếu hàm SetTimer để check giờ ngày tháng năm nữa !
    Khách viếng thăm hãy cùng thaihoa91 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #8
    Amateur Editor kidcrazy187's Avatar
    Ngày tham gia
    May 2009
    Đang ở
    TP HCM
    Bài viết
    344
    Thanks
    76
    Thanked 317 Times in 73 Posts

    Ðề: Em cần giúp đỡ về 1 hàm script

    Dùng cái nì thử :

    Code:
    TaskNhanThuong = 70 -- Thí dụ 70 chẳng hạn
    function main() tgnt = 15 -- Thời gian nhận thưởng tính bằng phút 
    phut = tonumber(date("%M")) 
    tam = mod(phut,tgnt) 
    pcl = abs(tgnt - tam) 
    if tam == 0 then    
     if GetTask(TaskNhanThuong) == 0 then         
    nhanquatang() -- Tui lấy đại tên ví dụ     
    else Say("<color="..colorS()..">Nhan Thuong<color> : Ban da nhan thuong roi nen khong the nhan thuong duoc nua !",0,"") 
        end 
    else      Say("<color="..colorS()..">Nhan Thuong<color> : Sau <color=red>"..pcl.."<color> phut hay quay lai nhe !",0,"")     SetTask(TaskNhanThuong,0) 
    end 
    end
     
     function nhanquatang() 
    SetTask(TaskNhanThuong,1) -- Trước khi vào hàm thêm dòng này 
    -- Thực hiện hàm tặng quà 
    end
    


    Cái này có ưu và nhược là :
    Ưu :
    - Nhận rồi, không được nhận nữa, sau 1 khoảng thời gian định ra thì nhận tiếp
    Nhược :
    - Nhận rồi thì phải nhấp NPC đó thì khoảng 1 thời gian sau mới đc nhận, còn k nhấp vào thì lần sau k nhận đc.

    => Chỉ cần xài thêm script cái Task sau 1 khoảng thời gian.
    Lần sửa cuối bởi kidcrazy187, ngày 16-05-11 lúc 10:38 PM.

    [Only registered and activated users can see links. ]


  9. #9
    Thành Viên
    Ngày tham gia
    Aug 2010
    Bài viết
    93
    Thanks
    15
    Thanked 0 Times in 0 Posts

    Ðề: Em cần giúp đỡ về 1 hàm script

    Cám ơn các pro đã tận tình chỉ bảo
    Khách viếng thăm hãy cùng Tôilàai xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  10. #10
    Thành Viên Tâm Huyết KingMax's Avatar
    Ngày tham gia
    Dec 2010
    Bài viết
    642
    Thanks
    143
    Thanked 321 Times in 125 Posts

    Ðề: Em cần giúp đỡ về 1 hàm script

    Code:
    function main(sel)
    day = tonumber(date("%d"))
    if GetTask(130) ~= day then
    AddEventItem("Tu Thuy Tinh")
    SetTask(130,day) 
    else
    Msg2Player("Ngay nay mi nhan roi")
    end
    end
    
    Code đơn giản mún OK thì thêm nữa , mình làm cho bạn biết chút ít thôi ;))  . Cũng giống thế thôi :)) , tự suy nghi là ra ;;)
    lua không khó nhưng Logic   + tìm là được
    Comeback JXP

 

 

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

  1. Một số script trong thư mục script Vina (unpack)
    Bởi sangpronhat trong diễn đàn Scripts
    Trả lời: 19
    Bài viết cuối: 26-11-11, 08:12 AM
  2. Lưu 1 mảng khi viết script (Lưu dữ liệu)
    Bởi sangpronhat trong diễn đàn Scripts
    Trả lời: 6
    Bài viết cuối: 19-11-09, 12:05 PM
  3. Script kết hôn dùng cấu trúc lưu dữ liệu
    Bởi sangpronhat trong diễn đàn Scripts
    Trả lời: 1
    Bài viết cuối: 28-10-09, 09:56 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à 05:08 AM.
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ệ.