在“精致1010”游戏中,我们需要将下方的图形拖拽到上方的网格中,像下面这样。 如图,当手指点击下方的图形时,下方的图形会进入可拖拽的状态,它应该能够跟随手指在屏幕上移动,当手指松开时,它应该被放置在新的位置上。 首先,我们来熟悉一下一个重要的积木块。 如图“当精灵被xx时”积木块会处理游戏中所有与精灵的点击有关的事件。点击下拉,可以看到可以接收五种事件。 点击:按下再放开,叫做一次点击,也就是说点击操作其实包含了“按下”和“放开”两个过程。 按下:手指接触屏幕上的精灵的那一刻,是一次按下,只触发一次。 放开:手指离开屏幕上的精灵的那一刻,是一次放开,只触发一次。 按住:手指按住屏幕上的...

  nYrzcJimKxjR   2023年11月02日   133   0   0

将循环分为重复执行和逻辑循环,应该是微信小游戏开发工具中所特有的。因为之前做游戏,无论是使用哪种工具或者哪种编程语言,对于循环来说,都只有一种,不会存在歧义或者误用。但是这里将循环分为了两种,如果误用的话会导致出现一些奇怪的问题。所以需要单独拿出来区分一下,避免掉进这个“坑”。 首先来看一下官方文档,对于这两种循环的解释。 重复执行 重复执行频率跟游戏的刷新频率一致,约16.67ms一次 重复执行(n)次 有限次的循环,执行频率跟游戏的刷新频率一致,约16.67ms一次 重复执行直到<条件> 一直重复执行,直到<条件>为真 逻辑循环(n)次 ...

  nYrzcJimKxjR   2023年11月02日   131   0   0

