OnPlayerLeft#
- ExportRoom.OnPlayerLeft(callback)#
プレイヤーがルームから退出したときに呼び出されるコールバックを設定します。
コールバックにはtable
型の引数が渡されます。
table
型の引数は以下のフィールドを持ちます。フィールド名
型
説明
PlayerId
string
プレイヤーID
- Parameters:
callback (
function
) -- コールバック関数
Example#
-- ルーム設定の取得
print("Gravity: "..tostring(vci.vc.room.GetGravity()))
print("WalkSpeed: "..vci.vc.room.GetWalkSpeed())
print("JumpSpeed: "..vci.vc.room.GetJumpSpeed())
print("RoomKey: "..vci.vc.room.GetRoomKey())
-- プレイヤー情報の取得
local players = vci.vc.room.GetAllPlayers()
local currentPlayersString = "Current Players: "
local idToNameMap = {}
for k, v in pairs(players) do
local name = v.GetName()
idToNameMap[v.GetId()] = name
currentPlayersString = currentPlayersString..name..", "
end
print(string.sub(currentPlayersString, 1, -3))
-- ローカルプレイヤーの取得
local localPlayer = vci.vc.room.GetLocalPlayer()
print("local player: "..localPlayer.GetName())
-- 入室時コールバックの登録
vci.vc.room.OnPlayerJoined(
function (joinEvent) -- {"PlayerId": string}
local id = joinEvent["PlayerId"]
local name = vci.vc.room.GetPlayerById(id).GetName()
-- プレイヤーが入室するとコンソールに名前を表示
print(name.." has joined.")
idToNameMap[id] = name
end
)
-- 退出時コールバックの登録
vci.vc.room.OnPlayerLeft(
function (leftEvent) -- {"PlayerId": string}
local id = leftEvent["PlayerId"]
local name = idToNameMap[id]
-- プレイヤーが退出するとコンソールに名前を表示
if name ~= nil then print(name.." has left.") end
idToNameMap[id] = nil
end
)