예제 #1
0
    /// <summary>
    /// 读取数据
    /// </summary>
    /// <returns></returns>
    public int QueryData()
    {
        m_data.Clear();

        Game game = Game.Instance;

        if (game == null || game.mGameClient == null)
        {
            return(0);
        }

        IGameObj obj = null;

        if (role)
        {
            obj = game.mGameClient.GetCurrentPlayer();
        }
        else
        {
            obj = GameSceneManager.mScene;
        }
        if (obj == null)
        {
            return(0);
        }

        GameRecord gRecord = obj.GetGameRecordByName(m_recordName);

        if (gRecord == null)
        {
            return(0);
        }

        int rows = gRecord.GetRowCount();

        on_record_add_row(m_recordName, 0, rows);

        return(rows);
    }
예제 #2
0
        public void CloneObj(ref IGameObj obj, ref IGameObj cloneObj)
        {
            Dictionary <string, GameProperty> mPropSet = cloneObj.PropSets();

            foreach (KeyValuePair <string, GameProperty> kvp in mPropSet)
            {
                string key = kvp.Key;
                obj.UpdateProperty(ref key, kvp.Value.propValue.Clone());
            }


            VarList recordList = new VarList();

            cloneObj.GetRecordList(ref recordList);
            int count = recordList.GetCount();

            for (int i = 0; i < count; i++)
            {
                string     recordName = recordList.GetString(i);
                GameRecord record     = cloneObj.GetGameRecordByName(recordName).Clone();
                obj.AddRecord2Set(recordName, ref record);
            }
        }