Elin Decompiled Documentation EA 23.310 Nightly Patch 1
Loading...
Searching...
No Matches
SourceElement Class Reference
Inheritance diagram for SourceElement:
SourceDataInt< SourceElement.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 OnInit ()
 
override void OnAfterImportData ()
 
void AddRow (Row ele, int id, string idOrg)
 
- Public Member Functions inherited from SourceDataInt< SourceElement.Row >
override T GetRow (string id)
 

Public Attributes

List< Rowhobbies = new List<Row>()
 
Dictionary< string, string > fuzzyAlias = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
 

Static Public Attributes

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

Properties

override string[] ImportFields [get]
 

Detailed Description

Definition at line 7 of file SourceElement.cs.

Member Function Documentation

◆ AddRow()

void SourceElement.AddRow ( Row  ele,
int  id,
string  idOrg 
)
inline

Definition at line 602 of file SourceElement.cs.

603 {
604 if (map.ContainsKey(id))
605 {
606 return;
607 }
608 Row row = EClass.sources.elements.alias[idOrg];
609 Dictionary<string, System.Reflection.FieldInfo> rowFields = row.GetRowFields();
610 Row row2 = new Row();
611 foreach (System.Reflection.FieldInfo value in rowFields.Values)
612 {
613 value.SetValue(row2, value.GetValue(row));
614 }
615 row2.id = id;
616 row2.idMold = row.id;
617 row2.alias = row.alias + ele.alias.Remove(0, 3);
618 row2.aliasRef = ele.alias;
619 row2.aliasParent = ele.aliasParent;
620 row2.chance = row.chance * ele.chance / 100;
621 row2.LV = row.LV;
622 row2.OnImportData(EClass.sources.elements);
623 rows.Add(row2);
624 }
Definition: EClass.cs:6
static SourceManager sources
Definition: EClass.cs:43
SourceElement elements

References SourceElement.Row.alias, SourceElement.Row.aliasParent, SourceManager.elements, SourceElement.Row.id, SourceElement.Row.LV, and EClass.sources.

Referenced by OnAfterImportData().

◆ CreateRow()

override Row SourceElement.CreateRow ( )
inline

Definition at line 407 of file SourceElement.cs.

408 {
409 return new Row
410 {
411 id = SourceData.GetInt(0),
412 alias = SourceData.GetString(1),
413 name_JP = SourceData.GetString(2),
414 name = SourceData.GetString(3),
415 altname_JP = SourceData.GetString(4),
416 altname = SourceData.GetString(5),
417 aliasParent = SourceData.GetString(6),
418 aliasRef = SourceData.GetString(7),
419 aliasMtp = SourceData.GetString(8),
420 parentFactor = SourceData.GetFloat(9),
421 lvFactor = SourceData.GetInt(10),
422 encFactor = SourceData.GetInt(11),
423 encSlot = SourceData.GetString(12),
424 mtp = SourceData.GetInt(13),
425 LV = SourceData.GetInt(14),
426 chance = SourceData.GetInt(15),
427 value = SourceData.GetInt(16),
428 cost = SourceData.GetIntArray(17),
429 geneSlot = SourceData.GetInt(18),
430 sort = SourceData.GetInt(19),
431 target = SourceData.GetString(20),
432 proc = SourceData.GetStringArray(21),
433 type = SourceData.GetString(22),
434 group = SourceData.GetString(23),
435 category = SourceData.GetString(24),
436 categorySub = SourceData.GetString(25),
437 abilityType = SourceData.GetStringArray(26),
438 tag = SourceData.GetStringArray(27),
439 thing = SourceData.GetString(28),
440 eleP = SourceData.GetInt(29),
441 cooldown = SourceData.GetInt(30),
442 charge = SourceData.GetInt(31),
443 radius = SourceData.GetFloat(32),
444 max = SourceData.GetInt(33),
445 req = SourceData.GetStringArray(34),
446 idTrainer = SourceData.GetString(35),
447 partySkill = SourceData.GetInt(36),
448 tagTrainer = SourceData.GetString(37),
449 levelBonus_JP = SourceData.GetString(38),
450 levelBonus = SourceData.GetString(39),
451 foodEffect = SourceData.GetStringArray(40),
452 langAct = SourceData.GetStringArray(42),
453 detail_JP = SourceData.GetString(43),
454 detail = SourceData.GetString(44),
455 textPhase_JP = SourceData.GetString(45),
456 textPhase = SourceData.GetString(46),
457 textExtra_JP = SourceData.GetString(47),
458 textExtra = SourceData.GetString(48),
459 textInc_JP = SourceData.GetString(49),
460 textInc = SourceData.GetString(50),
461 textDec_JP = SourceData.GetString(51),
462 textDec = SourceData.GetString(52),
463 textAlt_JP = SourceData.GetStringArray(53),
464 textAlt = SourceData.GetStringArray(54),
465 adjective_JP = SourceData.GetStringArray(55),
466 adjective = SourceData.GetStringArray(56)
467 };
468 }
static float GetFloat(int id)
Definition: SourceData.cs:968
static string[] GetStringArray(int id)
Definition: SourceData.cs:983
static string GetString(int id)
Definition: SourceData.cs:988
static int GetInt(int id)
Definition: SourceData.cs:953
static int[] GetIntArray(int id)
Definition: SourceData.cs:978

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 SourceElement.CreateRowByMapping ( IReadOnlyDictionary< string, int >  mapping)
inline

