RemoteEvent

RemoteEvent : Instance

Overview

RemoteEvent는 클라이언트와 서버 간 이벤트 처리를 위해 제공되는 객체로, 비동기 단방향 통신을 지원합니다.

이 인스턴스는 서버와 클라이언트 양쪽에서 접근할 수 있어야 하므로, ReplicatedStorage나 Workspace처럼 공유 가능한 위치에 배치하는 것이 적절합니다.

Properties

Methods

FireServer

클라이언트에서 서버의 RemoteEvent에 연결된 이벤트를 실행할 때 사용하는 메서드입니다.

이벤트가 호출되면, 연결된 함수는 첫 번째 인자에 해당 요청을 보낸 클라이언트의 Player 객체를 받게 됩니다.

Parameters

Tuple Arguments

RemoteEvent의 OnServerEvent에 연결된 함수로 전달되는 인자입니다.

  • number, boolean, string, table 등 Luau의 기본 자료형을 전달할 수 있습니다.

  • Instance 같은 객체도 전달할 수 있습니다.

  • 모든 데이터 타입이 완전히 지원되는 것은 아니기 때문에, 사용 전 실제 동작을 확인해보는 것이 좋습니다.

Return

void

Code Samples

-- LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local C2S_EnterPlayer = ReplicatedStorage:WaitForChild("C2S_EnterPlayer")

local SomeNumber = 10
C2S_EnterPlayer:FireServer(SomeNumber) -- Passing arguments


-----------------------------------------------------------------------------------
-- Script
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local C2S_EnterPlayer = ReplicatedStorage:WaitForChild("C2S_EnterPlayer")

local function OnEnterPlayer(player, number)
    print("[OnEnterPlayer]", player.Name, " / Parameter : ", number)
end
C2S_EnterPlayer.OnServerEvent:Connect(OnEnterPlayer)

FireClient

서버에서 특정 클라이언트의 RemoteEvent에 연결된 이벤트를 실행할 때 사용하는 메서드입니다.

대상 클라이언트를 지정하기 위해 Player 인자를 반드시 전달해야 합니다.

모든 클라이언트를 대상으로 이벤트를 실행하는 경우에는 FireAllClients()를 사용하는 것이 더 적합합니다.

Parameters

Player Player

클라이언트의 이벤트를 실행할 Player입니다.

Tuple Arguments

RemoteEvent의 OnClientEvent에 연결된 함수로 전달되는 인자입니다.

  • number, boolean, string, table 등 Luau의 기본 자료형을 전달할 수 있습니다.

  • Instance 같은 객체도 전달할 수 있습니다.

  • 모든 데이터 타입이 완전히 지원되는 것은 아니기 때문에, 사용 전 실제 동작을 확인해보는 것이 좋습니다.

Return

void

Code Samples

-- Script
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local S2C_DeadEvent = ReplicatedStorage:WaitForChild("S2C_DeadEvent")

local SomeText = "FireClient"

local function EnterPlayer(player)
    S2C_DeadEvent:FireClient(player, SomeText) -- Passing arguments
end
Players.PlayerAdded:Connect(EnterPlayer)


-----------------------------------------------------------------------------------
-- LocalScript
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local S2C_DeadEvent = ReplicatedStorage:WaitForChild("S2C_DeadEvent")

local function OnDeadEvent(text)
    print("[OnDeadEvent]", "Parameter : ", text)
end
S2C_DeadEvent.OnClientEvent:Connect(OnDeadEvent)

FireAllClients

서버에서 모든 클라이언트의 RemoteEvent에 연결된 이벤트를 실행할 때 사용하는 메서드입니다.

모든 클라이언트를 대상으로 하기 때문에 Player 인자를 지정하지 않습니다.

Parameters

Tuple Arguments

RemoteEvent의 OnClientEvent에 연결된 함수로 전달되는 인자입니다.

  • number, boolean, string, table 등 Luau의 기본 자료형을 전달할 수 있습니다.

  • Instance 같은 객체도 전달할 수 있습니다.

  • 모든 데이터 타입이 완전히 지원되는 것은 아니기 때문에, 사용 전 실제 동작을 확인해보는 것이 좋습니다.

Return

void

Code Samples

-- Script
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local S2C_DeadEvent = ReplicatedStorage:WaitForChild("S2C_DeadEvent")

local function EnterPlayer(player)
    local SomeText = "FireAllClients"
    S2C_DeadEvent:FireAllClients(SomeText) -- Passing arguments
end
Players.PlayerAdded:Connect(EnterPlayer)


-----------------------------------------------------------------------------------
-- LocalScript
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local S2C_DeadEvent = ReplicatedStorage:WaitForChild("S2C_DeadEvent")

local function OnDeadEvent(text)
    print("[OnDeadEvent]", "Parameter : ", text)
end
S2C_DeadEvent.OnClientEvent:Connect(OnDeadEvent)

Events

OnClientEvent

RemoteEvent 인스턴스에서 FireClient() 또는 FireAllClients()가 호출되면 해당 인스턴스의 OnClientEvent에 연결된 모든 함수가 실행되며, 호출 시 전달된 인자는 연결된 함수로 그대로 전달됩니다.

Parameters

Code Samples

local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local S2C_DeadEvent = ReplicatedStorage:WaitForChild("S2C_DeadEvent")

local function OnDeadEvent(text)
    print("[OnDeadEvent]", "Parameter : ", text)
end
S2C_DeadEvent.OnClientEvent:Connect(OnDeadEvent)

OnServerEvent

RemoteEvent 인스턴스에서 FireServer()가 호출되면 해당 인스턴스의 OnServerEvent에 연결된 모든 함수가 실행되며, 호출 시 전달된 인자는 연결된 함수로 그대로 전달됩니다.

Parameters

Code Samples

local ReplicatedStorage = game:GetService("ReplicatedStorage") 
local C2S_EnterPlayer = ReplicatedStorage:WaitForChild("C2S_EnterPlayer")

local function OnEnterPlayer(player, number)
    print("[OnEnterPlayer]", player.Name, " / Parameter : ", number)
end
C2S_EnterPlayer.OnServerEvent:Connect(OnEnterPlayer)

See also

서버-클라 통신

Last updated