예제 #1
0
        public void AddRefParam(string name, Vector3 value)
        {
            if (!this.refParamList.ContainsKey(name))
            {
                SRefParam sRefParam = SObjPool <SRefParam> .New();

                sRefParam.type        = SRefParam.ValType.Vector3;
                sRefParam.union._vec3 = value;
                this.refParamList.Add(name, sRefParam);
            }
        }
예제 #2
0
        public void AddRefParam(string name, float value)
        {
            if (!this.refParamList.ContainsKey(name))
            {
                SRefParam sRefParam = SObjPool <SRefParam> .New();

                sRefParam.type         = SRefParam.ValType.Float;
                sRefParam.union._float = value;
                this.refParamList.Add(name, sRefParam);
            }
        }
예제 #3
0
        public void AddRefParam(string name, PoolObjHandle <ActorRoot> value)
        {
            if (!this.refParamList.ContainsKey(name))
            {
                SRefParam sRefParam = SObjPool <SRefParam> .New();

                sRefParam.handle = value;
                sRefParam.type   = SRefParam.ValType.ActorRoot;
                this.refParamList.Add(name, sRefParam);
            }
        }
예제 #4
0
        public void AddRefParam(string name, object value)
        {
            if (!this.refParamList.ContainsKey(name))
            {
                SRefParam sRefParam = SObjPool <SRefParam> .New();

                sRefParam.obj  = value;
                sRefParam.type = SRefParam.ValType.Object;
                this.refParamList.Add(name, sRefParam);
            }
        }
예제 #5
0
        public void AddRefParam(string name, uint value)
        {
            if (!this.refParamList.ContainsKey(name))
            {
                SRefParam param = SObjPool <SRefParam> .New();

                param.type        = SRefParam.ValType.UInt;
                param.union._uint = value;
                this.refParamList.Add(name, param);
            }
        }
예제 #6
0
        public SRefParam Clone()
        {
            SRefParam param = SObjPool <SRefParam> .New();

            param.type  = this.type;
            param.dirty = false;
            if (this.type < ValType.Object)
            {
                param.union._quat = this.union._quat;
                return(param);
            }
            param.obj = this.obj;
            if (this.type == ValType.ActorRoot)
            {
                param.union._uint = this.union._uint;
            }
            return(param);
        }
예제 #7
0
        public SRefParam Clone()
        {
            SRefParam sRefParam = SObjPool <SRefParam> .New();

            sRefParam.type  = this.type;
            sRefParam.dirty = false;
            if (this.type < SRefParam.ValType.Object)
            {
                sRefParam.union._quat = this.union._quat;
            }
            else
            {
                sRefParam.obj = this.obj;
                if (this.type == SRefParam.ValType.ActorRoot)
                {
                    sRefParam.union._uint = this.union._uint;
                }
            }
            return(sRefParam);
        }
예제 #8
0
 public void Destroy()
 {
     this.obj = null;
     SObjPool <SRefParam> .Delete(this);
 }