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

Public Member Functions

virtual Chara CreateChara ()
 
override void OnFirstTick ()
 
override void OnTickRound ()
 
override void OnKill ()
 
- 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

List< int > uids = new List<int>()
 
List< Charamembers = new List<Chara>()
 
- Public Attributes inherited from ZoneEvent
float time
 
int rounds
 
int hoursElapsed
 
int minElapsed
 
Zone zone
 
bool firstTick = true
 

Properties

override string id [get]
 
override Playlist playlist [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 ZoneEventSiege.cs.

Member Function Documentation

◆ CreateChara()

virtual Chara ZoneEventSiege.CreateChara ( )
inlinevirtual

Reimplemented in ZoneEventSiegeGuard.

Definition at line 15 of file ZoneEventSiege.cs.

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

References CharaGen.CreateFromFilter().

Referenced by OnFirstTick().

◆ OnFirstTick()

override void ZoneEventSiege.OnFirstTick ( )
inlinevirtual

Reimplemented from ZoneEvent.

Definition at line 20 of file ZoneEventSiege.cs.

21 {
23 Msg.Say("startSiege");
25 Point randomEdge = EClass._map.GetRandomEdge();
26 for (int i = 0; i < 10; i++)
27 {
28 Chara chara = CreateChara();
29 EClass._zone.AddCard(chara, EClass._map.GetRandomSurface(randomEdge.x, randomEdge.z, 6));
30 chara.hostility = Hostility.Enemy;
31 members.Add(chara);
32 uids.Add(chara.uid);
33 }
34 Thing t = ThingGen.Create("torch");
35 EClass._zone.AddCard(t, randomEdge);
36 if (members.Count != 0)
37 {
38 return;
39 }
40 foreach (int uid in uids)
41 {
42 foreach (Chara chara2 in EClass._map.charas)
43 {
44 if (chara2.uid == uid)
45 {
46 members.Add(chara2);
47 }
48 }
49 }
50 }
Hostility
Definition: Hostility.cs:2
int uid
Definition: Card.cs:118
Definition: Chara.cs:10
Definition: EClass.cs:5
static Zone _zone
Definition: EClass.cs:20
static Map _map
Definition: EClass.cs:18
static Player player
Definition: EClass.cs:12
Point GetRandomSurface(int x, int z, int radius, bool walkable=true, bool allowWater=false)
Definition: MapBounds.cs:182
new Point GetRandomEdge(int r=3)
Definition: Map.cs:2211
List< Chara > charas
Definition: Map.cs:81
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
int sieges
Definition: Player.cs:72
Stats stats
Definition: Player.cs:817
Definition: Point.cs:9
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
List< Chara > members
virtual Chara CreateChara()
List< int > uids
void RefreshBGM()
Definition: Zone.cs:2742
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893

References EClass._map, EClass._zone, Zone.AddCard(), Map.charas, ThingGen.Create(), CreateChara(), Map.GetRandomEdge(), MapBounds.GetRandomSurface(), members, EClass.player, Zone.RefreshBGM(), Msg.Say(), Player.Stats.sieges, Player.stats, Card.uid, uids, Point.x, and Point.z.

◆ OnKill()

override void ZoneEventSiege.OnKill ( )
inlinevirtual

Reimplemented from ZoneEvent.

Definition at line 72 of file ZoneEventSiege.cs.

73 {
74 Msg.Say("endSiege");
76 }

References EClass._zone, Zone.RefreshBGM(), and Msg.Say().

◆ OnTickRound()

override void ZoneEventSiege.OnTickRound ( )
inlinevirtual

Reimplemented from ZoneEvent.

Definition at line 52 of file ZoneEventSiege.cs.

53 {
54 bool flag = true;
55 foreach (Chara member in members)
56 {
57 if (member.IsAliveInCurrentZone)
58 {
59 if (member.ai is GoalIdle)
60 {
61 member.SetAI(new GoalSiege());
62 }
63 flag = false;
64 }
65 }
66 if (flag || EClass.Branch.IsAllDead())
67 {
68 Kill();
69 }
70 }
override bool IsAliveInCurrentZone
Definition: Chara.cs:546
AIAct ai
Definition: Chara.cs:187
AIAct SetAI(AIAct g)
Definition: Chara.cs:8045
static FactionBranch Branch
Definition: EClass.cs:22
void Kill()
Definition: ZoneEvent.cs:115

References Chara.ai, EClass.Branch, Chara.IsAliveInCurrentZone, FactionBranch.IsAllDead(), ZoneEvent.Kill(), members, and Chara.SetAI().

Member Data Documentation

◆ members

List<Chara> ZoneEventSiege.members = new List<Chara>()

Definition at line 9 of file ZoneEventSiege.cs.

Referenced by OnFirstTick(), and OnTickRound().

◆ uids

List<int> ZoneEventSiege.uids = new List<int>()

Definition at line 7 of file ZoneEventSiege.cs.

Referenced by OnFirstTick().

Property Documentation

◆ id

override string ZoneEventSiege.id
get

Definition at line 11 of file ZoneEventSiege.cs.

◆ playlist

override Playlist ZoneEventSiege.playlist
get

Definition at line 13 of file ZoneEventSiege.cs.


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