コード例 #1
0
ファイル: BuffStatePool.cs プロジェクト: niuniuzhu/Lockstep
        public static void Push(BSBase obj)
        {
            Queue <BSBase> objs;

            if (!TYPE_TO_OBJECTS.TryGetValue(obj.GetType(), out objs))
            {
                objs = new Queue <BSBase>();
                TYPE_TO_OBJECTS[obj.GetType()] = objs;
            }
            objs.Enqueue(obj);
        }
コード例 #2
0
ファイル: BSRagnarok.cs プロジェクト: niuniuzhu/Lockstep
        protected override void DestroyInternal()
        {
            float factor = this.extra[0];            //特效放大因子

            this.owner.property.Mul(Attr.Scale, 1 / factor);
            List <string> stateIds = this.GetPassiveStateIds();
            int           count    = stateIds.Count;

            for (int i = 0; i < count; i++)
            {
                BSBase buffState = this.owner.GetBuffState(stateIds[i]);
                if (buffState != null)                  //需要判断是否空,因为有可能该satte被销毁了
                {
                    buffState.enable = true;
                }
            }
        }