Kaydet (Commit) e5135122 authored tarafından Muaz's avatar Muaz

Zorluk seviyeleri ayarlandi, hamleler arasi bekleme eklendi

üst 89e8826f
......@@ -28,14 +28,20 @@ class Hole {
}
}
var robotMedium = 0;
var state = true; //true ise oyun devam ediyor.
async function wait(x) {
setTimeout(() => {
//console.log("Done waiting");
if(zorlukDerecesi == 1 || zorlukDerecesi == 2){
if(zorlukDerecesi == 4){
runRobotExpert();
}
else if(zorlukDerecesi == 3){
runRobotHard();
}else if(zorlukDerecesi == 2){
robotMedium();
}else{
robotEasy();
}
......@@ -61,7 +67,10 @@ var treasure2=new Hole(0,"user2hole7");
user1hole.push(treasure1);
user2hole.push(treasure2);
var player=2;
/*
while(player == 1 && state){
runRobotExpert();
}*/
function tikla(id){
// ekranda bulunan kuyulardaki kuyulara tıklama ile tetiklenen fonk.
// tiklanan kuyunun html' deki id sini alır
......@@ -71,40 +80,20 @@ function tikla(id){
if(Number(id[4])==1 && player==Number(id[4]) && id[10]=="x"){ //bilgisayar tikladiysa x gelecek
if(user1hole[Number(id[9])-1].value != 0){
//player=2;
dagit(Number(id[4]),Number(id[9]));
boncukCiz();
}
}else if(Number(id[4])==2 && player==Number(id[4])){ //kullanici tikladiginda
if(user2hole[Number(id[9])-1].value != 0){
//player=1; //bu burada kalmali
dagit(Number(id[4]),Number(id[9]));
boncukCiz();
if(zorlukDerecesi == 4){
while(player == 1 && state){
runRobotExpert();
}
}
else if(zorlukDerecesi == 3){
while(player == 1 && state){
robotHard();
}
}else if(zorlukDerecesi == 2 && robotMedium % 3 == 1 ){
robotMedium +=1;
while(player == 1 && state){
robotHard();
}
}else{
robotMedium +=1;
if( player == 1 && state){
wait(2000);
}
if(player == 1 && state){
wait(3000);
}
}
}
......@@ -166,12 +155,14 @@ function dagit(user,hole){
}
}else if( sira == -1 && user2hole[sonHole].value % 2 == 0){ // son tas karsi tarafin kuyusunu cift yapiyorsa hepsini al
//console.log(sonHole,".....sonhole");
//console.log(sira,".....sira");
player = 2;
user1hole[6].value += user2hole[sonHole].value;
user1hole[6].addedDotcount += user2hole[sonHole].value;
user2hole[sonHole].value = 0;
user2hole[sonHole].addedDotcount = 0;
}else if(user1hole[sonHole].value == 1 && user2hole[5 - sonHole].value > 0){ // son tas kendindenki bos kuyuna geliyosa,
}else if(sira == 1 && user1hole[sonHole].value == 1 && user2hole[5 - sonHole].value > 0){ // son tas kendindenki bos kuyuna geliyosa,
player = 2;
// ve karsi kuyu da tas varsa kendi tek tasini ve karsidakileri hepsini al
//console.log(user2hole[5 - sonHole].value + " kural 3 gerceklesti.");
......@@ -345,7 +336,7 @@ function robotEasy(){
tikla("user1hole"+(array[holeID]+1).toString()+"x");
}
}
function robotHard(){
function robotMedium(){
//console.log("HHHHARD calisti.");
let array = doluHoleler();
let len = array.length;
......@@ -413,10 +404,93 @@ function robotHard(){
}
}
////////////////////////////////////
function runRobotHard(){
let move = robotHard()
player = 1;
//console.log("en yuksek insdis########### ",array[max_indis], ", tiklaniyor.");
tikla("user1hole"+(move).toString()+"x");
}
function robotHard(){
//console.log("HHHHARD calisti.");
let array = doluHoleler();
let len = array.length;
let score_ar = []; // dolu hucrelerle ayni indisle
if( len > 0){
var temp1 = [];
var temp2 = [];
for (let i = 0; i < 7; i++) {
temp1.push(new Hole(user1hole[i].getValue(),user1hole[i].getID()));
temp2.push(new Hole(user2hole[i].getValue(),user2hole[i].getID()));
};
bosalt();
//console.log("ilk bosalt sonrasi user1hoel uzunnlugu: ",user1hole.length);
//console.log("ilk bosalt sonrasi user2hole uzunnlugu: ",user2hole.length);
/*
console.log("robotHard hesaplama basliyor..");
console.log("temp1[0].value: ", temp1[0].value);
console.log("user1hole[0].value: ", user1hole[0].value);
console.log("atamar yapiliyor..");
temp1[0].value = 100;
user1hole[0].value = 999;
console.log("temp1[0].value: ", temp1[0].getValue());
console.log("user1hole[0].value: ", user1hole[0].getValue());
player = 2;
*/
for ( let k = 0; k < array.length; k++){ // dolu hocre sayisi kadar don
let denenecek_hole_indis = array[k]; // dolu hucresinin indisini al
//console.log("hole ,",denenecek_hole_indis, ", deneniyor.");
bosalt();
for (let i = 0; i < 7; i++) {
user1hole.push(new Hole(temp1[i].getValue(),temp1[i].getID()));
user2hole.push(new Hole(temp2[i].getValue(),temp2[i].getID()));
};
//console.log("dagitim sonrasi user1hole uzunnlugu: ",user1hole.length);
//console.log("dagitim öncesi hazine: ",user1hole[6].value);
//tikla("user1hole"+(denenecek_hole_indis+1).toString()+"x"); // dolu hucreyi dagittini dusun
dagit(1,denenecek_hole_indis+1);
//console.log("dagitim sonrasi hazine: ",user1hole[6].value);
// dolu hucre dagilitdiktan sonra hazinenin degerini al ve score ar.ine ata
while(player == 1){
let move = robotExpert();
dagit(1,move);
}
score_ar[k] = user1hole[6].getValue();
}
// her dolu kutu denendikten sonra hazineyi encok arttıran adimi sec
bosalt();
for (let i = 0; i < 7; i++) {
user1hole.push(new Hole(temp1[i].getValue(),temp1[i].getID()));
user2hole.push(new Hole(temp2[i].getValue(),temp2[i].getID()));
};
let max = 0;
let max_indis = 0;
for ( let a = 0; a< score_ar.length; a++){ // en yuksek hazine degerini bul
if( score_ar[a] >= max){
max = score_ar[a];
max_indis = a;
}
}
//player = 1;
//console.log("en yuksek insdis########### ",array[max_indis], ", tiklaniyor.");
//tikla("user1hole"+(array[max_indis]+1).toString()+"x");
return array[max_indis]+1;
}
}
////////////////////////////////////
function runRobotExpert(){
let move = robotExpert()
player = 1;
//console.log("en yuksek insdis########### ",array[max_indis], ", tiklaniyor.");
//console.log("en yuksek insdis########### ",move, ", tiklaniyor.");
tikla("user1hole"+(move).toString()+"x");
}
function robotExpert(){
......@@ -617,5 +691,4 @@ function overlay() {
function overlayOff() {
document.getElementById("overlay").style.display = "none";
}
\ No newline at end of file
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment