Elin Decompiled Documentation EA 23.312 Nightly Patch 4
Loading...
Searching...
No Matches
CustomZoneContent Class Reference
Inheritance diagram for CustomZoneContent:
CustomSourceContent CustomContent EClass

Public Member Functions

override void OnGameLoad (GameIOContext context)
 
override string ToString ()
 
- Public Member Functions inherited from CustomContent
virtual void OnGameLoad (GameIOContext context)
 
virtual void OnGameSave (GameIOContext context)
 
override string ToString ()
 

Static Public Member Functions

static CustomZoneContent CreateFromRow (SourceZone.Row r, ModPackage owner=null)
 
- Static Public Member Functions inherited from CustomSourceContent
static string string string[] kv GetParams (string tag)
 
- Static Public Member Functions inherited from EClass
static int rndSeed (int a, int seed)
 
static int rnd (long a)
 
static int rnd (int a)
 
static int curve (long _a, int start, int step, int rate=75)
 
static int sqrt (int a)
 
static int rndHalf (int a)
 
static float rndf (float a)
 
static int rndSqrt (int a)
 
static void Wait (float a, Card c)
 
static void Wait (float a, Point p)
 
static int Bigger (int a, int b)
 
static int Smaller (int a, int b)
 

Public Attributes

string parent
 

Properties

override string SourceType [get]
 
- Properties inherited from CustomSourceContent
virtual string SourceType [get]
 
string SourceId [get, set]
 
- Properties inherited from CustomContent
string ContentId [get, protected set]
 
EMod Owner [get, protected set]
 
- Properties inherited from EClass
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static FactionBranch Branch [get]
 
static FactionBranch BranchOrHomeBranch [get]
 
static Faction Home [get]
 
static Faction Wilds [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static GameSetting setting [get]
 
static GameData gamedata [get]
 
static ColorProfile Colors [get]
 
static World world [get]
 
static SourceManager sources [get]
 
static SourceManager editorSources [get]
 
static SoundManager Sound [get]
 
static CoreDebug debug [get]
 

Additional Inherited Members

- Static Public Attributes inherited from CustomSourceContent
static string action
 
static string string spec
 
- Static Public Attributes inherited from EClass
static Core core
 

Detailed Description

Definition at line 7 of file CustomZoneContent.cs.

Member Function Documentation

◆ CreateFromRow()

static CustomZoneContent CustomZoneContent.CreateFromRow ( SourceZone::Row  r,
ModPackage  owner = null 
)
inlinestatic

Definition at line 13 of file CustomZoneContent.cs.

14 {
15 List<string> list = r.tag.Where((string t) => t.StartsWith("add")).ToList();
16 if (list.Count == 0)
17 {
18 return null;
19 }
20 if (owner == null)
21 {
22 owner = ModUtil.FindSourceRowPackage(r);
23 }
24 CustomZoneContent customZoneContent = new CustomZoneContent
25 {
26 ContentId = "Zone/" + r.id,
27 SourceId = r.id,
28 Owner = owner
29 };
30 foreach (string item in list)
31 {
32 var (text, str, _) = CustomSourceContent.GetParams(item);
33 if (text == "addMap")
34 {
35 customZoneContent.parent = str.IsEmpty(r.parent.IsEmpty("ntyris"));
36 }
37 }
38 return customZoneContent;
39 }
string ContentId
Definition: CustomContent.cs:6
static string string string[] kv GetParams(string tag)
string[] tag
Definition: SourceZone.cs:37
string parent
Definition: SourceZone.cs:11

References CustomContent.ContentId, CustomSourceContent.GetParams(), item, CustomContent.Owner, and CustomSourceContent.SourceId.

Referenced by ModPackage.GenerateCustomContentProfiles().

◆ OnGameLoad()

override void CustomZoneContent.OnGameLoad ( GameIOContext  context)
inlinevirtual

Reimplemented from CustomContent.

Definition at line 41 of file CustomZoneContent.cs.

42 {
43 Debug.Log($"#mod-content loading {this}");
44 if (EClass.game.spatials.Find(base.SourceId) != null)
45 {
46 Debug.Log("#mod-content skipping existing custom zone " + base.SourceId);
47 return;
48 }
49 Zone zone = ModUtil.FindZoneByFullName(parent);
50 if (zone != null)
51 {
52 Spatial arg = SpatialGen.Create(base.SourceId, zone, register: true);
53 Debug.Log($"#mod-content spawned custom zone {arg}");
54 return;
55 }
56 ModUtil.LogModError("source zone row '" + base.SourceId + "' has invalid addMap parent '" + parent + "'", base.Owner);
57 }
$
Definition: ModManager.cs:76
Definition: EClass.cs:6
static Game game
Definition: EClass.cs:9
SpatialManager spatials
Definition: Game.cs:153
static Spatial Create(string id, Spatial parent, bool register, int x=-99999, int y=-99999, int icon=0)
Definition: SpatialGen.cs:16
Zone Find(string id)
Definition: Zone.cs:12

References $, SpatialGen.Create(), Debug, SpatialManager.Find(), EClass.game, parent, and Game.spatials.

◆ ToString()

override string CustomZoneContent.ToString ( )
inline

Definition at line 59 of file CustomZoneContent.cs.

60 {
61 return base.ContentId + "/" + parent;
62 }

References parent.

Member Data Documentation

◆ parent

string CustomZoneContent.parent

Definition at line 9 of file CustomZoneContent.cs.

Referenced by OnGameLoad(), and ToString().

Property Documentation

◆ SourceType

override string CustomZoneContent.SourceType
get

Definition at line 11 of file CustomZoneContent.cs.


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