diff options
author | Bryan Berry <bryan@olenepal.org> | 2010-02-17 09:39:34 (GMT) |
---|---|---|
committer | Bryan Berry <bryan@olenepal.org> | 2010-02-17 09:39:34 (GMT) |
commit | 0aa48d0503c69c9ebc1d2bb209bfbec10e8bed64 (patch) | |
tree | 5008d89f95d62696440785a85c08949a7fd27c97 /js/lesson.js |
initial commit. Lesson English_Animal_Identification is current template
Diffstat (limited to 'js/lesson.js')
-rwxr-xr-x | js/lesson.js | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/js/lesson.js b/js/lesson.js new file mode 100755 index 0000000..4d60c7d --- /dev/null +++ b/js/lesson.js @@ -0,0 +1,191 @@ +$(document).ready( + function(){ + + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'} + ]}); + + k.scaleWindow(); + $.i18n.setLocale('ne'); + + k.ready( + function(){ + + var flag, i ,j; + var object_counter = 1; + var imgNameRand = []; + var optPosition = []; + var optOtherPos = []; + var imageObject = []; + var imgNames = ["Bear", "Cow", "Elephant", "Horse", "Tiger", "Goat"]; + var correctPosition; + var selectedOption; + var score = 0; + var wrong_selected = 0; //wrong option selected so don't score up + var pos; + var t; + var current_image; + + var $help = $('#kHelpText').dialog({ + position:[ "right", "top"], modal:'true',autoOpen:false + }); + + var $feedback = $('#feedback').feedback(); + + $('#kHeaderHelpBtn').click(function(){ $help.dialog('open');}); + + + $('#kHeader').kHeader({'title': 'English Animal Identification', + lessonPlan: true, teachersNote: true}); + + var kFooter = $('#kFooter').kFooter({'winningScore': 6}); + kFooter.bind('kFooterWinGame', + function(){ + $('.optImg').hide(); + $('.imageBox').hide(); + $('#gameOver').show(); + }); + kFooter.bind('kFooterRestart', + function() { + object_counter = 1; + imgNameRand = []; + optPosition = []; + optOtherPos = []; + imageObject = []; + score = 0; + wrong_selected = 0; //wrong option selected so don't score up + + load_images(); + game(); + + } + ); + + load_images(); //load the image numbers for random display + game(); //let the game begin + + + function checkDisplay(){ //Displays the correct and incorrect info + if(wrong_selected == 1){ + $feedback.feedback('incorrect'); + } + else if (object_counter === 7 ){ + $feedback.feedback('win'); + } else{ + $feedback.feedback('correct'); + } + } + + $("#anchorPlayAgain").click(function(){ + $('#gameOver').hide(); + $('.optImg').show(); + $('.imageBox').show(); + load_images(); + score = 0; + object_counter = 1; + wrong_selected = 0; + //display_score(); + kFooter.kFooter('reset'); + game(); + + }); + $("#anchorOpt0").click(function(){ + selected_Option_Process('0'); + }); + $("#anchorOpt1").click(function(){ + selected_Option_Process('1'); + }); + $("#anchorOpt2").click(function(){ + selected_Option_Process('2'); + }); + $("#anchorOpt3").click(function(){ + selected_Option_Process('3'); + }); + + + function load_images(){ + imageObject = k.shuffle([1, 2, 3, 4, 5, 6]); + } + + function selected_Option_Process(selectedOption){ + + if(selectedOption == correctPosition){ + object_counter++; + wrong_selected = 0; + score++; + kFooter.kFooter('inc'); + kFooter.kFooter('incTotal'); + checkDisplay(); + game(); + } + else { + wrong_selected = 1; + kFooter.kFooter('incTotal'); + checkDisplay(); + } + + } + + function game(){ + + wrong_selected = 0; + current_image = object_counter%6; + document.getElementById("imgObject").src = "assets/image/" + + imageObject[current_image] + ".png"; + + //find correct answer and apply it to the position + var currentImage = imageObject[current_image]; + imgNameRand[0] = currentImage; + //generate choices + + for(i=1; i<4; i++){ + do{ + flag = 0; + imgNameRand[i] = k.rand(1, 6); + for(j=0; j<i; j++){ + if(imgNameRand[i]===imgNameRand[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + + + correctPosition = k.rand(0, 3); + + optOtherPos[0] = correctPosition; + + for(i=1; i<4; i++){ + do{ + flag = 0; + optOtherPos[i] = k.rand(0, 3); + for(j=0; j<i; j++){ //chek repeat within optOtherPos array + if(optOtherPos[i] === optOtherPos[j]){ + flag++; + } + } + + }while(flag != 0); + + } + + for(i=0; i<4; i++){ + pos = optOtherPos[i]; + optPosition[pos] = imgNameRand[i]; + //optPosition[pos] = imgNames[i]; + } + + + + //random positions are stored in optOtherPos array. Great + + + for(i=0; i<4; i++){ + document.getElementById("option"+i+"").src = "assets/image/image_name/"+optPosition[i]+".png"; + } + + + } //no change + }); //end of games +}); //end of DOM
\ No newline at end of file |