Exemple:
Code:
same gem system like odin case IK_Piatra:* { if(pItem->m_bPiatra >= Piatra_MAX) { pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_NOPiatra, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { BYTE bRand = BYTE(rand() % 100 + 1); WORD wPiatra_Prob = pGradeItem->m_pTITEM->m_wUseValue; BYTE bRate = 1; if(wPiatra_Prob == 200) { bRate = 4; } if(wPiatra_Prob == 50) { bRate = 1; } if(wPiatra_Prob == 100) { bRate = 2; } if(pItem->m_bPiatra == 0) { if(bRand <= (33 * bRate)) { pItem->m_bPiatra = pItem->m_bPiatra + 1; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { pItem->m_bPiatra = 0; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_FAIL, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } } else if(pItem->m_bPiatra == 1) { if(bRand <= (20 * bRate)) { pItem->m_bPiatra = pItem->m_bPiatra + 1; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { pItem->m_bPiatra = 0; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_FAIL, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } } else if(pItem->m_bPiatra == 2) { if(bRand <= (14 * bRate)) { pItem->m_bPiatra = pItem->m_bPiatra + 1; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { pItem->m_bPiatra = 0; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_FAIL, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } } else if(pItem->m_bPiatra == 3) { if(bRand <= (8 * bRate)) { pItem->m_bPiatra = pItem->m_bPiatra + 1; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { pItem->m_bPiatra = 0; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_FAIL, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } } else if(pItem->m_bPiatra == 4) { if(bRand <= (4 * bRate)) { pItem->m_bPiatra = pItem->m_bPiatra + 1; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } else { pItem->m_bPiatra = 0; SetItemAttr(pItem, pItem->m_bLevel); pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_Piatra_FAIL, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0); } } } } break;
Code:
pPlayer->SendCS_ITEMUPGRADE_ACK(ITEMUPGRADE_SUCCESS, bTargetInven, bTargetItemID, pItem->m_bLevel, pItem->m_bPiatra, pItem->m_bGradeEffect, 0);
i hope you can help me .... ty.