[ create a new paste ] login | about

Link: http://codepad.org/YO8OmIHZ    [ raw code | fork ]

C, pasted on Apr 15:
//Global Variables
var totalClicks = 0;
var clicks = 0;
var matches = 0;
var numPairs = 0; //only 1 of these
var numCards = 0;
var firstUncovered; 
var firstUncoveredId; 
var secondUncovered;
var secondUncoveredId;
var first;
var second;

var images=new Array("images/1.jpg", "images/1.jpg","images/2.jpg","images/2.jpg",
		     "images/3.jpg","images/3.jpg", "images/4.jpg", "images/4.jpg",
		     "images/5.jpg", "images/5.jpg", "images/6.jpg", "images/6.jpg",
		     "images/7.jpg", "images/7.jpg","images/8.jpg","images/8.jpg",
		     "images/9.jpg","images/9.jpg", "images/10.jpg", "images/10.jpg",
		     "images/11.jpg", "images/11.jpg", "images/12.jpg", "images/12.jpg");

			 
var back="back.jpg"; 

function uncover(card){     
    if(clicks == 2) return false;
  
    totalClicks++;
    clicks++;
        
    if(clicks == 1){
        firstUncoveredId = card.id;
        first = document.getElementById(firstUncoveredId);
        firstUncovered = card.src = images[firstUncoveredId];
        first.onclick = null;
    };
    
    if(clicks == 2){
        tries++;
        secondUncoveredId = card.id;
        second = document.getElementById(secondUncoveredId);
        secondUncovered = card.src = images[secondUncoveredId];
        
        if(firstUncovered == secondUncovered){
            first.className = "dimmed";
            second.className = "dimmed";
            first.onclick = second.onclick = null;
            
            clicks = 0;
            matches++;
        }
		
        if(matches == (numCards/2)){
            alert("gameover");
        }
    }    
}

/*
  var id=card.getAttribute('id');
  card.setAttribute('src', images[id]);
 

card.setAttribute('onclick', null);
*/

  setTimeout(function(){
  hide(current, last)}, 1000); 

function prepareGameboard(){
  var input=0; 
  var j;
  var numCards=24;
  var board;
  
  
  if (!document.getElementsByTagName) return false;
  if (!document.getElementById) return false;
  if (!document.getElementById("gameboard")) return false;


  
  var randomNum;
  var temp;
  var i;
  for(var i=0;i<numCards;i++)
    {
      randomNum=Math.floor((Math.random() * numCards));
      temp=images[randomNum];
      images[randomNum]=images[i];
      images[i]=temp;
    }
  
  board=document.getElementById('gameboard');
    

   for(var i=0;i<numCards;i++){
	var cardImage=new Image();
	cardImage.setAttribute('alt', ('card'+i));
	cardImage.setAttribute('id',i);
	cardImage.setAttribute('src' , 'back.jpg');
	cardImage.onclick=function(){
		return uncover(this);
	};
	board.appendChild(cardImage);
  };
};

function addLoadEvent(func) 
{
  var oldonload = window.onload;
  
  if (typeof window.onload != 'function') 
    {
      window.onload = func;
    } 
  else 
    {
      window.onload = function()
	{
	  oldonload();
	  func();
	}
    }
}

addLoadEvent(prepareGameboard);


Create a new paste based on this one


Comments: