No, it already is! Trust me 
IsBadReadPtr is there because if the hack gets loaded before any other DLLS, it will crash when it tries to read the LTwhatever address. The things in the while() part are evaluated from left to right - if the first is true and it is an OR expression, evaluation of the second will be skipped. This ensures all addresses are in order.
[php]
class cLTClient{
public:
DWORD unknown1[0x28];
void ( WINAPIV * GetObjectRotation)(HOBJECT obj, D3DXVECTOR3 *Rotation);
void ( WINAPIV * GetObjectPosition)(HOBJECT obj, D3DXVECTOR3 *Pos);
DWORD unknown2[0x58];
void ( WINAPIV * RunConsoleCommand )( const char *szCommand );
DWORD unknown3[0x05];
LTRESULT ( WINAPIV * GetObjectScale)(HOBJECT hObj, float* pScale);
DWORD unknown4[0x01];
virtual LTRESULT SetObjectScale(HOBJECT hObj, float fScale) = 0;
virtual LTRESULT GetObjectColor(HLOCALOBJ hObject, float *r, float *g, float *b, float *a) = 0;
virtual LTRESULT SetObjectColor(HLOCALOBJ hObject, float r, float g, float b, float a) = 0;
}; [/php]
I didn't edit the notation, sorry.
[php]
struct LTVector{//define a 3D coordinate (x,y,z)
float x;
float y;
float z;
};
struct LTObject{//define the Postion by CA (Offsets C8,CC,D0)
char offset[0x9C];
LTVector Scale;
char offset[0x20];
LTVector Pos; // Starts at 0xC8
LTVector Rot; // Starts at 0xD4
};
typedef LTObject *HOBJECT;//define our new type "HOBJECT" [/php]

IsBadReadPtr is there because if the hack gets loaded before any other DLLS, it will crash when it tries to read the LTwhatever address. The things in the while() part are evaluated from left to right - if the first is true and it is an OR expression, evaluation of the second will be skipped. This ensures all addresses are in order.
[php]
class cLTClient{
public:
DWORD unknown1[0x28];
void ( WINAPIV * GetObjectRotation)(HOBJECT obj, D3DXVECTOR3 *Rotation);
void ( WINAPIV * GetObjectPosition)(HOBJECT obj, D3DXVECTOR3 *Pos);
DWORD unknown2[0x58];
void ( WINAPIV * RunConsoleCommand )( const char *szCommand );
DWORD unknown3[0x05];
LTRESULT ( WINAPIV * GetObjectScale)(HOBJECT hObj, float* pScale);
DWORD unknown4[0x01];
virtual LTRESULT SetObjectScale(HOBJECT hObj, float fScale) = 0;
virtual LTRESULT GetObjectColor(HLOCALOBJ hObject, float *r, float *g, float *b, float *a) = 0;
virtual LTRESULT SetObjectColor(HLOCALOBJ hObject, float r, float g, float b, float a) = 0;
}; [/php]
I didn't edit the notation, sorry.
[php]
struct LTVector{//define a 3D coordinate (x,y,z)
float x;
float y;
float z;
};
struct LTObject{//define the Postion by CA (Offsets C8,CC,D0)
char offset[0x9C];
LTVector Scale;
char offset[0x20];
LTVector Pos; // Starts at 0xC8
LTVector Rot; // Starts at 0xD4
};
typedef LTObject *HOBJECT;//define our new type "HOBJECT" [/php]



