用户:
时_代眼泪_卡西米尔骑士查看:4 回复:8 评论:4 创建时间:2022-05-09T21:04:37
免责声明:这个帖子难免会存在部分的错误,欢迎大家前来勘误
众所周知,现在平台跳跃类作品已经几乎没有任何的就业空间
众所又周知,社区的联机教程有很多,但大多数的教程仅仅之涉及到匹配,然后就没了
然而,如果把两者结合起来,就能展现出意想不到的效果
先上成品:
(作品已经开源供大家参考,如果iframe打不开可以直接前往https://shequ.codemao.cn/work/145024118)
对于平台跳跃类作品了解不多的同学可以参考上一期教程
https://shequ.codemao.cn/community/434059
废话少说,切入正题
首先我们搞一个匹配的按钮,长这样就行()

然后给这个角色添加一下积木,来实现简单的匹配效果

注意这里“房间”是公有云变量,“编号”是普通变量
当然我们最好还是再加上一个取消匹配的按键

接下来是关卡
首先随便画两个角色
长这样就行()

然后添加以下积木

为了让别人在游戏时也能看到自己的位置,我们添加以下积木

然后是基本的物理积木

当然你也可以把最后一个不碰撞改成碰撞()
我们还需要确定初始的位置

然后还要加上通过关卡时屏幕的切换

PS:如果你用的是K3,则可以尝试用普通变量来代替“P1通关,P2通关”这两个公有云变量
当然,为了省事你也可以将切换到某一屏幕改成下面这个

最后记得让角色再通关关卡后隐藏

另一个角色同理,只是把编号和变量稍作修改,这里不作赘述,单纯放一下图片供参考



然后我们就可以通过复制屏幕来制作更多的关卡

需要注意的是,为了避免出现角色位置异常的情况,我们要把两个角色设置成隐藏状态

只有当该玩家处于该关卡中时才会显示
这里以第二关为例,数值根据关卡觉得,比如第114514关就是“当 ‘P1通关’=114514”

最后是终点关

我们可以添加一个角色来显示胜利的玩家
并且添加负责重置的积木

最后的最后,为了防止一玩家还在前面的某一关卡,另一玩家已经通关而该玩家还不知道发生了什么的尴尬局面
这里提供一种方法
当然你也可以用别的办法

这个“当开始被点击”可以从第一个屏幕扒出来(?)
当然,一个好的联机作品肯定不止这些
还要很多内容是可以优化的(比如心跳检测和观战)
那么这期教程就到这里
![]()