Definition at line 470 of file SourceElement.cs.

471 {
472 return new Row
473 {
474 id = SourceData.GetInt(mapping["id"]),
475 alias = SourceData.GetString(mapping["alias"]),
476 name_JP = SourceData.GetString(mapping["name_JP"]),
477 name = SourceData.GetString(mapping["name"]),
478 altname_JP = SourceData.GetString(mapping["altname_JP"]),
479 altname = SourceData.GetString(mapping["altname"]),
480 aliasParent = SourceData.GetString(mapping["aliasParent"]),
481 aliasRef = SourceData.GetString(mapping["aliasRef"]),
482 aliasMtp = SourceData.GetString(mapping["aliasMtp"]),
483 parentFactor = SourceData.GetFloat(mapping["parentFactor"]),
484 lvFactor = SourceData.GetInt(mapping["lvFactor"]),
485 encFactor = SourceData.GetInt(mapping["encFactor"]),
486 encSlot = SourceData.GetString(mapping["encSlot"]),
487 mtp = SourceData.GetInt(mapping["mtp"]),
488 LV = SourceData.GetInt(mapping["LV"]),
489 chance = SourceData.GetInt(mapping["chance"]),
490 value = SourceData.GetInt(mapping["value"]),
491 cost = SourceData.GetIntArray(mapping["cost"]),
492 geneSlot = SourceData.GetInt(mapping["geneSlot"]),
493 sort = SourceData.GetInt(mapping["sort"]),
494 target = SourceData.GetString(mapping["target"]),
495 proc = SourceData.GetStringArray(mapping["proc"]),
496 type = SourceData.GetString(mapping["type"]),
497 group = SourceData.GetString(mapping["group"]),
498 category = SourceData.GetString(mapping["category"]),
499 categorySub = SourceData.GetString(mapping["categorySub"]),
500 abilityType = SourceData.GetStringArray(mapping["abilityType"]),
501 tag = SourceData.GetStringArray(mapping["tag"]),
502 thing = SourceData.GetString(mapping["thing"]),
503 eleP = SourceData.GetInt(mapping["eleP"]),
504 cooldown = SourceData.GetInt(mapping["cooldown"]),
505 charge = SourceData.GetInt(mapping["charge"]),
506 radius = SourceData.GetFloat(mapping["radius"]),
507 max = SourceData.GetInt(mapping["max"]),
508 req = SourceData.GetStringArray(mapping["req"]),
509 idTrainer = SourceData.GetString(mapping["idTrainer"]),
510 partySkill = SourceData.GetInt(mapping["partySkill"]),
511 tagTrainer = SourceData.GetString(mapping["tagTrainer"]),
512 levelBonus_JP = SourceData.GetString(mapping["levelBonus_JP"]),
513 levelBonus = SourceData.GetString(mapping["levelBonus"]),
514 foodEffect = SourceData.GetStringArray(mapping["foodEffect"]),
515 langAct = SourceData.GetStringArray(mapping["langAct"]),
516 detail_JP = SourceData.GetString(mapping["detail_JP"]),
517 detail = SourceData.GetString(mapping["detail"]),
518 textPhase_JP = SourceData.GetString(mapping["textPhase_JP"]),
519 textPhase = SourceData.GetString(mapping["textPhase"]),
520 textExtra_JP = SourceData.GetString(mapping["textExtra_JP"]),
521 textExtra = SourceData.GetString(mapping["textExtra"]),
522 textInc_JP = SourceData.GetString(mapping["textInc_JP"]),
523 textInc = SourceData.GetString(mapping["textInc"]),
524 textDec_JP = SourceData.GetString(mapping["textDec_JP"]),
525 textDec = SourceData.GetString(mapping["textDec"]),
526 textAlt_JP = SourceData.GetStringArray(mapping["textAlt_JP"]),
527 textAlt = SourceData.GetStringArray(mapping["textAlt"]),
528 adjective_JP = SourceData.GetStringArray(mapping["adjective_JP"]),
529 adjective = SourceData.GetStringArray(mapping["adjective"])
530 };
531 }

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 > SourceElement.GetRowMapping ( )
inline

