Exemplo n.º 1
0
    // Token: 0x06002336 RID: 9014 RVA: 0x0040E454 File Offset: 0x0040C654
    public FlyingObjectManager(Transform root, ushort[] count, WarParticleManager _particleMgr) : base()
    {
        ushort[] array = new ushort[8];
        array[4]            = 2016;
        this.FO_OBJKIND     = array;
        this.MaxCount       = new int[8];
        this.freeList       = new List <FlyingObject> [8];
        this.bundleList     = new AssetBundle[8];
        this.StringInstance = new StringBuilder(128);
        int sceneLightmapSize = LightmapManager.Instance.SceneLightmapSize;
        int ambient           = 2 + sceneLightmapSize;

        this.renderRoot  = root;
        this.particleMgr = _particleMgr;
        int num = 0;

        for (int i = 0; i < 8; i++)
        {
            this.MaxCount[i] = (int)count[i];
            this.freeList[i] = new List <FlyingObject>(this.MaxCount[i]);
            this.initFlyingObject((FOKind)i, this.FO_OBJKIND[i], this.BUNDLE_NAME[i], this.MaxCount[i], ambient);
            num += this.MaxCount[i];
        }
        this.workingList = new List <FlyingObject>(num);
    }
Exemplo n.º 2
0
 // Token: 0x0600016A RID: 362 RVA: 0x00016920 File Offset: 0x00014B20
 public static void LoadMap(ushort Scene, byte Theme = 1, WarParticleManager WarP = null)
 {
     AssetManager.UnloadBigMap();
     AssetManager.SOB.Length = 0;
     AssetManager.SOB.AppendFormat("Scene/TMAP_{0}", Scene.ToString("d3"));
     if ((AssetManager.BigMac.Ass = AssetManager.GetAssetBundle(AssetManager.SOB.ToString(), out AssetManager.BigMac.AssKey, false)) && (AssetManager.BigMac.Asset = UnityEngine.Object.Instantiate(AssetManager.BigMac.Ass.Load(AssetManager.SOB.Remove(0, 6).ToString(), typeof(GameObject)))))
     {
         AssetManager.SOB.Length = 0;
         AssetManager.SOB.AppendFormat("Scene/TMAP_{0}_M{1}", Scene.ToString("d3"), 1);
         if (AssetManager.BigMap[0] = ((GameObject)AssetManager.BigMac.Asset).transform.Find(AssetManager.SOB.ToString()))
         {
             AssetManager.BigMap[0].position -= AssetManager.Bearing;
             AssetManager.BigMap[0].gameObject.AddComponent("ShadowReceiver");
             StringBuilder sob = AssetManager.SOB;
             int           num = 0;
             AssetManager.BigMap[0].renderer.lightmapIndex = num;
             sob.Length = num;
             AssetManager.SOB.AppendFormat("Scene/TMAP_{0}_{1}", Scene.ToString("d3"), Theme);
             if (AssetManager.BigData.Ass = AssetManager.GetAssetBundle(AssetManager.SOB.ToString(), out AssetManager.BigData.AssKey, false))
             {
                 if (!(AssetManager.SData = (AssetManager.BigData.Ass.mainAsset as SceneData)))
                 {
                     AssetManager.SOB.Length = 0;
                     AssetManager.SOB.AppendFormat("SceneData0{0}", Theme);
                     AssetManager.SData = (AssetManager.BigData.Ass.Load(AssetManager.SOB.ToString()) as SceneData);
                 }
                 RenderSettings.fog              = AssetManager.SData.mfog;
                 RenderSettings.fogColor         = AssetManager.SData.mfogcolor;
                 RenderSettings.fogDensity       = AssetManager.SData.mfogDensity;
                 RenderSettings.fogStartDistance = AssetManager.SData.mfogStartDistance;
                 RenderSettings.fogEndDistance   = AssetManager.SData.mfogEndDistance;
                 RenderSettings.ambientLight     = AssetManager.SData.mambientLight;
                 RenderSettings.fogMode          = (FogMode)AssetManager.SData.mfogMode;
                 int            num2  = AssetManager.SData.Lightmap.Length;
                 LightmapData[] array = new LightmapData[num2 + (int)LightmapManager.Instance.GetCustomLightmapNum()];
                 byte           b     = 0;
                 while ((int)b < num2)
                 {
                     array[(int)b] = new LightmapData
                     {
                         lightmapFar = AssetManager.SData.Lightmap[(int)b]
                     };
                     b += 1;
                 }
                 LightmapManager.Instance.UpdateCurLightmap(array);
                 LightmapSettings.lightmaps     = array;
                 LightmapSettings.lightmapsMode = LightmapsMode.Single;
                 LightmapSettings.lightProbes   = AssetManager.SData.Lightprobe;
                 Camera.main.backgroundColor    = AssetManager.SData.cameraBackgroundColor;
             }
         }
         Transform transform;
         if (transform = ((GameObject)AssetManager.BigMac.Asset).transform.FindChild("Theme"))
         {
             ushort num3 = 0;
             while ((int)num3 < transform.childCount)
             {
                 Transform child;
                 if ((child = transform.GetChild((int)num3)).name.Contains(Theme.ToString()))
                 {
                     ushort num4  = 0;
                     ushort effID = 0;
                     while ((int)num4 < child.childCount)
                     {
                         GameObject gameObject;
                         if (ushort.TryParse(child.GetChild((int)num4).name, out effID) && (gameObject = WarP.Spawn(effID, null, child.GetChild((int)num4).position, 1f, true, false)))
                         {
                             gameObject.transform.SetParent(((GameObject)AssetManager.BigMac.Asset).transform, false);
                         }
                         num4 += 1;
                     }
                 }
                 num3 += 1;
             }
         }
     }
 }