diff options
author | aap <aap@papnet.eu> | 2019-06-12 12:55:35 +0200 |
---|---|---|
committer | aap <aap@papnet.eu> | 2019-06-12 12:55:35 +0200 |
commit | 71059e6a59937195bb74cf11f406f287fa8db265 (patch) | |
tree | c87aaba9a9468f179ffb798f1785018d6784c8ce | |
parent | fixed debugmenu (diff) | |
download | re3-71059e6a59937195bb74cf11f406f287fa8db265.tar re3-71059e6a59937195bb74cf11f406f287fa8db265.tar.gz re3-71059e6a59937195bb74cf11f406f287fa8db265.tar.bz2 re3-71059e6a59937195bb74cf11f406f287fa8db265.tar.lz re3-71059e6a59937195bb74cf11f406f287fa8db265.tar.xz re3-71059e6a59937195bb74cf11f406f287fa8db265.tar.zst re3-71059e6a59937195bb74cf11f406f287fa8db265.zip |
-rw-r--r-- | README.md | 32 |
1 files changed, 32 insertions, 0 deletions
@@ -110,3 +110,35 @@ type functionname ( args ) Indentation is done with TABS. +As for the less cosmetic choices, here are some guidelines how the code should look: + +* Don't use magic numbers where the original source code would have had an enum or similar. +Even if you don't know the exact meaning it's better to call something `FOOBAR_TYPE_4` than just `4`, +since `4` will be used in other places and you can't easily see where else the enum value is used. + +* Don't just copy paste code from IDA, make it look nice + +* Use the right types. In particular: + + * don't use types like `__int16`, we have `int16` for that + + * don't use `unsigned`, we have typedefs for that + + * don't use `char` for anything but actual characters, use `int8`, `uint8` or `bool` + + * don't even think about using win32 types (`BYTE`, `WORD`, &c.) unless you're writing win32 specific code + +* As for variable names, the original gta source code was not written in a uniform style, +but here are some observations: + + * many variables employ a form of hungarian notation, i.e.: + + * `m_` may be used for class member variables (mostly those that are considered private) + + * `ms_` for (mostly private) static members + + * `f` is a float, `i` or `n` is an integer, `b` is a boolean, `a` is an array + + * do *not* use `dw` for `DWORD` or so, we're not programming win32 + +* Generally, try to make the code look as if R* could have written it |