Fisher Yates dan Load data XML Soal-Soal
Frame 1
import flash.events.MouseEvent;
stop();
var jd:int=10;
var arIndex:Array = new Array( jd );
var myARR= [0,1,2,3,4,5,6,7,8,9];
var ar=fYates(myARR);
for(var j=0;j<ar.length;j++){
trace("Soal index:"+j+"-Soal R:"+ar[j]);
arIndex[j]=ar[j];
}
mulai1.addEventListener(MouseEvent.CLICK,bmulai1);
function bmulai1(event:MouseEvent):void
{
nextFrame();
}
var points:Number=0;
var arId:Array = new Array( jd );
var arSoal:Array = new Array( jd );
var arA:Array = new Array( jd );
var arB:Array = new Array( jd );
var arC:Array = new Array( jd );
var arD:Array = new Array( jd );
var arKey:Array = new Array( jd );
var arGambar:Array = new Array( jd );
var xmlLoader:URLLoader = new URLLoader();
var load_config_path:String = "soal.xml";
xmlLoader.addEventListener(Event.COMPLETE, xmlConfigLoadingSuccessed);
xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, xmlConfigLoadingFailed);
xmlLoader.load( new URLRequest( load_config_path ) );
function xmlConfigLoadingSuccessed(event:Event):void{
var load_config:XML = new XML( event.target.data );
var listOfProperties:XMLList = load_config.elements("record");
for(var i:int=0; i<jd; i++){
var listOfElements:XMLList = listOfProperties[i].elements();
var j:int=0;
this.f_vars = new Object();
for each (var xmlObj:XML in listOfElements){
var field:String=xmlObj.name();
var hs:String= xmlObj.valueOf();
//trace(field+"="+this.f_vars[field]);
if (j==0){arId[i]=hs;j++}
else if (j==1){arSoal[i]=hs;j++}
else if (j==2){arA[i]=hs;j++}
else if (j==3){arB[i]=hs;j++}
else if (j==4){arC[i]=hs;j++}
else if (j==5){arD[i]=hs;j++}
else if (j==6){arKey[i]=hs;j++}
else if (j==7){arGambar[i]=hs;j++}
}
}
}
//======================================================================
function xmlConfigLoadingFailed(e:IOError):void{
trace(e.toString());
}
var _valueLimit:int = 10;
var _valuesList:Array = new Array();
function RandomNumberExample(){
var n:int=0;
for (var i:int = 1; i <= _valueLimit; i++){
_valuesList.push(i);
}
var random:Object;
while (_valuesList.length > 0){
random = getRandomValue(_valuesList);
_valuesList.splice(random.index, 1);
n++;
}
//trace("The list of values is empty!");
}
function getRandomValue(list:Array):Object{
var randomIndex:int = new int(Math.random() * list.length);
var random:Object = new Object();
random.value = list[randomIndex] as int;
random.index = randomIndex;
return random;
}
RandomNumberExample();
//================================================================
function fYates(array) {
var m = array.length, t, i;
while (m) {
i = Math.floor(Math.random() * m--);
t = array[m];
array[m] = array[i];
array[i] = t;
}
return array;
}
Frame 2
stop();
var imageLoader:Loader;
function loadImage(url:String):void {
imageLoader = new Loader();
imageLoader.load(new URLRequest(url));
imageLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, imageLoading);
imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
}
function imageLoaded(e:Event):void {
lokasigb.addChild(imageLoader);
}
function imageLoading(e:ProgressEvent):void {
}
/*
var loader:Loader = new Loader();
loader.load(new URLRequest("mainbola.jpg"));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
function onCompleteHandler(event:Event):void{
event.target.removeEventListener(Event.COMPLETE, onCompleteHandler);
addChild(event.target.content);
}
*/
var lKey:String;
var ke:int=0;
var ike:int=0;
lihat()
function benar(){
points=points+10;
var musikmenu:Sound = new menang();
musikmenu.play(0);
benar1.visible=true;
MovieClip(root).benar1.gotoAndPlay(2);
MovieClip(root).timer1.gotoAndPlay(2);
jawabA.mouseEnabled=false;
jawabB.mouseEnabled=false;
jawabC.mouseEnabled=false;
jawabD.mouseEnabled=false;
ke=ke+1;
if(ke<10){
lihat();
}
}
function salah(){
var musikmenu:Sound = new kalah();
musikmenu.play(0);
salah1.visible=true;
MovieClip(root).salah1.gotoAndPlay(2);
MovieClip(root).timer1.gotoAndPlay(2);
jawabA.mouseEnabled=false;
jawabB.mouseEnabled=false;
jawabC.mouseEnabled=false;
jawabD.mouseEnabled=false;
ke=ke+1;
if(ke<10){
lihat();
}
}
function lihat(){
ike=arIndex[ke];
trace("index-"+String(ke)+"#soal R ="+ike);
var lId:String=arId[ike];
var lSoal:String=arSoal[ike];
var lA:String=arA[ike];
var lB:String=arB[ike];
var lC:String=arC[ike];
var lD:String=arD[ike];
var lGambar:String=arGambar[ike];
lKey=arKey[ike];
loadImage(lGambar);
var myke:String=String(ke+1);
mySoal.text=myke+". "+lSoal;//+"#"+lKey+"#";
myA.text=lA;
myB.text=lB;
myC.text=lC;
myD.text=lD;
scores1.text=String(points);
/*
jawabA.mouseEnabled=true;
jawabB.mouseEnabled=true;
jawabC.mouseEnabled=true;
jawabD.mouseEnabled=true;
*/
}
/*
var myLoader:Loader = new Loader();
myLoader.x = 755;
myLoader.y = 255;
myLoader.load(new URLRequest(lGambar));
addChild(myLoader);
*/
jawabB.addEventListener(MouseEvent.CLICK,btn_jawabB);
function btn_jawabB(event:MouseEvent):void
{
if(lKey=="B"){ benar();}
else{salah();}
}
jawabA.addEventListener(MouseEvent.CLICK,btn_jawabA);
function btn_jawabA(event:MouseEvent):void
{
if(lKey=="A"){ benar();}
else{salah();}
}
jawabC.addEventListener(MouseEvent.CLICK,btn_jawabC);
function btn_jawabC(event:MouseEvent):void
{
if(lKey=="C"){ benar();}
else{salah();}
}
jawabD.addEventListener(MouseEvent.CLICK,btn_jawabD);
function btn_jawabD(event:MouseEvent):void
{
if(lKey=="D"){ benar();}
else{salah();}
}
//SCRIPT TIMER
var nCount:Number = 90;
var myTimer:Timer = new Timer(1000, nCount);
nomor.text = nCount.toString();
myTimer.start();
myTimer.addEventListener(TimerEvent.TIMER, countdown);
function countdown(e:TimerEvent):void
{
nCount--;
nomor.text = nCount.toString();
if(nCount<=0){
nextFrame();
}
}
Frame 3
stop();
var nilai1:int=points;
total1.text=String(nilai1);
homesoal.addEventListener(MouseEvent.CLICK,bhomesoal);
function bhomesoal(event:MouseEvent):void
{
gotoAndStop(2, "Scene 1");
}
replay.addEventListener(MouseEvent.CLICK,breplay);
function breplay(event:MouseEvent):void
{
gotoAndStop(1);
}
Comments
Post a Comment