Elin Decompiled Documentation EA 23.229 Stable 1st Anniversary Patch 2
Loading...
Searching...
No Matches
Zone_Void.cs
Go to the documentation of this file.
1public class Zone_Void : Zone_Dungeon
2{
3 public bool IsBossLV
4 {
5 get
6 {
7 if (base.lv % 5 == 0)
8 {
9 return GetTopZone().GetDeepestLv() == base.lv;
10 }
11 return false;
12 }
13 }
14
15 public override string TextWidgetDate
16 {
17 get
18 {
19 if (base.Boss == null)
20 {
21 return "";
22 }
23 return "bossLevel".lang(base.Boss.Name);
24 }
25 }
26
27 public override ZoneScaleType ScaleType => ZoneScaleType.Void;
28
29 public override bool LockExit => IsBossLV;
30
31 public override bool CanUnlockExit
32 {
33 get
34 {
35 if (base.Boss != null)
36 {
37 return base.Boss.isDead;
38 }
39 return true;
40 }
41 }
42
43 public override string IDPlayList
44 {
45 get
46 {
47 if (!IsBossLV)
48 {
49 return base.IDPlayList;
50 }
51 return "Dungeon_Boss";
52 }
53 }
54
55 public override void OnGenerateMap()
56 {
57 base._dangerLv = 50;
58 if (IsBossLV)
59 {
60 base.Boss = SpawnMob(null, SpawnSetting.Boss(DangerLv));
61 Chara boss = base.Boss;
62 Hostility hostility2 = (base.Boss.c_originalHostility = Hostility.Enemy);
63 boss.hostility = hostility2;
64 foreach (Chara chara in EClass._map.charas)
65 {
66 if (chara.IsHostile())
67 {
68 chara.enemy = EClass.pc.party.members.RandomItem();
69 }
70 }
71 }
72 base.OnGenerateMap();
73 }
74
75 public override void OnActivate()
76 {
77 if (base.lv > MinLv && EClass._map.FindThing<TraitStairsDown>() == null && EClass._map.FindThing<TraitStairsLocked>() == null)
78 {
79 Thing t = ThingGen.Create(base.biome.style.GetIdStairs(upstairs: false), base.biome.style.matStairs);
80 AddCard(t, EClass._map.GetCenterPos().GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: false)).Install();
81 }
82 }
83}
@ boss
Hostility
Definition: Hostility.cs:2
ZoneScaleType
Definition: ZoneScaleType.cs:2
Card Install()
Definition: Card.cs:3671
Definition: Chara.cs:10
Party party
Definition: Chara.cs:43
bool IsHostile()
Definition: Chara.cs:6418
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
static Chara pc
Definition: EClass.cs:14
Point GetCenterPos()
Definition: MapBounds.cs:52
Thing FindThing(Func< Thing, bool > func)
Definition: Map.cs:2592
List< Chara > charas
Definition: Map.cs:81
List< Chara > members
Definition: Party.cs:18
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false, int minRadius=0)
Definition: Point.cs:607
static SpawnSetting Boss(int filterLv, int fixedLv=-1)
Definition: SpawnSetting.cs:47
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
override void OnGenerateMap()
Definition: Zone_Void.cs:55
override ZoneScaleType ScaleType
Definition: Zone_Void.cs:27
override string TextWidgetDate
Definition: Zone_Void.cs:16
bool IsBossLV
Definition: Zone_Void.cs:4
override string IDPlayList
Definition: Zone_Void.cs:44
override bool CanUnlockExit
Definition: Zone_Void.cs:32
override void OnActivate()
Definition: Zone_Void.cs:75
override bool LockExit
Definition: Zone_Void.cs:29
Zone GetTopZone()
Definition: Zone.cs:1920
int GetDeepestLv()
Definition: Zone.cs:3048
Chara SpawnMob(Point pos=null, SpawnSetting setting=null)
Definition: Zone.cs:2723
override int DangerLv
Definition: Zone.cs:107
virtual int MinLv
Definition: Zone.cs:278
Card AddCard(Card t, Point point)
Definition: Zone.cs:1959