Elin Modding Docs Doc
Loading...
Searching...
No Matches
LayerNewspaper.cs
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Runtime.CompilerServices;
5using UnityEngine;
6using UnityEngine.UI;
7
8// Token: 0x020005A4 RID: 1444
9public class LayerNewspaper : ELayer
10{
11 // Token: 0x17000BB1 RID: 2993
12 // (get) Token: 0x0600279A RID: 10138 RVA: 0x000E0348 File Offset: 0x000DE548
13 public DayData data
14 {
15 get
16 {
17 return ELayer.world.dayData;
18 }
19 }
20
21 // Token: 0x0600279B RID: 10139 RVA: 0x000E0354 File Offset: 0x000DE554
22 public override void OnInit()
23 {
24 if (ELayer.debug.enable)
25 {
26 NewsList.dict = null;
27 ELayer.world.CreateDayData();
28 }
29 this.seed = (ELayer.debug.enable ? -1 : ELayer.world.dayData.seed);
30 Rand.UseSeed(this.seed, delegate
31 {
32 this.imageAdRight.sprite = this.spritesAd.RandomItem<Sprite>();
33 this.imageAdRight.SetNativeSize();
34 });
35 this.textDate.text = "news_date".lang(Lang.GetList("monthEng")[ELayer.world.date.month - 1], ELayer.world.date.day.ToString() ?? "", ELayer.world.date.year.ToString() ?? "", null, null);
36 int luck = (int)ELayer.world.dayData.luck;
37 this.textFortune.text = "news_tellLuck".lang(Lang.GetList("dayLuck")[luck], Lang.GetList("dayLuck2")[luck], null, null, null);
38 this.RefreshAD();
39 this.RefreshChat();
40 this.RefreshVote();
41 this.RefreshWeather();
42 this.RefreshNews();
43 this.RefreshPage();
44 }
45
46 // Token: 0x0600279C RID: 10140 RVA: 0x000E0490 File Offset: 0x000DE690
47 public void OnClickPage()
48 {
49 this.topPage = !this.topPage;
50 this.buttonPage.mainText.SetText((this.topPage ? "news_firstPage" : "news_secondPage").lang());
51 SE.Play("click_scroll");
52 this.RefreshPage();
53 }
54
55 // Token: 0x0600279D RID: 10141 RVA: 0x000E04E5 File Offset: 0x000DE6E5
56 public void RefreshPage()
57 {
58 this.goTop.SetActive(this.topPage);
59 this.goBack.SetActive(!this.topPage);
60 }
61
62 // Token: 0x0600279E RID: 10142 RVA: 0x000E050C File Offset: 0x000DE70C
63 public void RefreshNews()
64 {
65 LayerNewspaper.<RefreshNews>d__28 <RefreshNews>d__;
66 <RefreshNews>d__.<>t__builder = AsyncVoidMethodBuilder.Create();
67 <RefreshNews>d__.<>4__this = this;
68 <RefreshNews>d__.<>1__state = -1;
69 <RefreshNews>d__.<>t__builder.Start<LayerNewspaper.<RefreshNews>d__28>(ref <RefreshNews>d__);
70 }
71
72 // Token: 0x0600279F RID: 10143 RVA: 0x000E0544 File Offset: 0x000DE744
73 public void RefreshAD()
74 {
75 Rand.SetSeed(this.seed);
76 this.moldAdBottom = this.layoutAdBottom.CreateMold(null);
77 float num = this.layoutAdBottom.Rect().sizeDelta.x - 20f;
78 IList<Sprite> list = this.spritesSmallAd.Copy<Sprite>().Shuffle<Sprite>();
79 for (int i = 0; i < list.Count; i++)
80 {
81 Sprite sprite = list[i];
82 if (num > sprite.textureRect.width)
83 {
84 Image image = Util.Instantiate<Image>(this.moldAdBottom, this.layoutAdBottom);
85 num = num - sprite.textureRect.width - 5f;
86 image.sprite = sprite;
87 image.SetNativeSize();
88 }
89 }
90 this.layoutAdBottom.RebuildLayout(false);
91 Rand.SetSeed(-1);
92 }
93
94 // Token: 0x060027A0 RID: 10144 RVA: 0x000E0610 File Offset: 0x000DE810
95 public void RefreshChat()
96 {
97 LayerNewspaper.<RefreshChat>d__30 <RefreshChat>d__;
98 <RefreshChat>d__.<>t__builder = AsyncVoidMethodBuilder.Create();
99 <RefreshChat>d__.<>4__this = this;
100 <RefreshChat>d__.<>1__state = -1;
101 <RefreshChat>d__.<>t__builder.Start<LayerNewspaper.<RefreshChat>d__30>(ref <RefreshChat>d__);
102 }
103
104 // Token: 0x060027A1 RID: 10145 RVA: 0x000E0648 File Offset: 0x000DE848
105 public void RefreshVote()
106 {
107 LayerNewspaper.<RefreshVote>d__31 <RefreshVote>d__;
108 <RefreshVote>d__.<>t__builder = AsyncVoidMethodBuilder.Create();
109 <RefreshVote>d__.<>4__this = this;
110 <RefreshVote>d__.<>1__state = -1;
111 <RefreshVote>d__.<>t__builder.Start<LayerNewspaper.<RefreshVote>d__31>(ref <RefreshVote>d__);
112 }
113
114 // Token: 0x060027A2 RID: 10146 RVA: 0x000E0680 File Offset: 0x000DE880
115 public void RefreshWeather()
116 {
117 List<Weather.WeatherForecast> list = ELayer.world.weather.GetWeatherForecast();
118 BaseList baseList = this.listWeather;
119 UIList.Callback<Weather.WeatherForecast, UIItem> callback = new UIList.Callback<Weather.WeatherForecast, UIItem>();
120 callback.onInstantiate = delegate(Weather.WeatherForecast a, UIItem b)
121 {
122 string text = a.date.month.ToString() + "/" + a.date.day.ToString();
123 foreach (KeyValuePair<Weather.Condition, int> keyValuePair in from a in a.cons
124 orderby a.Value descending
125 select a)
126 {
127 if (b.image1.sprite == null)
128 {
129 b.image1.sprite = ELayer.core.refs.icons.weather[keyValuePair.Key];
130 }
131 else if (b.image2.sprite == null)
132 {
133 b.image2.sprite = ELayer.core.refs.icons.weather[keyValuePair.Key];
134 b.image2.SetActive(true);
135 }
136 }
137 b.text1.text = text;
138 };
139 callback.onList = delegate(UIList.SortMode m)
140 {
141 for (int i = 0; i < 7; i++)
142 {
143 if (list.Count > i && list[i].cons.Count > 0)
144 {
145 this.listWeather.Add(list[i]);
146 }
147 }
148 };
149 baseList.callbacks = callback;
150 this.listWeather.List(false);
151 }
152
153 // Token: 0x040015FD RID: 5629
154 public UIText textDate;
155
156 // Token: 0x040015FE RID: 5630
157 public UIText textFortune;
158
159 // Token: 0x040015FF RID: 5631
160 public UIText textVote;
161
162 // Token: 0x04001600 RID: 5632
163 public UIText textVoteRemaining;
164
165 // Token: 0x04001601 RID: 5633
166 public UIList listChat;
167
168 // Token: 0x04001602 RID: 5634
169 public UIList listWeather;
170
171 // Token: 0x04001603 RID: 5635
172 public UIList listVote;
173
174 // Token: 0x04001604 RID: 5636
175 public UIList listNews;
176
177 // Token: 0x04001605 RID: 5637
178 public Image imageHeadline;
179
180 // Token: 0x04001606 RID: 5638
181 public Image imageAdRight;
182
183 // Token: 0x04001607 RID: 5639
184 public Image moldAdBottom;
185
186 // Token: 0x04001608 RID: 5640
187 public List<Sprite> spritesAd;
188
189 // Token: 0x04001609 RID: 5641
190 public List<Sprite> spritesSmallAd;
191
192 // Token: 0x0400160A RID: 5642
193 public List<Sprite> spritesHeadline;
194
195 // Token: 0x0400160B RID: 5643
196 public LayoutGroup layoutAdBottom;
197
198 // Token: 0x0400160C RID: 5644
199 public LayoutGroup layoutPortrait;
200
201 // Token: 0x0400160D RID: 5645
202 public Portrait moldPortrait;
203
204 // Token: 0x0400160E RID: 5646
205 public List<string> desiredNews;
206
207 // Token: 0x0400160F RID: 5647
208 public UIButton buttonPage;
209
210 // Token: 0x04001610 RID: 5648
211 public GameObject goTop;
212
213 // Token: 0x04001611 RID: 5649
214 public GameObject goBack;
215
216 // Token: 0x04001612 RID: 5650
217 public bool topPage;
218
219 // Token: 0x04001613 RID: 5651
220 private int seed;
221}