
(isnt it supos to take off there armor or somethign?)
Well , on Every server it just does dmg to them. Never seen their Armour break before , but that would make a Great addition to the Mage Tactic if someone Coded that. o_Omarleythe9 wrote: The armor break spell dont workdose nothing when i cast it on someone how would i fix this????
(isnt it supos to take off there armor or somethign?)
So on my config the type should be 28#define DEF_MAGICTYPE_DAMAGE_AREA_ARMOR_BREAK 28
And def of the effect is right heremagic = 66 Armor-Break 28 0 0 90 1 1 7 6 17 7 6 17 15 0 0 97 20000 1 1
Code: Select all
case DEF_MAGICTYPE_DAMAGE_AREA_ARMOR_BREAK:
for (iy = dY - m_pMagicConfigList[sType]->m_sValue3; iy <= dY + m_pMagicConfigList[sType]->m_sValue3; iy++)
for (ix = dX - m_pMagicConfigList[sType]->m_sValue2; ix <= dX + m_pMagicConfigList[sType]->m_sValue2; ix++) {
m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetOwner(&sOwnerH, &cOwnerType, ix, iy);
if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) {
Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr);
ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10);
}
m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetDeadOwner(&sOwnerH, &cOwnerType, ix, iy);
if ( (cOwnerType == DEF_OWNERTYPE_PLAYER) && (m_pClientList[sOwnerH] != NULL) &&
(m_pClientList[sOwnerH]->m_iHP > 0) ) {
if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) {
Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr);
ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10);
}
}
}
break;
I hope this helphed you to solve your problem.marleythe9 wrote: i seee.. coolthx
.. ill check my magic cfg all that
![]()
Post the code that strips all the armor at once plz loco.locobans wrote:I hope this helphed you to solve your problem.marleythe9 wrote: i seee.. coolthx
.. ill check my magic cfg all that
![]()
![]()
Code: Select all
// v2.16 2002-5-23 °Ã±¤Çö ¼öä
case DEF_MAGICTYPE_DAMAGE_AREA_ARMOR_BREAK:
// ÃÂÖº¯ °ø°àÈ¿°ú
for (iy = dY - m_pMagicConfigList[sType]->m_sValue3; iy <= dY + m_pMagicConfigList[sType]->m_sValue3; iy++)
for (ix = dX - m_pMagicConfigList[sType]->m_sValue2; ix <= dX + m_pMagicConfigList[sType]->m_sValue2; ix++) {
// Àڽŵµ ÇÇÆøµÉ ¼ö ÀÖÀ¸´àÃÂÖÀÇ.
m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetOwner(&sOwnerH, &cOwnerType, ix, iy);
if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) {
Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr);
// ¹æ¾î±¸ÀÇ ¼ö¸ÃÂÀ» ÃÂÙÀδÙ.
ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10);
}
m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetDeadOwner(&sOwnerH, &cOwnerType, ix, iy);
if ( (cOwnerType == DEF_OWNERTYPE_PLAYER) && (m_pClientList[sOwnerH] != NULL) &&
(m_pClientList[sOwnerH]->m_iHP > 0) ) {
// ÃÂ×Àº ôÇðàÀÖ´Â Ç÷¹À̾î´Ù.
if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) {
Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr);
// ¹æ¾î±¸ÀÇ ¼ö¸ÃÂÀ» ÃÂÙÀδÙ.
ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10);
}
}
}
break;
nice locolocobans wrote: Well...in your magic.cfg file should be the same as sources, at the moment on my HGserver i have
So on my config the type should be 28#define DEF_MAGICTYPE_DAMAGE_AREA_ARMOR_BREAK 28
And def of the effect is right heremagic = 66 Armor-Break 28 0 0 90 1 1 7 6 17 7 6 17 15 0 0 97 20000 1 1
As you can see it does some dmg and decrease the endurance of the armor.Code: Select all
case DEF_MAGICTYPE_DAMAGE_AREA_ARMOR_BREAK: for (iy = dY - m_pMagicConfigList[sType]->m_sValue3; iy <= dY + m_pMagicConfigList[sType]->m_sValue3; iy++) for (ix = dX - m_pMagicConfigList[sType]->m_sValue2; ix <= dX + m_pMagicConfigList[sType]->m_sValue2; ix++) { m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetOwner(&sOwnerH, &cOwnerType, ix, iy); if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) { Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr); ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10); } m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->GetDeadOwner(&sOwnerH, &cOwnerType, ix, iy); if ( (cOwnerType == DEF_OWNERTYPE_PLAYER) && (m_pClientList[sOwnerH] != NULL) && (m_pClientList[sOwnerH]->m_iHP > 0) ) { if (bCheckResistingMagicSuccess(m_pClientList[iClientH]->m_cDir, sOwnerH, cOwnerType, iResult) == FALSE) { Effect_Damage_Spot_DamageMove(iClientH, DEF_OWNERTYPE_PLAYER, sOwnerH, cOwnerType, dX, dY, m_pMagicConfigList[sType]->m_sValue7, m_pMagicConfigList[sType]->m_sValue8, m_pMagicConfigList[sType]->m_sValue9 + iWhetherBonus, FALSE, iMagicAttr); ArmorLifeDecrement(iClientH,sOwnerH, cOwnerType, m_pMagicConfigList[sType]->m_sValue10); } } } break;
Code: Select all
ReleaseItemHandler(sTargetH, iArmorType, TRUE);
SendNotifyMsg(NULL, sTargetH, DEF_NOTIFY_ITEMRELEASED, m_pClientList[sTargetH]->m_pItemList[iArmorType]->m_cEquipPos, iArmorType, NULL, NULL);
Last I checked Armor Break doesn't release armor unless it hits 0 dura.Slipknight wrote:Post the code that strips all the armor at once plz loco.locobans wrote:I hope this helphed you to solve your problem.marleythe9 wrote: i seee.. coolthx
.. ill check my magic cfg all that
![]()
![]()
It shoudnt release all armors at once...it works like this...bone-you wrote:Last I checked Armor Break doesn't release armor unless it hits 0 dura.Slipknight wrote:Post the code that strips all the armor at once plz loco.locobans wrote: I hope this helphed you to solve your problem.![]()
Code: Select all
void CGame::ArmorLifeDecrement
Code: Select all
ReleaseItemHandler(iTargetH, iTemp, TRUE);
Code: Select all
ReleaseItemHandler(sTargetH, iArmorType, TRUE);
SendNotifyMsg(NULL, sTargetH, DEF_NOTIFY_ITEMRELEASED, m_pClientList[sTargetH]->m_pItemList[iArmorType]->m_cEquipPos, iArmorType, NULL, NULL);