Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
GameScreenElona Class Reference
Inheritance diagram for GameScreenElona:
BaseGameScreen EMono

Public Member Functions

override void OnActivate ()
 
override void OnDeactivate ()
 
override void OnChangeHour ()
 
override void SetUnitSize ()
 
override void RefreshPosition ()
 
override void RefreshWeather ()
 
- Public Member Functions inherited from BaseGameScreen
void Activate ()
 
virtual void OnActivate ()
 
void Deactivate ()
 
virtual void OnDeactivate ()
 
virtual void SetUnitSize ()
 
virtual void OnEndPlayerTurn ()
 
void Draw ()
 
void UpdateShaders (float time=0f)
 
virtual void OnChangeHour ()
 
virtual void RefreshPosition ()
 
void RefreshAll ()
 
void RefreshScreenSize ()
 
Point GetRandomPoint ()
 
void RefreshSky ()
 
virtual void RefreshWeather ()
 
void RefreshGrading ()
 
void RefreshTilt ()
 
void ScrollMouse (float x, float y)
 
void ScrollAxis (Vector3 axis, bool direct=false)
 
void Focus (Int3 ints)
 
void Focus (int x, int y)
 
void Focus (Card c)
 
void FocusCenter ()
 
void Focus (Point pos)
 
void FocusPC ()
 
void FocusImmediate (Point pos)
 
void SnapScreen (ref Vector3 v, float zoom)
 
void SetZoom (float z)
 
void SetTargetZoomIndex (int index)
 
void ModTargetZoomIndex (int a)
 

Public Attributes

EloMapActor actor
 
float skyRate
 
float zoom
 
Vector3 actorPos
 
- Public Attributes inherited from BaseGameScreen
float SharpenAmount
 
float camSpeed2
 
float heightLight
 
float pushbackSpeed
 
Vector2 snapSize
 
Vector2 tileSize
 
Vector2 tileAlign
 
Vector2 tileWorldSize
 
Vector2 tileViewSize
 
Vector3 tileWeight
 
Vector3 focusFix
 
Vector3 tileOffsetHeight
 
Vector3 tileWeightHeight
 
Vector3 planeAngle
 
Vector3 planeSpeed
 
Vector2 paddings
 
Vector2 paddingOffset
 
Vector3 lastPos
 
Rect mapLimit
 
float Zoom
 
float nextMove
 
float focusSpeed
 
float focusSpeedSlow
 
float focusSpeedSlow2
 
int width
 
int height
 
int scrollX
 
int scrollY
 
int moonLevel
 
BaseTileMap tileMap
 
BaseTileSelector tileSelector
 
ScreenGuide guide
 
Grid grid
 
MeshRenderer overlayShadow
 
PCOrbit pcOrbit
 
float forcePrecision
 
bool isCameraMoving
 
FocusOption focusOption
 
Vector3? focusPos
 
Vector3 position
 
float screenFixX
 
float screenFixX2
 
float screenFixX3
 
float screenFixX4
 
float screenFixY
 
float screenFixY2
 
float screenFixY3
 
float screenFixY4
 
bool instantFocus
 
int targetZoomIndex
 
float targetZoom = 0.5f
 
float zoomTimer
 
Vector3 zoomPos
 

Properties

override float SkyRate [get]
 
override float TargetZoom [get]
 
- Properties inherited from BaseGameScreen
bool fixFocus [get]
 
virtual float TargetZoom [get]
 
CameraSupport camSupport [get]
 
Transform transFocus [get]
 
virtual float SkyRate [get]
 
virtual float ViewHeight [get]
 
virtual bool IsGameScreen [get]
 
virtual bool IsLocalMap [get]
 
- Properties inherited from EMono
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static FactionBranch Branch [get]
 
static FactionBranch BranchOrHomeBranch [get]
 
