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);
217 bool flag2 = (main3.prewarm =
true);
218 bool prewarm = (main2.prewarm = flag2);
219 main.prewarm = prewarm;
221 for (
int i = 0; i < blossoms.Length; i++)
223 ParticleSystem.MainModule main4 = blossoms[i].main;
224 main4.prewarm =
true;
254 base.gameObject.SetActive(value:
false);
255 EMono.core.screen =
null;
280 float num = camera.zoomSpeed * (flag ? 0.05f : (camera.linearZoom ? 2f : 1f)) *
Core.
delta;
284 if (Mathf.Abs(num2 -
targetZoom) < (flag ? 0.0005f : 0.003f))
327 Scene.skipAnime =
false;
335 visible = ((room ==
null || !room.
HasRoof) ? 1 : 0);
341 flock.UpdateVisible((
byte)visible != 0);
353 Color value = color.
fog.Evaluate(time);
367 if ((
bool)fowProfile)
369 switch (fowProfile.
type)
378 Shader.SetGlobalColor(
_FowColor, color.
fow.Evaluate(time));
384 Shader.SetGlobalColor(
_FowColor, color.
fow.Evaluate(time));
387 Shader.SetGlobalColor(
_SeaColor, color.
sea.Evaluate(time));
388 Shader.SetGlobalColor(
_SkyColor, color.
sky.Evaluate(time));
396 main.startColor = (EMono._zone.IsSnowCovered ? color.
godraySnow.Evaluate(time) : color.
godray.Evaluate(time));
397 camSupport.grading.vignettePower = light.
vignetteCurve.Evaluate(time);
399 camSupport.bloom.threshold = light.
bloomCurve.Evaluate(time);
400 camSupport.beautify.bloomIntensity = light.
bloomCurve2.Evaluate(time);
482 pushBack.x = mapLimit.x - (float)num;
486 pushBack.y = mapLimit.y - (float)num2;
512 EMono.scene.cam.transform.localPosition =
_camPos;
529 grading.material.DisableKeyword(
"CLOUD_ON");
533 grading.material.EnableKeyword(
"CLOUD_ON");
552 width = (int)((
float)Screen.width / tileSize.x /
Zoom) + (
int)paddings.x + 2;
553 height = (int)((
float)Screen.height / (tileSize.y / 2f) /
Zoom) + (int)
paddings.y + 4;
556 Vector3 localScale =
new Vector3(
EMono.
scene.
cam.orthographicSize * ((
float)Screen.width / (
float)Screen.height) * 2.5f,
EMono.
scene.
cam.orthographicSize * 2.5f, 1f);
559 EMono.scene.skyBG.transform.localScale = localScale;
571 EMono.scene.cam.transform.position = Vector3.zero;
572 Vector3 vector2 =
EMono.
scene.
cam.WorldToScreenPoint(Vector3.zero);
575 EMono.scene.cam.transform.position = vector;
580 int num = EMono.screen.scrollX - EMono.screen.scrollY +
width / 2 - (
height / 2 + 1) / 2;
581 int num2 = EMono.screen.scrollY + EMono.screen.scrollX +
width / 2 +
height / 2 / 2;
591 EMono.scene.firefly.baseParticleCount = graphic.
fireflyCount;
592 EMono.scene.fireflyNight.baseParticleCount = graphic.fireflyCount * 10;
593 EMono.scene.star.baseParticleCount = graphic.
starCount;
613 EMono.scene.filterRain.Fade = ((currentCondition ==
Weather.
Condition.RainHeavy) ? 0.4f : 0.3f);
614 EMono.scene.rain.enableEmission = !flag && weather.
IsRaining;
615 ParticleSystem.EmissionModule emission =
EMono.
scene.
rain.emission;
616 emission.rateOverTime = ((currentCondition ==
Weather.
Condition.RainHeavy) ? 750 : 200);
617 EMono.scene.snow.enableEmission = !flag && currentCondition ==
Weather.
Condition.Snow;
618 EMono.scene.ether.enableEmission = !flag && weather.
IsEther;
619 bool enableEmission = !flag && weather.
IsBlossom;
621 for (
int i = 0; i < blossoms.Length; i++)
623 blossoms[i].enableEmission = enableEmission;
627 for (
int i = 0; i < blossoms.Length; i++)
629 blossoms[i].enableEmission = enableEmission;
631 EMono.scene.transBlizzard.localScale =
new Vector3(1f, 1f, 1f);
632 bool flag3 = (EMono._zone.IsUnderwater || EMono._map.config.forceGodRay || (EMono.core.config.graphic.godray && !flag && (currentCondition == Weather.Condition.Fine || currentCondition ==
Weather.
Condition.Snow))) && !
BuildMenu.
Instance;
650 float num = ((zone.lv <= -2 || zone.
IsUnderwater) ? 0f : ((zone.
lv <= -1) ? 0.3f : ((flag && !flag2) ? 0.6f : 1f)));
654 EMono.scene.camSupport.grading.userFog = ((!EMono._map.config.indoor && flag) ? 0f : 1f);
660 camSupport.grading.sceneBrightness = num2;
664 bool flag5 = (main3.prewarm =
false);
665 bool prewarm = (main2.prewarm = flag5);
666 main.prewarm = prewarm;
668 for (
int i = 0; i < blossoms.Length; i++)
670 ParticleSystem.MainModule main4 = blossoms[i].main;
671 main4.prewarm =
false;
678 float timeRatio = (EMono.core.IsGameStarted ? EMono.scene.timeRatio : 0f);
684 camSupport.grading.profile.sharpen.enable = EMono.core.config.graphic.sharpen > 0;
690 if (tintColor.a == 0f)
694 camSupport.beautify.tintColor = tintColor;
696 MATERIAL.sourceWaterSea.matColor = ((tintColor.a == 0f) ?
MATERIAL.
sourceWaterSea.GetColor() : tintColor);
703 camSupport.grading.nightBrightness = num;
714 position.x += x /
Zoom;
715 position.y += y /
Zoom;
716 if (x > 0.1f || x < -0.1f || y > 0.1f || y < 0.1f)
788 float num = snapSize.x / zoom;
789 float num2 = snapSize.y / zoom;
793 v.x = num * (float)Mathf.RoundToInt(v.x / num);
794 v.y = num2 * (float)Mathf.RoundToInt(v.y / num2);
797 v.x = num * (float)Mathf.FloorToInt(v.x / num);
798 v.y = num2 * (float)Mathf.FloorToInt(v.y / num2);
801 v.x = num * (float)Mathf.CeilToInt(v.x / num);
802 v.y = num2 * (float)Mathf.CeilToInt(v.y / num2);
807 v.x = num * (float)Mathf.RoundToInt(v.x / num);
808 v.y = num2 * (float)Mathf.RoundToInt(v.y / num2);
813 v.x = num * (float)Mathf.FloorToInt(v.x / num);
814 v.y = num2 * (float)Mathf.FloorToInt(v.y / num2);
819 v.x = num * (float)Mathf.CeilToInt(v.x / num);
820 v.y = num2 * (float)Mathf.CeilToInt(v.y / num2);
823 v.x = 0.01f * (float)Mathf.FloorToInt(v.x * 100f) + 0.001f;
824 v.y = 0.01f * (float)Mathf.FloorToInt(v.y * 100f) + 0.001f;
827 v.x = 0.01f * (float)Mathf.FloorToInt(v.x * 100f) - 0.001f;
828 v.y = 0.01f * (float)Mathf.FloorToInt(v.y * 100f) - 0.001f;
831 v.x = 0.01f * (float)Mathf.RoundToInt(v.x * 100f) + 0.005f;
832 v.y = 0.01f * (float)Mathf.RoundToInt(v.y * 100f) + 0.005f;
835 v.x = 0.01f * (float)Mathf.RoundToInt(v.x * 100f) + 0.025f;
836 v.y = 0.01f * (float)Mathf.RoundToInt(v.y * 100f) + 0.025f;
866 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
SoundSource sfxUnderwater
ParticleSystem[] blizzards
ParticleSystem[] blossoms
static Color currentColor
virtual bool IsSnowCovered
Condition CurrentCondition
virtual string IDSceneTemplate
virtual bool IsUnderwater