Callback Lim10Ata\Flatix\xfwidgets::gethtml is invalid (error_invalid_class).

Npc&Monster Attack Görüntü Bugu Fix

Lilith

Moderator
Katılım
4 Kas 2023
Mesajlar
57
Tepkime puanı
6
Puanları
8
Gameserver Girin Arkadaşlar.
AiSocket.cpp Girin
void CAISocket::RecvNpcAttack(Packet & pkt) Paketini Verdiğimle Değişin



Kod:
void CAISocket::RecvNpcAttack(Packet & pkt)
{
    CNpc * pAttacker;
    Unit * pTarget;
    uint16 sAttackerID, sTargetID;
    int16 sDamage;
    uint8 bResult = ATTACK_FAIL;


    pkt >> sAttackerID >> sTargetID;


    pAttacker = g_pMain->GetNpcPtr(sAttackerID);
    pTarget = g_pMain->GetUnitPtr(sTargetID);


    if (pAttacker == nullptr
        || pAttacker->isPlayer()
        || pTarget == nullptr
        || pAttacker->isDead()
        || pTarget->isDead())
        return;


    // TODO: Wrap this up into its own virtual method
    sDamage = pAttacker->GetDamage(pTarget);
    if (sDamage > 0)
    {
        pTarget->HpChange(-(sDamage), pAttacker);
        if (pTarget->isDead())
            bResult = ATTACK_TARGET_DEAD;
        else
            bResult = ATTACK_SUCCESS;


        // Every hit takes a little of the defender's armour durability.
        if (pTarget->isPlayer())
            TO_USER(pTarget)->ItemWoreOut(DEFENCE, sDamage);
    }


    Packet result(WIZ_ATTACK, uint8(LONG_ATTACK));
    result << bResult << sAttackerID << sTargetID;
    pAttacker->SendToRegion(&result);
}
 
Üst