// // Create a floor of colored tiles some of which emit light. // The tiles change color every second creating a strobe-lit dance-floor. // // See it in action here => http://www.youtube.com/watch?v=UEooBt6NTFo // Drone.extend('dancefloor',function(width,length) { if (typeof width == "undefined") width = 5; if (typeof length == "undefined") length = width; // // create a separate Drone object to lay down disco tiles // var disco = new Drone(this.x, this.y, this.z, this.dir, this.world); // // under-floor lighting // disco.down().box(89,width,1,length).up(); var floorTiles = [35,35,'35:1','35:2','35:3','35:4','35:4','35:4','35:6',20,20]; // // strobe gets called in a java thread - disco only lasts 30 seconds. // var discoTicks = 30; var task = null; var strobe = function() { disco.rand(floorTiles,width,1,length); if (!discoTicks--) task.cancel(); }; var now = 0; var everySecond = 20; task = server.scheduler.runTaskTimer(__plugin,strobe,now,everySecond); return this; });