Definition at line 538 of file SourceElement.cs.

539 {
540 return RowMapping;
541 }
static readonly IReadOnlyDictionary< string, int > RowMapping

References RowMapping.

◆ GetTypeMapping()

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

Definition at line 543 of file SourceElement.cs.

544 {
545 return TypeMapping;
546 }
static readonly IReadOnlyDictionary< string, string > TypeMapping

References TypeMapping.

◆ OnAfterImportData()

override void SourceElement.OnAfterImportData ( )
inline

Definition at line 570 of file SourceElement.cs.

571 {
573 map.Clear();
574 alias.Clear();
575 foreach (Row row in rows)
576 {
577 map[row.id] = row;
578 alias[row.GetAlias] = row;
579 }
580 int num = 50000;
581 int num2 = 0;
582 for (int i = 910; i < 927; i++)
583 {
584 Row ele = EClass.sources.elements.map[i];
585 AddRow(ele, num + num2 + 100, "ball_");
586 AddRow(ele, num + num2 + 200, "breathe_");
587 AddRow(ele, num + num2 + 300, "bolt_");
588 AddRow(ele, num + num2 + 400, "hand_");
589 AddRow(ele, num + num2 + 500, "arrow_");
590 AddRow(ele, num + num2 + 600, "funnel_");
591 AddRow(ele, num + num2 + 700, "miasma_");
592 AddRow(ele, num + num2 + 800, "weapon_");
593 AddRow(ele, num + num2 + 900, "puddle_");
594 AddRow(ele, num + num2 + 1000, "sword_");
595 AddRow(ele, num + num2 + 1100, "bit_");
596 AddRow(ele, num + num2 + 1200, "flare_");
597 num2++;
598 }
599 initialized = false;
600 }
Definition: Core.cs:14
static Core SetCurrent(Core _current=null)
Definition: Core.cs:591
void AddRow(Row ele, int id, string idOrg)

References AddRow(), SourceManager.elements, SourceElement.Row.GetAlias, SourceElement.Row.id, Core.SetCurrent(), and EClass.sources.

◆ OnInit()

override void SourceElement.OnInit ( )
inline

Definition at line 548 of file SourceElement.cs.

549 {
550 hobbies.Clear();
551 foreach (Row row in rows)
552 {
553 if (row.id >= 100 && row.id < 400)
554 {
555 hobbies.Add(row);
556 }
557 row.isAttribute = row.category == "attribute";
558 row.isPrimaryAttribute = row.isAttribute && row.tag.Contains("primary");
559 row.isSkill = row.category == "skill";
560 row.isSpell = row.categorySub == "spell";
561 row.isTrait = row.tag.Contains("trait");
562 }
563 fuzzyAlias.Clear();
564 foreach (string key in alias.Keys)
565 {
566 fuzzyAlias[key] = key;
567 }
568 }
List< Row > hobbies
Dictionary< string, string > fuzzyAlias

References fuzzyAlias, hobbies, SourceElement.Row.id, and SourceElement.Row.tag.

◆ SetRow()

override void SourceElement.SetRow ( Row  r)
inline

Definition at line 533 of file SourceElement.cs.

534 {
535 map[r.id] = r;
536 }

References SourceElement.Row.id.

Member Data Documentation

◆ fuzzyAlias

Dictionary<string, string> SourceElement.fuzzyAlias = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)

Definition at line 403 of file SourceElement.cs.

Referenced by Core.GetElement(), and OnInit().

◆ hobbies

List<Row> SourceElement.hobbies = new List<Row>()

Definition at line 400 of file SourceElement.cs.

Referenced by Biography.Generate(), and OnInit().

◆ RowMapping

readonly IReadOnlyDictionary<string, int> SourceElement.RowMapping
static

Definition at line 279 of file SourceElement.cs.

Referenced by GetRowMapping().

◆ TypeMapping

readonly IReadOnlyDictionary<string, string> SourceElement.TypeMapping
static

Definition at line 339 of file SourceElement.cs.

Referenced by GetTypeMapping().

Property Documentation

◆ ImportFields

override string [] SourceElement.ImportFields
get

Definition at line 405 of file SourceElement.cs.


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