Match 3

by Jon Eyrick

HTML

<div id="exemplo"></div>

CSS

.casa{
    box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 5px;
    border-radius: 3px;
    cursor: pointer;
}
.casa img{
    width: 30px;
}
.selecionado{
    background-color:#599bd8;
    transition-duration: 0.5s;
}

JavaScript

var match3 = new Object();
match3.imagens = ['https://dl.dropboxusercontent.com/u/10864667/jsfiddle/spaceSVG/astronaut.svg', 'https://dl.dropboxusercontent.com/u/10864667/jsfiddle/spaceSVG/moon.svg', 'https://dl.dropboxusercontent.com/u/10864667/jsfiddle/spaceSVG/rocket.svg', 'https://dl.dropboxusercontent.com/u/10864667/jsfiddle/spaceSVG/saturn.svg', 'https://dl.dropboxusercontent.com/u/10864667/jsfiddle/spaceSVG/star.svg'];
match3.selecionado = '';
match3.criaTabuleiro = function (linhas, colunas){
    match3.linhas = linhas;
    match3.colunas = colunas;
    match3.tabuleiro = new Object();
    match3.pecas = match3.imagens.length;
    match3.tabuleiro.linhas = new Array();
    for(i = 0; i < colunas; i++){
        var coluna = new Array();
        for(i2 = 0; i2 < linhas; i2++){
            var peca = (Math.floor(Math.random()*match3.pecas)+1);
            coluna.push(peca);
        } 
        match3.tabuleiro.linhas.push(coluna);
    }
}
match3.montaTabuleiro = function(container){
    match3.container = container;
    $.each(match3.tabuleiro.linhas, function(indice, linha){
        $.each(linha, function(ind2, coluna){
            var l = indice+1;
            var c = ind2+1;
            var nPeca = coluna - 1;
            var imagem = '<div class="casa" id="'+ l + c +'" data-linha="'+ l +'" data-coluna="' + c + '" data-peca="' + nPeca + '"><img src="' + match3.imagens[nPeca] + '" /></div>';
            $(container).append(imagem);
        });
        $(container).append('<br>');
    });
}
match3.verificaSequencias = function(){
    var um = new Object();
    var dois = new Object();
    var tres = new Object();
    $(match3.container + ' div').each(function(){
        um = dois;
        dois = tres;
        tres = $(this).data('peca'); 
        
        if(um === dois && dois === tres){
           // alert('match ' + $(this).attr('id'));
        }
    });
}
match3.pedeTroca = function(id){
    if(match3.selecionado === ''){
        match3.selecionado =...