Please sign in to comment.
Add possibility of modifying dynamic objects behavior (#784)
* Basic implementation of required classes * Possibility to get object properties group from CModelInfo * Ability to change model id -> object properties group relations * enum definition * moved function to the end of CGame*, small cleanup * Fixed issues with not starting, a lot of changes - changed the way of how backup ObjectDynamicInfo works - added functions to get/set/restore model dynamic properties group - some other small changes * Basic functions, starting renaming * The giant renaming * model update * model/naming changes, rest of setters from lua. * naming, code shortening thanks to botder * Enums cleanup, to their own namespace they go also added missing property change * Added missing restore function, naming changes * enums namespace change * Ability to get properties from lua * enum memory layout issues fix * Added ability to change fx system used by object group * Additional safety checks in lua functions * Restore object data changes, refactored lua methods * adjust properties count to real 160, instead of 255, * Ability to restore default group properties from lua * Enum class name change * Stuff i've noticed when making pull request * Moved stuff * Formatting fix * Clean up project comments * Changes recommended in code review 1. Added const modfier to functions where possible 2. Changed constructor to use initializer list 3. Removed unnecessary call to ChangeSafeguard() from one of the getters * Changes suggested in pull request review Calling of internal functions without _asm blocks Const specifier in range loops where needed Replaced pointers with std::unique_ptrs Fixed inconsistency with bad arguments checking in some lua functions * Change warnings to errors
- Loading branch information...
Showing with 1,261 additions and 50 deletions.
- +12 −0 Client/game_sa/CFxManagerSA.cpp
- +7 −4 Client/game_sa/CFxManagerSA.h
- +18 −0 Client/game_sa/CGameSA.cpp
- +40 −35 Client/game_sa/CGameSA.h
- +41 −0 Client/game_sa/CModelInfoSA.cpp
- +7 −10 Client/game_sa/CModelInfoSA.h
- +368 −0 Client/game_sa/CObjectGroupPhysicalPropertiesSA.cpp
- +102 −0 Client/game_sa/CObjectGroupPhysicalPropertiesSA.h
- +57 −0 Client/mods/deathmatch/logic/lua/CLuaFunctionParseHelpers.cpp
- +25 −0 Client/mods/deathmatch/logic/lua/CLuaFunctionParseHelpers.h
- +442 −0 Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.cpp
- +6 −0 Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.h
- +4 −1 Client/sdk/game/CFxManager.h
- +3 −0 Client/sdk/game/CGame.h
- +4 −0 Client/sdk/game/CModelInfo.h
- +60 −0 Client/sdk/game/CObjectGroupPhysicalProperties.h
- +65 −0 Client/sdk/game/Common.h
Oops, something went wrong.