예제 #1
0
        public bool LoadNodeTreeFromStreamRecursive(NullNodeTree nodeTree, NullMemoryStream stream)
        {
            nodeTree.Clear();
            bool res = stream.ReadString(out nodeTree.NodeName);

            res &= stream.ReadInt(out nodeTree.NodeHandle);
            res &= stream.ReadInt(out nodeTree.GroupId);
            bool nameHandleOnly = false;

            res &= stream.ReadBool(out nameHandleOnly);
            if (!nameHandleOnly)
            {
                res &= stream.ReadVector3(out Pos);
                res &= stream.ReadQuaternion(out Quat);
            }
            int count;

            res &= stream.ReadInt(out count);
            nodeTree.SetNumChildren(count);
            for (int i = 0; i < nodeTree.NumChildren; i++)
            {
                NullNodeTree node = nodeTree.Children[i];
                res &= LoadNodeTreeFromStreamRecursive(node, stream);
            }
            return(res);
        }
예제 #2
0
        public bool LoadFromStream(NullMemoryStream stream)
        {
            bool res = stream.ReadString(out name);

            res &= stream.ReadInt(out age);
            res &= stream.ReadBool(out isMale);
            res &= stream.ReadFloat(out money);
            return(res);
        }