Elin Decompiled Documentation EA 23.351.2 Nightly
Loading...
Searching...
No Matches
SourceFloor Class Reference
Inheritance diagram for SourceFloor:
SourceDataInt< SourceFloor.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 ()
 
void OnAfterInit ()
 
- Public Member Functions inherited from SourceDataInt< SourceFloor.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
 

Properties

TileLookup< Row > Lookup [get]
 
Row this[int id] [get]
 

Private Attributes

TileLookup< Row > _lookup
 

Detailed Description

Definition at line 5 of file SourceFloor.cs.

Member Function Documentation

◆ BackupPref()

override void SourceFloor.BackupPref ( )
inline

Definition at line 245 of file SourceFloor.cs.

246 {
247 _rows.Clear();
248 foreach (Row row in rows)
249 {
250 _rows[row.id] = row;
251 }
252 }
Dictionary< int, Row > _rows
Definition: SourceFloor.cs:145

References _rows, and TileRow.id.

◆ CreateRow()

override Row SourceFloor.CreateRow ( )
inline

Definition at line 156 of file SourceFloor.cs.

157 {
158 return new Row
159 {
160 id = SourceData.GetInt(0),
161 alias = SourceData.GetString(1),
162 name_JP = SourceData.GetString(2),
163 name = SourceData.GetString(3),
164 sort = SourceData.GetInt(4),
165 idBiome = SourceData.GetString(5),
166 reqHarvest = SourceData.GetStringArray(6),
167 hp = SourceData.GetInt(7),
168 _tileType = SourceData.GetString(8),
169 _idRenderData = SourceData.GetString(9),
170 tiles = SourceData.GetIntArray(10),
171 anime = SourceData.GetIntArray(11),
172 colorMod = SourceData.GetInt(12),
173 value = SourceData.GetInt(13),
174 LV = SourceData.GetInt(14),
175 recipeKey = SourceData.GetStringArray(15),
176 factory = SourceData.GetStringArray(16),
177 components = SourceData.GetStringArray(17),
178 defMat = SourceData.GetString(18),
179 defBlock = SourceData.GetString(19),
180 bridgeBlock = SourceData.GetString(20),
181 category = SourceData.GetString(21),
182 edge = SourceData.GetInt(22),
183 autotile = SourceData.GetInt(23),
184 autotilePriority = SourceData.GetInt(24),
185 autotileBrightness = SourceData.GetFloat(25),
186 soundFoot = SourceData.GetString(26),
187 tag = SourceData.GetStringArray(27),
188 detail_JP = SourceData.GetString(28),
189 detail = SourceData.GetString(29)
190 };
191 }
static float GetFloat(int id)
Definition: SourceData.cs:996
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
static int[] GetIntArray(int id)
Definition: SourceData.cs:1006

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

◆ CreateRowByMapping()

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

Definition at line 193 of file SourceFloor.cs.

194 {
195 return new Row
196 {
197 id = SourceData.GetInt(mapping["id"]),
198 alias = SourceData.GetString(mapping["alias"]),
199 name_JP = SourceData.GetString(mapping["name_JP"]),
200 name = SourceData.GetString(mapping["name"]),
201 sort = SourceData.GetInt(mapping["sort"]),
202 idBiome = SourceData.GetString(mapping["idBiome"]),
203 reqHarvest = SourceData.GetStringArray(mapping["reqHarvest"]),
204 hp = SourceData.GetInt(mapping["hp"]),
205 _tileType = SourceData.GetString(mapping["_tileType"]),
206 _idRenderData = SourceData.GetString(mapping["_idRenderData"]),
207 tiles = SourceData.GetIntArray(mapping["tiles"]),
208 anime = SourceData.GetIntArray(mapping["anime"]),
209 colorMod = SourceData.GetInt(mapping["colorMod"]),
210 value = SourceData.GetInt(mapping["value"]),
211 LV = SourceData.GetInt(mapping["LV"]),
212 recipeKey = SourceData.GetStringArray(mapping["recipeKey"]),
213 factory = SourceData.GetStringArray(mapping["factory"]),
214 components = SourceData.GetStringArray(mapping["components"]),
215 defMat = SourceData.GetString(mapping["defMat"]),
216 defBlock = SourceData.GetString(mapping["defBlock"]),
217 bridgeBlock = SourceData.GetString(mapping["bridgeBlock"]),
218 category = SourceData.GetString(mapping["category"]),
219 edge = SourceData.GetInt(mapping["edge"]),
220 autotile = SourceData.GetInt(mapping["autotile"]),
221 autotilePriority = SourceData.GetInt(mapping["autotilePriority"]),
222 autotileBrightness = SourceData.GetFloat(mapping["autotileBrightness"]),
223 soundFoot = SourceData.GetString(mapping["soundFoot"]),
224 tag = SourceData.GetStringArray(mapping["tag"]),
225 detail_JP = SourceData.GetString(mapping["detail_JP"]),
226 detail = SourceData.GetString(mapping["detail"])
227 };
228 }

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

