Javascript 神経衰弱ゲームを作ろう その1(まだ未完成です)

現在のコード

f:id:kirikko_Scondcube:20200414103507p:plain

現在の結果

html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div id="palet"></div>

<div id="result">ここに経過時間が読み込まれるようにする</div>

<div id="palet2"></div>

<script src="js/main.js"></script>
</body>
</html>

 

css

#palet ,#palet2 {
width: 310px;
height: 490px;
background-color: antiquewhite;

}


.card {
width: 60px;
height: 80px;
background-size: cover;
float: left;
}

.front {
background-image: url(../images/cardFront.png);

}

.spade1 {
background-image: url(../images/spade/1.png);
}
.spade2 {
background-image: url(../images/spade/2.png);
}
.spade3 {
background-image: url(../images/spade/3.png);
}
.spade4 {
background-image: url(../images/spade/4.png);
}
.spade5 {
background-image: url(../images/spade/5.png);
}
.spade6 {
background-image: url(../images/spade/6.png);
}
.spade7 {
background-image: url(../images/spade/7.png);
}
.spade8 {
background-image: url(../images/spade/8.png);
}
.spade9 {
background-image: url(../images/spade/9.png);
}
.spade10 {
background-image: url(../images/spade/10.png);
}
.spade11 {
background-image: url(../images/spade/11.png);
}
.spade12{
background-image: url(../images/spade/12.png);
}
.spade13{
background-image: url(../images/spade/13.png);
}


.heart1 {
background-image: url(../images/heart/1.png);
}
.heart2 {
background-image: url(../images/heart/2.png);
}
.heart3 {
background-image: url(../images/heart/3.png);
}
.heart4 {
background-image: url(../images/heart/4.png);
}
.heart5 {
background-image: url(../images/heart/5.png);
}
.heart6 {
background-image: url(../images/heart/6.png);
}
.heart7 {
background-image: url(../images/heart/7.png);
}
.heart8 {
background-image: url(../images/heart/8.png);
}
.heart9 {
background-image: url(../images/heart/9.png);
}
.heart10 {
background-image: url(../images/heart/10.png);
}
.heart11 {
background-image: url(../images/heart/11.png);
}
.heart12{
background-image: url(../images/heart/12.png);
}
.heart13{
background-image: url(../images/heart/13.png);
}


.finish {
background-image: none;
}



#result{
background-color: lightskyblue;
}

 

js

// ハートとスペードのトランプをそれぞれ別の関数で配置したもの

window.onload = function(){

let arr =;


function frontList(){
for(i = 0; i < 26; i++){
arr


let tramp = document.createElement('div')
const palet = document.getElementById('palet');
tramp.classList.add('front', 'card');
palet.appendChild(tramp);
}
}



 
// スペードとハートを並べる処理↓ーーーーーーーーーーーーーーーーーーーーーー


function backList(){
for(i = 1; i < 27; i++){
if(i < 14){

let tramp =document.createElement('div')
const palet2 =document.getElementById('palet2');
tramp.classList.add(`spade${i}`, 'card');
palet2.appendChild(tramp);
}else{
let tramp =document.createElement('div')
const palet2 =document.getElementById('palet2');
tramp.classList.add(`heart${i-13}`, 'card');
palet2.appendChild(tramp);
}
}
}
// ここまでーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー




// 関数の実行処理↓ーーーーーーーーーーーーーーーーーーーーー


setTimeout(frontList, 1000);
//画面をロード後1秒後に読み込まれる
 
setTimeout(backList, 1500);
// 画面をロード後1.5秒後に読み込まれる


}
 

 

今の内容はカード26枚の裏と表をそれぞれjsで操作し配置しただけ

カードはスペード13枚、ハート13枚を使用想定

スペードとハートを並べる処理は以下のようにスペードとハートで分けたり

// ハートとスペードのトランプをそれぞれ別の関数で配置したもの

window.onload = function(){

let arr =;







function frontList(){
for(i = 0; i < 26; i++){
arr


let tramp = document.createElement('div')
const palet = document.getElementById('palet');
tramp.classList.add('front', 'card');
palet.appendChild(tramp);
}
}



 
// スペードを並べる処理↓ーーーーーーーーーーーーーーーーーーーーーー


function spadeList(){
for(i = 1; i < 14; i++){
//for文は関数の中に入れないとiが1ずつ増えた値をspadeiに反映できない

let tramp =document.createElement('div')
const palet2 =document.getElementById('palet2');
tramp.classList.add(`spade${i}`, 'card');
palet2.appendChild(tramp);
}
}
// ここまでーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー





 
// ハートを並べる処理↓ーーーーーーーーーーーーーーーーーーーーーー
function heartList(){
for(i = 14; i < 27; i++){
//for文は関数の中に入れないとiが1ずつ増えた値をspadeiに反映できない

let tramp =document.createElement('div')
const palet2 =document.getElementById('palet2');
tramp.classList.add(`heart${i-13}`, 'card');
palet2.appendChild(tramp);
}
}
// ここまでーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー







// 関数の実行処理↓ーーーーーーーーーーーーーーーーーーーーー


setTimeout(frontList, 1000);
//画面をロード後1秒後に読み込まれる
 
setTimeout(spadeList, 1500);
// 画面をロード後1.5秒後に読み込まれる

setTimeout(heartList, 2000);
// 画面をロード後2秒後に読み込まれる

}
 

スペードとハートを分けて記述

 

 

スペードとハートを一緒の関数に入れつつifを使用しない書き方

// スペードとハートを同じ関数で配置したもの

window.onload = function(){

let arr =[];







function frontList(){
for(i = 0; i < 26; i++){


let tramp = document.createElement('div')
const palet = document.getElementById('palet');
tramp.classList.add('front', 'card');
palet.appendChild(tramp);
}
}



 
// スペードとハートを並べる処理↓ーーーーーーーーーーーーーーーーーーーーーー


function backList(){
for(i = 1; i < 14; i++){
//for文は関数の中に入れないとiが1ずつ増えた値をspadeiに反映できない

let spade =document.createElement('div')
const palet2 =document.getElementById('palet2');
spade.classList.add(`spade${i}`, 'card');
palet2.appendChild(spade);
let heart =document.createElement('div')
heart.classList.add(`heart${i}`, 'card');
palet2.appendChild(heart);
}
}
// ここまでーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー




// 関数の実行処理↓ーーーーーーーーーーーーーーーーーーーーー


setTimeout(frontList, 1000);
//画面をロード後1秒後に読み込まれる
 
setTimeout(backList, 1500);
// 画面をロード後1.5秒後に読み込まれる

}
 

ifを使わない書き方

 

も出来る。

 

上記3パターンを検討した上で、一番最初の同じ関数でifを使用したものを使うようにした。

理由をしては同じfor文でカードを配置できるため、iが0〜26になる番号がそれぞれのカードにスペード、ハート分けずに使用出来るため

これを次回では配列に入れ、シャッフル可能にする予定

 

続く