コード例 #1
1
ファイル: GameRecord.cs プロジェクト: 56059943/test1
        public bool GetValue(int row, int col, ref VarList.VarData result)
        {
            if (row < 0 || col < 0 || row >= GetRowCount() || col >= GetColcount())
            {
                //Log.Trace("Error,GameRecord.GetValue row or col out of range:");
                return(false);
            }

            try
            {
                VarList rowItem = rowSet[row];
                if (rowItem == null)
                {
                    return(false);
                }

                if (rowItem.GetCount() != GetColcount())
                {
                    //Log.Trace("Error,GameRecord.GetValue Col Error:");
                    return(false);
                }

                switch (colTypes[col])
                {
                case VarType.Bool:
                {
                    bool value = rowItem.GetBool(col);
                    result.Data = value;
                }

                break;

                case VarType.Int:
                {
                    int value = rowItem.GetInt(col);
                    result.Data = value;
                }
                break;

                case VarType.Int64:
                {
                    long value = rowItem.GetInt64(col);
                    result.Data = value;
                }
                break;

                case VarType.Float:
                {
                    float value = rowItem.GetFloat(col);
                    result.Data = value;
                }
                break;

                case VarType.Double:
                {
                    double value = rowItem.GetDouble(col);
                    result.Data = value;
                }
                break;

                case VarType.String:
                {
                    string value = rowItem.GetString(col);
                    result.Data = value;
                }
                break;

                case VarType.WideStr:
                {
                    string value = rowItem.GetWideStr(col);
                    result.Data = value;
                }
                break;

                case VarType.Object:
                {
                    ObjectID value = rowItem.GetObject(col);
                    if (value.IsNull())
                    {
                        //Log.Trace("Error,GameRecord.GetValue objid is null:");
                        return(false);
                    }
                    result.Data = value;
                }
                break;

                default:
                    //Log.Trace("Error,GameRecord.GetValue type error:");
                    return(false);
                }
            }
            catch (Exception ex)
            {
                //Log.Trace("Error,GameRecord.GetValue Exception:" + ex.ToString());
                return(false);
            }

            return(true);
        }
コード例 #2
0
        public GameSceneObj GetSceneObj(ObjectID ident)
        {
            try
            {
                if (ident.IsNull())
                {
                    return(null);
                }

                if (m_client == null)
                {
                    return(null);
                }

                GameScene scene = (GameScene)m_client.GetCurrentScene();
                if (scene == null)
                {
                    return(null);
                }

                GameSceneObj sceneObj = scene.GetSceneObjByIdent(ident);
                return(sceneObj);
            }
            catch (Exception ex)
            {
                //Log.Trace("Exception:" + ex.ToString());
                return(null);
            }
        }
コード例 #3
0
ファイル: GameObject.cs プロジェクト: 56059943/test1
 public void SetIdent(ObjectID value)
 {
     if (!value.IsNull())
     {
         this.mIdent = value;
     }
 }
コード例 #4
0
ファイル: GameObjectSet.cs プロジェクト: 56059943/test1
        public bool Add(ObjectID ident, ref GameSceneObj obj)
        {
            if (obj == null ||
                ident.IsNull())
            {
                return(false);
            }

            try
            {
                obj.SetIdent(ident);
                obj.SetHash(Tools.GetHashValueCase(ident));
                if (mObjects.ContainsKey(ident))
                {
                    return(false);
                }

                mObjects.Add(ident, obj);
            }
            catch (Exception ex)
            {
                //Log.Trace("Error,GameObjectSet.Add Exception:" + ex.ToString());
                return(false);
            }
            return(true);
        }
コード例 #5
0
ファイル: Tools.cs プロジェクト: 56059943/test1
        //public static ObjectID genObjectId(string name)
        //{
        //    if (name == null || name.Length == 0)
        //    {
        //        return new ObjectID();
        //    }

        //    uint hashValue = GetHashValueCase(name);

        //    ObjectID objId = new ObjectID(hashValue, hashValue);
        //    return objId;
        //}

        public static uint GetHashValueCase(ObjectID name)
        {
            if (name.IsNull())
            {
                return(0);
            }

            uint   hashValue = 0;
            string strName   = name.ToString();

            for (int i = 0; i < strName.Length; i++)
            {
                hashValue = hashValue * 5 + strName[i];
            }

            return(hashValue);
        }
コード例 #6
0
ファイル: GameObjectSet.cs プロジェクト: 56059943/test1
        public GameObj GetObjectByIdent(ObjectID ident)
        {
            if (ident.IsNull())
            {
                return(null);
            }

            try
            {
                if (!mObjects.ContainsKey(ident))
                {
                    return(null);
                }
                return(mObjects[ident]);
            }
            catch (Exception ex)
            {
                //Log.Trace("Error,GameObjectSet.GetObjectByIdent Exception:" + ex.ToString());
                return(null);
            }
        }
