Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
SpatialGen Class Reference
Inheritance diagram for SpatialGen:
EClass

Static Public Member Functions

static Spatial CreateRecursive (string id, Spatial parent=null)
 
static Spatial Create (string id, Spatial parent, bool register, int x=-99999, int y=-99999, int icon=0)
 
static Zone CreateInstance (string id, ZoneInstance instance)
 
- Static Public Member Functions inherited from EClass
static int rnd (int a)
 
static int curve (int a, int start, int step, int rate=75)
 
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)
 

Additional Inherited Members

- Static Public Attributes inherited from EClass
static Core core
 
- 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]
 

Detailed Description

Definition at line 1 of file SpatialGen.cs.

Member Function Documentation

◆ Create()

static Spatial SpatialGen.Create ( string  id,
Spatial  parent,
bool  register,
int  x = -99999,
int  y = -99999,
int  icon = 0 
)
inlinestatic

Definition at line 16 of file SpatialGen.cs.

17 {
18 SourceZone.Row row = EClass.sources.zones.map[id];
19 Spatial spatial = ClassCache.Create<Spatial>(row.type, "Elin");
20 if (x == -99999)
21 {
22 x = ((row.pos.Length != 0) ? row.pos[0] : (-1000));
23 y = ((row.pos.Length != 0) ? row.pos[1] : (-1000));
24 }
25 if (icon == 0 && row.pos.Length != 0)
26 {
27 icon = row.pos[2];
28 }
29 spatial.Create(id, x, y, icon);
30 if (register)
31 {
32 spatial.Register();
33 }
34 parent?.AddChild(spatial);
35 spatial.OnAfterCreate();
36 return spatial;
37 }
Definition: EClass.cs:5
static SourceManager sources
Definition: EClass.cs:42
SourceZone zones
virtual void AddChild(Spatial child)
Definition: Spatial.cs:689
virtual void OnAfterCreate()
Definition: Spatial.cs:628
void Create(string _id, int _x, int _y, int _icon)
Definition: Spatial.cs:598
void Register()
Definition: Spatial.cs:616

References Spatial.AddChild(), Spatial.Create(), Spatial.OnAfterCreate(), SourceZone.Row.pos, Spatial.Register(), EClass.sources, SourceZone.Row.type, and SourceManager.zones.

Referenced by Region.CheckRandomSites(), CreateInstance(), Region.CreateRandomSite(), CreateRecursive(), Region.CreateZone(), TraitNewZone.CreateZone(), TraitMoongate.LoadMap(), Game.OnLoad(), and Game.StartNewGame().

◆ CreateInstance()

static Zone SpatialGen.CreateInstance ( string  id,
ZoneInstance  instance 
)
inlinestatic

Definition at line 39 of file SpatialGen.cs.

40 {
41 Zone topZone = EClass._zone.GetTopZone();
42 Zone obj = Create(id, EClass._zone.Region, register: true, topZone.x, topZone.y) as Zone;
43 obj.instance = instance;
44 instance.x = EClass.pc.pos.x;
45 instance.z = EClass.pc.pos.z;
46 instance.uidZone = EClass._zone.uid;
47 obj.dateExpire = EClass.world.date.GetRaw() + 1440;
48 return obj;
49 }
static Zone _zone
Definition: EClass.cs:20
static World world
Definition: EClass.cs:40
static Chara pc
Definition: EClass.cs:14
static Spatial Create(string id, Spatial parent, bool register, int x=-99999, int y=-99999, int icon=0)
Definition: SpatialGen.cs:16
int y
Definition: Spatial.cs:106
int x
Definition: Spatial.cs:94
Definition: Zone.cs:12
Zone GetTopZone()
Definition: Zone.cs:1854
Region Region
Definition: Zone.cs:160

References EClass._zone, Create(), World.date, Date.GetRaw(), Zone.GetTopZone(), EClass.pc, Card.pos, Zone.Region, Spatial.uid, EClass.world, Point.x, Spatial.x, Spatial.y, and Point.z.

Referenced by QuestInstance.CreateInstanceZone().

◆ CreateRecursive()

static Spatial SpatialGen.CreateRecursive ( string  id,
Spatial  parent = null 
)
inlinestatic

Definition at line 3 of file SpatialGen.cs.

4 {
5 Spatial spatial = Create(id, parent, register: true);
6 foreach (SourceZone.Row row in EClass.sources.zones.rows)
7 {
8 if ((!row.tag.Contains("debug") || EClass.debug.enable) && row.parent == id)
9 {
10 CreateRecursive(row.id, spatial);
11 }
12 }
13 return spatial;
14 }
bool enable
Definition: CoreDebug.cs:285
static CoreDebug debug
Definition: EClass.cs:48
static Spatial CreateRecursive(string id, Spatial parent=null)
Definition: SpatialGen.cs:3

References Create(), CreateRecursive(), EClass.debug, CoreDebug.enable, EClass.sources, and SourceManager.zones.

Referenced by Game._Create(), and CreateRecursive().


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