◆ GetRowMapping()

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

Definition at line 235 of file SourceFloor.cs.

236 {
237 return RowMapping;
238 }
static readonly IReadOnlyDictionary< string, int > RowMapping
Definition: SourceFloor.cs:77

References RowMapping.

◆ GetTypeMapping()

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

Definition at line 240 of file SourceFloor.cs.

241 {
242 return TypeMapping;
243 }
static readonly IReadOnlyDictionary< string, string > TypeMapping
Definition: SourceFloor.cs:111

References TypeMapping.

◆ OnAfterImportData()

override void SourceFloor.OnAfterImportData ( )
inline

Definition at line 270 of file SourceFloor.cs.

271 {
272 int num = 0;
273 foreach (Row row in rows)
274 {
275 if (row.sort != 0)
276 {
277 num = row.sort;
278 }
279 row.sort = num;
280 num++;
281 }
282 rows.Sort((Row r) => r.id);
283 }

References TileRow.id, and RenderRow.sort.

◆ OnAfterInit()

void SourceFloor.OnAfterInit ( )
inline

Definition at line 301 of file SourceFloor.cs.

302 {
304 foreach (Row row2 in rows)
305 {
306 row2._defBlock = Resolve(row2, row2.defBlock);
307 row2._bridgeBlock = Resolve(row2, row2.bridgeBlock);
308 row2.nonGradient = row2.ContainsTag("nonGradient");
309 }
310 SourceBlock.Row Resolve(Row r, string aliasName)
311 {
312 SourceBlock.Row row = blocks.alias.TryGetValue(aliasName);
313 if (row == null)
314 {
315 Debug.LogWarning($"#source floor {r.id}/{r.alias} has invalid block alias '{aliasName}'");
316 row = blocks[0];
317 }
318 return row;
319 }
320 }
Definition: EClass.cs:6
static SourceManager sources
Definition: EClass.cs:43
SourceBlock blocks

References $, TileRow.alias, SourceManager.blocks, SourceFloor.Row.bridgeBlock, RenderRow.ContainsTag(), Debug, SourceFloor.Row.defBlock, and EClass.sources.

Referenced by SourceImporter.HotInit(), and SourceManager.Init().

◆ OnInit()

override void SourceFloor.OnInit ( )
inline

Definition at line 285 of file SourceFloor.cs.

286 {
287 Lookup.Build();
288 FallbackRenderData = ResourceCache.Load<RenderData>("Scene/Render/Data/floor");
289 Cell.floorSource = this;
290 Cell.floorList = rows;
291 FLOOR.sourceSnow = this[39];
292 FLOOR.sourceSnow2 = this[56];
293 FLOOR.sourceIce = this[38];
294 FLOOR.sourceWood = this[21];
295 foreach (Row row in rows)
296 {
297 row.Init();
298 }
299 }
void Init()
Definition: RenderData.cs:95
TileLookup< Row > Lookup
Definition: SourceFloor.cs:152
static RenderData FallbackRenderData
Definition: SourceFloor.cs:147

References FallbackRenderData, TileRow.Init(), and Lookup.

◆ RestorePref()

override void SourceFloor.RestorePref ( )
inline

Definition at line 254 of file SourceFloor.cs.

255 {
256 foreach (Row row in rows)
257 {
258 row.pref = _rows.TryGetValue(row.id)?.pref ?? new SourcePref();
259 }
260 }

References _rows, and TileRow.id.

◆ SetRow()

override void SourceFloor.SetRow ( Row  r)
inline

Definition at line 230 of file SourceFloor.cs.

231 {
232 map[r.id] = r;
233 }

References TileRow.id.

◆ ValidatePref()

override void SourceFloor.ValidatePref ( )
inline

Definition at line 262 of file SourceFloor.cs.

263 {
264 foreach (Row row in rows)
265 {
266 row.pref.Validate();
267 }
268 }

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

Member Data Documentation

◆ _lookup

TileLookup<Row> SourceFloor._lookup
private

Definition at line 150 of file SourceFloor.cs.

◆ _rows

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

Definition at line 145 of file SourceFloor.cs.

Referenced by BackupPref(), and RestorePref().

◆ FallbackRenderData

RenderData SourceFloor.FallbackRenderData
static

Definition at line 147 of file SourceFloor.cs.

Referenced by OnInit().

◆ RowMapping

readonly IReadOnlyDictionary<string, int> SourceFloor.RowMapping
static

Definition at line 77 of file SourceFloor.cs.

Referenced by GetRowMapping().

◆ TypeMapping

readonly IReadOnlyDictionary<string, string> SourceFloor.TypeMapping
static

Definition at line 111 of file SourceFloor.cs.

Referenced by GetTypeMapping().

Property Documentation

◆ Lookup

TileLookup<Row> SourceFloor.Lookup
getprivate

Definition at line 152 of file SourceFloor.cs.

Referenced by OnInit().

◆ this[int id]

Row SourceFloor.this[int id]
get

Definition at line 154 of file SourceFloor.cs.


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