コード例 #7
0
ファイル: GameObjectSet.cs プロジェクト: 56059943/test1
        public bool Remove(ObjectID ident)
        {
            if (ident.IsNull())
            {
                return(false);
            }

            try
            {
                if (!mObjects.ContainsKey(ident))
                {
                    return(false);
                }
                mObjects.Remove(ident);
            }
            catch (Exception ex)
            {
                //Log.Trace("Error,GameObjectSet.Remove Exception:" + ex.ToString());
            }
            return(true);
        }
コード例 #8
0
ファイル: GameRecClient.cs プロジェクト: 56059943/test1
 public GameViewObj GetViewObj(ObjectID view_ident, ObjectID item_ident)
 {
     try
     {
         if (view_ident.IsNull() ||
             item_ident.IsNull())
         {
             return(null);
         }
         GameView view = m_client.GetViewByIdent(view_ident);
         if (null == view)
         {
             return(null);
         }
         return((GameViewObj)view.GetViewObjByIdent(item_ident));
     }
     catch (Exception ex)
     {
         Log.TraceExcep(ref ex);
         return(null);
     }
 }
コード例 #9
0
ファイル: GameObjectSet.cs プロジェクト: 56059943/test1
        public bool Change(ObjectID old_ident, ObjectID new_ident)
        {
            if (old_ident.IsNull() || new_ident.IsNull())
            {
                return(false);
            }

            try
            {
                if (!mObjects.ContainsKey(old_ident))
                {
                    return(false);
                }

                if (!mObjects.ContainsKey(new_ident))
                {
                    return(false);
                }

                GameObj oldObj = mObjects[old_ident];
                GameObj newObj = mObjects[new_ident];
                if (oldObj == null || newObj == null)
                {
                    return(false);
                }

                newObj.SetIdent(old_ident);
                newObj.SetHash(Tools.GetHashValueCase(old_ident));

                oldObj.SetIdent(new_ident);
                oldObj.SetHash(Tools.GetHashValueCase(new_ident));
            }
            catch (Exception ex)
            {
                //Log.TraceError("Error, exception " + ex.ToString());
                return(false);
            }
            return(true);
        }
コード例 #10
0
ファイル: GameObjectSet.cs プロジェクト: 56059943/test1
        public bool Find(ObjectID ident)
        {
            if (ident.IsNull())
            {
                return(false);
            }

            try
            {
                if (!mObjects.ContainsKey(ident))
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                //Log.TraceError("Error, exception " + ex.ToString());
                return(false);
            }

            return(true);
        }
コード例 #11
0
ファイル: GameRecClient.cs プロジェクト: 56059943/test1
        public GameView GetView(ObjectID ident)
        {
            try
            {
                if (ident.IsNull())
                {
                    //Log.Trace("ident is null");
                    return(null);
                }

                if (null == m_client)
                {
                    //Log.Trace("GameClient is null");
                    return(null);
                }

                return(m_client.GetViewByIdent(ident));
            }
            catch (Exception ex)
            {
                Log.TraceExcep(ref ex);
                return(null);
            }
        }
コード例 #12
0
ファイル: GameRecord.cs プロジェクト: mengtest/actdemo
        public bool GetValue(int row, int col, ref Var result)
        {
            if (row < 0 || col < 0 || row >= GetRowCount() || col >= GetColcount())
            {
                return(false);
            }

            try
            {
                VarList rowItem = rowSet[row];


                if (rowItem.GetCount() != GetColcount())
                {
                    LogSystem.Log("Error,GameRecord.GetValue Col Error:");
                    return(false);
                }

                switch (colTypes[col])
                {
                case VarType.Bool:
                {
                    bool value = rowItem.GetBool(col);
                    result.SetBool(value);
                }

                break;

                case VarType.Int:
                {
                    int value = rowItem.GetInt(col);
                    result.SetInt(value);
                }
                break;

                case VarType.Int64:
                {
                    long value = rowItem.GetInt64(col);
                    result.SetInt64(value);
                }
                break;

                case VarType.Float:
                {
                    float value = rowItem.GetFloat(col);
                    result.SetFloat(value);
                }
                break;

                case VarType.Double:
                {
                    double value = rowItem.GetDouble(col);
                    result.SetDouble(value);
                }
                break;

                case VarType.String:
                {
                    string value = rowItem.GetString(col);
                    result.SetString(value);
                }
                break;

                case VarType.WideStr:
                {
                    string value = rowItem.GetWideStr(col);
                    result.SetWideStr(value);
                }
                break;

                case VarType.Object:
                {
                    ObjectID objId = rowItem.GetObject(col);
                    if (objId == null || objId.IsNull())
                    {
                        LogSystem.Log("Error,GameRecord.GetValue objid is null:");
                        return(false);
                    }
                    result.SetObject(objId);
                }
                break;

                default:
                    LogSystem.Log("Error,GameRecord.GetValue type error:");
                    return(false);
                }
            }
            catch (Exception ex)
            {
                LogSystem.Log("Error,GameRecord.GetValue Exception:", ex.ToString());
                return(false);
            }

            return(true);
        }