Advertisement
Guest User

Untitled

a guest
Oct 24th, 2014
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.23 KB | None | 0 0
  1. /*
  2. Returns the RenderDescription from the skin.
  3. */
  4. CRenderDescription* CEntitySkin::GetRenderDescription()
  5. {
  6.     // Builds a RenderDescription if needed, otherwise just updates it.
  7.     if (!m_RenderDescription)
  8.     {
  9.         BuildRenderDescription();
  10.     }
  11.     else
  12.     {
  13.         UpdateRenderDescription();
  14.     }
  15.     return m_RenderDescription;
  16. }
  17.  
  18. /*
  19. Builds the render description from the members of the skin.
  20. */
  21. void CEntitySkin::BuildRenderDescription()
  22. {
  23.     delete m_RenderDescription;
  24.     m_RenderDescription = new CRenderDescription(m_SpriteSheet->GetSpriteTexture(),
  25.                                                                    m_SpriteSheet->GetSpriteRectangle(m_SpriteSheetRectIndex),
  26.                                                                    m_Entity->GetPosition(),
  27.                                                                    m_SpriteScaleFactor);
  28.     m_RenderDescription->SetShadeColor(m_SpriteColorShade);
  29. }
  30.  
  31. /*
  32. Updates the already built render descriptions.
  33. */
  34. void CEntitySkin::UpdateRenderDescription()
  35. {
  36.     m_RenderDescription->SetSourceTexture(m_SpriteSheet->GetSpriteTexture());
  37.     m_RenderDescription->SetDestinationPosition(m_Entity->GetPosition());
  38.     m_RenderDescription->SetSourceRectangle(m_SpriteSheet->GetSpriteRectangle(m_SpriteSheetRectIndex));
  39.     m_RenderDescription->SetScale(m_SpriteScaleFactor);
  40.     m_RenderDescription->SetShadeColor(m_SpriteColorShade);
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement