Elin Decompiled Documentation EA 23.321 Nightly Patch 1
Loading...
Searching...
No Matches
SourceBlock Class Reference
Inheritance diagram for SourceBlock:
SourceDataInt< SourceBlock.Row >

Classes

class  Row
 

Public Member Functions

override Row CreateRow ()
 
override Row CreateRowByMapping (IReadOnlyDictionary< string, int > mapping)
 
override void SetRow (Row r)
 
override IReadOnlyDictionary< string, int > GetRowMapping ()
 
override IReadOnlyDictionary< string, string > GetTypeMapping ()
 
override void BackupPref ()
 
override void RestorePref ()
 
override void ValidatePref ()
 
override void OnAfterImportData ()
 
override void OnInit ()
 
- Public Member Functions inherited from SourceDataInt< SourceBlock.Row >
override T GetRow (string id)
 

Public Attributes

Dictionary< int, Row_rows = new Dictionary<int, Row>()
 

Static Public Attributes

static readonly IReadOnlyDictionary< string, int > RowMapping
 
static readonly IReadOnlyDictionary< string, string > TypeMapping
 
static RenderData FallbackRenderData
 

Detailed Description

Definition at line 4 of file SourceBlock.cs.

Member Function Documentation

◆ BackupPref()

override void SourceBlock.BackupPref ( )
inline

Definition at line 236 of file SourceBlock.cs.

237 {
238 _rows.Clear();
239 foreach (Row row in rows)
240 {
241 _rows[row.id] = row;
242 }
243 }
Dictionary< int, Row > _rows
Definition: SourceBlock.cs:141

References _rows, and TileRow.id.

◆ CreateRow()

override Row SourceBlock.CreateRow ( )
inline

Definition at line 145 of file SourceBlock.cs.

146 {
147 return new Row
148 {
149 id = SourceData.GetInt(0),
150 alias = SourceData.GetString(1),
151 name_JP = SourceData.GetString(2),
152 name = SourceData.GetString(3),
153 sort = SourceData.GetInt(4),
154 reqHarvest = SourceData.GetStringArray(5),
155 hp = SourceData.GetInt(6),
156 idThing = SourceData.GetString(7),
157 _tileType = SourceData.GetString(8),
158 _idRenderData = SourceData.GetString(9),
159 tiles = SourceData.GetIntArray(10),
160 anime = SourceData.GetIntArray(11),
161 snowTile = SourceData.GetInt(12),
162 colorMod = SourceData.GetInt(13),
163 colorType = SourceData.GetString(14),
164 value = SourceData.GetInt(15),
165 LV = SourceData.GetInt(16),
166 recipeKey = SourceData.GetStringArray(17),
167 factory = SourceData.GetStringArray(18),
168 components = SourceData.GetStringArray(19),
169 defMat = SourceData.GetString(20),
170 category = SourceData.GetString(21),
171 roof = SourceData.GetInt(22),
172 autoFloor = SourceData.GetString(23),
173 concrete = SourceData.GetBool(24),
174 transparent = SourceData.GetBool(25),
175 transition = SourceData.GetIntArray(26),
176 tag = SourceData.GetStringArray(27),
177 soundFoot = SourceData.GetString(28),
178 detail_JP = SourceData.GetString(29),
179 detail = SourceData.GetString(30)
180 };
181 }
static string[] GetStringArray(int id)
Definition: SourceData.cs:1011
static string GetString(int id)
Definition: SourceData.cs:1016
static bool GetBool(int id)
Definition: SourceData.cs:986
static int GetInt(int id)
Definition: SourceData.cs:981
static int[] GetIntArray(int id)
Definition: SourceData.cs:1006

References SourceData< T, T2 >.GetBool(), SourceData< T, T2 >.GetInt(), SourceData< T, T2 >.GetIntArray(), SourceData< T, T2 >.GetString(), and SourceData< T, T2 >.GetStringArray().

◆ CreateRowByMapping()

override Row SourceBlock.CreateRowByMapping ( IReadOnlyDictionary< string, int >  mapping)
inline

Definition at line 183 of file SourceBlock.cs.

