@JF:
Switching light textures works completely naturally now. All you need to do is set the .OnImage property (or .OffImage, if you wish) to the proper texture name.
I haven't worked on the draw order yet, I should probably check that out soon.
I had an idea how to fix the overlapping lights for the last compatibility release. Let's say if a light has its state changed in one frame, then we move it to the end of the draw order (at least as far as lights are concerned). Then it will draw last and override the other light textures. I hope this won't cause too many troubles with other draw order issues...
Thanks Mukuste for confirming that information on the lights and I'll do some tests. I like your idea for the compatibility aspect on the lights, but like you say, it depends how the lights would be re-ordered as even without fading lights routines now, even a single light object that is not properly ordered behind an alpha will show some glitches from the alpha ramp (most cases for lights have alphas higher than them considering most are at PF level, but not all - plastics GI, other lights on top of objects). So if the groups of lights for fading or GI8 were re-ordered in realtime, it would almost just have to be amongst themselves only and not alter how they were arranged with the rest of the table objects.
Another idea I had that might work decently regarding the lights and yield only minimal changes to an existing table for compatibility would be to enable a function to make the light object not visible (both off and on images) like the walls have or, as an alterative along the same lines, allow the lights dynamically to be assigned a pure black texture (same might work even easier if possible for setting to a pure black colour - with no image - as already known as working / added in your latest build for the refresh lights). This way the fading lights routine could be quite easily modified to use this technique to completely turn off / invisible / set black the light object that is no longer desired to be in view (we could leverage the black light compatibility code that you've already put in place and just utilize it in an extended fading lights routine). A couple lines in the fading lights sub routine(s) and possibly the initialization areas would be all that's needed per table. This would save a reasonable amount of time otherwise editing all of the objects and current structure per light object / fading light call in the updatelamps routine for a table. Of course, I imagine that if a way could be found to work around this lights issue without requiring any end user interactions than that would be ideal as there’s still a lot of table to re-publish for the authors or a bunch of end user / script changes.
The full screen window mode seems to be working fairly well, however, the ball is still mis-shaped / not round while using this mode (it is stretched out too much vertically / along the table length / Y axis). I'm assuming that at this point the full screen anti-stretch option for real full screen has not been incorporated into the window full screen and is the reason. The other two modes that can be chosen yield undesirable results as well but always have for FS tables with layback settings. Essentially, if the setting is on “Stretch Ball with Table” then that, from my understanding, is the default that existed in VP before any of the Ball aspect ratio options were added, however, it causes the ball to stretch horizontally and look a bit like a football on it’s side. The “Don’t stretch the Ball” seems to be yielding the same as the “At Full screen anti-stretch the Ball” as I imagine because the latter is not coded in yet so both do the same effective result (yielding a footballish shaped ball on it’s edge / vertically). This can be easily seen with the Monster Bash PcKiller version (FS) 2.1 that has seemed to become a focal point for testing.
An example for some light and flipper object drawing order issues can be found in the World Cup Soccer ’94 Mod table at the bottom right of the table when running the T.10 LAMP + FLASH diagnostics. Here is a screen shot with the issues highlighted:
WCS94 Ordering Capture.PNG 449.41KB
22 downloads
Here is a screenshot with the issues resolved by reordering the RightFlipper flipper, GIright light, L101 light, and Wall365 wall to all be set to back / draw in back (performed in that order as well):
WCS94 Ordering Capture (Fixed).PNG 446.11KB
21 downloads
Here is a link to the table itself:
http://www.vpforums....s&showfile=8929