This library is fully capable of tracking accurate mouse coordinates (in pixels) in relation to an infinite amount of maps and, if need be, converting those coordinates to map coordinates (again, in pixels) and tile-based screen and map coordinates. It can also track absolute coordinates over the client's screen and actively replicate the icon-x and icon-y parameters that mouse procedures allow.
This library provides screen management, allowing you to swap and displays different screen sizes and HUDs across multiple clients. A developer also now has access to accurate individual left and right key-down and key-up events for the modifier keys, Alt, Ctrl, and Shift. As well, you will also have access to the client's resolution information.
Even better, all of this, save for screen management and the advanced mouse functions, is handled on the client's end and all the server has to do is receive updates from the client, much like it already does for verbs and mouse functions, making all of this perfectly viable for a multiplayer experience.
April 3rd, 2012: Version 3.2
- UpdateFPS has been updated to allow an update speed independent of tick_lag.
- Bug fixes, and minor tweaks.
March 28th, 2012: Version 3.1
- Added support for individual left and right macros for modifier keys.
- Bug fix for the demo.
- Updated the demo and documentation.
March 28th, 2012: Version 3.0
- Added /Screen datum. (Read on for more information.)
- Rearranged and organize the source for more readability.
- Fixed bugs in the pause/resume systems.
- Rewrote the icon_x/y systems to eliminate bugs and inefficiencies.
- Updated the demo.
- Rewrote the documentation.
November 30th, 2011: Version 2.5
- Updated the documentation.
- Forgot to update UpdateFPS() and UpdateScreenSize() to allow arguements for setting world.fps and screen_view_x/y, repsectively. Fixed.
November 17th, 2011: Version 2.4
- Updated for support of other libraries that will rely upon this.
September 3rd, 2011: Version 2.3
- Added support for iconx/y. GenerateIconCoordinates will now ouput what atom your cursor is over to client.current_atom and will output what pixel of the atom's icon that your mouse is over to client.iconx/y. GenerateMapLoc and GenerateScreenLoc must be enabled for this to work, otherwise the procedure will crash and remind you.
- UpdateTickLag() has been replaced with UpdateFPS().
- Fixed a few copy and paste errors to UpdateScreenSize() that LummoxJR pointed out.
- Fixed GenerateMapLoc and GenerateMapCoordinates to output the correct information. Previously, they were switched.
May 28th, 2011: Version 2.2
- Corrected a prior oversight regarding calculations of world.icon_size and map.view-size.
- I added documentation for client.screen_sizex/y.
May 17th, 2011: Version 2.1
- A typographical error has been corrected. "UpadateScreenSize()" has been corrected to "UpdateScreenSize()".
- I corrected the demo file associations. In order for this update to correctly take effect, you must manually delete the prior version before installing the update.
April 7th, 2011: Version 2.0
- Major Update
- All systems will now only update the server if there is something to update.
- All systems now have a Start, Stop, Pause, and Resume command.
- Whether or not a map is in use is kept track of.
Febrary 13th, 2011: Version 1.0
- Initial Release
Use the donate button below to contribute money to my life. This will help me pay my bills so that I can create more games and libraries with less of the stress-caused bugs.