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

Public Member Functions

virtual Chara CreateChara ()
 
override void OnVisit ()
 
void NextWave (int add=0)
 
override void _OnTickRound ()
 
void Horn_Next ()
 
void Horn_Retreat ()
 
void Horn_Ally ()
 
override void OnCharaDie (Chara c)
 
- Public Member Functions inherited from ZoneEventQuest
void Spawn (int num=1)
 
void SpawnBoss (bool evolve=false)
 
void AggroEnemy (int chance=100)
 
sealed override void OnTickRound ()
 
virtual void _OnTickRound ()
 
virtual ZoneInstance.Status OnReachTimeLimit ()
 
- Public Member Functions inherited from ZoneEvent
virtual string GetText ()
 
void Tick (float delta)
 
void Init ()
 
void OnSimulateHour ()
 
virtual void OnVisit ()
 
virtual void OnInit ()
 
virtual void OnFirstTick ()
 
virtual void OnTick ()
 
virtual void OnTickRound ()
 
virtual void OnKill ()
 
virtual void OnCharaDie (Chara c)
 
virtual void OnLeaveZone ()
 
void OnLoad (Zone _zone)
 
void Kill ()
 

Public Attributes

int wave
 
int turns
 
int hornTimer
 
int kills
 
int allyCall
 
int allyTimer
 
int bonus
 
bool retreated
 
- Public Attributes inherited from ZoneEventQuest
int uidQuest
 
List< int > enemies = new List<int>()
 
- Public Attributes inherited from ZoneEvent
float time
 
int rounds
 
int hoursElapsed
 
int minElapsed
 
Zone zone
 
bool firstTick = true
 

Properties

ZoneInstanceRandomQuest instance [get]
 
bool CanRetreat [get]
 
bool CanCallAlly [get]
 
override string TextWidgetDate [get]
 
- Properties inherited from ZoneEventQuest
Quest quest [get]
 
virtual bool WarnBoss [get]
 
virtual bool CountEnemy [get]
 
virtual int TimeLimit [get]
 
- Properties inherited from ZoneEvent
SourceQuest.Row source [get]
 
virtual string id [get]
 
virtual string TextWidgetDate [get]
 
virtual float roundInterval [get]
 
virtual Playlist playlist [get]
 
virtual bool debugSkip [get]
 
virtual string RefStr2 [get]
 
virtual string RefStr3 [get]
 
virtual int hoursToKill [get]
 
virtual bool HasReport [get]
 
string Name [get]
 
- 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 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)
 
- Static Public Attributes inherited from EClass
static Core core
 

Detailed Description

Definition at line 4 of file ZoneEventDefenseGame.cs.

Member Function Documentation

◆ _OnTickRound()

override void ZoneEventDefenseGame._OnTickRound ( )
inlinevirtual

Reimplemented from ZoneEventQuest.

Definition at line 91 of file ZoneEventDefenseGame.cs.

92 {
93 QuestDefenseGame.lastWave = wave;
94 QuestDefenseGame.bonus = bonus;
95 Debug.Log("wave:" + wave + " turns:" + turns + " rounds:" + rounds);
96 turns++;
97 if (hornTimer > 0)
98 {
99 hornTimer--;
100 }
101 if (turns <= 3 + base.quest.difficulty)
102 {
103 Spawn();
104 }
105 if (turns == 10 && wave % 5 == 0)
106 {
107 Rand.SetSeed(wave + base.quest.uid);
108 SpawnBoss(((wave >= 10) ? (wave * 2) : 0) > EClass.rnd(100));
109 Rand.SetSeed();
110 }
111 if (turns == 20)
112 {
113 NextWave();
114 }
115 AggroEnemy();
116 if (allyTimer > 0)
117 {
118 allyTimer--;
119 if (allyTimer == 0)
120 {
121 allyCall--;
122 }
123 }
124 }
Definition: EClass.cs:5
static int rnd(int a)
Definition: EClass.cs:50
Definition: Rand.cs:4
static void SetSeed(int a=-1)
Definition: Rand.cs:37
void AggroEnemy(int chance=100)
void SpawnBoss(bool evolve=false)
void Spawn(int num=1)
int rounds
Definition: ZoneEvent.cs:9