184 {
185 return new Row
186 {
187 id = SourceData.GetInt(mapping["id"]),
188 alias = SourceData.GetString(mapping["alias"]),
189 name_JP = SourceData.GetString(mapping["name_JP"]),
190 name = SourceData.GetString(mapping["name"]),
191 sort = SourceData.GetInt(mapping["sort"]),
192 reqHarvest = SourceData.GetStringArray(mapping["reqHarvest"]),
193 hp = SourceData.GetInt(mapping["hp"]),
194 idThing = SourceData.GetString(mapping["idThing"]),
195 _tileType = SourceData.GetString(mapping["_tileType"]),
196 _idRenderData = SourceData.GetString(mapping["_idRenderData"]),
197 tiles = SourceData.GetIntArray(mapping["tiles"]),
198 anime = SourceData.GetIntArray(mapping["anime"]),
199 snowTile = SourceData.GetInt(mapping["snowTile"]),
200 colorMod = SourceData.GetInt(mapping["colorMod"]),
201 colorType = SourceData.GetString(mapping["colorType"]),
202 value = SourceData.GetInt(mapping["value"]),
203 LV = SourceData.GetInt(mapping["LV"]),
204 recipeKey = SourceData.GetStringArray(mapping["recipeKey"]),
205 factory = SourceData.GetStringArray(mapping["factory"]),
206 components = SourceData.GetStringArray(mapping["components"]),
207 defMat = SourceData.GetString(mapping["defMat"]),
208 category = SourceData.GetString(mapping["category"]),
209 roof = SourceData.GetInt(mapping["roof"]),
210 autoFloor = SourceData.GetString(mapping["autoFloor"]),
211 concrete = SourceData.GetBool(mapping["concrete"]),
212 transparent = SourceData.GetBool(mapping["transparent"]),
213 transition = SourceData.GetIntArray(mapping["transition"]),
214 tag = SourceData.GetStringArray(mapping["tag"]),
215 soundFoot = SourceData.GetString(mapping["soundFoot"]),
216 detail_JP = SourceData.GetString(mapping["detail_JP"]),
217 detail = SourceData.GetString(mapping["detail"])
218 };
219 }

References SourceData< T, T2 >.GetBool(), SourceData< T, T2 >.GetInt(), SourceData< T, T2 >.GetIntArray(), SourceData< T, T2 >.GetString(), and SourceData< T, T2 >.GetStringArray().

◆ GetRowMapping()

override IReadOnlyDictionary< string, int > SourceBlock.GetRowMapping ( )
inline

Definition at line 226 of file SourceBlock.cs.

227 {
228 return RowMapping;
229 }
static readonly IReadOnlyDictionary< string, int > RowMapping
Definition: SourceBlock.cs:71

References RowMapping.

◆ GetTypeMapping()

override IReadOnlyDictionary< string, string > SourceBlock.GetTypeMapping ( )
inline

Definition at line 231 of file SourceBlock.cs.

232 {
233 return TypeMapping;
234 }
static readonly IReadOnlyDictionary< string, string > TypeMapping
Definition: SourceBlock.cs:106

References TypeMapping.

◆ OnAfterImportData()

override void SourceBlock.OnAfterImportData ( )
inline

Definition at line 261 of file SourceBlock.cs.

262 {
263 int num = 0;
264 foreach (Row row in rows)
265 {
266 if (row.sort != 0)
267 {
268 num = row.sort;
269 }
270 row.sort = num;
271 num++;
272 }
273 rows.Sort((Row a, Row b) => a.id - b.id);
274 }

References TileRow.id, and RenderRow.sort.

◆ OnInit()

override void SourceBlock.OnInit ( )
inline

Definition at line 276 of file SourceBlock.cs.

277 {
278 FallbackRenderData = ResourceCache.Load<RenderData>("Scene/Render/Data/block");
279 Cell.blockList = rows;
281 foreach (Row row in rows)
282 {
283 row.Init();
284 row.sourceAutoFloor = (row.autoFloor.IsEmpty() ? floors.rows[40] : floors.alias[row.autoFloor]);
285 }
286 }
Definition: Core.cs:14
SourceManager sources
Definition: Core.cs:33
static new Core Instance
Definition: Core.cs:15
static RenderData FallbackRenderData
Definition: SourceBlock.cs:143
SourceFloor floors

References SourceBlock.Row.autoFloor, FallbackRenderData, SourceManager.floors, TileRow.Init(), Core.Instance, and Core.sources.

◆ RestorePref()

override void SourceBlock.RestorePref ( )
inline

Definition at line 245 of file SourceBlock.cs.

246 {
247 foreach (Row row in rows)
248 {
249 row.pref = _rows.TryGetValue(row.id)?.pref ?? new SourcePref();
250 }
251 }

References _rows, and TileRow.id.

◆ SetRow()

override void SourceBlock.SetRow ( Row  r)
inline

Definition at line 221 of file SourceBlock.cs.

222 {
223 map[r.id] = r;
224 }

References TileRow.id.

◆ ValidatePref()

override void SourceBlock.ValidatePref ( )
inline

Definition at line 253 of file SourceBlock.cs.

254 {
255 foreach (Row row in rows)
256 {
257 row.pref.Validate();
258 }
259 }

References RenderRow.pref, and SourcePref.Validate().

Member Data Documentation

◆ _rows

Dictionary<int, Row> SourceBlock._rows = new Dictionary<int, Row>()

Definition at line 141 of file SourceBlock.cs.

Referenced by BackupPref(), and RestorePref().

◆ FallbackRenderData

RenderData SourceBlock.FallbackRenderData
static

Definition at line 143 of file SourceBlock.cs.

Referenced by OnInit().

◆ RowMapping

readonly IReadOnlyDictionary<string, int> SourceBlock.RowMapping
static

Definition at line 71 of file SourceBlock.cs.

Referenced by GetRowMapping().

◆ TypeMapping

readonly IReadOnlyDictionary<string, string> SourceBlock.TypeMapping
static

Definition at line 106 of file SourceBlock.cs.

Referenced by GetTypeMapping().


The documentation for this class was generated from the following file: