/// <summary> /// Send the reverse metadata from game server to the agent. This should be called when the game wants to update the metadata. Thread-safe. /// </summary> /// <param name="map">Current map.</param> /// <param name="mode">Current mode.</param> /// <param name="type">Current type.</param> public void SendReverseMetadata(string map, string mode, string type) { int code; using (var data = new OneArray()) using (var mapObject = new OneObject()) using (var modeObject = new OneObject()) using (var typeObject = new OneObject()) using (var map1 = new Utf8ByteArray(map)) using (var mode1 = new Utf8ByteArray(mode)) using (var type1 = new Utf8ByteArray(type)) { mapObject.SetString("key", "map"); mapObject.SetString("value", map1.ToString()); modeObject.SetString("key", "mode"); modeObject.SetString("value", mode1.ToString()); typeObject.SetString("key", "type"); typeObject.SetString("value", type1.ToString()); data.PushObject(mapObject); data.PushObject(modeObject); data.PushObject(typeObject); code = one_server_send_reverse_metadata(_ptr, data.Ptr); } OneErrorValidator.Validate(code); }