Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
AM_Cinema.cs
Go to the documentation of this file.
1using UnityEngine;
2
4{
6
7 public Point destPos;
8
9 public Point center = new Point();
10
11 public override bool IsBuildMode => true;
12
14
15 public override bool ShowActionHint => false;
16
17 public override bool ShowMouseoverTarget => false;
18
19 public override bool enableMouseInfo => false;
20
21 public override bool ShowMaskedThings => false;
22
24
25 public override void OnActivate()
26 {
27 if (!profile)
28 {
29 profile = SceneProfile.Load("cinema");
30 }
31 EClass.ui.widgets.Activate("ArtTool");
32 destPos = null;
33 }
34
35 public override void OnDeactivate()
36 {
37 EClass.ui.widgets.DeactivateWidget("ArtTool");
38 EClass.scene.camSupport.grading.cinemaBrightness = 0f;
40 }
41
42 public override void OnUpdateInput()
43 {
44 if (EInput.leftMouse.clicked && !EClass.ui.isPointerOverUI)
45 {
46 SE.ClickGeneral();
47 EClass.ui.ToggleCanvas();
48 }
49 if (EInput.rightMouse.down || conf.speed == 0)
50 {
51 destPos = null;
52 return;
53 }
54 Vector3Int vector3Int = EClass.screen.grid.WorldToCell(EClass.screen.position);
55 center.Set(-vector3Int.y, vector3Int.x - 1);
56 center.Clamp();
57 if (destPos == null || destPos.Distance(center) <= 2)
58 {
59 destPos = new Point();
60 for (int i = 0; i < 10000; i++)
61 {
62 destPos.x = EClass._map.bounds.x + EClass.rnd(EClass._map.bounds.Width);
63 destPos.z = EClass._map.bounds.z + EClass.rnd(EClass._map.bounds.Height);
65 {
66 break;
67 }
68 }
69 }
70 Vector3 normalized = (destPos.PositionCenter() - center.PositionCenter()).normalized;
71 EClass.screen.position += normalized * Core.delta * conf.speed * 0.5f;
72 }
73}
override bool IsBuildMode
Definition: AM_Cinema.cs:11
override bool ShowActionHint
Definition: AM_Cinema.cs:15
CinemaConfig conf
Definition: AM_Cinema.cs:23
override BaseTileSelector.SelectType selectType
Definition: AM_Cinema.cs:13
Point center
Definition: AM_Cinema.cs:9
override bool ShowMaskedThings
Definition: AM_Cinema.cs:21
override bool enableMouseInfo
Definition: AM_Cinema.cs:19
override void OnUpdateInput()
Definition: AM_Cinema.cs:42
SceneProfile profile
Definition: AM_Cinema.cs:5
Point destPos
Definition: AM_Cinema.cs:7
override void OnDeactivate()
Definition: AM_Cinema.cs:35
override bool ShowMouseoverTarget
Definition: AM_Cinema.cs:17
override void OnActivate()
Definition: AM_Cinema.cs:25
bool clicked
Definition: ButtonState.cs:37
void ApplyGrading()
Definition: CoreConfig.cs:939
CoreConfig config
Definition: Core.cs:70
Definition: EClass.cs:5
static int rnd(int a)
Definition: EClass.cs:50
static Core core
Definition: EClass.cs:6
static Map _map
Definition: EClass.cs:18
static BaseGameScreen screen
Definition: EClass.cs:32
static Player player
Definition: EClass.cs:12
static UI ui
Definition: EClass.cs:16
Definition: EInput.cs:8
static ButtonState leftMouse
Definition: EInput.cs:349
static ButtonState rightMouse
Definition: EInput.cs:351
int Width
Definition: MapBounds.cs:26
int Height
Definition: MapBounds.cs:28
MapBounds bounds
Definition: Map.cs:52
CinemaConfig cinemaConfig
Definition: Player.cs:913
Definition: Point.cs:9
Point Set(int _x, int _z)
Definition: Point.cs:479
ref Vector3 PositionCenter()
Definition: Point.cs:563
int Distance(Point p)
Definition: Point.cs:953
Point Clamp(bool useBounds=false)
Definition: Point.cs:972
static SceneProfile Load(string id)
Definition: SceneProfile.cs:18