Elin Decompiled Documentation EA 23.316 Nightly
Loading...
Searching...
No Matches
SourceResearch.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3
4public class SourceResearch : SourceDataString<SourceResearch.Row>
5{
6 [Serializable]
7 public class Row : BaseRow
8 {
9 public string id;
10
11 public string name_JP;
12
13 public string name;
14
15 public string[] resource;
16
17 public int money;
18
19 public int tech;
20
21 public string req;
22
23 public string type;
24
25 public int expMod;
26
27 public int maxLv;
28
29 public string reward;
30
31 public string detail_JP;
32
33 public string detail;
34
35 [NonSerialized]
36 public string name_L;
37
38 [NonSerialized]
39 public string detail_L;
40
41 public override bool UseAlias => false;
42
43 public override string GetAlias => "n";
44 }
45
46 public static readonly IReadOnlyDictionary<string, int> RowMapping = new Dictionary<string, int>
47 {
48 ["id"] = 0,
49 ["name_JP"] = 1,
50 ["name"] = 2,
51 ["resource"] = 3,
52 ["money"] = 4,
53 ["tech"] = 5,
54 ["req"] = 6,
55 ["type"] = 7,
56 ["expMod"] = 8,
57 ["maxLv"] = 9,
58 ["reward"] = 10,
59 ["detail_JP"] = 11,
60 ["detail"] = 12
61 };
62
63 public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string>
64 {
65 ["id"] = "string",
66 ["name_JP"] = "string",
67 ["name"] = "string",
68 ["resource"] = "string[]",
69 ["money"] = "int",
70 ["tech"] = "int",
71 ["req"] = "string",
72 ["type"] = "string",
73 ["expMod"] = "int",
74 ["maxLv"] = "int",
75 ["reward"] = "string",
76 ["detail_JP"] = "string",
77 ["detail"] = "string"
78 };
79
80 public override Row CreateRow()
81 {
82 return new Row
83 {
84 id = SourceData.GetString(0),
85 name_JP = SourceData.GetString(1),
86 name = SourceData.GetString(2),
89 tech = SourceData.GetInt(5),
90 req = SourceData.GetString(6),
91 type = SourceData.GetString(7),
92 expMod = SourceData.GetInt(8),
93 maxLv = SourceData.GetInt(9),
94 reward = SourceData.GetString(10),
95 detail_JP = SourceData.GetString(11),
96 detail = SourceData.GetString(12)
97 };
98 }
99
100 public override Row CreateRowByMapping(IReadOnlyDictionary<string, int> mapping)
101 {
102 return new Row
103 {
104 id = SourceData.GetString(mapping["id"]),
105 name_JP = SourceData.GetString(mapping["name_JP"]),
106 name = SourceData.GetString(mapping["name"]),
107 resource = SourceData.GetStringArray(mapping["resource"]),
108 money = SourceData.GetInt(mapping["money"]),
109 tech = SourceData.GetInt(mapping["tech"]),
110 req = SourceData.GetString(mapping["req"]),
111 type = SourceData.GetString(mapping["type"]),
112 expMod = SourceData.GetInt(mapping["expMod"]),
113 maxLv = SourceData.GetInt(mapping["maxLv"]),
114 reward = SourceData.GetString(mapping["reward"]),
115 detail_JP = SourceData.GetString(mapping["detail_JP"]),
116 detail = SourceData.GetString(mapping["detail"])
117 };
118 }
119
120 public override void SetRow(Row r)
121 {
122 map[r.id] = r;
123 }
124
125 public override IReadOnlyDictionary<string, int> GetRowMapping()
126 {
127 return RowMapping;
128 }
129
130 public override IReadOnlyDictionary<string, string> GetTypeMapping()
131 {
132 return TypeMapping;
133 }
134}
static string[] GetStringArray(int id)
Definition: SourceData.cs:1011
static string GetString(int id)
Definition: SourceData.cs:1016
static int GetInt(int id)
Definition: SourceData.cs:981
override bool UseAlias
override string GetAlias
override Row CreateRowByMapping(IReadOnlyDictionary< string, int > mapping)
override IReadOnlyDictionary< string, string > GetTypeMapping()
static readonly IReadOnlyDictionary< string, string > TypeMapping
static readonly IReadOnlyDictionary< string, int > RowMapping
override void SetRow(Row r)
override Row CreateRow()
override IReadOnlyDictionary< string, int > GetRowMapping()