@@ -30,6 +30,8 @@ void MOSprite::Clear()
30
30
{
31
31
m_SpriteFile.Reset ();
32
32
m_aSprite.clear ();
33
+ m_IconFile.Reset ();
34
+ m_GraphicalIcon = nullptr ;
33
35
m_FrameCount = 1 ;
34
36
m_SpriteOffset.Reset ();
35
37
m_Frame = 0 ;
@@ -128,6 +130,8 @@ int MOSprite::Create(const MOSprite &reference)
128
130
return -1 ;
129
131
130
132
m_SpriteFile = reference.m_SpriteFile ;
133
+ m_IconFile = reference.m_IconFile ;
134
+ m_GraphicalIcon = m_IconFile.GetAsBitmap ();
131
135
132
136
m_FrameCount = reference.m_FrameCount ;
133
137
m_Frame = reference.m_Frame ;
@@ -159,11 +163,13 @@ int MOSprite::Create(const MOSprite &reference)
159
163
// is called. If the property isn't recognized by any of the base classes,
160
164
// false is returned, and the reader's position is untouched.
161
165
162
- int MOSprite::ReadProperty (const std::string_view &propName, Reader &reader)
163
- {
164
- if (propName == " SpriteFile" )
165
- reader >> m_SpriteFile;
166
- else if (propName == " FrameCount" ) {
166
+ int MOSprite::ReadProperty (const std::string_view &propName, Reader &reader) {
167
+ if (propName == " SpriteFile" ) {
168
+ reader >> m_SpriteFile;
169
+ } else if (propName == " IconFile" ) {
170
+ reader >> m_IconFile;
171
+ m_GraphicalIcon = m_IconFile.GetAsBitmap ();
172
+ } else if (propName == " FrameCount" ) {
167
173
reader >> m_FrameCount;
168
174
m_aSprite.reserve (m_FrameCount);
169
175
} else if (propName == " SpriteOffset" )
0 commit comments