diff --git a/src/Actor.cpp b/src/Actor.cpp index 5171faef46..29997a371b 100644 --- a/src/Actor.cpp +++ b/src/Actor.cpp @@ -1378,6 +1378,9 @@ public: static int rotationx( T* p, lua_State *L ) { p->SetRotationX(FArg(1)); return 0; } static int rotationy( T* p, lua_State *L ) { p->SetRotationY(FArg(1)); return 0; } static int rotationz( T* p, lua_State *L ) { p->SetRotationZ(FArg(1)); return 0; } + static int addrotationx( T* p, lua_State *L ) { p->AddRotationX(FArg(1)); return 0; } + static int addrotationy( T* p, lua_State *L ) { p->AddRotationY(FArg(1)); return 0; } + static int addrotationz( T* p, lua_State *L ) { p->AddRotationZ(FArg(1)); return 0; } static int getrotation( T* p, lua_State *L ) { lua_pushnumber(L, p->GetRotationX()); lua_pushnumber(L, p->GetRotationY()); lua_pushnumber(L, p->GetRotationZ()); return 3; } static int baserotationx( T* p, lua_State *L ) { p->SetBaseRotationX(FArg(1)); return 0; } static int baserotationy( T* p, lua_State *L ) { p->SetBaseRotationY(FArg(1)); return 0; } @@ -1588,6 +1591,9 @@ public: ADD_METHOD( rotationx ); ADD_METHOD( rotationy ); ADD_METHOD( rotationz ); + ADD_METHOD( addrotationx ); + ADD_METHOD( addrotationy ); + ADD_METHOD( addrotationz ); ADD_METHOD( getrotation ); ADD_METHOD( baserotationx ); ADD_METHOD( baserotationy ); diff --git a/src/Actor.h b/src/Actor.h index 9b04700fd7..3fd4cbcda5 100644 --- a/src/Actor.h +++ b/src/Actor.h @@ -103,7 +103,6 @@ public: RectF fade; // 0 = no fade RageColor diffuse[4]; RageColor glow; - // GlowMode glowmode; // oh hello... float aux; }; @@ -191,9 +190,14 @@ public: float GetRotationX() const { return DestTweenState().rotation.x; } float GetRotationY() const { return DestTweenState().rotation.y; } float GetRotationZ() const { return DestTweenState().rotation.z; } - void SetRotationX( float rot ) { DestTweenState().rotation.x = rot; } - void SetRotationY( float rot ) { DestTweenState().rotation.y = rot; } - void SetRotationZ( float rot ) { DestTweenState().rotation.z = rot; } + void SetRotationX( float rot ) { DestTweenState().rotation.x = rot; } + void SetRotationY( float rot ) { DestTweenState().rotation.y = rot; } + void SetRotationZ( float rot ) { DestTweenState().rotation.z = rot; } + // added in StepNXA, now available in sm-ssc: + void AddRotationX( float rot ) { DestTweenState().rotation.x += rot; }; + void AddRotationY( float rot ) { DestTweenState().rotation.y += rot; }; + void AddRotationZ( float rot ) { DestTweenState().rotation.z += rot; }; + // and these were normally in SM: void AddRotationH( float rot ); void AddRotationP( float rot ); void AddRotationR( float rot );