Elin Modding Docs Doc
Loading...
Searching...
No Matches
AI_TargetCard.cs
1using System;
2using System.Collections.Generic;
3
4// Token: 0x020001E3 RID: 483
5public class AI_TargetCard : AIAct
6{
7 // Token: 0x1700039B RID: 923
8 // (get) Token: 0x06000DF4 RID: 3572 RVA: 0x0006A83E File Offset: 0x00068A3E
9 public virtual bool GotoTarget
10 {
11 get
12 {
13 return false;
14 }
15 }
16
17 // Token: 0x1700039C RID: 924
18 // (get) Token: 0x06000DF5 RID: 3573 RVA: 0x0006A841 File Offset: 0x00068A41
19 public override bool HasProgress
20 {
21 get
22 {
23 return false;
24 }
25 }
26
27 // Token: 0x1700039D RID: 925
28 // (get) Token: 0x06000DF6 RID: 3574 RVA: 0x0006A844 File Offset: 0x00068A44
29 public virtual bool CanTargetInventory
30 {
31 get
32 {
33 return false;
34 }
35 }
36
37 // Token: 0x06000DF7 RID: 3575 RVA: 0x0006A847 File Offset: 0x00068A47
38 public override bool CanProgress()
39 {
40 return this.target.ExistsOnMap || (this.CanTargetInventory && this.target.GetRootCard() == this.owner);
41 }
42
43 // Token: 0x06000DF8 RID: 3576 RVA: 0x0006A875 File Offset: 0x00068A75
44 public override IEnumerable<AIAct.Status> Run()
45 {
46 this.isFail = (() => !this.CanProgress());
47 if (this.target.ExistsOnMap)
48 {
49 if (this.target.isThing && !this.GotoTarget)
50 {
51 yield return base.DoGotoInteraction(this.target.pos, null);
52 }
53 else
54 {
55 yield return base.DoGoto(this.target, null);
56 }
57 if (this.target.Dist(this.owner) > 1)
58 {
59 yield return this.Cancel();
60 }
61 this.owner.LookAt(this.target);
62 }
63 else if (!this.CanTargetInventory || this.target.GetRootCard() != this.owner)
64 {
65 yield return this.Cancel();
66 }
67 if (this.HasProgress)
68 {
69 yield return base.DoProgress();
70 }
71 else
72 {
73 this.OnProgressComplete();
74 }
75 yield break;
76 }
77
78 // Token: 0x04000D35 RID: 3381
79 public Card target;
80}
Definition AIAct.cs:7
Definition Card.cs:13