字符界面的中国象棋

联机我感觉比较那啥,还是先实现人机对战靠谱,起码不用人格分裂自己跟自己下了.

国际象棋是可以联机玩的,lichess平台提供了对战api,自己用emacs画好界面调api连上去就可以联机对战了

刚刚实现了保存和加载棋局.

elisp 干这事简直不要太爽,只要把棋局当前状态包裹成为一个 lisp 对象,然后直接将其按输出格式写到文件中就 OK,加载的话,就将文件内容按 list 的读入语法加载到内存就行.

保存棋局执行 chess-cn–save 命令,会保存棋局文件到变量 chess-cn–saved-dir 指定目录下,以时间戳为文件名并以 .chess 为后缀. 该文件内容就是一个 list 对象,人眼可读.

加载棋局执行 chess-cn–load 命令,选择棋局文件即可,默认展开到 变量 chess-cn–saved-dir 指定目录下.

棋步历史和悔棋也搞定了,悔棋命令 chess-cn–undo (暂未绑定快捷键)

已添加将帅不可见面的规则。

搞定了将军判断以及将死判断(胜负判决).

1 个赞

感觉联机还是很有用的,比如在手机上使用emacs时,把电脑端的整个emacs配置移到手机端没有意义,到了手机上就不想折腾了,只想放松玩下游戏……我刚刚实现了在手机上 联机使用org-mode

最后一步棋步突出显示