首页 > 其他分享 >益智拼图 - 值得把玩的“小网站”(2)

益智拼图 - 值得把玩的“小网站”(2)

时间:2023-02-02 12:55:48浏览次数:33  
标签:游戏 益智 拼图 碎片 --- 把玩 关卡 js

本文是“小网站”系列的第 2 篇。

本系列介绍一些作者主观认为值得把玩的“小网站”,愿朋友们多少都能有所收获。这个系列会长期更新,对这个系列感兴趣的朋友可关注,不迷路。

--- 今日介绍 ---

益智拼图 (The Blocks)

把玩点

  • 带关卡的益智拼图游戏,有挑战,练脑力;

  • 适合小朋友锻炼空间推理及想像力;

  • 适合摸鱼时把玩;

 

主观评价:趣味性 3 星,技术性3.5 星

网址    https://blocks.ovh

 

--- 使用指北 ---

游戏支持电脑和手机端,在手机上玩用手指拖动的感觉更好,识别上图二维码就可以打开游戏。

该游戏与小时候玩过的“七巧板”有相似的地方,不同之处在于本游戏是要把零碎的、不规则碎片移动至固定的一个正方形范围内,将之填满并完成拼图视为过关。

 

 

游戏一共60关,难度是逐步增加的,比如第一关为下图这样

由三个碎片组成。第十七关是长下面这样

 

由九个碎片组成。随着难度的增加,对空间思维能力的挑战越来越强,会发现脑袋不够用。

在最下面默认有一个控制条,默认是闭合的,向上拖动就能打开,功能还挺丰富。具体功能是:

  • 播放键是重新开始当前关卡;

  • 星星是收藏当前关卡;

  • 左右切换可以回到历史上已经通关的关卡;

  • 声音控制,开关音乐;

  • 全屏(貌似无效,不知道算不算Bug);

 

行文至此,不废话了,开始愉快的玩耍吧!

Enjoy!

 

--- 干货知识 ---

本小节属于技术解析环节,纯技术性干货,适合技术人员,非行业人士可忽略。

网站作者有推特、脸书与Ins的联系方式,感兴趣的同学可以关注(需爬梯)。该游戏是纯前端技术实现的,其关键点:

1、引入了screenfull.js框架,见名知义,这是一个让你的网页实现全屏功能的框架,使用简单;

2、引入了Howler.js框架,它是一个不错的HTML5声音引擎。默认使用Web Audio,在IE上自动转为HTML 5 Audio,兼容的声音格式也超多:MP3, MPEG, OPUS, OGG, OGA, WAV, AAC, CAF, M4A, MP4, WEBA, WEBM, DOLBY, FLAC。特点:支持3D、自动缓存、支持淡入淡出、轻量、单JS无三方依赖、模块化

3、游戏主背景是一些方块在飘动,是采用的SVG动画技术,详细解释是SVG animation with SMIL(Synchronized Multimedia Integration Language)

它是W3C组织的标准之一,旨在用XML格式的语言来定义与实现网页上的动画,可以做到对象的移动、变换、旋转、颜色改变、按轨迹路线移动等功能,感兴趣的同学可以深入 https://codepen.io/neilorangepeel/pen/rOvJmz 研究

4、真正游戏核心的代码,是嵌入在网页中的一个iframe,iframe中包含一个Canvas对象,打开嵌入的网页查看具体资源,除了一些透明“雪碧”图素材外,核心脚本是powerblocks.js,共2000余行,采用纯JS编写,分模块架构,脚本功能有:

  • 处理音乐、JSON(data/colors.json颜色,data/levels.json关卡)数据;
  • 绘制正方形、矩形、三角形、多边形的形状;
  • 碎片进入矩形后点位高亮的绘制与控制;
  • 控制碎片能被拖动、放置及动画处理;
  • 鼠标、触摸屏两个输入设备对碎片的控制;
  • 关卡是否结束判断;
  • 历史关卡的进入、重绘等;
  • 本地游戏进度的存储;
  • ...
仔细阅读powerblocks.js,无论使用什么语言,对以后想写游戏的能力(分模块、物体控制、事件定义、输入设备的控制等)提升都大有裨益。

本系列长期更新!首发公众号:土卫六

喜欢的朋友感谢点赞、分享、收藏三连!

标签:游戏,益智,拼图,碎片,---,把玩,关卡,js
From: https://www.cnblogs.com/skywayman/p/17085655.html

相关文章

  • 值得把玩的“小网站”(1) - 奇妙的键盘
    本文是“小网站”系列的第1篇。本系列介绍一些作者主观认为值得把玩的“小网站”,愿朋友们多少都能有所收获。这个系列会长期更新,对这个系列感兴趣的朋友可关注,不迷路。-......
  • 拼图游戏个人博客
    个人负责任务游戏界面与功能的实现游戏用户文件的输入与输出主要思路创建GameJFrame类继承JFrame表示的是这个是游戏主界面,实现与游戏有关的逻辑GameJFrame实现KeyLis......
  • 圣诞树拼图游戏unity制作
    2022年圣诞节到来啦,很高兴这次我们又能一起度过~一、前言提示:使用unity来制作一个拼图游戏,图片便是圣诞树。二、创意名圣诞树拼图游戏三、效果展示圣诞树拼图游戏最终效果。......
  • 利用GUI制作拼图小游戏
    JFrame表示窗体JMenuBar表示菜单,JMenu表示菜单中的字,JMenuitem表示目录JLabel表示管理文字和图片的文字JFrame,JMenuBar,JLabel称为组件利用空参构造对对象进行初始化:pu......
  • 妙啊!纯 CSS 实现拼图游戏
    本文,将向大家介绍一种将多个CSS技巧运用到极致的技巧,利用纯CSS实现拼图游戏。本技巧源自于​​TemaniAfif​​​的CodePen​​CSSOnlyPuzzlegame​​。一款完全......
  • [AHOI2014/JSOI2014]拼图
    链接:https://www.luogu.com.cn/problem/P4039题目描述:有一些长为\(n\),宽为\(w_{i}\)的黑白色矩形,要将它们拼成一个\(n\timesm\)的大矩形,求大矩形中最大的全白子矩形的面......
  • [AHOI2014/JSOI2014]拼图
    链接:https://www.luogu.com.cn/problem/P4039题目描述:有一些长为$n$,宽为$w_{i}$的黑白色矩形,要将它们拼成一个$n\timesm$的大矩形,求大矩形中最大的全白子矩形的面积的......
  • java 简单拼图小游戏的实现
    这个是游戏页面的源代码packagePuzzle;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.KeyEvent;importjava.awt.event......
  • JAVA-动漫美女拼图—完结篇(重置业务实现)
    代码一packagecom.itheima_10;publicclassApp{publicstaticvoidmain(String[]args){PictureFramepf=newPictureFrame();}}代码二pa......
  • JAVA-动漫拼图图片移动业务遗留问题处理
    packagecom.itheima_09;publicclassApp{publicstaticvoidmain(String[]args){PictureFramepf=newPictureFrame();}}packagecom.ithe......