References ZoneEventQuest.AggroEnemy(), allyCall, allyTimer, bonus, Debug, hornTimer, NextWave(), EClass.rnd(), ZoneEvent.rounds, Rand.SetSeed(), ZoneEventQuest.Spawn(), ZoneEventQuest.SpawnBoss(), turns, and wave.

◆ CreateChara()

virtual Chara ZoneEventDefenseGame.CreateChara ( )
inlinevirtual

Definition at line 58 of file ZoneEventDefenseGame.cs.

59 {
60 return CharaGen.CreateFromFilter("c_wilds");
61 }
static Chara CreateFromFilter(string id, int lv=-1, int levelRange=-1)
Definition: CharaGen.cs:22

References CharaGen.CreateFromFilter().

◆ Horn_Ally()

void ZoneEventDefenseGame.Horn_Ally ( )
inline

Definition at line 153 of file ZoneEventDefenseGame.cs.

154 {
155 SE.Play("warhorn");
156 ActEffect.ProcAt(EffectId.Summon, 100, BlessedState.Normal, EClass.pc, EClass.pc, EClass.pc.pos, isNeg: false, new ActRef
157 {
158 n1 = "special_force"
159 });
160 allyCall++;
161 allyTimer += 100;
162 }
BlessedState
Definition: BlessedState.cs:2
EffectId
Definition: EffectId.cs:2
static void ProcAt(EffectId id, int power, BlessedState state, Card cc, Card tc, Point tp, bool isNeg, ActRef actRef=default(ActRef))
Definition: ActEffect.cs:392
Point pos
Definition: Card.cs:55
static Chara pc
Definition: EClass.cs:14
Definition: ActRef.cs:2

References allyCall, allyTimer, EClass.pc, Card.pos, and ActEffect.ProcAt().

Referenced by TraitCoreDefense.TrySetAct().

◆ Horn_Next()

void ZoneEventDefenseGame.Horn_Next ( )
inline

Definition at line 126 of file ZoneEventDefenseGame.cs.

127 {
128 Msg.Say("defense_start");
129 int add = 0;
130 if (turns <= 3)
131 {
132 Msg.Say("defense_bonus", bonus.ToString() ?? "");
133 bonus++;
134 add = 1 + base.quest.difficulty;
135 }
136 NextWave(add);
137 hornTimer += 10;
138 if (hornTimer > 100)
139 {
140 hornTimer = 100;
141 }
142 }
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58

References bonus, hornTimer, NextWave(), Msg.Say(), and turns.

Referenced by TraitCoreDefense.TrySetAct().

◆ Horn_Retreat()

void ZoneEventDefenseGame.Horn_Retreat ( )
inline

Definition at line 144 of file ZoneEventDefenseGame.cs.

145 {
146 SE.Play("warhorn");
147 Msg.Say("defense_retreat");
148 retreated = true;
149 instance.status = ZoneInstance.Status.Success;
151 }
static void Proc(EffectId id, Card cc, Card tc=null, int power=100, ActRef actRef=default(ActRef))
Definition: ActEffect.cs:788

References EClass.pc, ActEffect.Proc(), retreated, and Msg.Say().

Referenced by TraitCoreDefense.TrySetAct().

◆ NextWave()

void ZoneEventDefenseGame.NextWave ( int  add = 0)
inline

Definition at line 80 of file ZoneEventDefenseGame.cs.

81 {
82 wave++;
83 turns = 0;
84 EClass._zone._dangerLv += ((wave >= 20) ? 10 : 5);
85 SE.Play("warhorn");
86 Msg.Say("defense_wave", wave.ToString() ?? "", EClass._zone.DangerLv.ToString() ?? "");
87 Spawn(2 + base.quest.difficulty + add);
88 AggroEnemy();
89 }
static Zone _zone
Definition: EClass.cs:20
override int DangerLv
Definition: Zone.cs:107

References EClass._zone, ZoneEventQuest.AggroEnemy(), Zone.DangerLv, Msg.Say(), ZoneEventQuest.Spawn(), turns, and wave.

Referenced by _OnTickRound(), Horn_Next(), and OnVisit().

◆ OnCharaDie()

override void ZoneEventDefenseGame.OnCharaDie ( Chara  c)
inlinevirtual

Reimplemented from ZoneEvent.

Definition at line 164 of file ZoneEventDefenseGame.cs.

