Quasar
Moderator

Posts: 5147
Registered: 08-00 |
ExtraData will still be supported in concert with the Doom format, and so long as it happens naturally, new features will continue to be exposed through it. But its use will be naturally discouraged because UDMF does everything it does and it does it way better.
You can add your own fields to UDMF quite easily, just by using field names that start with "user_". Here's an example:
code:
thing
{
// other stuff...
user_isthebigbad = true;
}
Now, whether or not you can actually USE this information is up to the implementing source port. UDMF implementations are required to at most ignore things they do not understand. As for Eternity, everything it does not recognize will be stored in a hash table, and these properties will be reflected into the Aeon API where you will be able to retrieve them by name from an ECMAScript array, like so:
code:
// Strictly an example. It may not work exactly like this
// when all this stuff actually gets defined...
function HandleTheBigBad()
{
var isthebigbad = this.mapthing.UDMFProps["user_isthebigbad"];
if(isthebigbad)
// start up the health bar or play a
// fullvolume sound or close all doors tagged
// 999 or whatever...
}
Last edited by Quasar on 06-01-09 at 17:16
|