用户:查理九世1查看:1 回复:6 评论:1 创建时间:2019-08-08T15:51:28
前言:这个教程非常简单,萌新也能很快学会。
大家好,今天看到有人在社区中询问钨冬大大的电梯到底是如何制作的,我也给大家分享一下我制作电梯的方法吧。
第一步 确定电梯的位置
使用【宇宙中心】世界,地图中有已经给电梯留好的位置。
在宇宙中心里,按Tab键查看位置信息(位于右上角)。
学过平面直角坐标系的同学肯定能一眼看出来图中X,Y,Z的作用。
X和Z是平面,代表,Y代表高度。
红框中的方块是电梯地板块的原点,我以这个坐标为基准,建立宽4长3高1的长方体地板。
把上面这块积木连接到【当开始被点击】之后。
第二步 放置上下楼按钮
当我在1楼时,我想上楼,所以我放置了【加号】方块作为按钮。
如何在游戏里放置方块我相信你们都懂的,我就不说了。
当我点击【加号】时,电梯就会上升。先做一个点击判定。
在【事件】中找到【当按下鼠标左键时】,把它修改为【当放开鼠标左键时】。
在【控制】中找到【如果...】积木,
【如果】中的条件为【焦点位置的材质是X】。如下图
复制一下,再放个【减号】积木
第三步 让电梯上升
前面已经说过了,Y代表高度,那我们让这个电梯地板的Y值不断增加,电梯就能上升了。
不断增加=变化的量, 新建一个变量代表高度。
把这个变量【电梯高度】的初始值设置为-24。拼到【当开始被点击】之后。
训练师们应该已经想到了,让这个变量不停加1,电梯就能不断上升了,但具体要怎么做呢?
不停=重复执行。但如果电梯上升到太高,那就突破天际了,要让它停在二楼。
在【控制】分类中找到【重复执行...直到...】积木。
经过菊菊的测试,二楼地板高度Y=-13,
所以就是重复执行直到【电梯高度=13】。
在数据中找到【使变量电梯高度增加1】。帮它放进重复执行里。
做到这一步,你可能以为已经完成了?其实并没有。
数字增加了,可是你没有在数字增加的时候放置地板啊!
用【建立长方体】积木,X和Z的坐标不变,还是第一步收集的数据,在Y的值内,填充【电梯高度】变量。
新的地板产生了,我们也不要忘了把旧的消除掉,不然电梯间里就全是长方体了。
还是用【建立长方体】积木,X和Z不变,Y设置为【电梯高度-1】。
因为是消除方块,所以把材质设置为空气。
把第二步和第三步的几块积木组合到一起。(如下图)
第四步 让角色跟着电梯一起上升
我们的目的是,让玩家站在电梯上,一起上升、下降。
在【玩家】分类中拖出【移动玩家到】积木,在【侦测】中找到【位置X...Y...Z...】积木、【玩家位置的X】这两块积木。组合为下图:
把这块积木放在【使变量电梯高度增加1】之后。
做到这里,从1楼上升到2楼的电梯就做好了,可以先进游戏看一下效果。
第五步 电梯与角色一起下降
复制前三步组合起来的电梯上升积木块,稍微做一些调整。
红框中是和上升积木不同的地方。
第六步 一个呼梯装置
经过前五步,其实电梯已经可以运行了,但功能还不太完善。
当我站在二楼,而电梯在一楼时,我的角色好像只能跳下去。
所以我又制作了一个小机关来解决这个问题。
还是复制2-4步的积木块。如果点击【数字2】方块时触发。
这次不用移动玩家了,把【移动玩家到】这块积木删掉。
第七步 每次开始时,让电梯都停在一楼
这个功能非常好做,把世界中的电梯地板材质的方块都替换为空气。
然后在一楼的地方重新建电梯地板。(代码如下图)
上图中建立长方体的积木是在第一步已经做好的,把它从【当开始被点击】后挪出来。
为了使代码简洁好看,我把每次点击开始时都会触发的设置放在了一个函数下。
萌新们不要紧张,函数的英文是function,意思是功能。和数学没啥关系。
把第三步中的【设置电梯变量的值为-24】这块积木也放进函数中。组合成这样:
再从【函数】分类中找到【初始化】,拼到【当开始被点击】之后。
做完这七步,进游戏试试吧,一个来往于一、二楼的电梯做好啦。
下周我会完善一下电梯,让它能去3、4楼。
训练师们先自己尝试一下吧喵~
另外,我把源代码文件放进代码岛QQ群中了,群号喵4973542
如果看了攻略还是不会做,可以进群下载代码文件后自己研究哦~
前言:这个系列真的非常简单,不信你先看第一课
https://www.codemao.cn/wiki/forum/10335
大家好,我是宇宙中心最可爱的猫,贡菊。
第一课中,我只讲了如何让电梯往返于一、二楼,
本课将继续上一课的内容,为大家带来一个完整的电梯。
完善步骤一 让电梯在2、3楼也能上楼
思考一下我们在上一课中写的逻辑,当点击加号时,电梯向上运行。
但是,要如何判断我点击的是2楼的加号方块还是1楼的加号方块呢?
试试为如果中再增加一个判定要素:判断人物的高度。
变量不仅可以是变化的量,也可以作为一个存储数字的容器。
新建4个变量,一楼地面、二楼地面、三楼地面、四楼地面。
用变量的好处之一就是:只要更改初始化函数中的这些变量的值,就可以把这个电梯应用到其它游戏中啦。
在初始化函数中,设置这四个变量的值。
有的同学要问了,这几个数字是怎么来的呢?
问的人一律拖到小黑屋去,上节课已经说过了,这些值可以在游戏中按Tab键查看。
将如果内的积木更改为这样:
玩家的Y值就是玩家所在的高度,站在地上,人肯定比地面高,所以用一楼地面+1。
一楼的修改好了,同理,修改一下二楼的积木。
改完玩家位置的Y值后,也别忘记修改【重复执行】中的条件。
在二楼时,点击加号方块,电梯会去3楼,
所以重复执行直到:电梯高度 = 三楼地面。
同理,制作3楼的上楼积木。
完善步骤二 让电梯在3、4楼能下楼
与上楼的方法修改方法一致,只要注意别放错变量就行。
下图为4楼的电梯下楼程序:
完善步骤三 修改呼梯装置
上一课中,由于只有两层楼,所以每一层都只有1种情况: 电梯一定在楼上或电梯一定在楼下。
但是在这节课中,出现了新的情况:
当你点击数字2时,电梯有可能在楼下,也有可能在楼上。
针对这种情况,我们应该怎样解决呢?
我在【如果】积木中嵌套了【如果...否则...】积木。
逻辑是这样的:如果我点击了数字2方块,再判定电梯高度是否小于二楼地面,如果电梯高度小于二楼地面,则让电梯高度不断增加1,直到电梯到达二楼地面;否则就让电梯高度不断减少1。
代码积木如下:
其它楼层也是同样的原理,训练师们可以自己动手做做看啊~
电梯的小教程就到这里了,虽然是完结篇,但这个电梯只具备上下楼的基本功能,还没有电梯门。机智的训练师们可以研究一下如何做一个电梯门,做好后,别忘了像我一样在百科发攻略贴哟~
老规矩,电梯的代码块已经放在群喵4973542中了,可下载下来自行研究。