At the February 9th Wonderland Wednesday session, Ryan Babiuch (aka Jagwire), a member of the iSocial team at the University of Missouri, demonstrated his new EZScript module. This module integrates JavaScript as a capability that can be applied to any in-world object. While this is still a work in progress and not yet available in the Module Warehouse, it is now functional enough to experiment with. Here’s a demo of how it works:
And here’s Ryan presenting at the Wonderland Wednesday session:
For those who want to experiment, Ryan has provided code below for the four examples shown in the videos, plus another script that places a message in the HUD (heads-up display) when the object is clicked. The source code for the EZScript module is currently in the wonderland-modules/unstable directory hosted on google code. The full path is: wonderland-modules/unstable/EZScript. If you want to try out EZScript on your own server, you can use Subversion to check out the code.
EZScript Examples
// Hover
for(var x = 0; x < 2; x++) { animateMove(cell, 0, 0.5, 0, 1); animateMove(cell, 0, -0.5, 0, 1); } // Play animation already associated with an object
AnimateCell(cell); // Spin
ScriptContext.enableProximityEvents(); function s() { spin(cell, 5, 5); }
ScriptContext.onApproach(s, false); // Move NPC
ScriptContext.clearCallbacks(); ScriptContext.enableMouseEvents(); var x = 0; function walk() { MoveNPC(cell, x, 0, 0); }
ScriptContext.onClick(walk, false);
// Show message in HUD
ScriptContext.enableMouseEvents();
function show() { ShowHUDMessage("Welcome to Open Wonderland!"); }
ScriptContext.onClick(show, false)
Great video and great work. Any idea when this may be released to the warehouse?
N
Nigel,
I’m going to shoot for the end of the week on getting some feature updates, bug fixes, and other things ready for a warehouse release. It will likely be a Beta release, with a future release forthcoming.
thanks for the reply, this platform just seems to get better and better!!
There are some still images from the demo and the Wonderland Wednesday session on the Facebook page:
http://www.facebook.com/album.php?id=401005445224&aid=332772