165 {
166 if (!c.IsPCParty && !c.IsPCPartyMinion)
167 {
168 kills++;
169 }
170 }
override bool IsPCParty
Definition: Chara.cs:600
override bool IsPCPartyMinion
Definition: Chara.cs:624

References Chara.IsPCParty, Chara.IsPCPartyMinion, and kills.

◆ OnVisit()

override void ZoneEventDefenseGame.OnVisit ( )
inlinevirtual

Reimplemented from ZoneEvent.

Definition at line 63 of file ZoneEventDefenseGame.cs.

64 {
66 {
67 QuestDefenseGame.lastWave = wave;
68 QuestDefenseGame.bonus = bonus;
69 return;
70 }
71 EClass._zone._dangerLv = 5;
72 Point nearestPoint = EClass._map.GetCenterPos().GetNearestPoint(allowBlock: false, allowChara: false);
73 EClass._zone.AddCard(ThingGen.Create("stone_defense"), nearestPoint).Install().isNPCProperty = true;
74 EClass._zone.AddCard(ThingGen.Create("core_defense"), nearestPoint).Install().isNPCProperty = false;
75 EClass._zone.SetBGM(107);
76 Msg.Say("defense_start");
77 NextWave();
78 }
bool isNPCProperty
Definition: Card.cs:526
Card Install()
Definition: Card.cs:3448
static Game game
Definition: EClass.cs:8
static Map _map
Definition: EClass.cs:18
bool isLoading
Definition: Game.cs:235
Point GetCenterPos()
Definition: MapBounds.cs:52
Definition: Point.cs:9
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false)
Definition: Point.cs:595
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
void SetBGM(List< int > ids, bool refresh=true)
Definition: Zone.cs:2706
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893

References EClass._map, EClass._zone, Zone.AddCard(), bonus, ThingGen.Create(), EClass.game, MapBounds.GetCenterPos(), Point.GetNearestPoint(), Card.Install(), Game.isLoading, Card.isNPCProperty, NextWave(), Msg.Say(), Zone.SetBGM(), and wave.

Member Data Documentation

◆ allyCall

int ZoneEventDefenseGame.allyCall

Definition at line 19 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), and Horn_Ally().

◆ allyTimer

int ZoneEventDefenseGame.allyTimer

Definition at line 22 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), and Horn_Ally().

◆ bonus

int ZoneEventDefenseGame.bonus

Definition at line 25 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), Horn_Next(), and OnVisit().

◆ hornTimer

int ZoneEventDefenseGame.hornTimer

Definition at line 13 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), and Horn_Next().

◆ kills

int ZoneEventDefenseGame.kills

Definition at line 16 of file ZoneEventDefenseGame.cs.

Referenced by OnCharaDie().

◆ retreated

bool ZoneEventDefenseGame.retreated

Definition at line 28 of file ZoneEventDefenseGame.cs.

Referenced by Horn_Retreat(), and TraitCoreDefense.TrySetAct().

◆ turns

int ZoneEventDefenseGame.turns

Definition at line 10 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), Horn_Next(), and NextWave().

◆ wave

int ZoneEventDefenseGame.wave

Definition at line 7 of file ZoneEventDefenseGame.cs.

Referenced by _OnTickRound(), NextWave(), OnVisit(), and TraitCoreDefense.TrySetAct().

Property Documentation

◆ CanCallAlly

bool ZoneEventDefenseGame.CanCallAlly
get

Definition at line 44 of file ZoneEventDefenseGame.cs.

45 {
46 get
47 {
48 if (allyCall == 0)
49 {
50 return rounds >= 50;
51 }
52 return false;
53 }
54 }

Referenced by TraitCoreDefense.TrySetAct().

◆ CanRetreat

bool ZoneEventDefenseGame.CanRetreat
get

Definition at line 32 of file ZoneEventDefenseGame.cs.

33 {
34 get
35 {
36 if (rounds >= 100)
37 {
38 return hornTimer <= 0;
39 }
40 return false;
41 }
42 }

Referenced by TraitCoreDefense.TrySetAct().

◆ instance

ZoneInstanceRandomQuest ZoneEventDefenseGame.instance
get

Definition at line 30 of file ZoneEventDefenseGame.cs.

◆ TextWidgetDate

override string ZoneEventDefenseGame.TextWidgetDate
get

Definition at line 56 of file ZoneEventDefenseGame.cs.


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