Esempio n. 1
0
 private void ApplyLevel(int level)
 {
     BuffData.Level lvlDef = this._data.levels[level];
     this.radius                = lvlDef.radius;
     this.areaFx                = lvlDef.areaFx;
     this.extra                 = lvlDef.extra;
     this.extra_s               = lvlDef.extra_s;
     this.duration              = lvlDef.duration;
     this.speed                 = lvlDef.speed;
     this.maxTriggerTargets     = lvlDef.maxTriggerTargets;
     this.perTargetTriggerCount = lvlDef.perTargetTriggerCount;
     this.maxTriggerCount       = lvlDef.maxTriggerCount;
     this.trigger               = lvlDef.trigger;
 }
Esempio n. 2
0
        private static void PreloadBuffs(LoadBatch loader, string[] buffs)
        {
            if (buffs == null)
            {
                return;
            }

            int c2 = buffs.Length;

            for (int i = 0; i < c2; i++)
            {
                BuffData buffData = ModelFactory.GetBuffData(buffs[i]);
                //enter state
                if (buffData.enterStates != null)
                {
                    int c3 = buffData.enterStates.Length;
                    for (int j = 0; j < c3; j++)
                    {
                        string        stateId       = buffData.enterStates[j];
                        BuffStateData buffStateData = ModelFactory.GetBuffStateData(stateId);
                        int           c4            = buffStateData.levels.Length;
                        for (int k = 0; k < c4; k++)
                        {
                            BuffStateData.Level level = buffStateData.levels[k];
                            if (level.fxs == null)
                            {
                                continue;
                            }

                            int c6 = level.fxs.Length;
                            for (int l = 0; l < c6; l++)
                            {
                                EntityData effectData = ModelFactory.GetEntityData(level.fxs[l]);
                                loader.Add(new AssetsLoader("model/" + effectData.model));
                            }

                            if (level.trigger != null &&
                                level.trigger.fxs != null)
                            {
                                int c5 = level.trigger.fxs.Length;
                                for (int l = 0; l < c5; l++)
                                {
                                    string fxId = level.trigger.fxs[l];
                                    if (string.IsNullOrEmpty(fxId))
                                    {
                                        continue;
                                    }
                                    EntityData effectData = ModelFactory.GetEntityData(fxId);
                                    loader.Add(new AssetsLoader("model/" + effectData.model));
                                }
                            }
                        }
                    }
                }

                //trigger state
                if (buffData.triggerStates != null)
                {
                    int c3 = buffData.triggerStates.Length;
                    for (int j = 0; j < c3; j++)
                    {
                        string        stateId       = buffData.triggerStates[j];
                        BuffStateData buffStateData = ModelFactory.GetBuffStateData(stateId);
                        int           c4            = buffStateData.levels.Length;
                        for (int k = 0; k < c4; k++)
                        {
                            BuffStateData.Level level = buffStateData.levels[k];
                            if (level.fxs == null)
                            {
                                continue;
                            }

                            int c6 = level.fxs.Length;
                            for (int l = 0; l < c6; l++)
                            {
                                EntityData effectData = ModelFactory.GetEntityData(level.fxs[l]);
                                loader.Add(new AssetsLoader("model/" + effectData.model));
                            }

                            if (level.trigger != null &&
                                level.trigger.fxs != null)
                            {
                                int c5 = level.trigger.fxs.Length;
                                for (int l = 0; l < c5; l++)
                                {
                                    string fxId = level.trigger.fxs[l];
                                    if (string.IsNullOrEmpty(fxId))
                                    {
                                        continue;
                                    }
                                    EntityData effectData = ModelFactory.GetEntityData(fxId);
                                    loader.Add(new AssetsLoader("model/" + effectData.model));
                                }
                            }
                        }
                    }
                }

                if (buffData.levels != null)
                {
                    int c3 = buffData.levels.Length;
                    for (int k = 0; k < c3; k++)
                    {
                        BuffData.Level buffLevel = buffData.levels[k];

                        if (!string.IsNullOrEmpty(buffLevel.fx))
                        {
                            EntityData effectData = ModelFactory.GetEntityData(buffLevel.fx);
                            loader.Add(new AssetsLoader("model/" + effectData.model));
                        }

                        if (!string.IsNullOrEmpty(buffLevel.areaFx))
                        {
                            EntityData effectData = ModelFactory.GetEntityData(buffLevel.areaFx);
                            loader.Add(new AssetsLoader("model/" + effectData.model));
                        }

                        //trigger
                        BuffData.Trigger trigger = buffLevel.trigger;
                        if (trigger != null)
                        {
                            if (trigger.fxs != null)
                            {
                                int c4 = trigger.fxs.Length;
                                for (int l = 0; l < c4; l++)
                                {
                                    if (!string.IsNullOrEmpty(trigger.fxs[l]))
                                    {
                                        EntityData effectData = ModelFactory.GetEntityData(trigger.fxs[l]);
                                        loader.Add(new AssetsLoader("model/" + effectData.model));
                                    }
                                }
                            }

                            if (trigger.tfxs != null)
                            {
                                int c4 = trigger.tfxs.Length;
                                for (int l = 0; l < c4; l++)
                                {
                                    if (!string.IsNullOrEmpty(trigger.tfxs[l]))
                                    {
                                        EntityData effectData = ModelFactory.GetEntityData(trigger.tfxs[l]);
                                        loader.Add(new AssetsLoader("model/" + effectData.model));
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }