Elin Modding Docs Doc
Loading...
Searching...
No Matches
Date.cs
1using System;
2using Newtonsoft.Json;
3
4// Token: 0x020006EF RID: 1775
5public class Date : EClass
6{
7 // Token: 0x17000F73 RID: 3955
8 // (get) Token: 0x06003388 RID: 13192 RVA: 0x001193CA File Offset: 0x001175CA
9 // (set) Token: 0x06003389 RID: 13193 RVA: 0x001193D4 File Offset: 0x001175D4
10 public int year
11 {
12 get
13 {
14 return this.raw[0];
15 }
16 set
17 {
18 this.raw[0] = value;
19 }
20 }
21
22 // Token: 0x17000F74 RID: 3956
23 // (get) Token: 0x0600338A RID: 13194 RVA: 0x001193DF File Offset: 0x001175DF
24 // (set) Token: 0x0600338B RID: 13195 RVA: 0x001193E9 File Offset: 0x001175E9
25 public int month
26 {
27 get
28 {
29 return this.raw[1];
30 }
31 set
32 {
33 this.raw[1] = value;
34 }
35 }
36
37 // Token: 0x17000F75 RID: 3957
38 // (get) Token: 0x0600338C RID: 13196 RVA: 0x001193F4 File Offset: 0x001175F4
39 // (set) Token: 0x0600338D RID: 13197 RVA: 0x001193FE File Offset: 0x001175FE
40 public int day
41 {
42 get
43 {
44 return this.raw[2];
45 }
46 set
47 {
48 this.raw[2] = value;
49 }
50 }
51
52 // Token: 0x17000F76 RID: 3958
53 // (get) Token: 0x0600338E RID: 13198 RVA: 0x00119409 File Offset: 0x00117609
54 // (set) Token: 0x0600338F RID: 13199 RVA: 0x00119413 File Offset: 0x00117613
55 public int hour
56 {
57 get
58 {
59 return this.raw[3];
60 }
61 set
62 {
63 this.raw[3] = value;
64 }
65 }
66
67 // Token: 0x17000F77 RID: 3959
68 // (get) Token: 0x06003390 RID: 13200 RVA: 0x0011941E File Offset: 0x0011761E
69 // (set) Token: 0x06003391 RID: 13201 RVA: 0x00119428 File Offset: 0x00117628
70 public int min
71 {
72 get
73 {
74 return this.raw[4];
75 }
76 set
77 {
78 this.raw[4] = value;
79 }
80 }
81
82 // Token: 0x17000F78 RID: 3960
83 // (get) Token: 0x06003392 RID: 13202 RVA: 0x00119433 File Offset: 0x00117633
84 // (set) Token: 0x06003393 RID: 13203 RVA: 0x0011943D File Offset: 0x0011763D
85 public int sec
86 {
87 get
88 {
89 return this.raw[5];
90 }
91 set
92 {
93 this.raw[5] = value;
94 }
95 }
96
97 // Token: 0x06003394 RID: 13204 RVA: 0x00119448 File Offset: 0x00117648
98 public Date Copy()
99 {
100 return new Date
101 {
102 year = this.year,
103 month = this.month,
104 day = this.day,
105 hour = this.hour,
106 min = this.min,
107 sec = this.sec
108 };
109 }
110
111 // Token: 0x17000F79 RID: 3961
112 // (get) Token: 0x06003395 RID: 13205 RVA: 0x001194A2 File Offset: 0x001176A2
113 public bool IsDay
114 {
115 get
116 {
117 return !this.IsNight;
118 }
119 }
120
121 // Token: 0x17000F7A RID: 3962
122 // (get) Token: 0x06003396 RID: 13206 RVA: 0x001194AD File Offset: 0x001176AD
123 public bool IsNight
124 {
125 get
126 {
127 return this.hour >= 19 || this.hour <= 5;
128 }
129 }
130
131 // Token: 0x17000F7B RID: 3963
132 // (get) Token: 0x06003397 RID: 13207 RVA: 0x001194C8 File Offset: 0x001176C8
133 public PeriodOfDay periodOfDay
134 {
135 get
136 {
137 if (this.hour >= 5 && this.hour <= 6)
138 {
139 return PeriodOfDay.Dawn;
140 }
141 if (this.hour >= 7 && this.hour <= 17)
142 {
143 return PeriodOfDay.Day;
144 }
145 if (this.hour >= 18 && this.hour <= 19)
146 {
147 return PeriodOfDay.Dusk;
148 }
149 return PeriodOfDay.Night;
150 }
151 }
152
153 // Token: 0x17000F7C RID: 3964
154 // (get) Token: 0x06003398 RID: 13208 RVA: 0x00119518 File Offset: 0x00117718
155 public string NameMonth
156 {
157 get
158 {
159 return this.month.ToString() ?? "";
160 }
161 }
162
163 // Token: 0x17000F7D RID: 3965
164 // (get) Token: 0x06003399 RID: 13209 RVA: 0x0011953C File Offset: 0x0011773C
165 public string NameMonthShort
166 {
167 get
168 {
169 return this.month.ToString() ?? "";
170 }
171 }
172
173 // Token: 0x17000F7E RID: 3966
174 // (get) Token: 0x0600339A RID: 13210 RVA: 0x00119560 File Offset: 0x00117760
175 public string NameTime
176 {
177 get
178 {
179 return this.periodOfDay.ToString().lang();
180 }
181 }
182
183 // Token: 0x0600339B RID: 13211 RVA: 0x00119586 File Offset: 0x00117786
184 public override string ToString()
185 {
186 return this.GetText(Date.TextFormat.Log);
187 }
188
189 // Token: 0x17000F7F RID: 3967
190 // (get) Token: 0x0600339C RID: 13212 RVA: 0x0011958F File Offset: 0x0011778F
191 public bool IsSpring
192 {
193 get
194 {
195 return this.month >= 3 && this.month <= 5;
196 }
197 }
198
199 // Token: 0x17000F80 RID: 3968
200 // (get) Token: 0x0600339D RID: 13213 RVA: 0x001195A8 File Offset: 0x001177A8
201 public bool IsSummer
202 {
203 get
204 {
205 return this.month >= 6 && this.month <= 8;
206 }
207 }
208
209 // Token: 0x17000F81 RID: 3969
210 // (get) Token: 0x0600339E RID: 13214 RVA: 0x001195C1 File Offset: 0x001177C1
211 public bool IsAutumn
212 {
213 get
214 {
215 return this.month >= 9 && this.month <= 11;
216 }
217 }
218
219 // Token: 0x17000F82 RID: 3970
220 // (get) Token: 0x0600339F RID: 13215 RVA: 0x001195DC File Offset: 0x001177DC
221 public bool IsWinter
222 {
223 get
224 {
225 return this.month >= 12 || this.month <= 2;
226 }
227 }
228
229 // Token: 0x060033A0 RID: 13216 RVA: 0x001195F6 File Offset: 0x001177F6
230 public void AddHour(int a)
231 {
232 this.hour += a;
233 while (this.hour >= 24)
234 {
235 this.hour -= 24;
236 this.AddDay(1);
237 }
238 }
239
240 // Token: 0x060033A1 RID: 13217 RVA: 0x00119628 File Offset: 0x00117828
241 public void AddDay(int a)
242 {
243 this.day += a;
244 while (this.day > 30)
245 {
246 this.day -= 30;
247 this.AddMonth(1);
248 }
249 }
250
251 // Token: 0x060033A2 RID: 13218 RVA: 0x0011965C File Offset: 0x0011785C
252 public void AddMonth(int a)
253 {
254 this.month += a;
255 while (this.month > 12)
256 {
257 this.month -= 12;
258 int year = this.year;
259 this.year = year + 1;
260 }
261 }
262
263 // Token: 0x060033A3 RID: 13219 RVA: 0x001196A4 File Offset: 0x001178A4
264 public string GetText(Date.TextFormat format)
265 {
266 switch (format)
267 {
268 case Date.TextFormat.Log:
269 return string.Concat(new string[]
270 {
271 this.month.ToString(),
272 "/",
273 this.day.ToString(),
274 " ",
275 this.hour.ToString(),
276 ":",
277 this.min.ToString()
278 });
279 case Date.TextFormat.Widget:
280 return "dateYearMonthDay".lang(this.year.ToString() ?? "", this.month.ToString() ?? "", this.day.ToString() ?? "", null, null);
281 case Date.TextFormat.Schedule:
282 return "dateSchedule".lang(this.NameMonth, this.day.ToString() ?? "", null, null, null);
283 case Date.TextFormat.Travel:
284 {
285 string str = "_short";
286 if (format == Date.TextFormat.Travel)
287 {
288 return "travelDate".lang(this.year.ToString() ?? "", this.month.ToString() ?? "", this.day.ToString() ?? "", null, null);
289 }
290 string str2 = "";
291 if (this.day != 0)
292 {
293 str2 = str2 + this.day.ToString() + Lang.Get("wDay" + str);
294 }
295 if (this.hour != 0)
296 {
297 str2 = str2 + this.hour.ToString() + Lang.Get("wHour" + str);
298 }
299 if (this.min != 0)
300 {
301 str2 = str2 + this.min.ToString() + Lang.Get("wMin" + str);
302 }
303 return str2 + this.sec.ToString() + Lang.Get("wSec" + str);
304 }
305 case Date.TextFormat.YearMonthDay:
306 return "dateYearMonthDay".lang(this.year.ToString() ?? "", this.month.ToString() ?? "", this.day.ToString() ?? "", null, null);
307 case Date.TextFormat.LogPlusYear:
308 return string.Concat(new string[]
309 {
310 this.year.ToString(),
311 ", ",
312 this.month.ToString(),
313 "/",
314 this.day.ToString(),
315 " ",
316 this.hour.ToString(),
317 ":",
318 this.min.ToString()
319 });
320 default:
321 return string.Concat(new string[]
322 {
323 "Day ",
324 this.day.ToString(),
325 " ",
326 this.hour.ToString(),
327 ":",
328 this.min.ToString()
329 });
330 }
331 }
332
333 // Token: 0x060033A4 RID: 13220 RVA: 0x001199F3 File Offset: 0x00117BF3
334 public static string GetText(int raw, Date.TextFormat format)
335 {
336 return Date.ToDate(raw).GetText(format);
337 }
338
339 // Token: 0x060033A5 RID: 13221 RVA: 0x00119A04 File Offset: 0x00117C04
340 public static string GetText(int hour)
341 {
342 if (hour < 0)
343 {
344 return "dateDayVoid".lang();
345 }
346 if (hour > 24)
347 {
348 return "dateDay".lang((hour / 24).ToString() ?? "", null, null, null, null);
349 }
350 return "dateHour".lang(hour.ToString() ?? "", null, null, null, null);
351 }
352
353 // Token: 0x060033A6 RID: 13222 RVA: 0x00119A68 File Offset: 0x00117C68
354 public static string GetText2(int hour)
355 {
356 if (hour < 0)
357 {
358 return "-";
359 }
360 if (hour > 24)
361 {
362 return (hour / 24).ToString() + "d";
363 }
364 return hour.ToString() + "h";
365 }
366
367 // Token: 0x060033A7 RID: 13223 RVA: 0x00119AAC File Offset: 0x00117CAC
368 public int GetRawReal(int offsetHours = 0)
369 {
370 return this.min + (this.hour + offsetHours) * 60 + this.day * 1440 + this.month * 46080 + this.year * 552960;
371 }
372
373 // Token: 0x060033A8 RID: 13224 RVA: 0x00119AE7 File Offset: 0x00117CE7
374 public int GetRaw(int offsetHours = 0)
375 {
376 return this.min + (this.hour + offsetHours) * 60 + this.day * 1440 + this.month * 43200 + this.year * 518400;
377 }
378
379 // Token: 0x060033A9 RID: 13225 RVA: 0x00119B22 File Offset: 0x00117D22
380 public int GetRawDay()
381 {
382 return this.day * 1440 + this.month * 43200 + this.year * 518400;
383 }
384
385 // Token: 0x060033AA RID: 13226 RVA: 0x00119B4A File Offset: 0x00117D4A
386 public bool IsExpired(int time)
387 {
388 return time - this.GetRaw(0) < 0;
389 }
390
391 // Token: 0x060033AB RID: 13227 RVA: 0x00119B58 File Offset: 0x00117D58
392 public int GetRemainingHours(int rawDeadLine)
393 {
394 return (rawDeadLine - this.GetRaw(0)) / 60;
395 }
396
397 // Token: 0x060033AC RID: 13228 RVA: 0x00119B66 File Offset: 0x00117D66
398 public int GetRemainingSecs(int rawDeadLine)
399 {
400 return rawDeadLine - this.GetRaw(0);
401 }
402
403 // Token: 0x060033AD RID: 13229 RVA: 0x00119B71 File Offset: 0x00117D71
404 public int GetElapsedMins(int rawDate)
405 {
406 return this.GetRaw(0) - rawDate;
407 }
408
409 // Token: 0x060033AE RID: 13230 RVA: 0x00119B7C File Offset: 0x00117D7C
410 public int GetElapsedHour(int rawDate)
411 {
412 if (rawDate != 0)
413 {
414 return (this.GetRaw(0) - rawDate) / 60;
415 }
416 return 0;
417 }
418
419 // Token: 0x060033AF RID: 13231 RVA: 0x00119B90 File Offset: 0x00117D90
420 public static string SecToDate(int sec)
421 {
422 return string.Concat(new string[]
423 {
424 (sec / 60 / 60).ToString(),
425 "時間 ",
426 (sec / 60 % 60).ToString(),
427 "分 ",
428 (sec % 60).ToString(),
429 "秒"
430 });
431 }
432
433 // Token: 0x060033B0 RID: 13232 RVA: 0x00119BF4 File Offset: 0x00117DF4
434 public static string MinToDayAndHour(int min)
435 {
436 int num = min / 60;
437 int num2 = num / 24;
438 if (num == 0)
439 {
440 return min.ToString() + "分";
441 }
442 if (num2 != 0)
443 {
444 return num2.ToString() + "日と" + (num % 24).ToString() + "時間";
445 }
446 return num.ToString() + "時間";
447 }
448
449 // Token: 0x060033B1 RID: 13233 RVA: 0x00119C58 File Offset: 0x00117E58
450 public static int[] GetDateArray(int raw)
451 {
452 return new int[]
453 {
454 raw % 60,
455 raw / 60 % 24,
456 raw / 60 / 24 % 30,
457 raw / 60 / 24 / 30 % 12,
458 raw / 60 / 24 / 30 / 12
459 };
460 }
461
462 // Token: 0x060033B2 RID: 13234 RVA: 0x00119CAC File Offset: 0x00117EAC
463 public static Date ToDate(int raw)
464 {
465 int[] dateArray = Date.GetDateArray(raw);
466 int num = dateArray[4];
467 int num2 = dateArray[3];
468 int num3 = dateArray[2];
469 if (num2 == 0)
470 {
471 num2 = 12;
472 num--;
473 }
474 if (num3 == 0)
475 {
476 num3 = 30;
477 num2--;
478 }
479 if (num2 == 0)
480 {
481 num2 = 12;
482 num--;
483 }
484 return new Date
485 {
486 min = dateArray[0],
487 hour = dateArray[1],
488 day = num3,
489 month = num2,
490 year = num
491 };
492 }
493
494 // Token: 0x04001C21 RID: 7201
495 public const int ShippingHour = 5;
496
497 // Token: 0x04001C22 RID: 7202
498 [JsonProperty]
499 public int[] raw = new int[6];
500
501 // Token: 0x04001C23 RID: 7203
502 public const int HourToken = 60;
503
504 // Token: 0x04001C24 RID: 7204
505 public const int DayToken = 1440;
506
507 // Token: 0x04001C25 RID: 7205
508 public const int MonthToken = 43200;
509
510 // Token: 0x04001C26 RID: 7206
511 public const int YearToken = 518400;
512
513 // Token: 0x04001C27 RID: 7207
514 public const int HourTokenReal = 60;
515
516 // Token: 0x04001C28 RID: 7208
517 public const int DayTokenReal = 1440;
518
519 // Token: 0x04001C29 RID: 7209
520 public const int MonthTokenReal = 46080;
521
522 // Token: 0x04001C2A RID: 7210
523 public const int YearTokenReal = 552960;
524
525 // Token: 0x02000C11 RID: 3089
526 public enum TextFormat
527 {
528 // Token: 0x04003002 RID: 12290
529 Default,
530 // Token: 0x04003003 RID: 12291
531 Log,
532 // Token: 0x04003004 RID: 12292
533 Widget,
534 // Token: 0x04003005 RID: 12293
535 Schedule,
536 // Token: 0x04003006 RID: 12294
537 Travel,
538 // Token: 0x04003007 RID: 12295
539 YearMonthDay,
540 // Token: 0x04003008 RID: 12296
541 LogPlusYear
542 }
543}
Definition Date.cs:6