Elin Decompiled Documentation EA 23.130 Nightly
Loading...
Searching...
No Matches
TraitRod.cs
Go to the documentation of this file.
1public class TraitRod : TraitTool
2{
3 public override bool InvertHeldSprite => true;
4
5 public override bool HasCharges => true;
6
7 public virtual string aliasEle => null;
8
9 public override bool IsNoShop
10 {
11 get
12 {
13 if (source != null)
14 {
15 return source.tag.Contains("noShop");
16 }
17 return false;
18 }
19 }
20
21 public virtual SourceElement.Row source => null;
22
23 public virtual int Power
24 {
25 get
26 {
27 if (owner.sourceCard.vals.Length <= 2)
28 {
29 return 100;
30 }
31 return owner.sourceCard.vals[2].ToInt();
32 }
33 }
34
35 public virtual bool IsNegative => owner.IsNegativeGift;
36
37 public virtual EffectId IdEffect => owner.sourceCard.vals[1].ToEnum<EffectId>();
38
39 public virtual string N1
40 {
41 get
42 {
43 if (owner.sourceCard.vals.Length <= 3)
44 {
45 return "";
46 }
47 return owner.sourceCard.vals[3];
48 }
49 }
50
51 public override bool DisableAutoCombat => true;
52
54 {
55 return source;
56 }
57
58 public override void OnCreate(int lv)
59 {
60 owner.c_charges = EClass.rnd(12);
61 if (owner.id == "rod_wish")
62 {
63 owner.c_charges = 1;
64 owner.elements.SetBase(759, 30);
65 }
66 }
67
68 public override void TrySetHeldAct(ActPlan p)
69 {
70 p.TrySetAct(new ActZap
71 {
72 trait = this
73 }, owner);
74 }
75
76 public static void Create(Card owner, int ele)
77 {
78 owner.refVal = ele;
80 owner.c_charges = EClass.rnd(row.charge * 150 / 100);
81 if (row.tag.Contains("noCopy"))
82 {
83 owner.elements.SetBase(759, 10);
84 }
85 }
86}
EffectId
Definition: EffectId.cs:2
bool TrySetAct(string lang, Func< bool > onPerform, Card tc, CursorInfo cursor=null, int dist=1, bool isHostileAct=false, bool localAct=true, bool canRepeat=false)
Definition: ActPlan.cs:345
Definition: ActZap.cs:2
string[] vals
Definition: CardRow.cs:37
Definition: Card.cs:11
bool IsNegativeGift
Definition: Card.cs:2296
ElementContainerCard elements
Definition: Card.cs:37
string id
Definition: Card.cs:31
virtual CardRow sourceCard
Definition: Card.cs:2031
Definition: EClass.cs:5
static int rnd(int a)
Definition: EClass.cs:58
static SourceManager sources
Definition: EClass.cs:42
Element SetBase(string alias, int v, int potential=0)
SourceElement elements
override bool DisableAutoCombat
Definition: TraitRod.cs:51
override void OnCreate(int lv)
Definition: TraitRod.cs:58
override SourceElement.Row GetRefElement()
Definition: TraitRod.cs:53
override bool InvertHeldSprite
Definition: TraitRod.cs:3
virtual string aliasEle
Definition: TraitRod.cs:7
virtual SourceElement.Row source
Definition: TraitRod.cs:21
virtual int Power
Definition: TraitRod.cs:24
override bool IsNoShop
Definition: TraitRod.cs:10
static void Create(Card owner, int ele)
Definition: TraitRod.cs:76
override bool HasCharges
Definition: TraitRod.cs:5
override void TrySetHeldAct(ActPlan p)
Definition: TraitRod.cs:68
virtual EffectId IdEffect
Definition: TraitRod.cs:37
virtual bool IsNegative
Definition: TraitRod.cs:35
virtual string N1
Definition: TraitRod.cs:40
Card owner
Definition: Trait.cs:26