Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проверте код, простейший тетрис 
:(
    Опции темы
FATIK
Дата 12.5.2012, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 26.4.2012

Репутация: нет
Всего: нет



простейший скрипт тетриса.
проверте пожалуста function offset,и скажите что там не правильно!зараннее спасибо

Код

var tetris = [
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0]
];
var ver = 0,
    gor = 2,
    c = 1;

var block = document.getElementById("block");

function empty(x,y)
{
    var row = document.getElementById("row" + y);
    var cell = row.getElementsByTagName("td")[x];
    cell.childNodes.length = 0;
}
function paint(x, y){

    var row = document.getElementById("row" + y);
    var cell = row.getElementsByTagName("td")[x];
    var b = block.cloneNode();
    cell.appendChild(b);
}

function offset(x,y) {
   var canMove = true;
   for(var n=0 ; n<c ; n++){

        var newX = gor+n;
        if( gor+x+n>0 && gor+x+n<5 )
            newX = gor+x+n;
        if (tetris[ver+y][newX] == 0) {
            tetris[ver][gor+n]=0;
            empty(gor+n, ver);
            tetris[ver+y][newX]=1;
            paint(newX, ver+y);
            
        }
        else {
            ver = 0;
            c = Math.floor((Math.random()*3)+1);
            if (c == 3)
                gor = 1;
            else 
                gor = 2;
        }
    }
}

onkeydown = function(e){
  
  var offset = 0;
  
  switch (e.keyCode){
    case 37: offset =  1; break; 
    case 39: offset = -1; break; 
    case 40: offset = -5; break; 
  }
  
  paint();
}

var speed = 1000;
var iii=30;

function loop(){
  iii--;
  offset(0, 1);
  if (iii > 0) setTimeout(loop, speed);
}

loop();


Код

body{ font-family: monospace; font-size: 20px}
#tetris { background-color: #000; }
#tetris td { border: 1px solid #fff; width: 32px; height: 34px; vertical-align: middle; text-align: center; }
#tetris td img { display : block;}
#block { display:none; width: 32px; height: 32px; border:none; }


Код

<table id="tetris" cellpadding="0" cellspacing="0">
    <tr id="row1">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr id="row2">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr  id="row3">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr  id="row4">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr  id="row5">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr  id="row6">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
    <tr  id="row7">
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
    </tr>
</table>
<img id="block" src="block.png" />


Это сообщение отредактировал(а) Aliance - 12.5.2012, 15:31
PM MAIL   Вверх
Aliance
Дата 12.5.2012, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



В чем заключается вопрос?
PM MAIL WWW ICQ Skype   Вверх
FATIK
Дата 12.5.2012, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 26.4.2012

Репутация: нет
Всего: нет



проверка заполнения.вот там не могу понять в чом дело.
PM MAIL   Вверх
FATIK
Дата 12.5.2012, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 26.4.2012

Репутация: нет
Всего: нет



кто нибуть.помогите..аааа
PM MAIL   Вверх
Aliance
Дата 12.5.2012, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 17
Всего: 137



Никто не будет бесплатно разбираться в чужом большом коде. (аля "вот задача как сделать")
Здесь помогают с решением конкретной задачи или алгоритма. (аля "я попробовал решить задачу так-то, но таким способом не вышло, как правильно")

Поэтому выкиньте лишний код, напишите то место, в котором вы думаете есть ошибка. Напишите почему вы написали именно так, а не иначе, и сформулируйте четкий вопрос. 
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0456 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.