diff --git a/engines/cge2/cge2.h b/engines/cge2/cge2.h index 380e7da04c5..336d7277870 100644 --- a/engines/cge2/cge2.h +++ b/engines/cge2/cge2.h @@ -232,8 +232,8 @@ public: void snGoto(Sprite *spr, int val); void snMove(Sprite *spr, V3D pos); void snSlave(Sprite *spr, int val); - void snTrans(Sprite *spr, int val); - void snPort(Sprite *spr, int val); + void snTrans(Sprite *spr, int trans); + void snPort(Sprite *spr, int port); void snMouse(bool on); void snNNext(Sprite *spr, Action act, int val); void snRNNext(Sprite *spr, int val); diff --git a/engines/cge2/snail.cpp b/engines/cge2/snail.cpp index aebe1f0778e..4ba83488176 100644 --- a/engines/cge2/snail.cpp +++ b/engines/cge2/snail.cpp @@ -579,12 +579,16 @@ void CGE2Engine::snSlave(Sprite *spr, int val) { warning("STUB: CGE2Engine::snSlave()"); } -void CGE2Engine::snTrans(Sprite *spr, int val) { - warning("STUB: CGE2Engine::snTrans()"); +void CGE2Engine::snTrans(Sprite *spr, int trans) { + if (spr) { + spr->_flags._tran = (trans < 0) ? !spr->_flags._tran : (trans != 0); + } } -void CGE2Engine::snPort(Sprite *spr, int val) { - warning("STUB: CGE2Engine::snPort()"); +void CGE2Engine::snPort(Sprite *spr, int port) { + if (spr) { + spr->_flags._port = (port < 0) ? !spr->_flags._port : (port != 0); + } } void CGE2Engine::snMouse(bool on) {