生命游戏代码_混沌:Game of life生命游戏

0x01 引言 “道生一,一生二,二生三,三生万物。” 0x02 背景

        这个游戏也叫康威生命游戏、细胞自动机、元胞自动机,是一个二维矩阵世界的零玩家游戏。在游戏的进行中,杂乱无序的细胞会逐渐演化出各种精致、有形的结构;这些结构往往有很好的对称性,而且每一代都在变化形状。一些形状已经锁定,不会逐代变化。有时,一些已经成形的结构会因为一些无序细胞的“入侵”而被破坏。但是形状和秩序经常能从杂乱中产生出来。

        生命游戏被许多计算机程序实现了。Unix 世界中的许多 Hacker 喜欢玩这个游戏,他们用字符代表一个细胞,在一个计算机屏幕上进行演化。著名的GNUEmacs 编辑器中就包括这样一个小游戏。

        本例始作于五一假期,在家吃着西瓜,突然在 B 站刷到这个话题,印象深刻,后面就抽空写了这个 DEMO ,写完发现 LeetCode 也有这个,就当是刷了个题,然此处实现有可视化界面展示,应该会比直接做原题更形象有趣罢。欢迎尝试。

7e7e3e11bce7e26fd0202f1593b0f55b.png

0x03 游戏规则

  1. 每个细胞有两种状态:存活或者死亡

  2. 每个细胞只与以其自身为中心的细胞互动

  3. 当细胞为死亡状态

    1. 若周围有3个存活细胞,则该细胞变成存活状态(模拟繁殖)

  4. 当细胞为存活状态

    1. 若周围有2个或3个存活细胞保持原样

    2. 若周围有3个以上存活细胞,该细胞变成死亡(模拟极度拥挤)

    3. 若周围有低于2个以下存活细胞,该细胞死亡(模拟人口稀疏)

温馨提示:

查看完游戏规则后,滑到屏幕最下方

点击 

进到游戏页面 先点击 棋盘 设置 细胞初始图案,然后 开始,然后 结束。

(黑格子为存活细胞,白格子为死亡细胞)

0x04 图案预览

脉冲星:

它周期为3,看起来像一颗爆发的星星

79756df0fb1e75cd732cee6295ad1ee0.gif

滑翔者:

每4个回合它会沿着右下方移动一格

8171086ec36cd2c3219ead0a861a21f9.gif

轻量级飞船:

它周期为4,每两个回合向右走一格

a14fc55a936195231cc1613cdc7d502c.gif

滑翔者枪:

它会不断的产生一个又一个 滑翔者

84ad12fa7d51e30e8e8dfdf03f899f96.gif

繁殖者:

它会向右进行,留下一个接一个的 滑翔者枪

f1758e4f1e406fedb34e9d3e014bf75c.png

0x05 哈喽,Test 泰斯特!

        最后,DEMO 基于 Cocos Creator  使用 JavaScript 代码开发,对代码感兴趣的盆友也可以找我要源码,再露脸一波刚通过备案的域名:

   HackTrek.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值