OpenMW/openmw — pull request #109 by scrawl (2014-05-18 14:08:55+00:00)
Title: Dialogue merging

This is the same method that I've shown earlier, but optimized with a lookup map. Merging Tribunal.esm and Bloodmoon.esm now takes ~60 ms, as opposed to ~1 sec. The side effect is that ESM::Dialogue objects are now slightly larger.

For the first ESM file, no reordering is done: it is assumed that the DialInfo records were written in the order that the linked list dictates.