public void SetChatEvent()
    {
        //IL_004e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0090: Unknown result type (might be due to invalid IL or missing references)
        RegistOnRecvChat(MonoBehaviourSingleton <ChatManager> .I.loungeChat);
        MonoBehaviourSingleton <ChatManager> .I.OnCreateLoungeChat  += RegistOnRecvChat;
        MonoBehaviourSingleton <ChatManager> .I.OnDestroyLoungeChat += UnRegistOnRecvChat;
        Transform val = MonoBehaviourSingleton <UIManager> .I.common.CreateStampAppeal();

        stampAppeal           = val.get_gameObject().AddComponent <StampAppeal>();
        stampAppeal.collectUI = val;
        stampAppeal.CreateCtrlsArray(typeof(StampAppeal.UI));
        val = MonoBehaviourSingleton <UIManager> .I.common.CreateChatAppeal();

        chatAppeal           = val.get_gameObject().AddComponent <ChatAppeal>();
        chatAppeal.collectUI = val;
        chatAppeal.CreateCtrlsArray(typeof(ChatAppeal.UI));
    }
 protected override void OnDestroy()
 {
     //IL_0021: Unknown result type (might be due to invalid IL or missing references)
     //IL_0038: Unknown result type (might be due to invalid IL or missing references)
     if (chatAppeal != null && MonoBehaviourSingleton <ChatManager> .IsValid())
     {
         Object.DestroyImmediate(chatAppeal.get_gameObject());
         chatAppeal = null;
         Object.DestroyImmediate(stampAppeal.get_gameObject());
         stampAppeal = null;
         MonoBehaviourSingleton <ChatManager> .I.OnCreateLoungeChat  -= RegistOnRecvChat;
         MonoBehaviourSingleton <ChatManager> .I.OnDestroyLoungeChat -= UnRegistOnRecvChat;
     }
     if (isRegistChat && MonoBehaviourSingleton <ChatManager> .IsValid())
     {
         UnRegistOnRecvChat(MonoBehaviourSingleton <ChatManager> .I.loungeChat);
     }
     base.OnDestroy();
 }