前提・実現したいこと
jsで簡単なゲームを作っています。
ゲーム開始ボタンをクリックすると、joker以外の52枚からランダムで画像が5枚表示されます。
ランダムで5枚表示された画像の役を表示させたいのですが、上手く条件分岐ができていないせいか、
フラッシュのみしか出ません。
どなたか回答お願い致します。
ソースコードも載せていただけるとありがたいです。
該当のソースコード
js
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4<meta charset="utf-8"> 5<title>練習</title> 6</head> 7<body> 8 <p id="charName">役名</p> 9 10 11 12 <img id="parentCard1" src="image/parent.jpg" width="100"> 13 <img id="parentCard2" src="image/parent.jpg" width="100"> 14 <img id="parentCard3" src="image/parent.jpg" width="100"> 15 <img id="parentCard4" src="image/parent.jpg" width="100"> 16 <img id="parentCard5" src="image/parent.jpg" width="100"> 17 18 <input type="button" value="ゲーム開始" onclick="start()"> 19<script> 20function start(){ 21 //ランダムで5枚画像表示 22 parentCard=[]; 23 var parentArray=["image/c01.jpg","image/c02.jpg", 24 "image/c03.jpg","image/c04.jpg","image/c05.jpg", 25 "image/c06.jpg","image/c07.jpg","image/c08.jpg", 26 "image/c09.jpg","image/c10.jpg","image/c11.jpg", 27 "image/c12.jpg","image/c13.jpg","image/d01.jpg", 28 "image/d02.jpg","image/d03.jpg","image/d04.jpg", 29 "image/d05.jpg","image/d06.jpg","image/d07.jpg", 30 "image/d08.jpg","image/d09.jpg","image/d10.jpg", 31 "image/d11.jpg","image/d12.jpg","image/d13.jpg", 32 "image/h01.jpg","image/h02.jpg","image/h03.jpg", 33 "image/h04.jpg","image/h05.jpg","image/h06.jpg", 34 "image/h07.jpg","image/h08.jpg","image/h09.jpg", 35 "image/h10.jpg","image/h11.jpg","image/h12.jpg", 36 "image/h13.jpg","image/s01.jpg","image/s02.jpg", 37 "image/s03.jpg","image/s04.jpg","image/s05.jpg", 38 "image/s06.jpg","image/s07.jpg","image/s08.jpg", 39 "image/s09.jpg","image/s10.jpg","image/s11.jpg", 40 "image/s12.jpg","image/s13.jpg",]; 41for(var i=0;i<5;i++){ 42parentCard[i]=parentArray.splice(Math.floor(Math.random()*parentArray.length),1); 43document.getElementById("parentCard"+(i+1)).src=parentCard[i]; 44} 45 46var suit=["heart","dia","club","spade"]; 47 48 //昇順ソート 49 parentCard.sort(function(a, b) { 50 if (a.num < b.num) return -1; 51 if (a.num > b.num) return 1; 52 return 0; 53 }); 54 //役判定 55 if ((parentCard[0].suit === parentCard[1].suit) && (parentCard[1].suit === parentCard[2].suit) && (parentCard[2].suit === parentCard[3].suit) && (parentCard[3].suit === parentCard[4].suit)) { 56 if (parentCard[0].num === 10) { 57 document.getElementById("charName").innerHTML = "ロイヤルストレートフラッシュ"; 58 } else if ((parentCard[4].num - parentCard[0].num) === 4) { 59 document.getElementById("charName").innerHTML = "ストレートフラッシュ"; 60 } else { 61 document.getElementById("charName").innerHTML = "フラッシュ"; 62 } 63 }else if ((parentCard[0].num === parentCard[3].num) || (parentCard[1].num === parentCard[4].num)) { 64 document.getElementById("charName").innerHTML = "フォーカード"; 65 66 } else if (((parentCard[0].num === parentCard[2].num) && (parentCard[3].num === parentCard[4].num)) || ((parentCard[0].num === parentCard[1].num) && (parentCard[2].num === parentCard[4].num))) { 67 document.getElementById("charName").innerHTML = "フルハウス"; 68 69 } else if ((parentCard[4].num - parentCard[3].num === 1) && (parentCard[3].num - parentCard[2].num === 1) && (parentCard[2].num - parentCard[1].num === 1) && (parentCard[1].num - parentCard[0].num === 1)) { 70 document.getElementById("charName").innerHTML = "ストレート"; 71 } else if ((parentCard[0].num == parentCard[2].num) || (parentCard[1].num === parentCard[3].num) || (parentCard[2].num === parentCard[4].num)) { 72 document.getElementById("charName").innerHTML = "スリーカード"; 73 } else if (((parentCard[0].num == parentCard[1].num) && (parentCard[2].num === parentCard[3].num)) || ((parentCard[1].num === parentCard[2].num) && (parentCard[3].num === parentCard[4].num)) || 74 ((parentCard[0].num === parentCard[1].num) && (parentCard[4].num == parentCard[5].num))) { 75 document.getElementById("charName").innerHTML = "ツーペア"; 76 } else if ((parentCard[0].num == parentCard[1].num) || (parentCard[1].num === parentCard[2].num) || (parentCard[2].num === parentCard[3].num) || (parentCard[3].num === parentCard[4].num)) { 77 document.getElementById("charName").innerHTML = "ワンペア"; 78 }else{ 79 document.getElementById("charName").innerHTML = "ハイカード"; 80 } 81} 82 83 84 85</script> 86</body> 87</html> 88 89
試したこと
ここに問題に対して試したことを記載してください。