Js通知LuaClient其实和通知LuaServer差不多,就是方法不一样通知客户端用的方法是SendEventClientSide,不过他们2个还是有一个很大的区别.

SendEventClientSide通知的事件需要在custom.gameevents文件中定义,就像CustomNetTable一样,需要在一个custom_net_tables.txt文件中定义一样

演示:

  • custom.gameevents
"Test"
{
    "Test"
    {
        "PlayerID" 					"short"
    }
}
  • JS
GameEvents.SendEventClientSide("Test", {PlayerID: Players.GetLocalPlayer()});
  • Lua
export function RegisterClientEvent(context:any)
{
    //这是客户端事件,不需要在Server中监听
    if (IsServer())
        return;
    
    ListenToGameEvent("Test",event => 
    {
        print("ShowPlaceArea", event.PlayerID);
    }, context);
}
  • Lua的addon_game_mode_client
RegisterClientEvent(GameRules);