2using System.Collections.Generic;
4using System.Reflection;
18 public static readonly IReadOnlyDictionary<string, int>
RowMapping =
new Dictionary<string, int>
131 dictionary[row3.id] = row3;
135 if (!row4.pref.UsePref && !row4._origin.IsEmpty())
138 row4.pref = IO.DeepCopy(row.
pref);
139 row4.pref.flags |=
PrefFlag.UsePref;
163 dictionary[row2.id] = row2;
166 foreach (
Row row3
in rows)
171 foreach (KeyValuePair<string, System.Reflection.FieldInfo>
item in rowFields)
173 item.Deconstruct(out key, out var value);
175 System.Reflection.FieldInfo fieldInfo = value;
176 if (!(text ==
"parse"))
178 fieldInfo.SetValue(row, fieldInfo.GetValue(obj));
191 if (row3.
value != -1)
193 row.value = row3.
value;
203 if (!row3.
tiles.IsEmpty())
205 row.tiles = row3.
tiles;
207 if (!row3.
skins.IsEmpty())
209 row.skins = row3.
skins;
211 if (!row3.
name.IsEmpty())
213 row.name = row3.
name;
219 if (!row3.
detail.IsEmpty())
227 if (!row3.
unit.IsEmpty())
229 row.unit = row3.
unit;
235 if (!row3.
vals.IsEmpty())
237 row.vals = row3.
vals;
243 if (!row3.
defMat.IsEmpty())
247 if (!row3.
trait.IsEmpty())
249 row.trait = row3.
trait;
259 if (!row3.
tag.IsEmpty())
264 if (!row3.
parse.IsEmpty())
272 row.idExtra = row3.
parse[0];
276 string[] parse = row3.
parse;
277 for (
int i = 0; i < parse.Length; i++)
279 string[] array = parse[i].Split(
'/');
283 row.electricity = array[1].ToInt();
286 row._idRenderData = array[1];
289 row._tileType = array[1];
292 row.anime = ((array.Length <= 4) ? ((array.Length <= 3) ?
new int[2]
311 string[] array3 = array[1].Split(
'|');
312 row.skins =
new int[array3.Length];
313 for (
int k = 0; k < array3.Length; k++)
315 row.skins[k] = array3[k].ToInt();
321 string[] array2 = array[1].Split(
'|');
322 row.altTiles =
new int[array2.Length];
323 for (
int j = 0; j < array2.Length; j++)
325 row.altTiles[j] = array2[j].ToInt();
327 row.ignoreAltFix =
true;
331 row.naming = array[1];
334 row.idActorEx = array[1];
337 row.idSound = array[1];
350 int[] second =
new int[2]
355 row.elements = row.elements.Concat(second).ToArray();
static SourceManager sources
Dictionary< string, FieldInfo > GetRowFields()
static string[] GetStringArray(int id)
static string GetString(int id)
static int GetInt(int id)
static int[] GetIntArray(int id)
override IReadOnlyDictionary< string, int > GetRowMapping()
override string[] ImportFields
override void RestorePref()
override Row CreateRowByMapping(IReadOnlyDictionary< string, int > mapping)
override void OnAfterImportData()
static readonly IReadOnlyDictionary< string, int > RowMapping
virtual void OnImportRow(Row _r, SourceThing.Row c)
override void SetRow(Row r)
override void ValidatePref()
Dictionary< string, Row > _rows
bool ContainsKey(TKey key)