运行环境
Win7,Win8,Win10 win64
Reworld版本 体验版
针对零基础读者的补充
下载安装 Reworld对应版本
Reworld官网链接:http://www.reworlder.com/
下载后安装后注册账号打开空地图
思路分析:
要实现游戏人物的砸死首先需要一个条件,只有当玩家触发这个条件时才会引发游戏人物被砸死,在这里我采用的是当人物到达某一地点时石块从天上坠落,当人物被石块触碰到时人物角色死亡。
简单起见,可以在想要触发的位置放一个触发块,当玩家与触发块产生碰撞时,克隆一个石头,将石头放到人物头顶并让其坠落就可以了。
功能效果展示
场景搭建
一、搭建过程
在素材箱中搜索石头,购买并下载,点击石头模型将其添加到场景中,并将名称修改为stone。取消锚定,点击stone后面的加号,添加服务器脚本,命名为die。
创建零件作为触发块。为触发块添加服务器脚本,当玩家触碰到触发块时石头掉下。
双击打开命名为die的服务器脚本,代码如下:
script.Parent.CollisionEnter:Connect(function(res)--检测到碰撞时执行
if res:IsClass("Avatar")--如果对象是人物角色
then
res.Health = 0 --血量掉为0
end
end)
双击打开触发块的服务器脚本,代码如下:
script.Parent.CollisionEnter:Connect(function(res)--检测到碰撞时执行
if res:IsClass("Avatar")--如果对象是人物角色
then
local temp = WorkSpace.stone:Clone()--克隆石头
temp.Position =
Vector3.New(res.Position.x,res.Position.y+5,res.Position.z)
--将克隆的石头移动到人物头顶
end
end)
触发机制为人物触碰到触发块石头落下,所以为触发块添加碰撞检测。人物碰到石头死亡,所以为石头添加碰撞检测,检测到与人物碰撞则人物死亡。
二、补充说明
1.什么是零件?
零件是一个物理对象,当零件在工作区WorkSpace中时,零件可以移动、变化外形体积、并与其他零件交互。零件是构建世界的基础元件,几乎所有物体都是用零件构建的,可以改变零件大小制作大底板,也可以零件合并、切割创建异形块,也可以使用零件制作角色和工具。
2.什么是服务器脚本?
只会在服务器运行的Lua脚本代码,用于编写服务器逻辑。
3.为什么要使用服务器脚本?
基于冲刺功能适用于单人和多人等不同环境,所以采用通用的服务器脚本。
- 服务器脚本与客户端脚本不同,客户端执行的操作只有本地客户端,也就是玩家自己有效。而服务器执行的操作不仅针对单人有效,还针对与服务器相连的所有客户端同步生效。
- 在多人游戏中,如果这个对象的变化是针对一个人的,必须在客户端脚本进行编写;如果这个对象的变化是针对所有人的,那就必须在服务器脚本进行编写。
- 对于只能在客户端脚本修改的对象,如何让服务器知晓变化结果是很重要的。这里采用传统游戏的制作流程,也就是在客户端进行修改,把修改后的结果通过与服务器通信的方式发送到服务器,再通过服务器进行逻辑运算,把执行结果再同步给所有客户端。
好了,那么本次功能到这里就完美实现了分享到这里啦,大家可以去尝试一下!