using System;
using System.Collections.Generic;
using UnityEngine;

// Token: 0x0200006F RID: 111
[ExecuteInEditMode]
public class SceneInfo : MonoBehaviour
{
	// Token: 0x06000B7F RID: 2943 RVA: 0x000DF46D File Offset: 0x000DD66D
	public void AddLight(Light l, bool interior)
	{
		if (interior)
		{
			if (!this.lightsInterior.Contains(l))
			{
				this.lightsInterior.Add(l);
				return;
			}
		}
		else if (!this.lightsExterior.Contains(l))
		{
			this.lightsExterior.Add(l);
		}
	}

	// Token: 0x06000B80 RID: 2944 RVA: 0x000DF4A8 File Offset: 0x000DD6A8
	private void Update()
	{
		if (this.exteriorShadows)
		{
			if (Links.x)
			{
				if (Links.x.gaia.sceneLoaded && !Links.x.cameraEffects.pointLightShadows.switchingScenes)
				{
					Shader.SetGlobalTexture("_RealtimeShadowTex", this.exteriorShadows);
					Shader.SetGlobalMatrix("_Scene_RealtimeShadowMatrix", this.exteriorShadowsParams);
					return;
				}
			}
			else
			{
				Shader.SetGlobalTexture("_RealtimeShadowTex", this.exteriorShadows);
				Shader.SetGlobalMatrix("_Scene_RealtimeShadowMatrix", this.exteriorShadowsParams);
			}
		}
	}

	// Token: 0x0400114F RID: 4431
	public string sceneName;

	// Token: 0x04001150 RID: 4432
	public string sceneDisplayName;

	// Token: 0x04001151 RID: 4433
	public bool timeOfDay;

	// Token: 0x04001152 RID: 4434
	public bool saveOverTerrain;

	// Token: 0x04001153 RID: 4435
	public bool underground;

	// Token: 0x04001154 RID: 4436
	public bool blackFow;

	// Token: 0x04001155 RID: 4437
	public Vector2 resolution;

	// Token: 0x04001156 RID: 4438
	public Vector2 aspect;

	// Token: 0x04001157 RID: 4439
	public Vector2 split;

	// Token: 0x04001158 RID: 4440
	public float cameraDistance;

	// Token: 0x04001159 RID: 4441
	public float groundY;

	// Token: 0x0400115A RID: 4442
	public List<CaptureAreaInfo> sceneViews = new List<CaptureAreaInfo>();

	// Token: 0x0400115B RID: 4443
	public Light sceneDirectionalLight;

	// Token: 0x0400115C RID: 4444
	public Texture2D sceneMap;

	// Token: 0x0400115D RID: 4445
	public GameObject testCamera;

	// Token: 0x0400115E RID: 4446
	public List<Light> lightsExterior = new List<Light>();

	// Token: 0x0400115F RID: 4447
	public List<Light> lightsInterior = new List<Light>();

	// Token: 0x04001160 RID: 4448
	public bool capturing;

	// Token: 0x04001161 RID: 4449
	public Texture2D exteriorShadows;

	// Token: 0x04001162 RID: 4450
	public Matrix4x4 exteriorShadowsParams;
}
