Кому сапёр на javascript. Можно менять размер и уровень
Автор
Сообщение
04 сентября 2016
17:11
<script>
var tabh= 10 ;
var tabw= 10 ;///size of table
var tdw=tdh= 20 ; /// size of td
var lvl= 2 ;ссылка of minering
var itr,itd;///counts for calc table
var step=0;
var tdx,tdy;ссылка of td
var count=0;
var minecount=labelcount=truelabel=0;
document.write("<table id='tt' border='1'>");
for (itr=0; itr<tabh; itr++){document.write("<tr height="+tdh+">");
for (itd=0; itd<tabw; itd++){document.write("<td width="+tdw+" onclick='TDCLICK(this)' oncontextmenu='MINE(this)' align='center'></td>")}
document.write("</tr>")}
document.write("</table><table id='tt1'><tr><td id='res'></td></tr></table>");
NEWMAP();
function MINE (tdindex){
tdx=tdindex.cellIndex; tdy=tdindex.parentNode.rowIndex;
if (tt.rows[tdy].cells[tdx].style.background!="white"){
if (tt.rows[tdy].cells[tdx].style.background=="silver")
{tt.rows[tdy].cells[tdx].style.background="green"; labelcount++; if (tt.rows[tdy].cells[tdx].id=="*"){truelabel++}}else
{tt.rows[tdy].cells[tdx].style.background="silver"; labelcount--; if (tt.rows[tdy].cells[tdx].id=="*"){truelabel--}}
res.innerText=labelcount+" / "+minecount;
if (truelabel==minecount){alert("WIN! WIN! WIN!")}
}}
function TDCLICK(tdindex){tdx=tdindex.cellIndex; tdy=tdindex.parentNode.rowIndex;
if (tt.rows[tdy].cells[tdx].style.background!="green"){
if (tt.rows[tdy].cells[tdx].id=="*"){SHOWMAP()}else{
if (tt.rows[tdy].cells[tdx].id=="0"){tt.rows[tdy].cells[tdx].style.background="white"}else
{tt.rows[tdy].cells[tdx].style.background="white"; tt.rows[tdy].cells[tdx].innerText=tt.rows[tdy].cells[tdx].id}}
res.innerText=labelcount+" / "+minecount}}
function FINDZERO(){
for (itr=1; itr<tabh-1; itr++){for (itd=1; itd<tabw-1; itd++){
if (tt.rows[itr].cells[itd].id=="0"){
tt.rows[itr].cells[itd].style.background="white";
tt.rows[itr-1].cells[itd-1].style.background="white";
if(tt.rows[itr-1].cells[itd-1].id=="0"){}else{tt.rows[itr-1].cells[itd-1].innerText=tt.rows[itr-1].cells[itd-1].id;}
tt.rows[itr-1].cells[itd].style.background="white";
if (tt.rows[itr-1].cells[itd].id=="0"){}else{tt.rows[itr-1].cells[itd].innerText=tt.rows[itr-1].cells[itd].id;}
tt.rows[itr-1].cells[itd+1].style.background="white";
if(tt.rows[itr-1].cells[itd+1].id=="0"){}else{tt.rows[itr-1].cells[itd+1].innerText=tt.rows[itr-1].cells[itd+1].id;}
tt.rows[itr].cells[itd-1].style.background="white";
if(tt.rows[itr].cells[itd-1].id=="0"){}else{tt.rows[itr].cells[itd-1].innerText=tt.rows[itr].cells[itd-1].id;}
tt.rows[itr].cells[itd+1].style.background="white";
if(tt.rows[itr].cells[itd+1].id=="0"){}else{tt.rows[itr].cells[itd+1].innerText=tt.rows[itr].cells[itd+1].id;}
tt.rows[itr+1].cells[itd-1].style.background="white";
if(tt.rows[itr+1].cells[itd-1].id=="0"){}else{tt.rows[itr+1].cells[itd-1].innerText=tt.rows[itr+1].cells[itd-1].id;}
tt.rows[itr+1].cells[itd].style.background="white";
if(tt.rows[itr+1].cells[itd].id=="0"){}else{tt.rows[itr+1].cells[itd].innerText=tt.rows[itr+1].cells[itd].id;}
tt.rows[itr+1].cells[itd+1].style.background="white";
if(tt.rows[itr+1].cells[itd+1].id=="0"){}else{tt.rows[itr+1].cells[itd+1].innerText=tt.rows[itr+1].cells[itd+1].id;}
}
}}}
function NEWMAP(){
for (itr=0; itr<tabh; itr++){for (var ii=0; ii<lvl; ii++) {tt.rows[itr].cells[Math.floor(Math.random()*tabw)].id="*";}}
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
tt.rows[itr].cells[itd].style.background="silver";
if (tt.rows[itr].cells[itd].id!="*"){
if (itr>0 && itr<tabh-1 && itd>0 && itd<tabw-1){
if (tt.rows[itr-1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr-1].cells[itd].id=="*"){count++}
if (tt.rows[itr-1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr].cells[itd-1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itr==0){
if (itd==0){
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itd>0 && itd<tabw-1){
if (tt.rows[itr].cells[itd-1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itd==tabw-1){
if (tt.rows[itr].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-1].id=="*"){count++}}
}
if (itr==tabh-1){
if (itd==0){
if (tt.rows[tabh-2].cells[itd].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd+1].id=="*"){count++}
if (tt.rows[tabh-1].cells[itd+1].id=="*"){count++}}
if (itd>0 && itd<tabw-1){
if (tt.rows[tabh-1].cells[itd-1].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd-1].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd+1].id=="*"){count++}
if (tt.rows[tabh-1].cells[itd+1].id=="*"){count++}}
if (itd==tabw-1){
if (tt.rows[tabh-1].cells[tabw-2].id=="*"){count++}
if (tt.rows[tabh-2].cells[tabw-2].id=="*"){count++}
if (tt.rows[tabh-2].cells[tabw-1].id=="*"){count++}}
}
if (itd==0 && itr>0 && itr<tabh-1){
if (tt.rows[itr-1].cells[itd].id=="*"){count++}
if (tt.rows[itr-1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}}
if (itd==tabw-1 && itr>0 && itr<tabh-1){
if (tt.rows[itr-1].cells[tabw-1].id=="*"){count++}
if (tt.rows[itr-1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-1].id=="*"){count++}}
tt.rows[itr].cells[itd].id=count;
count=0;
}}}
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
if (tt.rows[itr].cells[itd].id=="*"){minecount++}}}
res.innerText=labelcount+" / "+minecount;
FINDZERO();}
function SHOWMAP(){
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
if (tt.rows[itr].cells[itd].id=="*"){tt.rows[itr].cells
var tabh= 10 ;
var tabw= 10 ;///size of table
var tdw=tdh= 20 ; /// size of td
var lvl= 2 ;ссылка of minering
var itr,itd;///counts for calc table
var step=0;
var tdx,tdy;ссылка of td
var count=0;
var minecount=labelcount=truelabel=0;
document.write("<table id='tt' border='1'>");
for (itr=0; itr<tabh; itr++){document.write("<tr height="+tdh+">");
for (itd=0; itd<tabw; itd++){document.write("<td width="+tdw+" onclick='TDCLICK(this)' oncontextmenu='MINE(this)' align='center'></td>")}
document.write("</tr>")}
document.write("</table><table id='tt1'><tr><td id='res'></td></tr></table>");
NEWMAP();
function MINE (tdindex){
tdx=tdindex.cellIndex; tdy=tdindex.parentNode.rowIndex;
if (tt.rows[tdy].cells[tdx].style.background!="white"){
if (tt.rows[tdy].cells[tdx].style.background=="silver")
{tt.rows[tdy].cells[tdx].style.background="green"; labelcount++; if (tt.rows[tdy].cells[tdx].id=="*"){truelabel++}}else
{tt.rows[tdy].cells[tdx].style.background="silver"; labelcount--; if (tt.rows[tdy].cells[tdx].id=="*"){truelabel--}}
res.innerText=labelcount+" / "+minecount;
if (truelabel==minecount){alert("WIN! WIN! WIN!")}
}}
function TDCLICK(tdindex){tdx=tdindex.cellIndex; tdy=tdindex.parentNode.rowIndex;
if (tt.rows[tdy].cells[tdx].style.background!="green"){
if (tt.rows[tdy].cells[tdx].id=="*"){SHOWMAP()}else{
if (tt.rows[tdy].cells[tdx].id=="0"){tt.rows[tdy].cells[tdx].style.background="white"}else
{tt.rows[tdy].cells[tdx].style.background="white"; tt.rows[tdy].cells[tdx].innerText=tt.rows[tdy].cells[tdx].id}}
res.innerText=labelcount+" / "+minecount}}
function FINDZERO(){
for (itr=1; itr<tabh-1; itr++){for (itd=1; itd<tabw-1; itd++){
if (tt.rows[itr].cells[itd].id=="0"){
tt.rows[itr].cells[itd].style.background="white";
tt.rows[itr-1].cells[itd-1].style.background="white";
if(tt.rows[itr-1].cells[itd-1].id=="0"){}else{tt.rows[itr-1].cells[itd-1].innerText=tt.rows[itr-1].cells[itd-1].id;}
tt.rows[itr-1].cells[itd].style.background="white";
if (tt.rows[itr-1].cells[itd].id=="0"){}else{tt.rows[itr-1].cells[itd].innerText=tt.rows[itr-1].cells[itd].id;}
tt.rows[itr-1].cells[itd+1].style.background="white";
if(tt.rows[itr-1].cells[itd+1].id=="0"){}else{tt.rows[itr-1].cells[itd+1].innerText=tt.rows[itr-1].cells[itd+1].id;}
tt.rows[itr].cells[itd-1].style.background="white";
if(tt.rows[itr].cells[itd-1].id=="0"){}else{tt.rows[itr].cells[itd-1].innerText=tt.rows[itr].cells[itd-1].id;}
tt.rows[itr].cells[itd+1].style.background="white";
if(tt.rows[itr].cells[itd+1].id=="0"){}else{tt.rows[itr].cells[itd+1].innerText=tt.rows[itr].cells[itd+1].id;}
tt.rows[itr+1].cells[itd-1].style.background="white";
if(tt.rows[itr+1].cells[itd-1].id=="0"){}else{tt.rows[itr+1].cells[itd-1].innerText=tt.rows[itr+1].cells[itd-1].id;}
tt.rows[itr+1].cells[itd].style.background="white";
if(tt.rows[itr+1].cells[itd].id=="0"){}else{tt.rows[itr+1].cells[itd].innerText=tt.rows[itr+1].cells[itd].id;}
tt.rows[itr+1].cells[itd+1].style.background="white";
if(tt.rows[itr+1].cells[itd+1].id=="0"){}else{tt.rows[itr+1].cells[itd+1].innerText=tt.rows[itr+1].cells[itd+1].id;}
}
}}}
function NEWMAP(){
for (itr=0; itr<tabh; itr++){for (var ii=0; ii<lvl; ii++) {tt.rows[itr].cells[Math.floor(Math.random()*tabw)].id="*";}}
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
tt.rows[itr].cells[itd].style.background="silver";
if (tt.rows[itr].cells[itd].id!="*"){
if (itr>0 && itr<tabh-1 && itd>0 && itd<tabw-1){
if (tt.rows[itr-1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr-1].cells[itd].id=="*"){count++}
if (tt.rows[itr-1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr].cells[itd-1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itr==0){
if (itd==0){
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itd>0 && itd<tabw-1){
if (tt.rows[itr].cells[itd-1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd-1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}}
if (itd==tabw-1){
if (tt.rows[itr].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-1].id=="*"){count++}}
}
if (itr==tabh-1){
if (itd==0){
if (tt.rows[tabh-2].cells[itd].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd+1].id=="*"){count++}
if (tt.rows[tabh-1].cells[itd+1].id=="*"){count++}}
if (itd>0 && itd<tabw-1){
if (tt.rows[tabh-1].cells[itd-1].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd-1].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd].id=="*"){count++}
if (tt.rows[tabh-2].cells[itd+1].id=="*"){count++}
if (tt.rows[tabh-1].cells[itd+1].id=="*"){count++}}
if (itd==tabw-1){
if (tt.rows[tabh-1].cells[tabw-2].id=="*"){count++}
if (tt.rows[tabh-2].cells[tabw-2].id=="*"){count++}
if (tt.rows[tabh-2].cells[tabw-1].id=="*"){count++}}
}
if (itd==0 && itr>0 && itr<tabh-1){
if (tt.rows[itr-1].cells[itd].id=="*"){count++}
if (tt.rows[itr-1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd+1].id=="*"){count++}
if (tt.rows[itr+1].cells[itd].id=="*"){count++}}
if (itd==tabw-1 && itr>0 && itr<tabh-1){
if (tt.rows[itr-1].cells[tabw-1].id=="*"){count++}
if (tt.rows[itr-1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-2].id=="*"){count++}
if (tt.rows[itr+1].cells[tabw-1].id=="*"){count++}}
tt.rows[itr].cells[itd].id=count;
count=0;
}}}
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
if (tt.rows[itr].cells[itd].id=="*"){minecount++}}}
res.innerText=labelcount+" / "+minecount;
FINDZERO();}
function SHOWMAP(){
for (itr=0; itr<tabh; itr++){for (itd=0; itd<tabw; itd++){
if (tt.rows[itr].cells[itd].id=="*"){tt.rows[itr].cells
0
+0
-0
04 сентября 2016
17:14
var tabh= 10 ;
var tabw= 10 ;///size of table
var lvl= 2 ;level of minering
поменять числа по вкусу и играть
var tabw= 10 ;///size of table
var lvl= 2 ;level of minering
поменять числа по вкусу и играть
0
+0
-0
Для отправки сообщений вам необходимо Авторизоваться