Yimura/GTAV-Classes

"class" specifier

davidebeatrici opened this issue · 4 comments

Right now its usage is inconsistent:

rage::fvector3 m_right; //0x0020
char pad_002C[4]; //0x002C
rage::fvector3 m_forward; //0x0030
char pad_003C[4]; //0x003C
rage::fvector3 m_up; //0x0040
char pad_004C[4]; //0x004C
rage::fvector3 m_position; //0x0050

class CBaseModelInfo *m_model_info; //0x0020
char pad_0028[1]; //0x0028
int8_t m_entity_type; //0x0029
char pad_002A[2]; //0x002A
uint8_t m_invisible; //0x002C
char pad_002D[3]; //0x002D
class CNavigation *m_navigation; //0x0030
char pad_0038[16]; //0x0038
class rage::fwDrawData *m_draw_data; //0x0048
char pad_0050[16]; //0x0050
class rage::fvector3 m_right; //0x0060
char pad_006C[4]; //0x006C
class rage::fvector3 m_forward; //0x0070
char pad_007C[4]; //0x007C
class rage::fvector3 m_up; //0x0080
char pad_008C[4]; //0x008C
class rage::fvector3 m_position; //0x0090
char pad_009C[52]; //0x009C
class rage::netObject *m_net_object; //0x00D0

I would personally remove it everywhere.

Specifying class for rage::fvector3 is actually causing a compiler error right now:

fwEntity.hpp:29:21: error: typedef 'fvector3' cannot be referenced with a class specifier
        class rage::fvector3 m_right //0x0060
                    ^
vector.hpp:12:28: note: declared here
    typedef vector3<float> fvector3
                           ^

Do you remember you introduced this inconsistency through your PR?

I never checked if this was compatible or not, either make a PR fixing the issue or wait when I make time to fix the issue.

Additionally the class specifier is automatically added by ReClass, I never bothered removing it.

Do you remember you introduced this inconsistency through your PR?

You're right, sorry about that. I got confused by the other class members and didn't realize rage::fvector3 was not a class.

Additionally the class specifier is automatically added by ReClass, I never bothered removing it.

I see, no problem.