Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
SourceManager.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using System.Reflection;
3
4public class SourceManager : EMono
5{
7
9
11
13
15
16 public SourceCard cards = new SourceCard();
17
19
21
23
25
27
29
31
33
35
37
39
41
43
45
47
49
51
53
55
57
59
61
63
65
67
69
71
73
75
77
79
81
83
85
87
89
90 private List<SourceData> list = new List<SourceData>();
91
92 public bool initialized;
93
94 public ExcelData dataGodTalk => _dataGodTalk ?? (_dataGodTalk = new ExcelData(Lang.setting.dir + "Data/god_talk.xlsx", 3));
95
96 public void InitLang()
97 {
98 langGeneral.Init();
99 langGame.Init();
100 langList.Init();
101 langNote.Init();
102 langWord.Init();
103 Lang.General = langGeneral;
104 Lang.Game = langGame;
105 Lang.List = langList;
106 Lang.Note = langNote;
107 WordGen.source = langWord;
108 }
109
110 public void OnChangeLang()
111 {
112 _dataGodTalk = null;
113 }
114
115 public void Init()
116 {
117 if (initialized)
118 {
119 return;
120 }
121 initialized = true;
122 list.Clear();
123 FieldInfo[] fields = GetType().GetFields();
124 foreach (FieldInfo fieldInfo in fields)
125 {
126 if (typeof(SourceData).IsAssignableFrom(fieldInfo.FieldType))
127 {
128 list.Add((SourceData)fieldInfo.GetValue(this));
129 }
130 }
131 elements.Init();
132 materials.Init();
133 charas.Init();
134 things.Init();
135 thingV.Init();
136 foods.Init();
137 cards.Init();
138 checks.Init();
139 races.Init();
140 persons.Init();
141 categories.Init();
142 spawnLists.Init();
143 religions.Init();
144 factions.Init();
145 jobs.Init();
146 hobbies.Init();
147 floors.Init();
148 blocks.Init();
149 cellEffects.Init();
150 objs.Init();
151 stats.Init();
152 areas.Init();
153 zones.Init();
154 zoneAffixes.Init();
155 researches.Init();
156 homeResources.Init();
157 globalTiles.Init();
159 quests.Init();
160 charaText.Init();
161 calc.Init();
162 recipes.Init();
163 backers.Init();
164 tactics.Init();
165 keyItems.Init();
166 ACT.Init();
167 TimeTable.Init();
169 for (int j = 910; j < 927; j++)
170 {
172 }
173 }
174
175 public void ExportSourceTexts(string path)
176 {
177 foreach (SourceData item in list)
178 {
179 item.ExportTexts(path);
180 }
181 }
182
183 public void UpdateSourceTexts(string path)
184 {
185 foreach (SourceData item in list)
186 {
187 item.ExportTexts(path, update: true);
188 }
189 }
190
191 public void ImportSourceTexts()
192 {
193 foreach (SourceData item in list)
194 {
195 if (item is SourceThingV)
196 {
197 things.ImportTexts(item.nameSheet);
198 }
199 else
200 {
201 item.ImportTexts();
202 }
203 }
204 }
205
206 public void ValidateLang()
207 {
208 Log.system = "";
209 foreach (SourceData item in list)
210 {
211 item.ValidateLang();
212 }
213 string text = Lang.setting.dir + "validation.txt";
214 IO.SaveText(text, Log.system);
215 Util.Run(text);
216 }
217}
Definition: ACT.cs:6
static void Init()
Definition: ACT.cs:25
Definition: EMono.cs:4
static SourceManager sources
Definition: EMono.cs:41
static List< SourceElement.Row > ListAttackElements
Definition: ELEMENT.cs:260
string dir
Definition: LangSetting.cs:28
Definition: Lang.cs:6
static LangSetting setting
Definition: Lang.cs:54
Definition: Log.cs:4
static string system
Definition: Log.cs:5
void Init()
Definition: SourceCard.cs:14
void OnAfterInit()
Definition: SourceFloor.cs:169
SourceFaction factions
SourceMaterial materials
SourceRace races
LangGeneral langGeneral
Definition: SourceManager.cs:6
SourceStat stats
SourceKeyItem keyItems
void ValidateLang()
SourceResearch researches
SourceCalc calc
SourceHomeResource homeResources
SourceCard cards
SourceThingV thingV
SourceObj objs
SourceThing things
List< SourceData > list
SourceZone zones
SourceCollectible collectibles
SourceHobby hobbies
SourceFood foods
SourceSpawnList spawnLists
void UpdateSourceTexts(string path)
SourceGlobalTile globalTiles
SourceCheck checks
SourceCellEffect cellEffects
SourceBlock blocks
SourcePerson persons
void ImportSourceTexts()
LangGame langGame
SourceAsset asset
LangWord langWord
ExcelData _dataGodTalk
LangNote langNote
SourceRecipe recipes
ExcelData dataGodTalk
SourceArea areas
SourceCharaText charaText
SourceZoneAffix zoneAffixes
SourceBacker backers
SourceCategory categories
SourceElement elements
SourceChara charas
LangList langList
Definition: SourceManager.cs:8
void OnChangeLang()
void ExportSourceTexts(string path)
SourceQuest quests
SourceJob jobs
SourceReligion religions
SourceTactics tactics
SourceFloor floors
static void Init()
Definition: TimeTable.cs:19