MTrop / DoomTools

Doom-related tools for Java. Home of DECOHack and lots of other utilities. Build WAD projects (and soon, other kinds) with ease!
https://mtrop.github.io/DoomTools/
MIT License
46 stars 5 forks source link

[DECOHack] "Protecting" DSDHacked sprite indices #116

Closed MrAlaux closed 2 months ago

MrAlaux commented 2 months ago

I want to make an addon with a DSDHacked DEH patch to be loaded on top of a mod of mine that also has its own DEH patch of the same format.

I can obviously protect the states already used by the base mod using state protect X to Y, and for things I can use a bit of a hack, each thing from X to Y {}.

Both of those methods are dead simple, but I couldn't think of an equally simple method for sprites. In this particular case, since the addon is meant to replace one of the mod's weapons, I could rearrange the latter's script so that the sprites to be replaced use the first indices, which the addon would also use, but from the mere length of this explanation alone you can probably tell that the process is rather convoluted.

Any ideas? If not, I'd be glad if a way to do it could be implemented, e.g. by doing sprite protect X [to Y].

MTrop commented 2 months ago

I think if you can set the next sprite index, it would fix your situation, since the indices it selects for the next sprite index are contiguous, anyway. Something like:

set next sprite index X

That way, you can select the starting index for your new sprites. The same method could also be used for sounds as well:

set next sound index X

...since those are also created the same way.

MTrop commented 2 months ago

Added in commit 038b714ac4c1867b6830f30d65f035d1cbfa1d14.