flash on 2011-11-21
♥0 |
Line 47 |
Modified 2011-11-21 08:53:32 |
MIT License
archived:2017-03-20 07:40:22
ActionScript3 source code
/**
* Copyright JiminP ( http://wonderfl.net/user/JiminP )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/w7Rv
*/
package{
import flash.display.*;
import flash.external.ExternalInterface;
import flash.events.*;
import flash.errors.*;
import flash.system.*;
import flash.media.Sound;
public class FlashInterface extends MovieClip{
public static const VERSION:String = '0.0.1';
public var mySO:SharedObject;
public var sounds:Vector.<Sound>;
public function FlashInterface(){
try{
mySO = SharedObject.getLocal("uIRC_userData_0_2");
if(!mySO.data['json']) mySO.data['json'] = '';
sounds = new Vector.<Sound>(16);
ExternalInterface.call("trace","FlashInterface v"+VERSION+" is waking up...");
ExternalInterface.addCallback("addSound", addSound);
ExternalInterface.addCallback("playSound", playSound);
ExternalInterface.addCallback("getLocalData", getLocalData);
ExternalInterface.addCallback("setLocalData", setLocalData);
ExternalInterface.call("onFlashLoad_preChat");
}catch(err:Error){
ExternalInterface.call("trace","Error "+err.errorID+" : "+err.message);
ExternalInterface.call("trace",err.getStackTrace());
ExternalInterface.call("bsod");
}
}
public function getLocalData(){
return mySO.data['json'];
}
public function setLocalData(s:String){
mySO.data['json'] = s;
mySO.flush();
}
public function addSound(ind:int, url:String):Boolean{
if(ind<0||ind>=16) return false;
sounds[ind] = new Sound(new URLRequest(url));
return true;
}
public function playSound(ind:int):Boolean{
if(ind<0||ind>=16||!(sounds[ind].url)) return false;
sounds[ind].play();
return true;
}
}
}