[JX] Hỏi về hàm Say (New Version)
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
 
Trang 1 của 2 1 2 CuốiCuối
Kết quả 1 đến 10 của 18
  1. #1
    Thành Viên
    Ngày tham gia
    Jul 2007
    Bài viết
    137
    Thanks
    47
    Thanked 61 Times in 20 Posts

    Hỏi về hàm Say (New Version)

    Mình có đọc code source hàm Say có SPR hiện luôn - làm theo hướng dẫn - build source ok hết.
    Trong script sourcejx49.lua thì có đoạn code định nghĩa hàm SayEx theo bên dưới

    PHP Code:
    function SayEx(strSay)
    local strMsg,strSel "","";
    local strNum getn(strSay);
        if 
    strNum 2 then
            
    return
        
    end;
        if 
    strNum 2 then
            
    for i=2,strNum do
                
    strSel strSel..format("%q"strSay[i])..",";
            
    end;
            
    strSel strSel..format("%q"strSay[strNum]);
            
    strMsg "Say("..format("%q"strSay[1])..","..(strNum 1)..","..strSel..");";
        elseif 
    strNum == 2 then
            strSel 
    format("%q"strSay[strNum]);
            
    strMsg "Say("..format("%q"strSay[1])..",1"..","..strSel..");";
        
    end;
        
    dostring(strMsg);
    end
    Nếu dùng SayEx cho NPC thì sẽ hiển thị không có SPR
    [Only registered and activated users can see links. ]

    Nếu mình muốn code thêm có thêm SPR hiển thị luôn thì phải phải định nghĩa hàm mới (ví dụ như Say2, SayNew...) như thế nào vậy mấy bạn? Giống như hình sau

    [Only registered and activated users can see links. ]
    Khách viếng thăm hãy cùng traminh83 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. #2
    Thành Viên Tâm Huyết wermanhme1990's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    1,594
    Thanks
    78
    Thanked 667 Times in 483 Posts

    Ðề: Hỏi về hàm Say (New Version)

    của bạn đây:
    [Only registered and activated users can see links. ]
    Khách viếng thăm hãy cùng wermanhme1990 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

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

    traminh83 (06-05-17)

  4. #3
    Thành Viên
    Ngày tham gia
    Jul 2007
    Bài viết
    137
    Thanks
    47
    Thanked 61 Times in 20 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Trích dẫn Gửi bởi wermanhme1990 [Only registered and activated users can see links. ]
    của bạn đây:
    [Only registered and activated users can see links. ]
    Mình đã dựa vào hướng dẫn link mà bạn đưa để code hàm Say mới.
    Ý mình muốn hỏi là bình thường trong source, file Scriptfuns.cpp có
    PHP Code:
    {"Say"LuaSelectUI}, 
        {
    "Say2"LuaSaySPR}, 
    Mình đọc và làm theo hướng dẫn

    [Only registered and activated users can see links. ]

    Theo mình hiểu gọi trong script hàm Say thì theo nguyên tắc chỉ xuất hiện các bảng UI đơn giản (không có hình hay spr hiển thị thêm)
    Và nếu gọi Say2 trong script .lua thì sẽ xuất hiện UI thêm spr .
    Các file .ini liên quan thì cũng đã chỉnh theo hướng dẫn nhưng hình ở mình vẫn không hiện spr.
    Khách viếng thăm hãy cùng traminh83 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #4
    Thành Viên Tâm Huyết wermanhme1990's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    1,594
    Thanks
    78
    Thanked 667 Times in 483 Posts

    Ðề: Hỏi về hàm Say (New Version)

    giờ phân tích thế này nhé: bạn đã làm được button và gọi được ui, tức là bạn đã dùng hàm load spr.
    trong cái ui đó nó load string, bạn thử chèn thêm spr xem, chèn cố định vào đã, sau khi ok, tìm cách load từ file .ini.
    Lần sửa cuối bởi wermanhme1990, ngày 06-05-17 lúc 06:42 PM.
    Khách viếng thăm hãy cùng wermanhme1990 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 wermanhme1990 vì bài viết này !

    traminh83 (06-05-17)

  7. #5
    Thành Viên
    Ngày tham gia
    Jul 2007
    Bài viết
    137
    Thanks
    47
    Thanked 61 Times in 20 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Trích dẫn Gửi bởi wermanhme1990 [Only registered and activated users can see links. ]
    giờ phân tích thế này nhé: bạn đã làm được button và gọi được ui, tức là bạn đã dùng hàm load spr.
    trong cái ui đó nó load string, bạn thử chèn thêm spr xem, chèn cố định vào đã, sau khi ok, tìm cách load từ file .ini.
    Thanks! Giờ mình load được cái spr - nhưng là loại spr tĩnh thôi - mình đổi spr có nhiều frame thì nó không hiện.

    [Only registered and activated users can see links. ]

    Cái load spr từ source thì mình biết. Chỉ cần addchild rồi chỉ định biến cho file .ini là load được. Nhưng cái dạng load spr có nhiều frame và đúng với NPC thì chưa hiểu. Hi vọng sẽ tìm ra. Trên bài hướng dẫn trong cái link bạn đưa - chủ topic chỉ nói hướng dẫn các file .ini chưa rõ lắm, chỉ nói copy từ 1 Ui có sẵn.
    Lần sửa cuối bởi traminh83, ngày 06-05-17 lúc 07:35 PM.
    Khách viếng thăm hãy cùng traminh83 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #6
    Thành Viên Tâm Huyết wermanhme1990's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    1,594
    Thanks
    78
    Thanked 667 Times in 483 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Bạn tham khảo code của [Only registered and activated users can see links. ] rồi áp vào code của bạn, không thì suy nghĩ cách khác, 1 vấn đề có nhiều cách giải quyết mà.
    [Only registered and activated users can see links. ]
    Lần sửa cuối bởi wermanhme1990, ngày 06-05-17 lúc 07:42 PM.
    Khách viếng thăm hãy cùng wermanhme1990 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  9. #7
    Thành Viên Tâm Huyết assaa's Avatar
    Ngày tham gia
    Jul 2009
    Bài viết
    915
    Thanks
    271
    Thanked 416 Times in 236 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Code:
    void KUiMsgSel2::Breathe() 
    {    if (m_NpcSpr.IsVisible()) 
            m_NpcSpr.NextFrame();        //thêm 
    ....
    thiếu đoạn này nên mới thấy tĩnh thôi với lại code này cơ bản tham khảo là chính, khi hiểu r có thể code theo cách riêng
    Khách viếng thăm hãy cùng assaa xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  10. #8
    Thành Viên
    Ngày tham gia
    Jul 2007
    Bài viết
    137
    Thanks
    47
    Thanked 61 Times in 20 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Trích dẫn Gửi bởi wermanhme1990 [Only registered and activated users can see links. ]
    Bạn tham khảo code của [Only registered and activated users can see links. ] rồi áp vào code của bạn, không thì suy nghĩ cách khác, 1 vấn đề có nhiều cách giải quyết mà.
    [Only registered and activated users can see links. ]
    Link tạo spr động bạn đưa mình tham khảo thời gian trước rồi, tạo spr động thì OK, nhiều frame đều hiển thị được (mình đã thử đổi spr cho skill thì chạy OK).
    Hồi nãy search trong source, thấy có một UiMsgNew, trong đó viết code gần giống với cách thienthanden2 hướng dẫn nhưng hình như là tạo ra một cái code mới hoàn toàn không dựa hoàn toàn vào các Ui có sẵn. Xem qua thì thấy có thêm một khai báo "\\settings\\ImageNpcList.ini"

    PHP Code:
    [ImagePosition]
    EnemyPosition=-85,-85
    AnimalPosition
    =-85,-95
    PasserbyPosition
    =60,40
    CritterPosition
    =-85,-90
    BossPosition
    =-85,-90

    [ImageFrame]
    EnemyFrame=15
    AnimalFrame
    =15
    PasserbyFrame
    =15
    CritterFrame
    =14
    BossFrame
    =8

    [ImageEnemy]
    1_Enemy=\spr\npcres\enemy\enemy001\enemy001_wlk.spr
    1_Frame
    =15
    81_Enemy
    =\spr\npcres\enemy\enemy081\enemy081_wlk.spr
    81_Frame
    =14
    199_Enemy
    =\spr\npcres\enemy\enemy199\enemy199_wlk.spr
    199_Frame
    =15

    [ImageAnimal]
    1_Animal=\spr\npcres\animal\ani001\ani001_wlk.spr
    1_Frame
    =15
    2_Animal
    =\spr\npcres\animal\ani002\ani002_wlk.spr
    2_Frame
    =15
    3_Animal
    =\spr\npcres\animal\ani001\ani003_wlk.spr
    2_Frame
    =15

    [ImagePasserby]
    181_Passerby=\spr\npcres\passerby\passerby181\passerby181_st.spr
    181_Frame
    =15
    182_Passerby
    =\spr\npcres\passerby\passerby182\passerby182_st.spr
    182_Frame
    =15
    183_Passerby
    =\spr\npcres\passerby\passerby183\passerby183_st.spr
    183_Frame
    =15

    [ImageCritter]
    8_Critter=\spr\npcres\critter\critter008\critter008_st.spr
    8_Frame
    =14
    9_Critter
    =\spr\npcres\critter\critter009\critter009_st.spr
    9_Frame
    =14
    10_Critter
    =\spr\npcres\critter\critter010\critter010_st.spr
    10_Frame
    =14

    [ImageBoss]
    1_Boss=\spr\npcres\boss\boss001\boss001_wlk.spr
    1_Frame
    =8
    2_Boss
    =\spr\npcres\boss\boss002\boss002_wlk.spr
    2_Frame
    =8
    3_Boss
    =\spr\npcres\boss\boss003\boss003_wlk.spr
    3_Frame
    =
    Nội dung file chỉ có nhiêu đó, nhưng trong source thì chỉ khai báo

    PHP Code:
    #define NPC      \\settings\\ImageNpcList.ini" 
    rồi thôi. Không có dòng code nào liên quan hoặc có thể mình chưa kiếm được dòng code liên quan đến cái define.
    Thanks wermanhme1990 !
    Lần sửa cuối bởi traminh83, ngày 06-05-17 lúc 08:09 PM.
    Khách viếng thăm hãy cùng traminh83 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  11. #9
    Thành Viên Tâm Huyết wermanhme1990's Avatar
    Ngày tham gia
    Apr 2008
    Bài viết
    1,594
    Thanks
    78
    Thanked 667 Times in 483 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Thường code người khác share chủ yếu để tham khảo, chứ làm theo nhiều khi không hiểu hết được và mất thời gian hơn là tự viết.
    Link tạo spr động bạn đưa mình tham khảo thời gian trước rồi, tạo spr động thì OK, nhiều frame đều hiển thị được (mình đã thử đổi spr cho skill thì chạy OK).
    bạn thử lấy cái cho skill đó đưa vào cái ui của bạn thử, thực tế chuyển động của npc say nó giống với chuyển động của npc quái, thay vì chuyển động theo toạ độ thì ở đây chuyển động cố định.
    Khách viếng thăm hãy cùng wermanhme1990 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  12. #10
    Thành Viên
    Ngày tham gia
    Jul 2007
    Bài viết
    137
    Thanks
    47
    Thanked 61 Times in 20 Posts

    Ðề: Hỏi về hàm Say (New Version)

    Trích dẫn Gửi bởi assaa [Only registered and activated users can see links. ]
    Code:
    void KUiMsgSel2::Breathe() 
    {    if (m_NpcSpr.IsVisible()) 
            m_NpcSpr.NextFrame();        //thêm 
    ....
    thiếu đoạn này nên mới thấy tĩnh thôi với lại code này cơ bản tham khảo là chính, khi hiểu r có thể code theo cách riêng
    Thanks! Mình có đọc qua rồi, cũng có chỉnh sửa theo đó. Spr tĩnh thì ok, đang tìm hiểu với cách load đúng spr của npc có hiển thị hàm Say mới.
    Khách viếng thăm hãy cùng traminh83 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. [MU] Nhờ các bác giúp đỡ cái Version chút
    Bởi omasa trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 7
    Bài viết cuối: 05-08-16, 10:01 AM
  2. [MU] Hỏi về Version của bản 11.70.24
    Bởi ThanhN trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 3
    Bài viết cuối: 05-03-13, 06:45 PM
  3. Bản cập nhật số 13 (Hot version)
    Bởi Bé_Quậy trong diễn đàn Releases
    Trả lời: 12
    Bài viết cuối: 20-08-08, 03:56 PM
  4. Kal New Version ???
    Bởi Be Huy trong diễn đàn Các Server Không Nằm Trong Box
    Trả lời: 0
    Bài viết cuối: 20-10-07, 03:30 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:52 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ệ.