そろそろ、テトラミノの数を増やしたい。
わりとあっさり増やせた。
- reset(n):初期化の部分でブロックの形をランダムに指定する方式とした
var minoT = (()=>{
var init=[[
[0,0,0],
[1,1,1],
[0,1,0],
],[
[1,1,0],
[1,1,0],
[0,0,0],
],[
[1,1,0],
[0,1,1],
[0,0,0],
],[
[0,1,1],
[1,1,0],
[0,0,0],
],[
[1,0,0],
[1,1,1],
[0,0,0],
],[
[0,0,1],
[1,1,1],
[0,0,0],
],[
[1,0,1],
[1,1,1],
[0,0,0],
],]
var T=[]
var rotate=function(){
let newT=JSON.parse(JSON.stringify((new Array(3)).fill((new Array(3)).fill(0))))
T.map((d,i)=>{
T[i].map((e,j)=>{
newT[i][j] = T[2-j][i]
})
})
T=newT
}
return {
rotate:function(){
rotate()
return this
},
reset:function(n=0){
T=init[n]
return this
},
val:function(x,y){
let newT=T
for(let i = 0;i<y;i++){
newT=[[0,0,0]].concat(newT)
}
for(let j = 0;j<x;j++){
newT=newT.map(d=>[0].concat(d))
}
return newT
}
}
})()