diff --git a/source/friend/fgary.cpp b/source/friend/fgary.cpp index 04b2d4cda..81304c3c1 100644 --- a/source/friend/fgary.cpp +++ b/source/friend/fgary.cpp @@ -143,3 +143,24 @@ void CNpcGaryFriend::setupWaypoints( sThingActor *ThisActor ) m_triggerPos.vy = newYPos; } } + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +void CNpcGaryFriend::render() +{ + CNpcThing::render(); + +// Render + + if (canRender()) + { + DVECTOR &renderPos=getRenderPos(); + + m_actorGfx->Render(renderPos,m_animNo,(m_frame>>8),m_reversed); + + sBBox boundingBox = m_actorGfx->GetBBox(); + boundingBox.YMax = 0; + setCollisionSize( ( boundingBox.XMax - boundingBox.XMin ), ( boundingBox.YMax - boundingBox.YMin ) ); + setCollisionCentreOffset( ( boundingBox.XMax + boundingBox.XMin ) >> 1, ( boundingBox.YMax + boundingBox.YMin ) >> 1 ); + } +} diff --git a/source/friend/fgary.h b/source/friend/fgary.h index 56898916f..c2149f994 100644 --- a/source/friend/fgary.h +++ b/source/friend/fgary.h @@ -26,6 +26,7 @@ public: virtual void setupWaypoints( sThingActor *ThisActor ); DVECTOR const &getTriggerPos() {return( m_triggerPos );} void start() {m_started = true;} + virtual void render(); protected: DVECTOR m_triggerPos;