19 private readonly
int _Snow = Shader.PropertyToID(
"_Snow");
21 private readonly
int _SkyLevel = Shader.PropertyToID(
"_SkyLevel");
23 private readonly
int _NightRate = Shader.PropertyToID(
"_NightRate");
25 private readonly
int _ViewHeight = Shader.PropertyToID(
"_ViewHeight");
27 private readonly
int _FogStrength = Shader.PropertyToID(
"_FogStrength");
29 private readonly
int _FogColor = Shader.PropertyToID(
"_FogColor");
31 private readonly
int _FowColor = Shader.PropertyToID(
"_FowColor");
33 private readonly
int _SunColor = Shader.PropertyToID(
"_SunColor");
35 private readonly
int _SeaColor = Shader.PropertyToID(
"_SeaColor");
37 private readonly
int _SkyColor = Shader.PropertyToID(
"_SkyColor");
39 private readonly
int _SkyBGColor = Shader.PropertyToID(
"_SkyBGColor");
41 private readonly
int _Offset = Shader.PropertyToID(
"_Offset");
43 private readonly
int _Zoom = Shader.PropertyToID(
"_Zoom");
45 private readonly
int _LightPower = Shader.PropertyToID(
"_LightPower");
49 private readonly
int _ScreenFlash = Shader.PropertyToID(
"_ScreenFlash");
201 EMono.core.screen =
this;
202 Point._screen =
this;
203 base.gameObject.SetActive(value:
true);
216 bool flag2 = (main3.prewarm =
true);
217 bool prewarm = (main2.prewarm = flag2);
218 main.prewarm = prewarm;
220 for (
int i = 0; i < blossoms.Length; i++)
222 ParticleSystem.MainModule main4 = blossoms[i].main;
223 main4.prewarm =
true;
253 base.gameObject.SetActive(value:
false);
254 EMono.core.screen =
null;
279 float num = camera.zoomSpeed * (flag ? 0.05f : (camera.linearZoom ? 2f : 1f)) *
Core.
delta;
283 if (Mathf.Abs(num2 -
targetZoom) < (flag ? 0.0005f : 0.003f))
326 Scene.skipAnime =
false;
334 visible = ((room ==
null || !room.
HasRoof) ? 1 : 0);
340 flock.UpdateVisible((
byte)visible != 0);
352 Color value = color.
fog.Evaluate(time);
366 if ((
bool)fowProfile)
368 switch (fowProfile.
type)
377 Shader.SetGlobalColor(
_FowColor, color.
fow.Evaluate(time));
383 Shader.SetGlobalColor(
_FowColor, color.
fow.Evaluate(time));
386 Shader.SetGlobalColor(
_SeaColor, color.
sea.Evaluate(time));
387 Shader.SetGlobalColor(
_SkyColor, color.
sky.Evaluate(time));
395 main.startColor = (EMono._zone.IsSnowCovered ? color.
godraySnow.Evaluate(time) : color.
godray.Evaluate(time));
396 camSupport.grading.vignettePower = light.
vignetteCurve.Evaluate(time);
398 camSupport.bloom.threshold = light.
bloomCurve.Evaluate(time);
399 camSupport.beautify.bloomIntensity = light.
bloomCurve2.Evaluate(time);
481 pushBack.x = mapLimit.x - (float)num;
485 pushBack.y = mapLimit.y - (float)num2;
511 EMono.scene.cam.transform.localPosition =
_camPos;
528 grading.material.DisableKeyword(
"CLOUD_ON");
532 grading.material.EnableKeyword(
"CLOUD_ON");
551 width = (int)((
float)Screen.width / tileSize.x /
Zoom) + (
int)paddings.x + 2;
552 height = (int)((
float)Screen.height / (tileSize.y / 2f) /
Zoom) + (int)
paddings.y + 4;
555 Vector3 localScale =
new Vector3(
EMono.
scene.
cam.orthographicSize * ((
float)Screen.width / (
float)Screen.height) * 2.5f,
EMono.
scene.
cam.orthographicSize * 2.5f, 1f);
558 EMono.scene.skyBG.transform.localScale = localScale;
570 EMono.scene.cam.transform.position = Vector3.zero;
571 Vector3 vector2 =
EMono.
scene.
cam.WorldToScreenPoint(Vector3.zero);
574 EMono.scene.cam.transform.position = vector;
579 int num = EMono.screen.scrollX - EMono.screen.scrollY +
width / 2 - (
height / 2 + 1) / 2;
580 int num2 = EMono.screen.scrollY + EMono.screen.scrollX +
width / 2 +
height / 2 / 2;
590 EMono.scene.firefly.baseParticleCount = graphic.
fireflyCount;
591 EMono.scene.fireflyNight.baseParticleCount = graphic.fireflyCount * 10;
592 EMono.scene.star.baseParticleCount = graphic.
starCount;
612 EMono.scene.filterRain.Fade = ((currentCondition ==
Weather.
Condition.RainHeavy) ? 0.4f : 0.3f);
613 EMono.scene.rain.enableEmission = !flag && weather.
IsRaining;
614 ParticleSystem.EmissionModule emission =
EMono.
scene.
rain.emission;
615 emission.rateOverTime = ((currentCondition ==
Weather.
Condition.RainHeavy) ? 750 : 200);
616 EMono.scene.snow.enableEmission = !flag && currentCondition ==
Weather.
Condition.Snow;
617 EMono.scene.ether.enableEmission = !flag && weather.
IsEther;
618 bool enableEmission = !flag && weather.
IsBlossom;
620 for (
int i = 0; i < blossoms.Length; i++)
622 blossoms[i].enableEmission = enableEmission;
626 for (
int i = 0; i < blossoms.Length; i++)
628 blossoms[i].enableEmission = enableEmission;
630 EMono.scene.transBlizzard.localScale =
new Vector3(1f, 1f, 1f);
631 bool flag3 = (EMono._map.config.forceGodRay || (EMono.core.config.graphic.godray && !flag && (currentCondition == Weather.Condition.Fine || currentCondition ==
Weather.
Condition.Snow))) && !
BuildMenu.
Instance;
649 float num = ((zone.lv <= -2) ? 0f : ((zone.
lv <= -1) ? 0.3f : ((flag && !flag2) ? 0.6f : 1f)));
653 EMono.scene.camSupport.grading.userFog = ((!EMono._map.config.indoor && flag) ? 0f : 1f);
659 camSupport.grading.sceneBrightness = num2;
663 bool flag5 = (main3.prewarm =
false);
664 bool prewarm = (main2.prewarm = flag5);
665 main.prewarm = prewarm;
667 for (
int i = 0; i < blossoms.Length; i++)
669 ParticleSystem.MainModule main4 = blossoms[i].main;
670 main4.prewarm =
false;
677 float timeRatio = (EMono.core.IsGameStarted ? EMono.scene.timeRatio : 0f);
683 camSupport.grading.profile.sharpen.enable = EMono.core.config.graphic.sharpen > 0;
689 if (tintColor.a == 0f)
693 camSupport.beautify.tintColor = tintColor;
695 MATERIAL.sourceWaterSea.matColor = ((tintColor.a == 0f) ?
MATERIAL.
sourceWaterSea.GetColor() : tintColor);
702 camSupport.grading.nightBrightness = num;
713 position.x += x /
Zoom;
714 position.y += y /
Zoom;
715 if (x > 0.1f || x < -0.1f || y > 0.1f || y < 0.1f)
787 float num = snapSize.x / zoom;
788 float num2 = snapSize.y / zoom;
792 v.x = num * (float)Mathf.RoundToInt(v.x / num);
793 v.y = num2 * (float)Mathf.RoundToInt(v.y / num2);
796 v.x = num * (float)Mathf.FloorToInt(v.x / num);
797 v.y = num2 * (float)Mathf.FloorToInt(v.y / num2);
800 v.x = num * (float)Mathf.CeilToInt(v.x / num);
801 v.y = num2 * (float)Mathf.CeilToInt(v.y / num2);
806 v.x = num * (float)Mathf.RoundToInt(v.x / num);
807 v.y = num2 * (float)Mathf.RoundToInt(v.y / num2);
812 v.x = num * (float)Mathf.FloorToInt(v.x / num);
813 v.y = num2 * (float)Mathf.FloorToInt(v.y / num2);
818 v.x = num * (float)Mathf.CeilToInt(v.x / num);
819 v.y = num2 * (float)Mathf.CeilToInt(v.y / num2);
822 v.x = 0.01f * (float)Mathf.FloorToInt(v.x * 100f) + 0.001f;
823 v.y = 0.01f * (float)Mathf.FloorToInt(v.y * 100f) + 0.001f;
826 v.x = 0.01f * (float)Mathf.FloorToInt(v.x * 100f) - 0.001f;
827 v.y = 0.01f * (float)Mathf.FloorToInt(v.y * 100f) - 0.001f;
830 v.x = 0.01f * (float)Mathf.RoundToInt(v.x * 100f) + 0.005f;
831 v.y = 0.01f * (float)Mathf.RoundToInt(v.y * 100f) + 0.005f;
834 v.x = 0.01f * (float)Mathf.RoundToInt(v.x * 100f) + 0.025f;
835 v.y = 0.01f * (float)Mathf.RoundToInt(v.y * 100f) + 0.025f;
865 int num3 = (EMono.core.config.camera.extendZoomMax ? 4 : 3);
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
override float TargetZoom
virtual void OnActivate()
readonly int _ScreenFlash
void ModTargetZoomIndex(int a)
void FocusImmediate(Point pos)
void SetTargetZoomIndex(int index)
readonly int _BackDrawPower
void ScrollAxis(Vector3 axis, bool direct=false)
MeshRenderer overlayShadow
virtual void OnDeactivate()
virtual void OnChangeHour()
readonly int _FogStrength
void ScrollMouse(float x, float y)
virtual void OnEndPlayerTurn()
BaseTileSelector tileSelector
void SnapScreen(ref Vector3 v, float zoom)
void UpdateShaders(float time=0f)
virtual void RefreshWeather()
virtual bool IsGameScreen
virtual void RefreshPosition()
virtual void SetUnitSize()
readonly int _AnimeSpeedGlobal
void OnActivate(BaseGameScreen _screen)
void ResizeCameraToPixelPerfect()
CameraSupport.Divider divider
void RefreshUIBrightness()
static float gameDeltaNoPause
static GameSetting setting
static BaseGameScreen screen
static EffectManager Instance
static SourceMaterial.Row sourceWaterSea
SerializableColor colorSea
SerializableColor colorScreen
List< TransAnime > pointAnimes
ref Vector3 Position(int height)
Point Set(int _x, int _z)
ref Vector3 PositionCenter()
AnimationCurve lightPower
AnimationCurve bloomCurve
AnimationCurve bloomCurve2
AnimationCurve nightRatioCurve
AnimationCurve vignetteCurve
SceneGlobalProfile global
static SceneTemplate Load(string id)
ParticleSystem godrayDust
ParticleSystem[] blizzards
ParticleSystem[] blossoms
static Color currentColor
virtual bool IsSnowCovered
Condition CurrentCondition
virtual string IDSceneTemplate