예제 #1
0
    private static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets,
                                               string[] movedAssets, string[] movedFromPath)
    {
        if (CheckResModified(importedAssets) || CheckResModified(deletedAssets) || CheckResModified(movedAssets))
        {
            string path = System.IO.Path.Combine(RESOURCE_GM_CONFIG_FOLDER, "GMCmdConfig.xml");

            TextReader tr = new StreamReader(path);

            string text = tr.ReadToEnd();

            if (text == null)
            {
                Debug.LogError("GM config file not exist");
                return;
            }
            else
            {
                XmlSpreadSheetReader.ReadSheet(text);

                XmlSpreadSheet sheet = XmlSpreadSheetReader.Output;

                string[] keys = XmlSpreadSheetReader.Keys;

                object[] levelIds = sheet[keys[0]];

                List <GMConfigData> tempList = new List <GMConfigData>();

                for (int i = 2; i < levelIds.Length; i++)
                {
                    GMConfigData data = new GMConfigData();
                    data.m_gmType = Convert.ToInt32(sheet["GMType"][i]);
                    data.m_name   = sheet["Name"][i].ToString();
                    data.m_desc   = sheet["FunctionDesc"][i].ToString();
                    tempList.Add(data);
                }

                CreatePlayerLevelConfigDataBase(tempList);
            }
        }
    }
예제 #2
0
    private void ProcessGM()
    {
        GUI.skin.verticalScrollbar.fixedWidth      = 80;
        GUI.skin.verticalScrollbarThumb.fixedWidth = 80;

        GUIStyle verticleBarStyle = new GUIStyle();

        verticleBarStyle.fixedWidth = 100;
        m_gmScrollPos = GUILayout.BeginScrollView(m_gmScrollPos, false, true, GUILayout.ExpandWidth(true), GUILayout.ExpandWidth(true));          //GUIStyle.none, verticleBarStyle, GUILayout.ExpandWidth (true), GUILayout.ExpandWidth (true) ); //GUILayout.ExpandWidth (true), GUILayout.ExpandWidth (true));
        GUILayout.BeginVertical();

        if (GUILayout.Button("Close GM", GUILayout.ExpandWidth(true), GUILayout.MinHeight(80)))
        {
            m_showGM = false;
        }

        if (null == m_strContents)
        {
            m_strContents = new string[GMConfig.m_dataTable.Length];
            for (int i = 0; i < m_strContents.Length; i++)
            {
                m_strContents[i] = "";
            }
        }

        for (int i = 0; i < GMConfig.m_dataTable.Length; i++)
        {
            GMConfigData data = GMConfig.m_dataTable[i];

            GUILayout.BeginHorizontal();


            m_strContents[i] = GUILayout.TextField(m_strContents[i], GUILayout.MinWidth(100), GUILayout.ExpandWidth(true), GUILayout.MinHeight(80));
            GUILayout.Label(data.m_desc, GUILayout.ExpandWidth(true), GUILayout.MinHeight(80));

            if (GUILayout.Button(data.m_name, GUILayout.ExpandWidth(true), GUILayout.MinHeight(80), GUILayout.MinWidth(100)))
            {
                SMsgInteractCOMMON_CS msgInteract;
                msgInteract.dwNPCID       = NpcTalk_v2.Instance.m_sMsgInteractCOMMONData.sMsgInteractCOMMON_SC.dwNPCID;
                msgInteract.byOperateType = 3;
                msgInteract.dwParam1      = (uint)(data.m_gmType);
                msgInteract.dwParam2      = 0;
                msgInteract.byIsContext   = 1;

                SMsgInteractCOMMONContext_CS msgContext;
                msgContext.szContext = new byte[32];
                Encoding.Default.GetBytes(m_strContents[i]).CopyTo(msgContext.szContext, 0);

                NetServiceManager.Instance.InteractService.SendInteractCOMMON(msgInteract, msgContext);


                //TraceUtil.Log("sendGM:" + data.m_name + "    " +  m_strContents[i]);
            }


            GUILayout.EndHorizontal();
        }

        GUILayout.EndVertical();
        GUILayout.EndScrollView();
    }