powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Шахматы в 1 кБ на JS. Это реально.
19 сообщений из 19, страница 1 из 1
Шахматы в 1 кБ на JS. Это реально.
    #40005347
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шахматы в 1 кБ на JS. Это реально.

Я в начале не поверил.
Потом посмотрел код. - Реально.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005348
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
<canvas id="c"></canvas>
<script>for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];l[B]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE".charCodeAt(B)-64,B++<120;I[B-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]:7);function X(c,h,e,s){c^=8;for(var o,S,C,A,R,T,G,d=e&&X(c,0)>1e4,n,N=-1e8,O=20;++O<99;)if((o=I[T=O])&&(G=o^c)<7){A=G--&2?8:4;C=o-9?l[61+G]:49;do if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^c)>9&&G|A>2){if(!(R-2&7))return 78-h<<x;n=G|(c?T>29:T<91)?o:6^c;S=(R&&l[R&7|32]*2-h-G)+(G?0:n-o?110:(A<2)+1);if(e>h||1<e&e==h&&S>2|d){I[T]=n;I[O]=0;S-=X(c,h+1,e,S-N);if(!(h||e-1|B-O|T-b|S<-1e4))return W(),c&&setTimeout("X(8,0,2),X(8,0,1)",50);I[O]=o;I[T]=R}if(S>N||!h&S==N&&Math.random()<.5)if(N=S,e>1)if(h?s-S<0:(B=O,b=T,0))return N}while(!R&G>2||(T=O,(G||A>2|(c?O>78:O<41)&!R)&&++C*--A))}return N}function W(){i="<table>";for(u=18;u<98;document.body.innerHTML=i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W():X(0,0,1)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>"+(I[u]?9808+l[67+I[u]]:160)+";":u++&&"<tr>")B=b}W()</script>
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005349
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока разобрался, что вся шахматная доска формируется циклом, в котором меняется 1 цифра в цвете клетки и прорисовываются шахматные фигуры из Юнкода.

function W()

Занимает приблизительно - одну четвёртую кода
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005350
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При нажатии происходит:

I[b=21]>8?W():X(0,0,1)

I[b=22]>8?W():X(0,0,1)

и тд.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005352
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это разметка фигур со сдвигом их по табличке символов до шахматных знаков
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005354
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005356
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шахматный пакет Toledo Javascript. 10 мая 2013 г.
Оскар Толедо Г. biyubi@gmail.com
(c) Авторские права 2009-2013 Оскар Толедо Г.

Этот пакет содержит следующие файлы:

toledo_javascript_chess_3.html
Toledo Javascript Chess, используя только Unicode
графика для отображения фигур. 2299 байт.

toledo_javascript_chess_1.html
Toledo Javascript Chess, используя только буквы для
отображение частей. 2159 байт.

toledo_javascript_chess_2.html
Toledo Javascript Chess, используя графику для
экспонаты. 3130 байт.

0.gif Пустой квадрат
1.gif Черная пешка
2.gif Черный король
3.gif Черный рыцарь
4.gif Черный слон
5.gif Черная ладья
6.gif Черная королева
9.gif Белая пешка
10.gif Белый король
11.gif Белый рыцарь
12.gif Белый слон
13.gif Белая ладья
14.gif Белая королева
Части GIF могут быть размером до 40x40 пикселей.
(в настоящее время 8x8 для экономии места)

tiny_chess_1.html
Крошечные шахматы (1023 байта Javascript!)

Программа отправлена ​​на конкурс JS1K, заняла 2 место!
Проверьте это на:
http://js1k.com/
http://js1k.com/demo/750/

Играйте в шахматы против компьютера по акции только ферзь
и без рокировки и без прохода.

Щелкните исходный квадрат, а затем целевой квадрат для перемещения
кусок, это будет подтверждать ходы.

Использует графику Unicode для шахматных фигур.

tiny_chess_2.html
Та же программа, но с рокировкой и на проходе, только
использует 1251 байт Javascript !.

readme.txt
Этот файл.

Уровень игры всех программ фиксирован на 3-х слойной глубине, можно
увеличьте его, редактируя исходный код (только если у вас очень
быстрый браузер).

Посетите http://www.nanochess.org для получения дополнительной информации и других
интересные биты.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005360
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расшифровка кода есть. Но насколько я понял - в его книге. А книгу он продаёт.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005366
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"+(I[u]?9808+l[67+I[u]]:160)

- это то что будет изображено в клетке
Если I[u] не существует - то будет неразрывный пробел.
Если I[u] существует 9808+l[67+I[u]]
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005373
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Непонятно возбуждение.
В демо-сценах есть и более впечатляющие примеры.
Например kkrieger.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005492
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,

у вас есть описание кода? Алгоритм. Я не нашёл.
Ковыряю потихоньку код. Делюсь
Что не так? Любите стрелялки? - Я не против
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005538
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разочарование...
Это как фокус...
Я частично разобрался в коде... - Не получил никаких новых знаний.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005540
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg
Это как фокус...
Я частично разобрался в коде... - Не получил никаких новых знаний.
поделись в чем фокус
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005544
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Ну например вместо простого массива - пишется цикл.

for (
B = i = y = u = b = i = 5 - 5, x = 10, I = [], l = [];
l[B] = "ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK IDHGFE".charCodeAt(B) - 64, B++ < 120;
I[B - 1] = B % x ? B / x % x < 2 | B % x < 2 ? 7 : B / x & 4 ? 0 : l[i++] : 7
);

вместо:

l= [5,3,4,6,2,4,3,5,1,1,1,1,1,1,1,1,9,9,9,9,9,9,9,9,13,
11,12,14,10,12,11,13,0,7,0,20,19,34,62,-1,1,-10,10,-11,-9,9,11,10,20,-11,-9,-10,-20,-21,-19,-12,-8,8,12,19,21,45,39,53,43,39,39,-32,15,10,14,13,12,11,-32,-32,9,4,8,7,6,5,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,
NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,
NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN];

I = [7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,3,4,6,2,4,3,5,7,7,1,1,1,1,
1,1,1,1,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,0,0,0,0,0,0,7,7,0,0,
0,0,0,0,0,0,7,7,9,9,9,9,9,9,9,9,7,7,13,11,12,14,10,12,11,13,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7];
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005545
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там таких фокусов - очень много. То есть код искусственно искажается чтоб получить минимальный размер.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005548
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg,

ну с построением, это не сложно, это я разобрался
я не нашел как обрабатываются события
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005549
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Я ведь писал:

авторПри нажатии происходит:

I[b=21]>8?W():X(0,0,1)

I[b=22]>8?W():X(0,0,1)

и тд.
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005550
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miltorg,

гы !
в элементах поленился развернуть таблицу
...
Рейтинг: 0 / 0
Шахматы в 1 кБ на JS. Это реально.
    #40005553
Фотография miltorg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для тех кто говорит что во всём разобрался.
Как изменить код чтоб ходили только белые? А черные - не двигались.
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Шахматы в 1 кБ на JS. Это реально.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]