aboutsummaryrefslogtreecommitdiff
path: root/engines/made/resource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/made/resource.cpp')
-rw-r--r--engines/made/resource.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/engines/made/resource.cpp b/engines/made/resource.cpp
index 4450d86c31..f86c6ce371 100644
--- a/engines/made/resource.cpp
+++ b/engines/made/resource.cpp
@@ -221,6 +221,22 @@ void XmidiResource::load(byte *source, int size) {
memcpy(_data, source, size);
}
+/* FontResource */
+
+FontResource::FontResource() : _data(NULL), _size(0) {
+}
+
+FontResource::~FontResource() {
+ if (_data)
+ delete[] _data;
+}
+
+void FontResource::load(byte *source, int size) {
+ _data = new byte[size];
+ _size = size;
+ memcpy(_data, source, size);
+}
+
/* ProjectReader */
ProjectReader::ProjectReader() {
@@ -289,6 +305,10 @@ XmidiResource *ProjectReader::getXmidi(int index) {
return createResource<XmidiResource>(kResXMID, index);
}
+FontResource *ProjectReader::getFont(int index) {
+ return createResource<FontResource>(kResFONT, index);
+}
+
void ProjectReader::loadIndex(ResourceSlots *slots) {
_fd->readUint32LE(); // skip INDX
_fd->readUint32LE(); // skip index size