public void link_begin_room(Object_recive o_recive) { Debug.Log("回调link_login函数"); switch (o_recive.result) { case "succeed": begin_room_succeed(); break; case "failure": begin_room_failure(); break; } }
private static void my_listen() { while (isrun) { //接收消息 string recStr = ""; byte[] recBytes = new byte[1024]; int bytes = s.Receive(recBytes); recStr += Encoding.ASCII.GetString(recBytes, 0, bytes); Debug.Log(recStr); Object_recive o_recive = JsonConvert.DeserializeObject <Object_recive>(recStr); func(o_recive); } }
public static void func(Object_recive o_recive) { Type t = typeof(UI_root); MethodInfo mi; string func_name = "link_" + o_recive.type; mi = t.GetMethod(func_name); if (mi == null) { Debug.Log("未找到该回调函数"); return; } else { UI_root ui = new UI_root(); Debug.Log("开始执行回调函数:" + func_name); mi.Invoke(ui, new object[] { o_recive }); } }
public void link_login(Object_recive o_recive) { switch (o_recive.result) { case "succeed": login_succeed(); huan_cun["num_change"] = 3; huan_cun["change1"] = "room_username"; huan_cun["change2"] = "room_userid"; huan_cun["change3"] = "room_userlevel"; huan_cun["room_username"] = o_recive.user_name; huan_cun["room_userid"] = o_recive.user_id; huan_cun["room_userlevel"] = o_recive.level; break; case "failure": login_failure(); break; } }