嗨!大家好,我是小蚂蚁。今天我们继续学习做游戏。 在第四节中我们实现了图形的拖拽功能,拖拽的图形最终需要被放置在网格的对应位置上。 先说一下实现思路: 使用拖拽图形上的左下角的位置作为图形位置,与整个网格的位置进行比对。如果图形位置与当前单元格的位置匹配,则根据图形的数据从当前的单元格开始填充,直到填充完整个图形为止。 看不懂?没关系。接着往下我会一步一步的进行拆解和分析。 计算拖拽图形左下角的位置作为图形的比对位置 如图,是要拖拽的图形,由四个正方形组成的“田字”形,每个正方形的边长是60,两个正方形之间的间隔是2。左下方的红色圆点为我们将会计算的图形位置。假设当前图形的中点位置(...

  nYrzcJimKxjR   2023年11月02日   112   0   0

​​上一篇​​文章内容很多,也挺难的,不光我自己写的很累,估计读者读的也很累,这并不是我想要的结果。每一篇教程我都希望它能够帮助读者学到一点儿新的东西,并在小游戏开发的道路上向前行进一步。如果一篇技术型的文章过长,就很容易把读者吓退,从而会失去它本来应该传递的信息和价值。所以从这篇教程开始,我决定每一篇都聚焦于一个小功能,一个知识点,并尽力把它讲透,讲明白。希望它能帮助你进行点滴的积累,构建起自己的小游戏。 言归正传,上一节中我们实现了将拖拽的图形放置到网格中,在真实的游戏中网格并不会总是空的,如果网格上的位置已经被填充了,那么图形是不能重叠放置的。这一节,我们就来实现一下图形的数据验证,判断...

  nYrzcJimKxjR   2023年11月02日   66   0   0

在“1010”游戏中玩家会不停的将下方的图形拖拽到网格中放置,当满足一行或者一列被填充满时,就会进行消除得分。这一节我们就来学习一下如何进行消除处理。 实现思路:当形状被放置到网格上后,对网格数据进行遍历和检查,如果满足消除条件(一行或者一列数据都是1),则移除当前行或列的方块。 在项目中添加一个新的方块素材,重命名为“网格数据管理”。我们会把所有与网格数据有关的逻辑都放在这个上面。它不会在游戏中显示,只是默默的在背后为我们进行网格数据的检查和处理。这里我用蓝色把它与其他物体区分开。 新建两个全局列表:“全局-匹配行”和“全局-匹配列”用于记录所有满足条件的行号和列号。 新建两个通知,“...

  nYrzcJimKxjR   2023年11月02日   65   0   0

在1010游戏中下方每次会出现3个不同的“形状”,当玩家把3个“形状”都拖拽到网格中后,就会生成3个新的形状,如此的循环往复。这一节我们将实现这种不停生成形状的功能。 开始前我们需要先明确两个词语的含义。 形状 如图,就是形状,它会位于游戏的下方,包含很多不同类型的图形,到目前为止我们一直都是使用的第一个“田字”形状作为事例,在​​第6节​​中已经讲过具体形状的实现方式,其他的形状你可以作为练习自行实现。此后,当你看到“形状”的字眼后,应该知道我指的的是下方的这些图形。 形状槽 放置这些形状地方,就像上图中的红色的正方形线框就是“形状槽”,它们的作用在于告诉每个形状创建时应该位于哪里,想...

  nYrzcJimKxjR   2023年11月02日   66   0   0

在“1010”游戏中,当网格中再也没有位置安放剩余的形状时,游戏就会结束。为了能够判断当前的形状是否还能够放置到网格中,我们就需要对当前的形状进行检查。 这一节,我们就来实现一下形状的检查以及游戏结束的判定。 如图,当网格中再也没有位置安放剩余的形状的时候,就是游戏结束的时候。 实现思路:每当一个形状被放置到网格中后,就需要对剩余的形状进行一遍检查,检查网格上是否还有能够放置其它形状的位置,如果有的话,则游戏可以继续进行,如果没有任何的位置可以放置剩余的形状,则游戏结束。 下面,我们先看一张图,配合着图片理解一下整个检查的过程。 假设当前网格中的布局如图上所示,“0”的位置表示空白,“1”...

  nYrzcJimKxjR   2023年11月02日   101   0   0

本地缓存就是将数据存储在玩家的手机上,例如玩家的得分或者关卡存档,这样当下次打开游戏时,就可以通过读取已经的存储在本地的数据,对游戏中的内容进行设置。 在“精致1010”游戏中,我使用了本地缓存的功能,将玩家的声音和振感设置进行了缓存,这样当玩家下次进入到游戏时,就会恢复之前的设置。 下面,就就让我们来看一下,如何实现这个缓存设置的功能。 首先,需要添加“本地缓存”的插件。点击功能区的“添加插件”按钮。 在弹出的“管理插件”对话框中,打开“本地缓存”插件。 打开后,回到积木区的“插件”中,就能够看到与本地缓存有关的积木了。 简单解释一下这些积木块的意思。 设置缓存KEY的值为VALU...

  nYrzcJimKxjR   2023年11月02日   55   0   0

嗨!大家好,我是小蚂蚁。今天我们继续来学习随机生成形状功能是如何实现的。 在精致1010游戏中,包含10种不同类型的形状,这一节我们就来讲一下如何通过使用列表来控制不同形状的生成概率。 如图是游戏中使用的10种类型的形状,我为其进行了编号,有的类型只包含一种,如7,8,10,有的类型包含两种,如1,2,3,4,有的类型包含四种,如5,6,9。 在游戏的下方存在3个形状槽,每个形状槽中都会随机的产生一种形状。我们可以通过设置不同类型的形状的生成概率来调整游戏的难度,例如1,8两种类型的形状出现的概率高的话,游戏的难度就会增大。反之,难度就会减小。 下面,我们就来实现一下如何根据设定的概率随机...

  nYrzcJimKxjR   2023年11月02日   82   0   0

嗨!大家好,我是小蚂蚁。 最新版本的精致1010,新增了一个全新的游戏模式:闯关模式。今天就跟大家聊一下它的制作思路和大致的方法。 之所以制作这样的一个模式,起初的想法是这样的:原来的游戏模式一局的时间比较长,以我自己为例,进行一次游戏的时间至少要在10分钟以上,如果认真仔细一点儿,想玩到几千分的话,那么可能需要半个小时以上。很明显这样的单次游戏时长对于一个小游戏来讲有些太长了,但是游戏模式已经是这样了,如果想要缩短单次游戏之间,在现有的模式下只能通过增加游戏难度这种方式,但这并不是一种好的方式。 那么如何能把这样一个简单的消除游戏的单次游戏时间缩短到几分钟之内呢?答案就是创建一个新的游戏模式...

  nYrzcJimKxjR   2023年11月02日   77   0   0

上周在制作完闯关模式后,我有了在游戏中做一个关卡编辑器的想法,让玩家可以在游戏中制作自己的关卡进行挑战,甚至可以将自己制作的关卡与朋友进行分享。 原有的关卡编辑器是使用Unity做的,因为可以方便的进行文件的读取和写入,可以将设计好的关卡数据写入到文件中,然后在将文件中的数据导入到微信小游戏开发工具中。 现在我将这个关卡编辑做到了小游戏中。 关卡编辑器功能已经更新到最新版的精致1010中了,欢迎大家前去体验。 这篇文章主要分享一下关卡编辑器的制作思路,以及如何利用分享组件将自己制作的关卡分享给朋友玩。 上一节中我们讲过,关卡模式中最重要的数据抽象就是将这个10x10的网格转化成一个长度为1...

  nYrzcJimKxjR   2023年11月02日   111   0   0

优化这件事儿我以前很少会在意,因为一直做手机游戏,手机硬件的更新速度非常的快,更快的计算能力,更强的渲染能力,更大的内存。这就导致了如果你不是做一个大型游戏的话,几乎是不太用考虑优化的。 直到我开始做微信小游戏,作为一个小游戏是有诸多的限制的,计算能力,渲染能力,尤其是对游戏大小的限制(不能超过4M),这些限制让我不得不重新的转变一些之前做游戏的想法。 刚开始做完精致1010时,其实也没太在意游戏的优化,因为游戏本来就比较小,再加上使用简约的风格,素材资源比较少,所以整个游戏运行起来还是挺流畅的。但是,当我开始不停的为这个小游戏进行扩展增加更多的内容时,问题出现了。  7月4号,我更...

  nYrzcJimKxjR   2023年11月02日   69   0   0

嗨!大家好,我是小蚂蚁。从今天起,计划用几篇文章分享一下如何使用微信小游戏制作工具做一个塔防小游戏。 如图,是一个塔防游戏的示例,在一个塔防游戏中大概包含这样的几个部分: 各种类型的防守塔 各种类型的敌人 敌人按照指定的路径移动 防守塔建设点 敌人数据编辑 今天,我们主要了解一下如何实现一个防守塔的功能,以及如何让敌人按照指定的路径进行移动。 实现一个防守塔 实现一个防守塔非常的简单,因为小游戏制作工具已经为我们提供了现成的“行为”了。 选中作为炮塔的精灵,然后在属性区的下方点击“管理行为”按钮,在行为对话框中开启“炮塔”行为。这个行为已经为我们提供了制作一个防守塔所需的大部分的功...

  nYrzcJimKxjR   2023年11月02日   65   0   0

嗨!大家好,我是小蚂蚁。今天我们继续如何制作一个塔防小游戏的第二篇,如何设置炮塔的位置,以及如何创建不同类型的炮塔。 如何设置炮塔的位置 如图黄色五角星的位置,就是要创建的炮塔的位置。在塔防游戏中,炮塔的位置通常会根据当前的地形进行设置,也就是说炮塔只能在指定的位置上进行创建。 为了方便设置炮塔的位置,可以使用一个精灵图片作为标识,图中我使用了黄色的五角星作为炮塔位置的标识,可以在场景区中直接拖拽五角星对炮塔的位置进行设置。然后在游戏启动后我们将使用炮塔创建按钮来替换这些五角星的位置。 来看一下这些用于标识炮塔位置的五角星上的积木逻辑。 游戏启动后,通过克隆创建一个炮塔位置按钮,接着就把自...

  nYrzcJimKxjR   2023年11月02日   46   0   0

嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第三节,如何创建不同类型的敌人,以及如何利用表格来编辑数据以及创建敌人。 如何创建不同类型的敌人 现在,我们需要在游戏中创建三种类型的敌人。​ 普通敌人:伤害一般,速度一般,血量一般。 快速敌人:伤害低,速度快,血量少。 巨大敌人:伤害高,速度慢,血量多。 在确定了3个属性后,其实我们只需要调整属性的值,就可以区分出三种不同类型的敌人了。 接下来我们为每个敌人增加3个局部变量,也就是这3个属性。 接下来我们来看一下,这三个变量在敌人逻辑中的使用。 在敌人创建时,设置敌人的移动速度。 在敌人被射击时,减少局部变量血量的值。...

  nYrzcJimKxjR   2023年11月02日   107   0   0

嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第四节,如何实现炮塔的升级和出售功能。 如何实现炮塔的升级 在炮塔升级时,我们简单地做一些属性的提升以及外表的变化,例如当炮塔升级后,射击速度提升,射击范围增大,炮塔变成红色的。 首先,我们为炮塔增加几个局部变量。 ​ 射击速度用于设置炮塔发射子弹的速度。 射击范围用于设置当前炮塔的射击范围。 是否已升级用于标识当前的炮塔是否已经进行过升级。 索引相当于当前的炮塔的ID,我们为每个炮塔设置一个索引,也就是唯一的标识。 炮塔类型用于标识当前的炮塔类型。 对于炮塔的设置,我们增加这样的操作:当创建一个炮塔后,再次点击炮塔,会出现针对...

  nYrzcJimKxjR   2023年11月02日   71   0   0

嗨!大家好,我是小蚂蚁。从今天开始,我将连续使用几篇文章分享一下如何制作一个微信答题小程序。使用的工具是微信小游戏制作工具,听起来这是一个做微信小游戏的工具,但是除了做游戏之外,我们还可以用它来做小程序。 这个将要制作的答题小程序包含如下的功能:​ 可编辑的题库,包含单选题库和多选题库。 答题开始前可进行自定义设置,例如单选题数量,多选题数量以及答题时间。 每次答题的题目会从不同的题库中随机的抽取,由这些随机抽取的题目组成一次答题过程。 所有题目回答完毕后,可提交查看统计结果。 可回看此次答题过程中的所有题目以及答题情况。​ 今天我们就从题库表格的设计开始,分享一下如何设计一个答题小程...

  nYrzcJimKxjR   2023年11月02日   109   0   0

嗨!大家好,我是小蚂蚁。在上一节里,我们了解了如何设计答题小程序中的题库——表格,并且知道了如何从题库中随机抽取指定数量的不重复的题目编号。这一节,我们将分享一下如何利用这些题目编号,获取到指定的题目信息,然后将题目呈现出来。 在上一节中我们将随机抽取到的不重复的题目编号记录在了一个“随机选题列表”中。接下来,我们将从列表中挨个取出题目编号,然后显示出当前的题目。 为了记录当前从列表中取出的是第几项,以及当前的题目编号,我们创建两个新的全局变量。 ​ 选题列表项:记录当前显示的是第几道题。 抽取的题目编号:记录当前要抽取的题目的编号。 接着来看一下我们是如何设置这两个全局变量的。 这是...

  nYrzcJimKxjR   2023年11月02日   84   0   0

嗨!大家好,我是小蚂蚁。这一节里,我们继续分享如何在答完题后进行答案的比对,以及如何实现一个回顾功能。 在上一节里我们提到过,为了记录玩家的答题数据,我们创建了一个新的表格——玩家答题选项表,里面记录的是玩家回答的题目编号,以及对应的答案。当所有的题目都回答完毕,玩家选择提交后,其实我们要做的,就是逐个的将“玩家答题选项表”中的数据与题库中的答案数据进行比对,来检查题目是答对还是答错。 因为题目中包含着单选题和多选题,所以针对不同的题型,需要做不同的判断处理。 单选题答案对比 首先来看一下单选题的答案对比。 单选题的对比比较简单,因为单选题的答案只包含1个字符,我们只需要对比玩家选择的选项...

  nYrzcJimKxjR   2023年11月02日   70   0   0

嗨!大家好,我是小蚂蚁。从今天开始,我将会用几篇文章讲一下如何制作一个泡泡龙游戏,泡泡龙是一个传统经典的消除游戏,也是一个经久不衰永不过时的游戏。 这篇文章我们主要来了解一下如何设置泡泡龙游戏的初始布局。 如图,是一个泡泡龙游戏的布局,可以发现它跟其他的消除类游戏还是有一些不同之处的。在其他的消除游戏中,行和列通常都是规则的,例如1010游戏中10行10列的布局。但是在泡泡龙游戏中,行和列不是规则的,比如说第1行有5列,第2行有4列,第3行5列,第4行4列..... 虽然,行和列是不规则的,但还是有一定的规律的,就是1,3,5的奇数行比2,4,6的偶数行多出一列。 要创建一个泡泡龙游戏的布局...

  nYrzcJimKxjR   2023年11月02日   95   0   0
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~