[JX] Code sử dụng questkey
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 5 của 5
  1. #1
    Thành Viên
    Ngày tham gia
    Sep 2011
    Bài viết
    36
    Thanks
    9
    Thanked 3 Times in 2 Posts

    Code sử dụng questkey

    Có thể dựa vào code EatItem để viết không? Và các file cần viết là những file nào? Có bạn nào biết xin gợi ý...
    Khách viếng thăm hãy cùng doanhungit xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. #2
    Thành Viên
    Ngày tham gia
    Sep 2008
    Bài viết
    72
    Thanks
    21
    Thanked 25 Times in 8 Posts

    Ðề: Code sử dụng questkey

    Trích dẫn Gửi bởi doanhungit [Only registered and activated users can see links. ]
    Có thể dựa vào code EatItem để viết không? Và các file cần viết là những file nào? Có bạn nào biết xin gợi ý...
    Hầu hết mọi file lua liên quan đến item đều sd questkey mà bạn?
    Khách viếng thăm hãy cùng shocklads xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  3. #3
    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

    Ðề: Code sử dụng questkey

    Trích dẫn Gửi bởi shocklads [Only registered and activated users can see links. ]
    Hầu hết mọi file lua liên quan đến item đều sd questkey mà bạn?
    Bạn hiểu nhầm ý của bạn kia rồi. ý bạn ấy là làm trong source ấy
    Khách viếng thăm hãy cùng assaa xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #4
    Thành Viên lzlsky301's Avatar
    Ngày tham gia
    Nov 2011
    Đang ở
    The Moon
    Bài viết
    366
    Thanks
    85
    Thanked 230 Times in 76 Posts

    Ðề: Code sử dụng questkey

    Trích dẫn Gửi bởi doanhungit [Only registered and activated users can see links. ]
    Có thể dựa vào code EatItem để viết không? Và các file cần viết là những file nào? Có bạn nào biết xin gợi ý...
    Dựa theo viết hàm riêng hay làm tích hợp trong hàm đó cũng được EatMecidine nữa
    Khách viếng thăm hãy cùng lzlsky301 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #5
    Thành Viên
    Ngày tham gia
    Jan 2010
    Bài viết
    180
    Thanks
    84
    Thanked 177 Times in 49 Posts

    Ðề: Code sử dụng questkey

    Trích dẫn Gửi bởi doanhungit [Only registered and activated users can see links. ]
    Có thể dựa vào code EatItem để viết không? Và các file cần viết là những file nào? Có bạn nào biết xin gợi ý...
    Item_task hình như là quest Item thì phải hì


    Client (CoreClient)
    b1 : Gọi đến gói sử dụng Item [CoreShell::OperationRequest(GOI_USE_ITEM)]
    b2 : Gọi tới hàm sủ dụng Item của lớp KPlayer [Player::ApplyUseItem]
    b3 : Tại hàm ApplyUseItem gửi 1 gói tin đến server để xử lý (KProtocolProcess::..........)
    Server(CoreServer)
    b4 : Gói tin này đc thực thi và gọi tới 1 hàm trên CoreServer tại lớp KPlayer
    Ví dụ :
    #ifdef _SERVER
    void KPlayer::EatItem(BYTE* pProtocol)
    {
    PLAYER_EAT_ITEM_COMMAND *pEat = (PLAYER_EAT_ITEM_COMMAND*)pProtocol;

    m_ItemList.EatMecidine(pEat->m_btPlace, pEat->m_btX, pEat->m_btY);
    }
    #endif
    + Tại hàm này gọi tới hàm xủ lý của lớp KItemList
    b5 : Trong KItemList tại hàm đc gọi đến sẽ thực thi hàm sử dụng Item đó
    Ví dụ :
    #ifdef _SERVER
    BOOL KItemList::EatMecidine(int nPlace, int nX, int nY)
    {
    int nItemIdx = 0;
    switch(nPlace)
    {
    case pos_equiproom:
    nItemIdx = m_Room[room_equipment].FindItem(nX, nY);
    if (nItemIdx > 0)
    return EatMecidine(nItemIdx);
    break;
    case pos_immediacy:
    nItemIdx = m_Room[room_immediacy].FindItem(nX, nY);
    if (nItemIdx > 0)
    {
    if (Item[nItemIdx].GetGenre() != item_medicine)
    return EatMecidine(nItemIdx);
    int nGenre, nDetailType, nIdx, nXpos, nYpos;
    BOOL bEat;

    nGenre = item_medicine;
    nDetailType = Item[nItemIdx].GetDetailType();

    bEat = EatMecidine(nItemIdx);
    if (bEat == FALSE)
    return bEat;

    if (FALSE == FindSameDetailTypeInEquipment(nGenre, nDetailType, &nIdx, &nXpos, &nYpos))
    return bEat;

    this->AutoMoveMedicine(nIdx, nXpos, nYpos, nX, nY);

    return bEat;
    }
    break;
    default:
    break;
    }

    return FALSE;
    }
    #endif
    b6 : Thực thi 1 hàm có trong cả CoreServer và cả CoreClient
    Ví dụ :
    BOOL KItemList::EatMecidine(int nIdx)
    {
    if (m_PlayerIdx <= 0)
    return FALSE;

    int nNpcIdx = Player[m_PlayerIdx].m_nIndex;
    int nGenre = Item[nIdx].GetGenre();

    _ASSERT(nGenre == item_medicine || nGenre == item_townportal);
    if (nGenre == item_medicine)
    Item[nIdx].ApplyMagicAttribToNPC(&Npc[nNpcIdx], 3);
    if (nGenre == item_townportal)
    {
    if (!Npc[Player[m_PlayerIdx].m_nIndex].m_FightMode)
    {
    #ifndef _SERVER
    KSystemMessage Msg;

    Msg.byConfirmType = SMCT_CLICK;
    Msg.byParamSize = 0;
    Msg.byPriority = 1;
    Msg.eType = SMT_PLAYER;
    strcpy(Msg.szMessage, "ÎÞ·¨ÔÚÕâÀïʹÓÃÍÁµØ·û£¡" );
    CoreDataChanged(GDCNI_SYSTEM_MESSAGE, (unsigned int)&Msg, NULL);
    #endif
    return FALSE;
    }
    #ifdef _SERVER
    Player[m_PlayerIdx].UseTownPortal();
    #endif
    }
    #ifdef _SERVER
    Remove(nIdx);
    ItemSet.Remove(nIdx);
    #endif
    if (Npc[Player[m_PlayerIdx].m_nIndex].m_Doing == do_sit)
    {
    Npc[Player[m_PlayerIdx].m_nIndex].SendCommand(do_stand);
    }
    return TRUE;
    }
    Khách viếng thăm hãy cùng trananh88vt xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

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

    assaa (19-09-12), lzlsky301 (18-09-12)

 

 

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

  1. [JX] Bác nào Giúp lỗi này với lỗi ở questkey
    Bởi SIR.ThaiBinh trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 4
    Bài viết cuối: 28-08-12, 04:12 PM
  2. [JX] Ko thể add vật phẩm questkey ?
    Bởi phamngochai2 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 3
    Bài viết cuối: 20-05-12, 04:53 PM
  3. Cho hỏi về questkey
    Bởi jxonline94 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 1
    Bài viết cuối: 01-08-11, 07:49 AM
  4. Xin Mấy Cái Questkey.txt
    Bởi ThanhVipLn trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 2
    Bài viết cuối: 05-09-10, 09:43 AM
  5. Cho Em Hỏi Về Cách Làm QUESTKEY
    Bởi hoivegame trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 0
    Bài viết cuối: 28-08-10, 01:26 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:25 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ệ.