惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 里沃特

XR806开发板环境搭建记录 谈谈把网站迁移到阿里云的一些感想和其中遇到的一些问题 HTML5+JS 《五子飞》游戏实现(八)人机对战 HTML5+JS 《五子飞》游戏实现(七)游戏试玩 - 里沃特 HTML5+JS 《五子飞》游戏实现(六)鼠标响应与多重选择 HTML5+JS 《五子飞》游戏实现(五)移动棋子 HTML5+JS 《五子飞》游戏实现(四)夹一个和挑一对 - 里沃特 HTML5+JS 《五子飞》游戏实现(三)页面和棋盘棋子 HTML5+JS 《五子飞》游戏实现(二)路线分析和资源准备 - 里沃特 cocos2dx-2.2.1 免 Cygwin 环境搭建(Win8+VS2013+ADT Bundle+android-ndk-r9c) - 里沃特 深入理解 cocos2d-x 坐标系 - 里沃特 在VS2010 下编译 cocos2d-x-2.1.4 - 里沃特 FFmpeg 1.2 for Android 生成一个动态库 FFmpeg 1.2 for Android 编译动态库 - 里沃特 Linq 批量更新数据 C# 统一对 try...catch 的调用,方便保存错误日志。 手机:由全触摸屏失效所想到的 愚人节奉献给大家的礼物,敬请收下 C# 让控件全屏显示(WinForm) - 里沃特
HTML5+JS 《五子飞》游戏实现(一)规则
里沃特 · 2015-01-04 · via 博客园 - 里沃特

很久没写文章了,这个游戏其实已经写了有段时间了,一直没有完善,赶在新年之际,分享给大家。

该《五子飞》游戏,不是平常大家所说的《五子棋》,这个玩法简单,是我们老家儿时常玩的一种益智游戏,我们先来看看棋盘布局:

规则如下:

一、黑白双方(对方黑,我方白)各执五子,分别摆放在双方的边线上;

二、棋子只能走直线(斜的直线也是),不能转弯;

三、只要前面没有棋子(任何一方的)就可以跳格走;

四、可以夹死对方一个或可以挑对方两个棋子(以1表示黑子,0表示白子,-表示空白):

  1. 夹一个:任何一条线上,有且仅有双方棋子各一个,两棋子挨着,此时我方若有棋子可以通过直线走到黑子另一边,则可以把黑方棋子夹死,替换上一个我方的棋子。比如:
    • 原来是   --10- ,如果白子能走到从左边数起第2个位置-010-,则把黑子吃掉:-000-
    • 原来是   ---10,如果白子能走到从左边数起第3个位置--010,则把黑子吃掉:--000
    • 原来是   --100,如果白子走到从左边数起第2个位置-0100,不能夹死黑子,因为右边多了一个。
  2. 挑一对:任何一条线上,有对方棋子两个,且两棋子中间间隔一个空白位置,此时我方若有棋子可以通过直线走到两棋子的中间,则可以吃了对方两个棋子,替换成我方的棋子。比如:
    • 原来是   -1-1-,如果白子能走到中间位置-101-,则把两个黑子吃了换成白子:-000-

五、赢:把对方棋子全部吃掉,或者围死不能动。

好了,下章里沃特开始用代码来实现布局、走棋、吃棋等。敬请期待。

HTML5+JS 《五子飞》游戏实现(二)路线分析和资源准备 

HTML5+JS 《五子飞》游戏实现(三)页面和棋盘棋子