static Faction Home [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static GameSetting setting [get]
 
static GameData gamedata [get]
 
static ColorProfile Colors [get]
 
static World world [get]
 
static SoundManager Sound [get]
 
static SourceManager sources [get]
 
static SourceManager editorSources [get]
 
static CoreDebug debug [get]
 

Additional Inherited Members

- Static Public Member Functions inherited from EMono
static int rnd (int a)
 
- Static Public Attributes inherited from EMono
static Core core
 
- Protected Attributes inherited from BaseGameScreen
Vector3 camPos
 
Vector3 pushBack
 

Detailed Description

Definition at line 4 of file GameScreenElona.cs.

Member Function Documentation

◆ OnActivate()

override void GameScreenElona.OnActivate ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 18 of file GameScreenElona.cs.

19 {
20 actor.transMap.SetActive(enable: true);
21 actor.selector.hasTargetChanged = true;
22 EMono.scene.skyBG.SetActive(enable: false);
23 EMono.scene.cam.clearFlags = CameraClearFlags.Color;
24 Tutorial.Play("region");
26 }
Definition: EMono.cs:4
static Scene scene
Definition: EMono.cs:27
Transform transMap
Definition: EloMapActor.cs:9
void OnActivate()
Definition: EloMapActor.cs:48
EloMapActor actor
MeshRenderer skyBG
Definition: Scene.cs:69
static void Play(string idStep)
Definition: Tutorial.cs:7

References actor, EloMapActor.OnActivate(), Tutorial.Play(), EMono.scene, Scene.skyBG, and EloMapActor.transMap.

◆ OnChangeHour()

override void GameScreenElona.OnChangeHour ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 33 of file GameScreenElona.cs.

34 {
36 }
void OnChangeHour()
Definition: EloMapActor.cs:71

References actor, and EloMapActor.OnChangeHour().

◆ OnDeactivate()

override void GameScreenElona.OnDeactivate ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 28 of file GameScreenElona.cs.

29 {
31 }
void OnDeactivate()
Definition: EloMapActor.cs:59

References actor, and EloMapActor.OnDeactivate().

◆ RefreshPosition()

override void GameScreenElona.RefreshPosition ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 49 of file GameScreenElona.cs.

50 {
51 STETilemap fogmap = actor.elomap.fogmap;
52 actor.transMap.position = new Vector3((float)(-fogmap.MinGridX) * tileAlign.x + actorPos.x, (float)(-fogmap.MinGridY) * tileAlign.y + actorPos.y, actorPos.z);
53 if (base.fixFocus && EMono.pc.currentZone == EMono._zone)
54 {
55 float z = position.z;
57 Vector3 b = (EMono.pc.isSynced ? EMono.pc.renderer.position : EMono.pc.pos.PositionTopdown()) + focusFix;
58 if (instantFocus)
59 {
60 position = b;
61 }
62 else
63 {
64 position = Vector3.Lerp(position, b, focusSpeed * Core.delta);
65 }
66 position.z = z;
67 pcOrbit.transform.position = EMono.pc.renderer.position;
68 }
69 else
70 {
72 {
73 targetZoom = 0.01f * (float)EMono.game.config.defaultZoom;
74 }
75 pushBack = Vector3.zero;
76 int num = scrollX;
77 int num2 = scrollY;
78 if ((float)num <= mapLimit.x)
79 {
80 pushBack.x = mapLimit.x - (float)num;
81 }
82 if ((float)num2 <= mapLimit.y)
83 {
84 pushBack.y = mapLimit.y - (float)num2;
85 }
86 if ((float)num >= (float)EMono._map.Size + mapLimit.width - (float)(width / 2))
87 {
88 pushBack.x = (float)EMono._map.Size + mapLimit.width - (float)(width / 2) - (float)num;
89 }
90 if ((float)num2 >= (float)EMono._map.Size + mapLimit.height - (float)(height / 2))
91 {
92 pushBack.y = (float)EMono._map.Size + mapLimit.height - (float)(height / 2) - (float)num2;
93 }
94 position += pushBack * Core.delta * pushbackSpeed;
95 }
96 scrollX = Mathf.FloorToInt(position.x / tileWorldSize.x) - width / 2 + (int)paddingOffset.x;
97 scrollY = Mathf.FloorToInt(position.y / tileWorldSize.y) - height / 4 + (int)paddingOffset.y;
98 if (lastPos.x != (float)scrollX || lastPos.y != (float)scrollY)
99 {
100 lastPos.x = scrollX;
101 lastPos.y = scrollY;
102 }
103 camPos.x = position.x;
104 camPos.y = position.y;
105 SnapScreen(ref camPos, Zoom);
106 camPos.z = -500f;
107 EMono.scene.cam.transform.localPosition = camPos;
108 camPos.z = 0f;
109 EMono.scene.transAudio.position = camPos + EMono.scene.posAudioListener;
110 if ((bool)WidgetMinimap.Instance)
111 {
113 }
115 }
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
bool IsActive
Definition: ActionMode.cs:121
static AM_Adv Adv
Definition: ActionMode.cs:15
Vector2 paddingOffset
Vector2 tileWorldSize
void SnapScreen(ref Vector3 v, float zoom)
Vector3 position
Definition: CardRenderer.cs:21
Point pos
Definition: Card.cs:55
CardRenderer renderer
Definition: Card.cs:57
Zone currentZone
Definition: Chara.cs:240
Definition: Core.cs:14
static float delta
Definition: Core.cs:17
static Chara pc
Definition: EMono.cs:13
static Zone _zone
Definition: EMono.cs:19
static Game game
Definition: EMono.cs:7
static Map _map
Definition: EMono.cs:17
EloMap elomap
Definition: EloMapActor.cs:7
STETilemap fogmap
Definition: EloMap.cs:96
override float TargetZoom
override void RefreshWeather()
int defaultZoom
Definition: Game.cs:63
Config config
Definition: Game.cs:215
int Size
Definition: MapBounds.cs:20
ref Vector3 PositionTopdown()
Definition: Point.cs:545
Vector3 posAudioListener
Definition: Scene.cs:33
static WidgetMinimap Instance

References EMono._map, EMono._zone, actor, actorPos, ActionMode.Adv, BaseGameScreen.camPos, Game.config, Chara.currentZone, Game.Config.defaultZoom, Core.delta, EloMapActor.elomap, BaseGameScreen.focusFix, BaseGameScreen.focusSpeed, EloMap.fogmap, EMono.game, BaseGameScreen.height, if(), WidgetMinimap.Instance, BaseGameScreen.instantFocus, ActionMode.IsActive, BaseGameScreen.lastPos, BaseGameScreen.mapLimit, WidgetMinimap.OnUpdate(), BaseGameScreen.paddingOffset, EMono.pc, Card.pos, Scene.posAudioListener, BaseGameScreen.position, CardRenderer.position, Point.PositionTopdown(), BaseGameScreen.pushBack, BaseGameScreen.pushbackSpeed, RefreshWeather(), Card.renderer, EMono.scene, BaseGameScreen.scrollX, BaseGameScreen.scrollY, MapBounds.Size, BaseGameScreen.SnapScreen(), BaseGameScreen.targetZoom, TargetZoom, BaseGameScreen.tileAlign, BaseGameScreen.tileWorldSize, BaseGameScreen.width, and BaseGameScreen.Zoom.

◆ RefreshWeather()

override void GameScreenElona.RefreshWeather ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 117 of file GameScreenElona.cs.

118 {
120 Point pos = EMono.pc.pos;
121 Weather weather = EMono.world.weather;
122 Weather.Condition currentCondition = weather.CurrentCondition;
123 bool isRaining = weather.IsRaining;
124 bool isEther = weather.IsEther;
125 bool flag = currentCondition == Weather.Condition.Snow;
126 EMono.scene.filterRain.enabled = isRaining && !flag && EMono.core.config.graphic.enhanceRain;
127 EMono.scene.filterRain.Fade = ((currentCondition == Weather.Condition.RainHeavy) ? 0.4f : 0.3f);
128 EMono.scene.rain.enableEmission = isRaining && !flag;
129 ParticleSystem.EmissionModule emission = EMono.scene.rain.emission;
130 emission.rateOverTime = ((currentCondition == Weather.Condition.RainHeavy) ? 700 : 200);
131 EMono.scene.snow.enableEmission = flag;
132 emission = EMono.scene.snow.emission;
133 emission.rateOverTime = ((currentCondition == Weather.Condition.SnowHeavy) ? 120 : 35);
134 EMono.scene.ether.enableEmission = isEther;
135 EMono.scene.snow.SetActive(enable: true);
136 EMono.scene.rain.SetActive(enable: true);
137 EMono.scene.ether.SetActive(enable: true);
138 EMono.scene.blossom.SetActive(enable: false);
139 EMono.scene.godray.SetActive(enable: false);
140 EMono.scene.godrayDust.SetActive(enable: false);
141 EMono.scene.sfxRain._Volume += Core.delta * ((isRaining && !flag) ? 0.5f : (-0.5f));
142 EMono.scene.sfxRain.SetVolume(EMono.scene.sfxRain._Volume);
143 EMono.scene.sfxWind.SetVolume(1f);
144 EMono.scene.sfxSea.SetVolume(Mathf.Lerp(0f, 1f, -0.05f * (float)(pos.x - 20)));
145 ParticleSystem.MainModule main = EMono.scene.rain.main;
146 ParticleSystem.MainModule main2 = EMono.scene.snow.main;
147 ParticleSystem.MainModule main3 = EMono.scene.ether.main;
148 bool flag3 = (main3.prewarm = false);
149 bool prewarm = (main2.prewarm = flag3);
150 main.prewarm = prewarm;
151 ParticleSystem[] blossoms = EMono.scene.blossoms;
152 for (int i = 0; i < blossoms.Length; i++)
153 {
154 ParticleSystem.MainModule main4 = blossoms[i].main;
155 main4.prewarm = false;
156 }
157 bool enableEmission = currentCondition == Weather.Condition.SnowHeavy && EMono.core.config.graphic.blizzard;
158 blossoms = EMono.scene.blizzards;
159 for (int i = 0; i < blossoms.Length; i++)
160 {
161 blossoms[i].enableEmission = enableEmission;
162 }
163 EMono.scene.transBlizzard.localScale = new Vector3(2f, 2f, 2f);
164 EMono.scene.camSupport.grading.profile.fog = EMono.setting.render.fogs[EMono._map.config.fog];
165 float sceneBrightness = ((EMono._map.IsIndoor || !EMono.world.weather.IsRaining) ? 0f : ((currentCondition == Weather.Condition.RainHeavy) ? (-0.06f) : (-0.03f)));
166 base.camSupport.grading.sceneBrightness = sceneBrightness;
167 }
GraphicSetting graphic
Definition: CoreConfig.cs:594
CoreConfig config
Definition: Core.cs:70
static GameSetting setting
Definition: EMono.cs:31
static Core core
Definition: EMono.cs:5
static World world
Definition: EMono.cs:37
RenderSetting render
Definition: GameSetting.cs:301
FogType fog
Definition: MapConfig.cs:77
MapConfig config
Definition: Map.cs:37
Definition: Point.cs:9
ParticleSystem ether
Definition: Scene.cs:53
SoundSource sfxWind
Definition: Scene.cs:81
ParticleSystem snow
Definition: Scene.cs:51
ParticleSystem godrayDust
Definition: Scene.cs:57
ParticleSystem blossom
Definition: Scene.cs:59
ParticleSystem godray
Definition: Scene.cs:55
SoundSource sfxSea
Definition: Scene.cs:83
ParticleSystem[] blizzards
Definition: Scene.cs:65
ParticleSystem rain
Definition: Scene.cs:49
SoundSource sfxRain
Definition: Scene.cs:79
ParticleSystem[] blossoms
Definition: Scene.cs:63
bool IsEther
Definition: Weather.cs:156
Condition
Definition: Weather.cs:16
Condition CurrentCondition
Definition: Weather.cs:79
bool IsRaining
Definition: Weather.cs:117
void RefreshWeather()
Definition: Weather.cs:168
Weather weather
Definition: World.cs:12

References EMono._map, CoreConfig.GraphicSetting.blizzard, Scene.blizzards, Scene.blossom, Scene.blossoms, Core.config, Map.config, EMono.core, Weather.CurrentCondition, CoreConfig.GraphicSetting.enhanceRain, Scene.ether, MapConfig.fog, GameSetting.RenderSetting.fogs, Scene.godray, Scene.godrayDust, CoreConfig.graphic, Weather.IsEther, Weather.IsRaining, EMono.pc, Card.pos, Scene.rain, Weather.RefreshWeather(), GameSetting.render, EMono.scene, EMono.setting, Scene.sfxRain, Scene.sfxSea, Scene.sfxWind, Scene.snow, World.weather, and EMono.world.

Referenced by RefreshPosition().

◆ SetUnitSize()

override void GameScreenElona.SetUnitSize ( )
inlinevirtual

Reimplemented from BaseGameScreen.

Definition at line 38 of file GameScreenElona.cs.

39 {
40 tileAlign = new Vector2(tileSize.x * 0.01f, tileSize.y * 0.01f);
41 tileWorldSize = new Vector2(tileSize.x * 0.01f, tileSize.y * 0.01f);
42 float x = tileSize.x;
43 float num = 100f / x;
44 float num2 = num * 100f;
45 float num3 = num * 100f;
46 tileViewSize = new Vector2(num2 * 0.01f, num3 * 0.01f);
47 }
Vector2 tileViewSize

References BaseGameScreen.tileAlign, BaseGameScreen.tileSize, BaseGameScreen.tileViewSize, and BaseGameScreen.tileWorldSize.

Referenced by EloMapActor.Initialize().

Member Data Documentation

◆ actor

EloMapActor GameScreenElona.actor

Definition at line 6 of file GameScreenElona.cs.

Referenced by OnActivate(), OnChangeHour(), OnDeactivate(), and RefreshPosition().

◆ actorPos

Vector3 GameScreenElona.actorPos

Definition at line 12 of file GameScreenElona.cs.

Referenced by EloMapActor.Initialize(), and RefreshPosition().

◆ skyRate

float GameScreenElona.skyRate

Definition at line 8 of file GameScreenElona.cs.

◆ zoom

float GameScreenElona.zoom

Definition at line 10 of file GameScreenElona.cs.

Referenced by LayerTravel.OnInit().

Property Documentation

◆ SkyRate

override float GameScreenElona.SkyRate
get

Definition at line 14 of file GameScreenElona.cs.

◆ TargetZoom

override float GameScreenElona.TargetZoom
get

Definition at line 16 of file GameScreenElona.cs.

Referenced by RefreshPosition().


The documentation for this class was generated from the following file: