The sd_DynamicAreaLighting library provides dynamic lighting with minimal cpu and bandwidth usage by shifting turfs between areas which represent varying shades of darkness.
- Added support for custom darkness icons, including customization of how many shades of darkness there are.
- Included several demo darkness icons and updated the demo program to allow you to switch them at runtime.
- SetOpacity() no longer causes errors due to mob.sight settings.
- Added some optimizations by Lummox JR.
- Fixed a bug that caused outside areas to generate improperly. (Xooxer)
- Added global sd_top_luminosity to cut down on the size of internally used lists.
- Added the turf sd_LumReset() proc.
- Changed area.New() to allow zeroing an area's sd_lighting var in the same tick it is created without the need to strip the darkness overlay manually. If you set sd_lighting after the first tick, you should be sure to remove the sd_darkimage from the area's overlays.
Extended the mob procs slightly to compensate for mob.sight settings. The old versions would allow the light to shine through opaque walls if a mob's sight was set to SEE_TURFS.
Changed the turf.sd_lumcount var to a tmp var, so sd_DAL works properly with save files.
Fixed a bug that prevented outside areas from lighting properly if sd_outside was set in the map editor.
Added support for daylight spilling indoors.
Fixed an error involving atoms moving into and out of the contents of non-turfs.
A major rehash of the internal workings. sd_DAL now works with the areas already in your game!
Anyone already using version 1 will need to make some changes. Please read the comments in the library file.