FireClient
格式
FireClient(Playerid, ...)
- 函数
- 所属对象:EventObject
只有服务器脚本可访问
简介
服务器向指定客户端发送事件,用来触发客户端上的方法。
相关链接
- 教学视频
https://creator.reworlder.com/tutorials 进阶课程第一章课时8
参数
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
Playerid | int | Playerid 用户的Playerid | |
可变参数 | Tuple | 传递事件所用参数 |
返回值
类型 | 描述 |
---|---|
event | 将传入的参数注册为事件 |
实例
实例1 服务器到客户端通信
在工作区添加一个事件对象。创建服务器脚本,功能为创建零件并在玩家触碰时发送事件到客户端,执行方法用文本显示玩家的名字。
local workSpace=GetService("WorkSpace") --获取工作区服务
local new = RWObject:New("Part")--创建零件
new.Position = Vector3.New(1,1,1)
new.Parent = workSpace
local eventobject = workSpace.事件对象--找到在工作区的事件对象
new.CollisionEnter:Connect(function(plr)
if plr:IsClass("Avatar") then
local uid = plr.PlayerId
local showname = plr.Name
eventobject:FireClient(uid,showname) --发送事件,参数为玩家名
end
end)
将下面客户端脚本复制到客户端预加载下,脚本功能为显示在文本控件显示玩家的名称。
wait(0.5) --等待加载
local utilService=GetService("UtilService") --获取工具服务
local workSpace=GetService("WorkSpace") --获取工作区服务
local eventobject = workSpace:WaitForChild("事件对象")--等到工作区的事件对象
eventobject.ClientEventCallBack:Connect(function(showname)
local person = Players:GetLocalPlayer()--获取玩家
local uipanel = RWObject:New("UiPanel") -- 创建2d容器
local uitxt = RWObject:New("UiText") -- 创建文本
uitxt.Text = showname--文本为接收到的玩家名
uipanel.Parent = person.GameUI -- 把容器的父级设置成玩家界面
uitxt.Parent = uipanel --将创建的文本的父级设置成新创建容器
utilService:DelayDestroy(uipanel,2) --2秒后删除UI
end)
文档更新时间: 2020-09-07 14:44 作者:王辰剑