Elin Decompiled Documentation EA 23.197 Nightly Patch 1
Loading...
Searching...
No Matches
ActRush.cs
Go to the documentation of this file.
1public class ActRush : ActMelee
2{
3 public override bool ShowMapHighlight => true;
4
5 public override bool ShouldRollMax => true;
6
7 public override int PerformDistance => 6;
8
9 public override void OnMarkMapHighlights()
10 {
12 {
13 return;
14 }
16 Los.IsVisible(EClass.pc.pos, dest, delegate(Point p, bool blocked)
17 {
18 if (!p.Equals(EClass.pc.pos))
19 {
20 p.SetHighlight((blocked || p.IsBlocked || (!p.Equals(dest) && p.HasChara)) ? 4 : ((p.Distance(EClass.pc.pos) <= 2) ? 2 : 8));
21 }
22 });
23 }
24
25 public override bool CanPerform()
26 {
27 bool flag = Act.CC.IsPC && !(Act.CC.ai is GoalAutoCombat);
28 if (flag)
29 {
31 }
32 if (Act.TC == null)
33 {
34 return false;
35 }
37 {
38 return false;
39 }
42 {
43 return false;
44 }
45 if (Act.CC.host != null || Act.CC.Dist(Act.TP) <= 2)
46 {
47 return false;
48 }
49 if (Los.GetRushPoint(Act.CC.pos, Act.TP) == null)
50 {
51 return false;
52 }
53 return base.CanPerform();
54 }
55
56 public override bool Perform()
57 {
58 bool flag = Act.CC.IsPC && !(Act.CC.ai is GoalAutoCombat);
59 if (flag)
60 {
62 }
63 if (Act.TC == null)
64 {
65 return false;
66 }
68 int num = Act.CC.Dist(Act.TP);
69 Point rushPoint = Los.GetRushPoint(Act.CC.pos, Act.TP);
70 Act.CC.pos.PlayEffect("vanish");
71 Act.CC.MoveImmediate(rushPoint, focus: true, cancelAI: false);
72 Act.CC.Say("rush", Act.CC, Act.TC);
73 Act.CC.PlaySound("rush");
74 Act.CC.pos.PlayEffect("vanish");
75 float num2 = 1f + 0.1f * (float)num;
76 num2 = num2 * (float)(100 + EClass.curve(Act.CC.Evalue(382), 50, 25, 65)) / 100f;
77 Attack(num2);
79 {
80 if (!Act.TC.IsPowerful || EClass.rnd(4) == 0)
81 {
82 Act.TC.Chara.AddCondition<ConParalyze>(2, force: true);
83 }
84 if (!Act.TC.IsPowerful || EClass.rnd(3) == 0)
85 {
86 Act.TC.Chara.AddCondition<ConDim>(5, force: true);
87 }
88 if (!Act.TC.IsPowerful || EClass.rnd(2) == 0)
89 {
90 Act.TC.Chara.AddCondition<ConConfuse>(8, force: true);
91 }
92 }
93 return true;
94 }
95}
override bool Perform()
Definition: ActRush.cs:56
override bool ShouldRollMax
Definition: ActRush.cs:5
override int PerformDistance
Definition: ActRush.cs:7
override bool ShowMapHighlight
Definition: ActRush.cs:3
override void OnMarkMapHighlights()
Definition: ActRush.cs:9
override bool CanPerform()
Definition: ActRush.cs:25
Definition: ACT.cs:62
static Card TC
Definition: ACT.cs:79
static Point TP
Definition: ACT.cs:81
static Chara CC
Definition: ACT.cs:77
virtual bool isThing
Definition: Card.cs:2043
virtual Chara Chara
Definition: Card.cs:2032
bool HasElement(int ele, int req=1)
Definition: Card.cs:5725
bool isRestrained
Definition: Card.cs:552
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5939
bool ExistsOnMap
Definition: Card.cs:2047
Point pos
Definition: Card.cs:57
Trait trait
Definition: Card.cs:51
bool IsPowerful
Definition: Card.cs:2056
virtual bool isChara
Definition: Card.cs:2045
int Evalue(int ele)
Definition: Card.cs:2533
int Dist(Card c)
Definition: Card.cs:7404
void MoveImmediate(Point p, bool focus=true, bool cancelAI=true)
Definition: Card.cs:5638
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6586
Condition AddCondition(string id, int p=100, bool force=false)
Definition: Chara.cs:8871
Chara host
Definition: Chara.cs:33
Definition: ConDim.cs:2
Definition: EClass.cs:5
static Scene scene
Definition: EClass.cs:30
static int curve(int a, int start, int step, int rate=75)
Definition: EClass.cs:68
static int rnd(long a)
Definition: EClass.cs:58
static Chara pc
Definition: EClass.cs:14
Definition: Los.cs:5
static bool IsVisible(Point p1, Point p2, Action< Point, bool > _onVisit=null)
Definition: Los.cs:167
static Point GetRushPoint(Point p1, Point dest)
Definition: Los.cs:142
Chara TargetChara
Definition: PointTarget.cs:41
Definition: Point.cs:9
Point Set(int _x, int _z)
Definition: Point.cs:491
bool Equals(int _x, int _z)
Definition: Point.cs:944
bool IsValid
Definition: Point.cs:88
Effect PlayEffect(string id)
Definition: Point.cs:1232
PointTarget mouseTarget
Definition: Scene.cs:135
virtual bool CanBeAttacked
Definition: Trait.cs:164