Beispiel #1
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="decoder">对象解码器</param>
        public LuaPointer(LuaObjectDecoder decoder)
            : base(decoder)
        {
            Int64 objRefId = decoder.readInt64();

            _objReference = LuaObjectReference.findObject(objRefId);
        }
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="decoder">对象解码器</param>
        public LuaObjectDescriptor(LuaObjectDecoder decoder)
            : base(decoder)
        {
            Int64 objRefId = decoder.readInt64();

            _objRef = LuaObjectReference.findObject(objRefId);

            luaObjectId = decoder.readString();
        }
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="decoder">对象解码器</param>
        public LuaObjectDescriptor(LuaObjectDecoder decoder)
            : base(decoder)
        {
            IntPtr ptr = new IntPtr(decoder.readInt64());

            _obj = Marshal.GetObjectForIUnknown(ptr);

            _luaObjectId = decoder.readString();
        }
Beispiel #4
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="decoder">对象解码器</param>
        public LuaObjectDescriptor(LuaObjectDecoder decoder)
            : base(decoder)
        {
            Int64 objRefId = decoder.readInt64();

            _objRef = LuaObjectReference.findObject(objRefId);

            luaObjectId = decoder.readString();

            //原生类型标识读取
            decoder.readInt32();

            //读取自定义数据
            int userdataSize = decoder.readInt32();

            for (int i = 0; i < userdataSize; i++)
            {
                decoder.readString();
                decoder.readString();
            }
        }