Micky C, on 16 August 2015 - 03:44 AM, said:
However notes that new features might not necessarily have to be done in the source code. Mapster has its own scripting language which has already been used to pull off some pretty neat features available to the end-user and included with the program.
Absolutely, and the scripting language is on my list of things to get round to playing with. That's why I'm initially just thinking of "polishing/tweaking/fixing".
So far I've implemented:
1) When entering a HEX number (for example sprite cstat flags), holding down the ALT key allows you to type in the bit number to be toggled instead of the actual value. Hey, I'm an old git, late at night working out a hex value after toggling bit 11 doesn't come easy

2) After testing a map return back to editing mode straight away - one line of code, but saving me a fortune in the swear box
3) Fix aligning of wall textures (1/2 done)
4) Fix case-sensitive keypresses in mapster (where relevent)
5) PRESSED_KEY(s) macro defined in two places, "eitherAlt" in three places. Now in one place, having the side effect that they can be used in build.c when necessary.
Todo:
1) (TROR) Ctrl-j does not work right and could be fully automated e.g. in 2d mode you get the auto version, whilst in side view mode you still get the current (more flexible) three questions. (Takes a bit of explaining).
2) Add ability to sort sounds by group (similar to the way textures/sprites can be sorted by groups).
3) When showing the save, save as, new etc message (e.g. after pressing esc) then if any key(s) are pressed that this message does NOT use then quit the message, go back to editor and action on those keys !
None of this is ground breaking, todo(2) is probably the only one that isn't very basic, yet even there I'd hope to be able to utilise a lot of existing code (e.g. reading config file). As for todo (3), I might leave that one as a personal fix - I have major issues switching between using two machines that cause the esc key to get pressed inadvertantly - a mix of user error and my setup, but it's been driving me mad.
Also add documentation. I'm NOT proposing a major walk through the code adding comments. Rather, when I go through the code and work out what something is doing, simply document it e.g. as Doxygen comments.
There are new features I'd like, for example auto-generate staircases as sectors, or as collections of sprites, straight staircase or multi-story spiral, that kind of thing, which I'm hoping will be doable via scripting. Indeed, I'd go as far as saying that new features should be via scripts (=plugins) and if necessary (and feasible) the script language itself should be expanded to enable the function to be implemented. I use a number of programs that allow plugins and it's definately the way to go, more flexible and opens up adding of features to people that don't necessarily code.
TTFN,
Jon