extends Reference class_name NakamaRTMessage # Send a channel join message to the server. class ChannelJoin: const _SCHEMA = { "persistence": {"name": "persistence", "type": TYPE_BOOL, "required": true}, "hidden": {"name": "hidden", "type": TYPE_BOOL, "required": true}, "target": {"name": "target", "type": TYPE_STRING, "required": true}, "type": {"name": "type", "type": TYPE_INT, "required": true}, } enum ChannelType { # A chat room which can be created dynamically with a name. Room = 1, # A private chat between two users. DirectMessage = 2, # A chat within a group on the server. Group = 3 } var persistence : bool var hidden : bool var target : String var type : int func _init(p_target : String, p_type : int, p_persistence : bool, p_hidden : bool): persistence = p_persistence hidden = p_hidden target = p_target type = p_type if p_type >= ChannelType.Room and p_type <= ChannelType.Group else 0 # Will cause error server side func serialize() -> Dictionary: return NakamaSerializer.serialize(self) func get_msg_key() -> String: return "channel_join" func _to_string(): return "ChannelJoin