Nigga |
Wysłany: Wto 14:31, 25 Mar 2008 Temat postu: [FIX] Berserk Wand |
|
Buscar en:
code]CGame::Effect_Damage_Spot[/code]
esto:
Y reemplazenlo por:
Código:
Kod: |
case DEF_OWNERTYPE_PLAYER:
if ((m_bAdminSecurity == TRUE) && (m_pClientList[sAttackerH]->m_iAdminUserLevel > 0)) return;
if (m_pClientList[sAttackerH]->m_cHeroArmourBonus == 2) iDamage += 4;
if ((m_pClientList[sAttackerH]->m_sItemEquipmentStatus[DEF_EQUIPPOS_LHAND] == -1) || (m_pClientList[sAttackerH]->m_sItemEquipmentStatus[DEF_EQUIPPOS_TWOHAND] == -1)) {
sItemIndex = m_pClientList[sAttackerH]->m_sItemEquipmentStatus[DEF_EQUIPPOS_RHAND];
if ((sItemIndex != -1) && (m_pClientList[sAttackerH]->m_pItemList[sItemIndex] != NULL)) {
if (m_pClientList[sAttackerH]->m_pItemList[sItemIndex]->m_sIDnum == 861 || m_pClientList[sAttackerH]->m_pItemList[sItemIndex]->m_sIDnum == 862) {
iDamage *= (int)1.5; //Aca podran establecer cual es la puntuacion de damage adherida
}
if (m_pClientList[sAttackerH]->m_pItemList[sItemIndex]->m_sIDnum == 863 || m_pClientList[sAttackerH]->m_pItemList[sItemIndex]->m_sIDnum == 864) {
if (m_pClientList[sAttackerH]->m_iRating > 0) {
iRepDamage = m_pClientList[sAttackerH]->m_iRating/100;
if (iRepDamage < 5) iRepDamage = 5;
iDamage += iRepDamage;
}
if (cTargetType == DEF_OWNERTYPE_PLAYER) {
if (m_pClientList[sTargetH] != NULL) {
if (m_pClientList[sTargetH]->m_iRating < 0) {
iRepDamage = (abs(m_pClientList[sTargetH]->m_iRating)/10);
if (iRepDamage > 10) iRepDamage = 10;
iDamage += iRepDamage;
}
}
}
}
}
sItemIndex = m_pClientList[sAttackerH]->m_sItemEquipmentStatus[DEF_EQUIPPOS_NECK];
if ((sItemIndex != -1) && (m_pClientList[sAttackerH]->m_pItemList[sItemIndex] != NULL)) {
if (m_pClientList[sAttackerH]->m_pItemList[sItemIndex]->m_sIDnum == 859) { // NecklaceOfKloness
if (cTargetType == DEF_OWNERTYPE_PLAYER) {
if (m_pClientList[sTargetH] != NULL) {
iRepDamage = (abs(m_pClientList[sTargetH]->m_iRating)/20);
if (iRepDamage > 5) iRepDamage = 5;
iDamage += iRepDamage;
}
}
}
}
}
if ((m_bIsCrusadeMode == FALSE) && (m_pClientList[sAttackerH]->m_bIsPlayerCivil == TRUE) && (cTargetType == DEF_OWNERTYPE_PLAYER)) return;
dTmp1 = (double)iDamage;
if ((m_pClientList[sAttackerH]->m_iMag + m_pClientList[sAttackerH]->m_iAngelicMag) <= 0)
dTmp2 = 1.0f;
else dTmp2 = (double)(m_pClientList[sAttackerH]->m_iMag + m_pClientList[sAttackerH]->m_iAngelicMag);
dTmp2 = dTmp2 / 3.3f;
dTmp3 = dTmp1 + (dTmp1 * (dTmp2 / 100.0f));
iDamage = (int)(dTmp3 +0.5f);
iDamage += m_pClientList[sAttackerH]->m_iAddMagicalDamage;
if (iDamage <= 0) iDamage = 0;
if (m_pMapList[m_pClientList[sAttackerH]->m_cMapIndex]->m_bIsFightZone == TRUE)
iDamage += iDamage/3;
if (bCheckHeldenianMap(sAttackerH, m_iBTFieldMapIndex, DEF_OWNERTYPE_PLAYER) == 1) {
iDamage += iDamage/3;
}
if ((cTargetType == DEF_OWNERTYPE_PLAYER) && (m_bIsCrusadeMode == TRUE) && (m_pClientList[sAttackerH]->m_iCrusadeDuty == 1)) {
if (m_pClientList[sAttackerH]->m_iLevel <= 80) {
iDamage += (iDamage*7)/10 ;
} else if (m_pClientList[sAttackerH]->m_iLevel <= 100) {
iDamage += iDamage/2;
} else
iDamage += iDamage/3;
}
cAttackerSide = m_pClientList[sAttackerH]->m_cSide;
sAtkX = m_pClientList[sAttackerH]->m_sX;
sAtkY = m_pClientList[sAttackerH]->m_sY;
iPartyID = m_pClientList[sAttackerH]->m_iPartyID;
break;
case DEF_OWNERTYPE_NPC:
cAttackerSide = m_pNpcList[sAttackerH]->m_cSide;
sAtkX = m_pNpcList[sAttackerH]->m_sX;
sAtkY = m_pNpcList[sAttackerH]->m_sY;
break;
}
|
|
|