[GUIDE] [SCF 12.0.0.1][Cửa hàng cá nhân] Từ chối bán item khi full zen

Mặc định khi item được bán ra, số zen của người bán = zen hiện tại + giá món đồ, nếu vượt qua MAX ( 2000000000 ) thì zen = MAX. Ai không thích cách...
Mặc định khi item được bán ra, số zen của người bán = zen hiện tại + giá món đồ, nếu vượt qua MAX ( 2000000000 ) thì zen = MAX. Ai không thích cách này thì có thể làm theo cách sau đây để item không được bán khi zen vượt MAX:

Chú ý: Code nháp tay , bất cứ lỗi phát sinh vui lòng góp ý để mọi người cùng biết.

Source Server:
Mở file protocol.cpp => function CGPShopReqBuyItem:

đoạn mã gốc:

Code:

gObj[aSourceIndex].Money -= dwCost; __int64 tmpZen = ( __int64 ) lpObj->Money + ( __int64 ) dwCost;


if ( tmpZen + dwCost > MAX_ZEN ) {
lpObj->Money = MAX_ZEN;
}
sửa thành:

Code:

gObj[aSourceIndex].Money -= dwCost; __int64 tmpZen = ( __int64 ) lpObj->Money + ( __int64 ) dwCost;


if ( tmpZen + dwCost > MAX_ZEN ) {
//lpObj->Money = MAX_ZEN;

// --- deny req
GCServerMsgStringSend("Khong the mua mon do nay!", aSourceIndex, 0x01); // => To buyer
GCServerMsgStringSend("Vuot qua so zen quy dinh!", lpObj->m_Index, 0x01); // => To seller
ChatSend(lpObj, "Khong ban dau!"); // => Make Seller chat
::CGPShopAnsBuyItem(aSourceIndex, lpObj->m_Index, 0, 7);
return;
}



Diễn đàn thảo luận CLBDEVGAME.COM - http://CLBDEVGAME.com
 
Bên trên