| Related sites for http://www.geocities.com/computeryahtzee/ |
| IGN Video, screenshots, review, previews, news, and a message board. | | 1UP Review, by Jeremy Parish: "As a stand-alone release, Puzzle World basically consists of one very good (though very dated) puzzler and a handful of boring filler material." [Score: 5 out of 10] | | The_Armchair_Empire Preview, by Mr. Nash: "Although we’re seeing the return of a number of golden oldies in the world of puzzle games, Capcom plans to upgrade them a bit, adding new game modes to freshen up the experie | | GameFAQs Release data, cheats, reviews, and a message board. | | GameSpot Reviews, news, previews, images, videos, cheats, links, and a forum. | | GameSpy Review, preview, and screenshots. | | GameStats Videos, screenshots, average scores, and article links. | | GameZone News, screenshots, cheats, and links. | | IGN Screenshots, videos, reviews, previews, news, and a message board. | | 1UP Review, by Jenn Frank: "The game's greatest fault, really, is that it's over too soon. Missed opportunities and some perspective oddities aside, Kororinpa: Marble Mania is a solid, charming puzzler." | | GameSpot News, previews, images, videos, links, and a forum. | | GameSpy Provides information, screenshots, and a preview. | | IGN Preview, news, screenshots, and a video. | | GameZone Preview, by Michael Lafferty: "Just thinking about Sudoku Gridmaster is enough to make the brain throb just a bit. And that is what any good puzzler should do." (May 10, 2006) | | 1UP Previews, images, videos, and links. | | GameSpot Reviews, news, previews, images, videos, links, and a forum. | | GameSpy Review, screenshots, and a movie. | | GameZone News, demo, trailers, screenshots, and links. | | IGN Video, screenshots, reviews, preview, news, and a message board. | | Deeko Review, by Pete Sellers: "While the premise of the title simple sound ridiculous on paper, the entire game is well thought out and put together, leaving us with a game that you simply can't put down n | | The_Armchair_Empire Preview, by Jeff Nash: "We’re only about a month away from Puzzle Quest’s release, so there isn’t much waiting left for this game. It certainly is an interesting approach to crossing genres." | | Crosskit_com Free online and printable Crossword and Sudoku puzzles. Puzzles are offered daily and weekly with an archive. Also offers online crossword dictionary, daily horoscopes, and discussion forum. | | Adventure_Puzzles Serial adventures, continuing story and puzzles building towards a final puzzle and solution. | | Crosskit_com Free online and printable Crossword and Sudoku puzzles. Puzzles are offered daily and weekly with an archive. Also offers online crossword dictionary, daily horoscopes, and discussion forum. | | The_Game A puzzle hunt run every year at Stanford. | | Holiday_Puzzles Collection of original puzzles developed over the years to celebrate the winter holidays. | | Logicville Educational puzzles, brain teasers, mathematical recreations and word games. A resource for anagrams, cryptograms, alphametics, word puzzles, logic problems, doublets, tangrams, chess, and math quizze | | MyCharades_com Includes charades, riddles, and enigmas. | | The_Puppeteer\'s_Cosmic_Puzzle Pictographic puzzle microcosm of old and new playing cards, poems, games and lore. New suits: the zodiac, solar system, evolution, human family, ancient elements, astronomical basis of the calendar an | | Puzzle_Choice Crosswords, wordsearches, cryptograms, quizzes, wordplay and other interactive and printable puzzles and games. | | Puzzle_Monster Original trivia, logic, visual and word puzzles. | | The_Puzzle_Page Collection of puzzles, brain teasers, mind benders, logic problems, cryptograms, patterns, and enigmas. | | Puzzletome Contests of varying difficulty and types. Also has tutorials with worked examples and practice games. [Registration required] | | The_Substitute_Teacher__Puzzles_and_other_Diversions Printable puzzles and other diversions to help substitute teachers involve their temporary students in mind stretching activities. | | Tim\'s_World_of_Puzzles Information on World Puzzle Championships including links to sample word and logic puzzles. | | Variety_Games Shareware software programs available to create custom crossword and word searches. | | VNC__Volker-Noelle_com Collection of brain teasers, logic puzzles, paradoxes and mathematical riddles. | | Corx Game of skill using cork pieces. Describes the rules of the game and offers playing pieces and accessories. | | Flame_Sticks Photos, tricks, information on the game, and juggling. | | Speed_Stacks Dedicated to spreading the game of cup stacking around the world. Includes rules, news and events. |
|
| var PUpage="76001072"; var PUprop="geocities"; var thGetOv="http://themis.geocities.yahoo.com/themis/h.php"; var thCanURL="http://us.geocities.com/computeryahtzee/index.html"; var thSpaceId="76001072"; var thIP="208.109.14.18"; var thTs="1228231083"; var thCs="fb205566b67dc44a29cff10e95bd3b12";
Play yahtzee against Michael.
Please wait...
function scorecard()
{ var total1score, bonusscore, total2score, total3score, total4score, grandtotal;
var onescore, twoscore, threescore, fourscore, fivescore, sixscore;
var threekindscore, fourkindscore, fullhousescore, smallstraightscore;
var largestraightscore, yahtzeescore, chancescore;
}
scorecard.onescore=-1;
scorecard.twoscore=-1;
scorecard.threescore=-1;
scorecard.fourscore=-1;
scorecard.fivescore=-1;
scorecard.sixscore=-1;
scorecard.threekindscore=-1;
scorecard.fourkindscore=-1;
scorecard.fullhousescore=-1;
scorecard.smallstraightscore=-1;
scorecard.largestraightscore=-1;
scorecard.yahtzeescore=-1;
scorecard.chancescore=-1;
function nextround()
{ scorecard.onescore=-1;
scorecard.twoscore=-1;
scorecard.threescore=-1;
scorecard.fourscore=-1;
scorecard.fivescore=-1;
scorecard.sixscore=-1;
scorecard.threekindscore=-1;
scorecard.fourkindscore=-1;
scorecard.fullhousescore=-1;
scorecard.smallstraightscore=-1;
scorecard.largestraightscore=-1;
scorecard.yahtzeescore=-1;
scorecard.chancescore=-1;
}
scorecard.prototype.nextround = nextround;
function erase()
{ if (playernow.roundover())
{ scorecard.total1score = -1;
document.all.total1score1.value = '';
scorecard.bonusscore = -1;
document.all.bonusscore1.value = '';
scorecard.total2score = -1;
document.all.total2ascore1.value = '';
document.all.total2bscore1.value = '';
scorecard.total3score = -1;
document.all.total3score1.value = '';
scorecard.total4score = -1;
document.all.total4score1.value = '';
}
if (bonusgiven)
{ scorecard.yahtzeescore-=100;
document.all.yahtzeescore1.value = scorecard.yahtzeescore;
}
switch (scorenum)
{ case 0 : scorecard.onescore = -1;
document.all.onescore1.value = '';
break;
case 1 : scorecard.twoscore = -1;
document.all.twoscore1.value = '';
break;
case 2 : scorecard.threescore = -1;
document.all.threescore1.value = '';
break;
case 3 : scorecard.fourscore = -1;
document.all.fourscore1.value = '';
break;
case 4 : scorecard.fivescore = -1;
document.all.fivescore1.value = '';
break;
case 5 : scorecard.sixscore = -1;
document.all.sixscore1.value = '';
break;
case 6 : scorecard.threekindscore = -1;
document.all.threekindscore1.value = '';
break;
case 7 : scorecard.fourkindscore = -1;
document.all.fourkindscore1.value = '';
break;
case 8 : scorecard.fullhousescore = -1;
document.all.fullhousescore1.value = '';
break;
case 9 : scorecard.smallstraightscore = -1;
document.all.smallstraightscore1.value = '';
break;
case 10 : scorecard.largestraightscore = -1;
document.all.largestraightscore1.value = '';
break;
case 11 : scorecard.yahtzeescore = -1;
document.all.yahtzeescore1.value = '';
break;
case 12 : scorecard.chancescore = -1;
document.all.chancescore1.value = '';
break;
}
bonusgiven = false;
}
scorecard.prototype.erase = erase;
function roundover()
{ if ((scorecard.onescore==-1)||(scorecard.twoscore==-1)||(scorecard.threescore==-1)||
(scorecard.fourscore==-1)||(scorecard.fivescore==-1)||(scorecard.sixscore==-1)||
(scorecard.threekindscore==-1)||(scorecard.fourkindscore==-1)||
(scorecard.fullhousescore==-1)||(scorecard.smallstraightscore==-1)||
(scorecard.largestraightscore==-1)||(scorecard.yahtzeescore==-1)||
(scorecard.chancescore==-1))
return false;
else
return true;
}
scorecard.prototype.roundover = roundover;
function totalround()
{ score=0;
score = scorecard.onescore+scorecard.twoscore+
scorecard.threescore+scorecard.fourscore+
scorecard.fivescore+scorecard.sixscore;
scorecard.total1score = score;
document.all.total1score1.value = score;
if (score>= 63)
{ score+=35;
scorecard.bonusscore = 35;
}
else
scorecard.bonusscore = 0;
document.all.bonusscore1.value = scorecard.bonusscore;
scorecard.total2score = score;
document.all.total2ascore1.value = score;
document.all.total2bscore1.value = score;
score=0;
score = scorecard.threekindscore+scorecard.fourkindscore+scorecard.fullhousescore+
scorecard.smallstraightscore+scorecard.largestraightscore+
scorecard.yahtzeescore+scorecard.chancescore;
scorecard.total3score = score;
document.all.total3score1.value = score;
scorecard.total4score = scorecard.total2score+score;
document.all.total4score1.value = scorecard.total4score;
}
scorecard.prototype.totalround = totalround;
function setscore(s)
{ switch (s)
{ case 0 : scorecard.onescore = score;
if ((player!=2)||(!computer))
document.all.onescore1.value = score;
break;
case 1 : scorecard.twoscore = score;
if ((player!=2)||(!computer))
document.all.twoscore1.value = score;
break;
case 2 : scorecard.threescore = score;
if ((player!=2)||(!computer))
document.all.threescore1.value = score;
break;
case 3 : scorecard.fourscore = score;
if ((player!=2)||(!computer))
document.all.fourscore1.value = score;
break;
case 4 : scorecard.fivescore = score;
if ((player!=2)||(!computer))
document.all.fivescore1.value = score;
break;
case 5 : scorecard.sixscore = score;
if ((player!=2)||(!computer))
document.all.sixscore1.value = score;
break;
case 6 : scorecard.threekindscore = score;
if ((player!=2)||(!computer))
document.all.threekindscore1.value = score;
break;
case 7 : scorecard.fourkindscore = score;
if ((player!=2)||(!computer))
document.all.fourkindscore1.value = score;
break;
case 8 : scorecard.fullhousescore = score;
if ((player!=2)||(!computer))
document.all.fullhousescore1.value = score;
break;
case 9 : scorecard.smallstraightscore = score;
if ((player!=2)||(!computer))
document.all.smallstraightscore1.value = score;
break;
case 10 : scorecard.largestraightscore = score;
if ((player!=2)||(!computer))
document.all.largestraightscore1.value = score;
break;
case 11 : scorecard.yahtzeescore = score;
if ((player!=2)||(!computer))
document.all.yahtzeescore1.value = score;
break;
case 12 : scorecard.chancescore = score;
if ((player!=2)||(!computer))
document.all.chancescore1.value = score;
break;
}
}
scorecard.prototype.setscore = setscore;
function getscore(s)
{ switch (s)
{ case 0 : return scorecard.onescore;
break;
case 1 : return scorecard.twoscore;
break;
case 2 : return scorecard.threescore;
break;
case 3 : return scorecard.fourscore;
break;
case 4 : return scorecard.fivescore;
break;
case 5 : return scorecard.sixscore;
break;
case 6 : return scorecard.threekindscore;
break;
case 7 : return scorecard.fourkindscore;
break;
case 8 : return scorecard.fullhousescore;
break;
case 9 : return scorecard.smallstraightscore;
break;
case 10 : return scorecard.largestraightscore;
break;
case 11 : return scorecard.yahtzeescore;
break;
case 12 : return scorecard.chancescore;
break;
case 13 : return scorecard.total1score;
break;
case 14 : return scorecard.bonusscore;
break;
case 15 : return scorecard.total2score;
break;
case 16 : return scorecard.total3score;
break;
case 17 : return scorecard.total4score;
break;
}
}
scorecard.prototype.getscore=getscore;
function getupperscore(die)
{ score=0;
if (hand0 == die)
score+=die+1;
if (hand1 == die)
score+=die+1;
if (hand2 == die)
score+=die+1;
if (hand3 == die)
score+=die+1;
if (hand4 == die)
score+=die+1;
}
function getceiling()
{ for (i=5; i>-1; i--)
{ if (playernow.getscore(i)==-1)
defecitceiling = i+1;
break;
}
}
function enterscore(catnum)
{ if (entered)
playernow.erase();
if (catnum==0)
{ if (playernow.getscore(0) != -1)
tryagain = true;
else
{ getupperscore(0);
playernow.setscore(0);
defecit += (3-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 0;
numscored++;
entered = true;
}
}
else
if (catnum==1)
{ if (playernow.getscore(1) != -1)
tryagain = true;
else
{ getupperscore(1);
playernow.setscore(1);
defecit += (6-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 1;
numscored++;
entered = true;
}
}
else
if (catnum==2)
{ if (playernow.getscore(2) != -1)
tryagain = true;
else
{ getupperscore(2);
playernow.setscore(2);
defecit += (9-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 2;
numscored++;
entered = true;
}
}
else
if (catnum==3)
{ if (playernow.getscore(3) != -1)
tryagain = true;
else
{ getupperscore(3);
playernow.setscore(3);
defecit += (12-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 3;
numscored++;
entered = true;
}
}
else
if (catnum==4)
{ if (playernow.getscore(4) != -1)
tryagain = true;
else
{ getupperscore(4);
playernow.setscore(4);
defecit = (15-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 4;
numscored++;
entered = true;
}
}
else
if (catnum==5)
{ if (playernow.getscore(5) != -1)
tryagain = true;
else
{ getupperscore(5);
playernow.setscore(5);
defecit = (18-score);
if (defecit>=0)
lead=defecit;
else
lead=-defecit;
getceiling();
scorenum = 5;
numscored++;
entered = true;
}
}
else
if (catnum==6)
{ if (playernow.getscore(6) != -1)
tryagain = true;
else
{ getkindscore(3);
playernow.setscore(6);
scorenum = 6;
entered = true;
}
}
else
if (catnum==7)
{ if (playernow.getscore(7) != -1)
tryagain = true;
else
{ getkindscore(4);
playernow.setscore(7);
scorenum = 7;
entered = true;
}
}
else
if (catnum==8)
{ if (playernow.getscore(8) != -1)
tryagain = true;
else
{ getfullhousescore();
playernow.setscore(8);
scorenum = 8;
entered = true;
}
}
else
if (catnum==9)
{ if (playernow.getscore(9) != -1)
tryagain = true;
else
{ getsmallstraightscore();
playernow.setscore(9);
scorenum = 9;
entered = true;
}
}
else
if (catnum==10)
{ if (playernow.getscore(10) != -1)
tryagain = true;
else
{ getlargestraightscore();
playernow.setscore(10);
scorenum = 10;
entered = true;
}
}
else
if (catnum==11)
{ if (playernow.getscore(11) != -1)
tryagain = true;
else
{ getyahtzeescore();
playernow.setscore(11);
scorenum = 11;
entered = true;
}
}
else
if (catnum==12)
{ if (playernow.getscore(12) != -1)
tryagain = true;
else
{ getchancescore();
playernow.setscore(12);
scorenum = 12;
entered = true;
}
}
if ((catnum!=11)&&(!tryagain))
{ getyahtzeescore();
if (score>50)
{ playernow.setscore(11);
bonusgiven = true;
}
}
if (playernow.roundover())
playernow.totalround();
scored=true;
done=true;
}
function gethits()
{ hits0=0;
hits1=0;
hits2=0;
hits3=0;
hits4=0;
hits5=0;
switch (hand0)
{ case 0 : hits0++;
break;
case 1 : hits1++;
break;
case 2 : hits2++;
break;
case 3 : hits3++;
break;
case 4 : hits4++;
break;
case 5 : hits5++;
}
switch (hand1)
{ case 0 : hits0++;
break;
case 1 : hits1++;
break;
case 2 : hits2++;
break;
case 3 : hits3++;
break;
case 4 : hits4++;
break;
case 5 : hits5++;
}
switch (hand2)
{ case 0 : hits0++;
break;
case 1 : hits1++;
break;
case 2 : hits2++;
break;
case 3 : hits3++;
break;
case 4 : hits4++;
break;
case 5 : hits5++;
}
switch (hand3)
{ case 0 : hits0++;
break;
case 1 : hits1++;
break;
case 2 : hits2++;
break;
case 3 : hits3++;
break;
case 4 : hits4++;
break;
case 5 : hits5++;
}
switch (hand4)
{ case 0 : hits0++;
break;
case 1 : hits1++;
break;
case 2 : hits2++;
break;
case 3 : hits3++;
break;
case 4 : hits4++;
break;
case 5 : hits5++;
}
}
function getkindscore(kind)
{ score=0;
die=-1;
gethits();
if (hits0>=kind)
die=0;
else
if (hits1>=kind)
die=1;
else
if (hits2>=kind)
die=2;
else
if (hits3>=kind)
die=3;
else
if (hits4>=kind)
die=4;
else
if (hits5>=kind)
die=5;
if (die>-1)
score=hand0+hand1+hand2+hand3+hand4+5;
}
function getfullhousescore()
{ score=0;
three=false;
two=false;
gethits();
if (hits0 == 3)
three = true;
else
if (hits0 == 2)
two = true;
if (hits1 == 3)
three = true;
else
if (hits1 == 2)
two = true;
if (hits2 == 3)
three = true;
else
if (hits2 == 2)
two = true;
if (hits3 == 3)
three = true;
else
if (hits3 == 2)
two = true;
if (hits4 == 3)
three = true;
else
if (hits4 == 2)
two = true;
if (hits5 == 3)
three = true;
else
if (hits5 == 2)
two = true;
if (three && two)
score=25;
else
if (playernow.getscore(11)>-1)
if (((hits0==5)&&(playernow.getscore(0)>-1))||
((hits1==5)&&(playernow.getscore(1)>-1))||
((hits2==5)&&(playernow.getscore(2)>-1))||
((hits3==5)&&(playernow.getscore(3)>-1))||
((hits4==5)&&(playernow.getscore(4)>-1))||
((hits5==5)&&(playernow.getscore(5)>-1)))
score=25;
}
function getlargestraightscore()
{ score=0;
gethits();
if (((hits0>=1)||(hits5>=1))&&((hits1>=1)&&(hits2>=1)&&(hits3>=1)&&(hits4>=1)))
score=40;
else
if (playernow.getscore(11)>-1)
if (((hits0==5)&&(playernow.getscore(0)>-1))||
((hits1==5)&&(playernow.getscore(1)>-1))||
((hits2==5)&&(playernow.getscore(2)>-1))||
((hits3==5)&&(playernow.getscore(3)>-1))||
((hits4==5)&&(playernow.getscore(4)>-1))||
((hits5==5)&&(playernow.getscore(5)>-1)))
score=40;
}
function getsmallstraightscore()
{ score=0;
gethits();
if ((((hits0>=1)&&(hits1>=1))||((hits1>=1)&&(hits4>=1))||((hits4>=1)&&(hits5>=1)))&&
((hits2>=1)&&(hits3>=1)))
score=30;
else
if (playernow.getscore(11)>-1)
if (((hits0==5)&&(playernow.getscore(0)>-1))||
((hits1==5)&&(playernow.getscore(1)>-1))||
((hits2==5)&&(playernow.getscore(2)>-1))||
((hits3==5)&&(playernow.getscore(3)>-1))||
((hits4==5)&&(playernow.getscore(4)>-1))||
((hits5==5)&&(playernow.getscore(5)>-1)))
score=30;
}
function getyahtzeescore()
{ score=0;
gethits();
if (hits0 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 0;
}
else
if (hits1 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 1;
}
else
if (hits2 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 2;
}
else
if (hits3 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 3;
}
else
if (hits4 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 4;
}
else
if (hits5 == 5)
{ if (playernow.getscore(11)>= 50)
score = playernow.getscore(11)+100;
else
if (playernow.getscore(11) == -1)
score = 50;
die = 5;
}
}
function getchancescore()
{ score=hand0+hand1+hand2+hand3+hand4+5;
}
function getselected(num)
{ if ((hand0)!=num)
selected0=true;
if ((hand1)!=num)
selected1=true;
if ((hand2)!=num)
selected2=true;
if ((hand3)!=num)
selected3=true;
if ((hand4)!=num)
selected4=true;
done=true;
}
function lowerhits(hits, num, hitindex)
{ if (hits>num)
{ if (hand0==hitindex)
{ selected0=true;
hits--;
}
if (hits>num)
{ if (hand1==hitindex)
{ selected1=true;
hits--;
}
if (hits>num)
{ if (hand2==hitindex)
{ selected2=true;
hits--;
}
if (hits>num)
{ if (hand3==hitindex)
{ selected3=true;
hits--;
}
if (hits>num)
if (hand4==hitindex)
{ selected4=true;
hits--;
}
}
}
}
}
}
function selectall()
{ selected0=true;
selected1=true;
selected2=true;
selected3=true;
selected4=true;
done=true;
}
function scorecheapest(olddeficit)
{ if (numscored==5)
{ if (defecit=2)&&(playernow.getscore(7)==-1)&&
(playernow.getscore(11)==0))
enterscore(7);
else
if ((die>=3)&&(playernow.getscore(6)==-1)&&
(playernow.getscore(11)==0))
enterscore(6);
else
if ((die>=1)&&(playernow.getscore(7)==-1)&&
(playernow.getscore(11)==0))
enterscore(7);
else
if ((die>=2)&&(playernow.getscore(6)==-1)&&
(playernow.getscore(11)==0))
enterscore(6);
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (playernow.getscore(12)==-1)
enterscore(12);
else
scorecheapest(19);
}
function scoreroll()
{ done=false;
getkindscore(5);
if (score>0)
{ if (playernow.getscore(11)==-1)
enterscore(11);
else
if (((hits0==5)&&(playernow.getscore(0)>-1))||
((hits1==5)&&(playernow.getscore(1)>-1))||
((hits2==5)&&(playernow.getscore(2)>-1))||
((hits3==5)&&(playernow.getscore(3)>-1))||
((hits4==5)&&(playernow.getscore(4)>-1))||
((hits5==5)&&(playernow.getscore(5)>-1)))
scorejoker();
}
if (!done)
{ getlargestraightscore();
if (score==40)
{ if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(9)==-1)
enterscore(9);
else
if (!scorecheapest(3))
if (playernow.getscore(12)==-1)
enterscore(12);
else
if (!scorecheapest(5+(lead/8)))
if (defecit0)
{ if (numscored>1)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(6))
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
scorecheapest(19);
}
else
if (playernow.getscore(11)>0)
{ if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
{ if (numscored>3)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
{ if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (numscored>2)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
scorecheapest(19);
}
}
}
else
{ if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (!scorecheapest(19))
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(15))
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
scorecheapest(19);
}
}
else
{ getsmallstraightscore();
if (score==30)
{ if (playernow.getscore(9)==-1)
enterscore(9);
else
if (!scorecheapest(3))
if (playernow.getscore(12)==-1)
enterscore(12);
else
if (!scorecheapest(5+(lead/8)))
if (defecit0)
{ if (numscored>1)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(6))
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
if (playernow.getscore(11)>0)
{ if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
{ if (numscored>3)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
{ if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
}
}
else
{ if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (!scorecheapest(9))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(19))
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(10))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(15))
if (playernow.getscore(6)==-1)
enterscore(6);
else
scorecheapest(19);
}
}
else
{ if (!done)
{ if ((playernow.getscore(die)>-1)||(numscored0)||
(-defecit>=defecitceiling))
{ getfullhousescore();
if ((score>0)&&(playernow.getscore(8)==-1))
enterscore(8);
}
if (!done)
{ getkindscore(3);
if (score>0)
if (playernow.getscore(die)==-1)
if (die==0)
enterscore(0);
else
if (die==1)
enterscore(1);
else
if (die==2)
enterscore(2);
else
if (die==3)
enterscore(3);
else
if (die==4)
enterscore(4);
else
enterscore(5);
else
{ getfullhousescore();
if ((score>0)&&(playernow.getscore(8)==-1))
enterscore(8);
else
{
getkindscore(4);
if ((score>0)&&(playernow.getscore(7)==-1))
enterscore(7);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(3))
if (playernow.getscore(12)==-1)
enterscore(12);
else
if (!scorecheapest(5+(lead/8)))
if (defecit0)
{ if (numscored>1)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(9))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(9))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(11)>0)
{ if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
{ if (numscored>3)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
{ if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(6))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
}
}
else
{ if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (!scorecheapest(9))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(15))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(10))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(19))
if (playernow.getscore(9)==-1)
enterscore(9);
}
}
}
else
if (!scorecheapest(3))
if (playernow.getscore(12)==-1)
enterscore(12);
else
if (!scorecheapest(5+(lead/8)))
if (defecit0)
{ if (numscored>1)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(9))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(6))
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(9))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(11)>0)
{ if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
{ if (numscored>3)
if (playernow.getscore(11)==-1)
enterscore(11);
if (!done)
{ if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(6))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
}
}
else
{ if (playernow.getscore(11)==-1)
enterscore(11);
else
if (playernow.getscore(11)>0)
{ if (!scorecheapest(8))
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(8))
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (!scorecheapest(9))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(19))
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(15))
if (playernow.getscore(9)==-1)
enterscore(9);
else
scorecheapest(19);
}
else
if (playernow.getscore(7)==-1)
enterscore(7);
else
if (playernow.getscore(8)==-1)
enterscore(8);
else
if (!scorecheapest(10))
if (playernow.getscore(10)==-1)
enterscore(10);
else
if (!scorecheapest(15))
if (playernow.getscore(6)==-1)
enterscore(6);
else
if (!scorecheapest(19))
if (playernow.getscore(9)==-1)
enterscore(9);
}
}
}
}
}
}}
function taketwo()
{ if ((r==2)&&(playernow.getscore(9)==-1))
{ getsmallstraightscore();
if (score>0)
return(false);
}
if ((r==1)||(playernow.getscore(0)==-1)||(playernow.getscore(12)==-1))
{ if ((r==1)||(numscored-1)||((((playernow.getscore(7)>-1)&&
(playernow.getscore(11)==0)&&((hits50)&&(playernow.getscore(11)==0)&&(playernow.getscore(0)>-1)&&
(playernow.getscore(1)>-1)&&(playernow.getscore(2)>-1)&&
(playernow.getscore(3)>-1)&&(playernow.getscore(4)>-1)&&
(playernow.getscore(5)>-1)&&(playernow.getscore(6)>-1)&&
(playernow.getscore(7)>-1)&&(playernow.getscore(8)==-1)&&
(playernow.getscore(9)>-1)&&(playernow.getscore(10)>-1))
{ if ((die==0)&&(hits0>3))
lowerhits(hits0, 3, 0);
else
if ((die==1)&&(hits1>3))
lowerhits(hits1, 3, 1);
else
if ((die==2)&&(hits2>3))
lowerhits(hits2, 3, 2);
else
if ((die==3)&&(hits3>3)&&((hits5==1)||(hits4==1)))
lowerhits(hits3, 3, 3);
else
if ((die==4)&&(hits4>3)&&(hits5==1))
lowerhits(hits4, 3, 4);
if ((hand0!=die)&&(((hand0==4)&&((hits5==1)||(hits5==4)))||
((hand0==3)&&((hits5==1)||(hits5==4)||(hits4==1)||(hits4==4)))||
(hand03)
lowerhits(hits4, 3, 4);
else
if (hits5>3)
lowerhits(hits5, 3, 5);
if (hits5>=2)
getselected(5);
else
if (hits4>=2)
getselected(4);
else
if (hits3>=2)
getselected(3);
else
if (hits2>=2)
getselected(2);
else
if (hits1>=2)
getselected(1);
else
if (hits0>=2)
getselected(0);
}
else
if (playernow.getscore(12)==-1)
{ if (hits5>=2)
getselected(5);
else
if (hits4>=2)
getselected(4);
else
if ((hits5>=1)&&(r==2))
getselected(5);
else
if (hits3>=2)
getselected(3);
else
if ((hits4>=1)&&(r==2))
getselected(4);
else
if ((hits2>=2)&&((r==1)||(playernow.getscore(11)!=0))&&(numscored==6))
getselected(2);
else
if ((hits5>=1)&&(numscored==6))
getselected(5);
else
if ((hits4>=1)&&(numscored==6))
getselected(4);
else
if ((hits1>=2)&&((r==1)||(playernow.getscore(11)!=0))&&(numscored==6))
getselected(1);
else
if ((hits0>=3)&&(r==1)&&(playernow.getscore(11)!=0)&&(numscored==6))
getselected(0);
}
else
if (r==2)
{ if (hits5>=3)
getselected(5);
else
if (hits4>=3)
getselected(4);
else
if (hits3>=3)
getselected(3);
else
if (hits2>=3)
getselected(2);
else
if (hits1>=3)
getselected(1);
else
if ((hits0>=3)&&(playernow.getscore(11)!=0))
getselected(0);
else
if (hits5>=2)
getselected(5);
else
if (hits0>=3)
getselected(0);
else
if (hits4>=2)
getselected(4);
else
if (hits3>=2)
getselected(3);
else
if (hits2>=2)
getselected(2);
else
if (hits1>=2)
getselected(1);
else
if (hits0>=2)
getselected(0);
}
else
if ((hits4>=3)&&(playernow.getscore(11)>0)&&(numscored==6))
getselected(4);
else
if (hits5>=2)
getselected(5);
else
if (hits4>=2)
getselected(4);
else
if (hits3>=2)
getselected(3);
else
if (hits2>=2)
getselected(2);
else
if (hits1>=2)
getselected(1);
else
if (hits0>=2)
getselected(0);
}
function goforchance()
{ if (r==1)
{ if (hand0-1)&&(playernow.getscore(1)>-1)&&
(playernow.getscore(2)>-1)&&(playernow.getscore(3)>-1)&&
(playernow.getscore(4)>-1)&&(playernow.getscore(5)>-1)&&
(playernow.getscore(11)>0)&&
((playernow.getscore(6)==-1)||(playernow.getscore(7)==-1)))
getselected(die);
else
if ((score>0)&&((playernow.getscore(die)==-1)||
((playernow.getscore(6)==-1)&&((die>=1)||(r==2)||(playernow.getscore(11)>0)||
(playernow.getscore(8)==-1)))||((playernow.getscore(7)==-1)&&(die>=1))))
{ if ((((die-1)&&((r==2)||(playernow.getscore(11)==0))))&&
(playernow.getscore(die)>-1))||((die==0)&&
((playernow.getscore(die)>-1)||(numscored0)||
(-defecit>=defecitceiling)))||((r==2)&&
((playernow.getscore(die)>-1)||(numscored0)||
(-defecit>=defecitceiling))))
{ getfullhousescore();
if (score>0)
if (playernow.getscore(8)==-1)
done=true;
else
if ((r==1)&&((die==0)||((die==1)&&((playernow.getscore(11)-1)&&(playernow.getscore(9)>-1)&&
(playernow.getscore(10)>-1))))))
{ if ((hits5==2)&&(playernow.getscore(5)==-1))
getselected(5);
else
if ((hits4==2)&&(playernow.getscore(4)==-1))
getselected(4);
}
}
if (!done)
if ((playernow.getscore(die)>-1)&&(playernow.getscore(7)>-1)&&
(playernow.getscore(11)==0))
{ if ((playernow.getscore(8)>-1)&&(playernow.getscore(10)>-1)&&
((playernow.getscore(9)>-1)||(die>=3)||(hits0==3)))
{ if ((die==0)&&(hits0>3))
lowerhits(hits0, 3, 0);
else
if ((die==1)&&(hits1>3))
lowerhits(hits1, 3, 1);
else
if ((die==2)&&(hits2>3))
lowerhits(hits2, 3, 2);
if (r==1)
{ if ((hand0!=die)&&(hand00)&&(hits2>0)&&(hits3>0))||
((hits1>0)&&(hits3>0)&&(hits4>0))||
((hits1>0)&&(hits2>0)&&(hits4>0))||
((hits2>0)&&(hits3>0)&&(hits4>0)))
goforsmallstraight();
}
}
else
if (playernow.getscore(10)==-1)
goforlargestraight();
else
done = true;
}
if (!done)
if (((playernow.getscore(0)==-1)&&(numscored-2)&&(defecit-1)||(hits2==0)||
((numscored==5)&&(((defecit>-3)&&(defecit-1)||(hits3==0)||
((numscored==5)&&(((defecit>-4)&&(defecit0)))||(defecit+4+defecitceilingdefecitceiling))&&
((playernow.getscore(4)>-1)||(hits4==0)||(numscored-5)&&(defecit0))))&&
((playernow.getscore(5)>-1)||(hits5==0)||(numscored-6)&&(defecit0))))))
if ((playernow.getscore(9)>-1)&&(playernow.getscore(10)==-1))
if (((hits0>0)&&(hits1>0)&&(hits2>0)&&(hits3>0))||
((hits0>0)&&(hits1>0)&&(hits2>0)&&(hits4>0))||
((hits0>0)&&(hits1>0)&&(hits3>0)&&(hits4>0))||
((hits0>0)&&(hits2>0)&&(hits3>0)&&(hits4>0))||
((hits1>0)&&(hits2>0)&&(hits3>0)&&(hits5>0))||
((hits1>0)&&(hits2>0)&&(hits4>0)&&(hits5>0))||
((hits1>0)&&(hits3>0)&&(hits4>0)&&(hits5>0))||
((hits2>0)&&(hits3>0)&&(hits4>0)&&(hits5>0)))
goforlargestraight();
if (!done)
if (numscored==5)
if ((playernow.getscore(0)==-1)&&((hits0==1)||(hits0==2))&&
((defecit==-1)||((defecit-1)||(hits5-3)&&((defecit>-2)||
(playernow.getscore(12)>-1)||((hits0==2)&&
((defecit==0)||(defecit==-1))))))
getselected(0);
else
if ((playernow.getscore(1)==-1)&&(hits1==1)&&
(((defecit-1)&&((hits50)&&((playernow.getscore(12)>-1)||
((playernow.getscore(10)==-1)&&(die>=1))||(die>=2)))||
((playernow.getscore(0)>-1)&&
(playernow.getscore(1)>-1)&&(playernow.getscore(2)>-1)&&
(playernow.getscore(3)>-1)&&(playernow.getscore(4)>-1)&&
(playernow.getscore(5)>-1)&&(playernow.getscore(10)==-1)&&
(playernow.getscore(11)>0)&&((playernow.getscore(12)>-1)||
(die>=2)))))
getselected(die);
else
if (!takeone())
{ if ((playernow.getscore(9)==-1)&&
((playernow.getscore(10)>-1)||(r==2)||
(playernow.getscore(12)==-1)))
goforsmallstraight();
else
if (playernow.getscore(6)==-1)
if ((hits5==2)&&(((numscored==6)&&
(playernow.getscore(12)>-1))||(r==2)))
getselected(5);
else
if ((hits4==2)&&(((numscored==6)&&
(playernow.getscore(12)>-1))||(r==2)))
getselected(4);
else
if ((hits3==2)&&(((numscored==6)&&
(playernow.getscore(12)>-1))||(r==2)))
getselected(3);
else
if ((hits2==2)&&(((numscored==6)&&
(playernow.getscore(12)>-1))||(r==2)))
getselected(2);
if (!done)
if ((r==2)&&(hits0>=1)&&
(playernow.getscore(0)==-1))
getselected(0);
if (!done)
if (playernow.getscore(6)==-1)
if ((hits1==2)&&(r==2)&&
(playernow.getscore(12)>-1))
getselected(1);
else
if ((hits0==2)&&(r==2)&&
(playernow.getscore(12)>-1))
getselected(0);
else
if (hits5>=1)
getselected(5);
else
if ((hits1==2)&&(r==2))
getselected(1);
else
if (hits4>=1)
getselected(4);
else
if ((hits1==2)&&(((numscored==6)&&
(playernow.getscore(12)>-1))||
(playernow.getscore(11)>0)))
getselected(1);
else
if (hits3>=1)
getselected(3);
else
if ((hits0==2)&&(r==2))
getselected(0);
else
if (hits2>=1)
getselected(2);
else
if (hits1==2)
getselected(1);
}
if (!done)
{ if (playernow.getscore(9)==-1)
goforsmallstraight();
else
if ((playernow.getscore(6)==-1)&&(hits0>=3))
if ((playernow.getscore(7)>-1)||
(playernow.getscore(11)==0))
{ lowerhits(hits0, 3, 0);
if (r==1)
{ if ((hand0!=0)&&(hand0=3)
getselected(4);
else
if (hits3>=3)
getselected(3);
else
if (hits2>=3)
getselected(2);
else
if (hits1>=3)
getselected(1);
else
if (hits0>=3)
getselected(0);
else
if (hits0==2)
getselected(0);
else
if (hits5==2)
getselected(5);
else
if (hits4==2)
getselected(4);
else
if (hits3==2)
getselected(3);
else
if (hits2==2)
getselected(2);
else
if (hits1==2)
getselected(1);
}
else
if (playernow.getscore(12)==-1)
goforchance();
else
getselected(0);
}
}
}
}
}
}
}
}
}
}
if ((selected0==false)&&(selected1==false)&&(selected2==false)&&(selected3==false)&&
(selected4==false))
{ scoreroll();
if (!playernow.roundover())
resetmove();
}
}
}
function resetmove()
{ r=1;
bonusgiven=false;
entered=false;
hand0=-1;
hand1=-1;
hand2=-1;
hand3=-1;
hand4=-1;
selected0 = true;
selected1 = true;
selected2 = true;
selected3 = true;
selected4 = true;
}
function getmove()
{ done=false;
getyahtzeescore();
if ((score>0)||((((hits0==5)&&(playernow.getscore(0)>-1))||
((hits1==5)&&(playernow.getscore(1)>-1))||
((hits2==5)&&(playernow.getscore(2)>-1))||
((hits3==5)&&(playernow.getscore(3)>-1))||
((hits4==5)&&(playernow.getscore(4)>-1))||
((hits5==5)&&(playernow.getscore(5)>-1)))&&
((playernow.getscore(8)==-1)||(playernow.getscore(9)==-1)||
(playernow.getscore(10)==-1))))
{ scoreroll();
if (!playernow.roundover())
resetmove();
}
else
{ getlargestraightscore();
if (score==40)
if ((playernow.getscore(9) == -1)||(playernow.getscore(10) == -1))
{ scoreroll();
if (!playernow.roundover())
resetmove();
}
else
goforupper();
else
if ((playernow.getscore(10)==-1)&&(hits1>=1)&&(hits2>=1)&&(hits3>=1)&&(hits4>=1))
if ((playernow.getscore(9)==-1)||(numscored-1)||(hits1 |
|