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

Я в начале не поверил.
Потом посмотрел код. - Реально.
...
Рейтинг: 0 / 0
05.10.2020, 04:05
    #40005348
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
автор
<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
05.10.2020, 04:49
    #40005349
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
Пока разобрался, что вся шахматная доска формируется циклом, в котором меняется 1 цифра в цвете клетки и прорисовываются шахматные фигуры из Юнкода.

function W()

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

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

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

и тд.
...
Рейтинг: 0 / 0
05.10.2020, 06:55
    #40005352
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это разметка фигур со сдвигом их по табличке символов до шахматных знаков
...
Рейтинг: 0 / 0
05.10.2020, 07:16
    #40005354
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
...
Рейтинг: 0 / 0
05.10.2020, 07:28
    #40005356
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
Шахматный пакет 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
05.10.2020, 07:46
    #40005360
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
Расшифровка кода есть. Но насколько я понял - в его книге. А книгу он продаёт.
...
Рейтинг: 0 / 0
05.10.2020, 08:40
    #40005366
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
"+(I[u]?9808+l[67+I[u]]:160)

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

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

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

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
05.10.2020, 19:53
    #40005545
miltorg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
Там таких фокусов - очень много. То есть код искусственно искажается чтоб получить минимальный размер.
...
Рейтинг: 0 / 0
05.10.2020, 20:09
    #40005548
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шахматы в 1 кБ на JS. Это реально.
miltorg,

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

Я ведь писал:

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

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

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

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

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


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