Ok, I don't disagree with you Shaun, in principle. It would be better to make sure you have a *working* frame implementation first, then worry about if you want to do something fancier. The only potential worry is in considering making adjustments to the code so that alternates are "possible" as some future date. I.e., even if all you are doing is adding in some basic code that says, "If Frame_Type_Flag = 0, then use the standard window type." Worry about *if* the new window types of the frames are buggy after you add code to create types 2, 3, 4, etc. and are actually testing them. But, make sure you have a way to do it first, even if you never use it.
Obviously, any additional window types are going to require debugging of their own, so making sure that the entire implementation of them is separated out, so that you can leave them disabled *until* they work right, and as independent as possible.
Mind you, I don't think solutions like Onoitsu2's are *bad* in general, but I don't like the idea of plugins that *require* someone to install other programs, which might turn out not to work right under WINE, for example. I also don't like closed source solutions, where you are pretty much stuck with what ever behavior the program supplies.
Mind you, in the long run it **may** be useful to have an external solution, if for no other reason that there is no way to currently (and no suspending script in a coprocedure doesn't count) to have a plugin/script do things that may take real time, behind the scenes, while the client is busy handling other things. Mappers, if they do path searches, image display, which requires independent download threading, anything that supplied a 3D graphic from primitives supplied by a mud, checking info on a web page (even if just the raw data), etc., all need time that the client can't afford to give. But, that doesn't entirely solve the issue, since the current methods, like UDP, for talking back to the client, are limited, indirect, and way more complicated that how Mushclient's script handle any of its own functions. I would still love, even if we had a versitile external solution, some way to streamline things in the plugins/scripts so they *act* more intergrated, instead of requiring anyone that may want to use them to learn Yoga to twist their code into the right shape to support it. ;) lol |