Ares
Functions

Hooks.Ion.cpp File Reference

#include "Body.h"

Functions

 DEFINE_HOOK (53CC6E, IonBlastClass_Update, 6)
 DEFINE_HOOK (53CC0D, IonBlastClass_Update_DTOR, 5)
 DEFINE_HOOK (53CBF5, IonBlastClass_Update_Duration, 5)

Function Documentation

DEFINE_HOOK ( 53CC6E  ,
IonBlastClass_Update  ,
 
)
{
        GET(IonBlastClass *, IB, EBX);
        return (WarheadTypeExt::IonExt.find(IB) == WarheadTypeExt::IonExt.end())
                ? 0
                : 0x53CE0A
        ;
}
DEFINE_HOOK ( 53CBF5  ,
IonBlastClass_Update_Duration  ,
 
)
{
        GET(IonBlastClass *, IB, EBX);

        int Ripple_Radius;
        if(WarheadTypeExt::IonExt.find(IB) == WarheadTypeExt::IonExt.end()) {
                Ripple_Radius = 79;
        } else {
                WarheadTypeExt::ExtData *pData = WarheadTypeExt::IonExt[IB];
                Ripple_Radius = std::min(79, pData->Ripple_Radius + 1);
        }

        if(IB->Lifetime < Ripple_Radius) {
//              ++IB->Lifetime;
                return 0x53CC3A;
        } else {
                return 0x53CBFA;
        }
}
DEFINE_HOOK ( 53CC0D  ,
IonBlastClass_Update_DTOR  ,
 
)
{
        GET(IonBlastClass *, IB, EBX);
        hash_ionExt::iterator i = WarheadTypeExt::IonExt.find(IB);
        if(i != WarheadTypeExt::IonExt.end()) {
                WarheadTypeExt::IonExt.erase(i);
        }
        return 0;
}
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines