Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

jquery ile dama oyunu yapmak


yloibx

Öne çıkan mesajlar

jquery ile yapmaya çalıştığım şey siyahların sadece sola ve yukarı gidebilen kırmızıların ise sadece aşağı ve sağa giden bir dama oyunu yapmaya çalışıyorum.



var state = 'wait' ; // wait, selected
var selected = null;
$(function(){
// Create checkboard
var board = createBoard(8,8) ;
$('#board').html(board) ;

// Put pieces on board.
setLayout() ;


$('#intro').fadeIn(100);
$('#button').click(function(){

$(this).fadeOut(300).delay(500);
$('#intro').fadeOut(300).delay(500);
$('#op').delay(500).fadeOut(300);
});


$('td').click(function(){
var id = $(this).attr("id") ;
var color = $(this).css(".t0");
var clkPos = { x : parseInt(id[1]) , y : parseInt(id[0]) } ;

var pos = "";



console.log(id);

var difx = 0;

if ( state == 'wait') {
if ( !existPiece(clkPos)) return ;
if ( selected !== null) $(".selected").removeClass('selected');
selected = $(this).children() ;
selected.addClass('selected') ;

state = 'selected' ;
} else if ( state == 'selected') {


if ( existPiece(clkPos)) {
$('#warning').fadeIn(300).delay(300).fadeOut(300);
return ;
}







$(this).html(selected) ; // move an item.

selected.removeClass('selected');

selected = null ;
state = 'wait' ;

}
});
});

function existPiece(pos) {
return $("#" + pos.y + pos.x).children().size() !== 0 ;
}



function setLayout() {


putPiece(0,0, 0) ;
putPiece(1,0, 0) ;
putPiece(2,0, 0) ;
putPiece(1,1, 0) ;
putPiece(1,2, 0) ;
putPiece(2,2, 0) ;
putPiece(2,1, 0) ;
putPiece(0,1, 0) ;
putPiece(0,2, 0) ;







putPiece(5,5, 1) ;
putPiece(5,6, 1) ;
putPiece(5,7, 1) ;
putPiece(6,6, 1) ;
putPiece(6,5, 1) ;
putPiece(6,7, 1) ;
putPiece(7,7, 1) ;
putPiece(7,5, 1) ;
putPiece(7,6, 1) ;
}

function putPiece(x, y, type) {
var piece = "

" ;
$("#" + y + x ).html(piece) ;
}

function createBoard(x,y) {
var str = "" ;
for ( var i=0 ; i str += '';
for ( var j=0; j var color = (i + j) % 2 ? '#FFF' : '#66F' ;

str += '
' ;
}
str += '';
}
str += "
" ;
return str;
}





taşların üstüne tıkladığında warning veriyor ama yasaklı hamleyi bulamadım. son olarak da siyah ve kırmızı diye ayıramadım takımlar halinde. bir de taş üstünden zıplatmayı da yapamadım. bunların algoritması ne olacak sizce?

mesela 9x9 tabloda tıkladığım taşın idsi atıyorum (x,y) 66 ama bu id'yi kayıt altına da tutamıyorum her tıkladığımda değişiyor.

internette 2-3 tane jq ile checkers buldum ama kodları çok anlayamadım bir de benim kodlarıma benzeyen türde bulamadım. onlar table'ı id'yi çok değişik almış.
Link to comment
Sosyal ağlarda paylaş

valla koda tamamen bakmadan korlemesine console.log ile debug ederek
syntax hatasini gordum. ilk hatalara baksaymisim keske sdf


return $("#" + pos.y + pos.x).children().length !== 0 ;


https://jsfiddle.net/xL9842hd/

ilk soruna baktimda, baya ustunden atlattirmali, takim ayirma gibi temel prensipleri sormussun da, 5-10 dakikada yapilacak is degil, sen ustteki linkten devam et bence, takildigin yerde birileri iterasyonu devam ettirir umarim ::o

ha tavsiye soruyosan bu tip seyler icin (state oyunlari) alevli bir sekilde react + redux oneriyolar, oyle devam etsen daha iyi olabilir sanki.

bide sole bisi var fikir alman acisinda guzel olabilir
https://github.com/binarymax/backgammon.js/tree/master
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...