Elin Decompiled Documentation EA 23.316 Nightly
Loading...
Searching...
No Matches
LangWord.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3
4public class LangWord : SourceDataInt<LangWord.Row>
5{
6 [Serializable]
7 public class Row : BaseRow
8 {
9 public int id;
10
11 public string group;
12
13 public string name_JP;
14
15 public string name;
16
17 [NonSerialized]
18 public string name_L;
19
20 public override bool UseAlias => false;
21
22 public override string GetAlias => "n";
23 }
24
25 public static readonly IReadOnlyDictionary<string, int> RowMapping = new Dictionary<string, int>
26 {
27 ["id"] = 0,
28 ["group"] = 1,
29 ["name_JP"] = 2,
30 ["name"] = 3
31 };
32
33 public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string>
34 {
35 ["id"] = "int",
36 ["group"] = "string",
37 ["name_JP"] = "string",
38 ["name"] = "string"
39 };
40
41 public override bool AllowHotInitialization => true;
42
43 public override Row CreateRow()
44 {
45 return new Row
46 {
47 id = SourceData.GetInt(0),
48 group = SourceData.GetString(1),
49 name_JP = SourceData.GetString(2),
50 name = SourceData.GetString(3)
51 };
52 }
53
54 public override Row CreateRowByMapping(IReadOnlyDictionary<string, int> mapping)
55 {
56 return new Row
57 {
58 id = SourceData.GetInt(mapping["id"]),
59 group = SourceData.GetString(mapping["group"]),
60 name_JP = SourceData.GetString(mapping["name_JP"]),
61 name = SourceData.GetString(mapping["name"])
62 };
63 }
64
65 public override void SetRow(Row r)
66 {
67 map[r.id] = r;
68 }
69
70 public override IReadOnlyDictionary<string, int> GetRowMapping()
71 {
72 return RowMapping;
73 }
74
75 public override IReadOnlyDictionary<string, string> GetTypeMapping()
76 {
77 return TypeMapping;
78 }
79
80 public override void OnAfterImportData()
81 {
82 int num = 0;
83 foreach (Row row in rows)
84 {
85 if (row.id != 0)
86 {
87 num = row.id;
88 }
89 row.id = num;
90 num++;
91 }
92 }
93}
override string GetAlias
Definition: LangWord.cs:22
string group
Definition: LangWord.cs:11
string name
Definition: LangWord.cs:15
override bool UseAlias
Definition: LangWord.cs:20
string name_L
Definition: LangWord.cs:18
string name_JP
Definition: LangWord.cs:13
override IReadOnlyDictionary< string, string > GetTypeMapping()
Definition: LangWord.cs:75
override void SetRow(Row r)
Definition: LangWord.cs:65
override void OnAfterImportData()
Definition: LangWord.cs:80
override Row CreateRowByMapping(IReadOnlyDictionary< string, int > mapping)
Definition: LangWord.cs:54
static readonly IReadOnlyDictionary< string, string > TypeMapping
Definition: LangWord.cs:33
static readonly IReadOnlyDictionary< string, int > RowMapping
Definition: LangWord.cs:25
override IReadOnlyDictionary< string, int > GetRowMapping()
Definition: LangWord.cs:70
override bool AllowHotInitialization
Definition: LangWord.cs:41
override Row CreateRow()
Definition: LangWord.cs:43
static string GetString(int id)
Definition: SourceData.cs:1016
static int GetInt(int id)
Definition: SourceData.cs:981