erkyrath / lectrote

The IF interpreter in an Electron shell
Other
248 stars 28 forks source link

Hugo resourcefiles #94

Open curiousdannii opened 7 years ago

curiousdannii commented 7 years ago

Hugo stores image and sound data in its "resourcefile" format, documented in book 2, chapter 12 of the Hugo book (page 249, PDF page 259).

There are various ways these files can be handled in a Glk terp, and I'm wondering what the best way to update GlkOte/GiLoad with the data from these files is. For example, the image_info_map data must be passed to GiLoad when load_run() is originally run, and because it's hidden in a closure it doesn't seem like it would be possible to change it later.

Hmm. If Hugo.prepare() is passed GiLoad in the options, would overwriting get_image_info and get_image_url be possible? Hugo could then implement its own custom system for turning resourcefile resources into Glk resource numbers and then into the actual images for GlkOte.

erkyrath commented 7 years ago

My instinct is to say "write a new loader library by deleting all the blorb-specific code and replacing it". I don't see any value in being able to load both Blorb and Hugo-resource files in the same JS context. (Given that glkote.js one-per-context.)