Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 15

Думаю вы легко ошибки в стиле программирования и не только.

Думаю вы просто смысл и не только.

Классно) Я когда-то давно делал пет-проджект с полезной нагрузкой в виде шашек. Именно по шашкам трудно было найти информацию. А ваша статья может облегчить жизнь какому-то студенту в написании лабораторной или курсовой)

const figures = {
  'p': '♟', 'r': '♜', 'n': '♞', 'b': '♝', 'q': '♛', 'k': '♚', 'd': '⛂', 'm': '⛃'
  'P': '♙', 'R': '♖', 'N': '♘', 'B': '♗', 'Q': '♕', 'K': '♔', 'D': '⛀', 'M': '⛁'
  'e': '  ', 'f': '.', '/': "<br>\n",
};
const decodeField = (code) =>
  code.replaceAll(
    /[prnbqk]/ig,
    (c) => `${figures.f}${figures[c]}`,
  ).replaceAll(
    /\d/g,
    (d) => `${figures.f}${figures.e}`.repeat(+d),
  ).replaceAll('/', `${figures.f}${figures['/']}`)
 + figures.f;

decodeField('3r1kq1/p2prp1p/5RpP/8/2Q5/1B4P1/P4PK1/8');

// .  .  .  .♜.  .♚.♛.  .<br>
// .♟.  .  .♟.♜.♟.  .♟.<br>
// .  .  .  .  .  .♖.♟.♙.<br>
// .  .  .  .  .  .  .  .  .<br>
// .  .  .♕.  .  .  .  .  .<br>
// .  .♗.  .  .  .  .♙.  .<br>
// .♙.  .  .  .  .♙.♔.  .<br>
// .  .  .  .  .  .  .  .  .

Давным-давно была шахматная программа Sargon III. В ранних ее версиях и доска и фигуры отрисовывались досовской псевдографикой. Весь геймплей происходил в текстовом режиме 80х25.

Геймплей

О да, на Apple II тоже был, кажется, Sargon II.

В MS DOS через ассемблер, да и на Спектруме можно было программировать некоторые символы, заменяя текущее отображение на необходимое, т.е., к примеру, перерисовать шрифт, или использовать символы вместо спрайтов

В детстве на 286ом у меня была не помню какая программа, которая позволяла рисовать шрифты под DOS. И не помню какая программа которая позволяла их загружать. Было забавно. Но все умерло на 40мб жестком диске)))

Загружались они через mode con cp prep=((NUMBER),,FILE) плюс mode con cp sel=NUMBER вероятнее всего. А программа для шрифтов — досадно, что потерялась.

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

Можно использовать ТЕХ формат для этого.

Да и где-то в глубинах памяти есть заметка: "наложение символа на символ спецсимволом работает не со всеми символами".

А у меня в голове отложилось что это работает только со спецсимволами (Combining Marks или что-то вроде того). Множество чёрных и белых квадратиков есть, только вот как наложение сделать? Там вроде и подходящая диакритика есть, только вот выглядят сейчас не очень: ♔ + ◌⃞ (U+20DE) = ♔⃞. На чёрное поле фигуру только с помощью голого текста поставить не получится.

Эмодзи раскрасить можно (????), только с шахматами это не работает. Пичалька ?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации