Elin Decompiled Documentation EA 23.352.1 Stable
Loading...
Searching...
No Matches
ABILITY.cs
Go to the documentation of this file.
1using UnityEngine;
2
3public class ABILITY
4{
5 public const int AI_PlayMusic = 6001;
6
7 public const int AI_Steal = 6011;
8
9 public const int AI_Meditate = 6003;
10
11 public const int ActMoneyDump = 5058;
12
13 public const int ActMoneyThrow = 5057;
14
15 public const int ActMoneySlap = 5056;
16
17 public const int ActRestrain = 5055;
18
19 public const int AI_Bladder = 5054;
20
21 public const int TaskHarvest = 5053;
22
23 public const int ActBash = 5052;
24
25 public const int ActZap = 5051;
26
27 public const int AI_Sleep = 5050;
28
29 public const int AI_OpenLock = 5049;
30
31 public const int ActItem = 5048;
32
33 public const int ActPick = 5047;
34
35 public const int ActInstall = 5046;
36
37 public const int AI_Drink = 5045;
38
39 public const int ActChat = 5044;
40
41 public const int ActQuickCraft = 6012;
42
43 public const int AI_PassTime = 6013;
44
45 public const int AI_SelfHarm = 6015;
46
47 public const int ActRide = 6018;
48
49 public const int ActFear = 6611;
50
51 public const int ActWeaken = 6610;
52
53 public const int ActBloodsuck = 6607;
54
55 public const int ActBurnMana = 6606;
56
57 public const int ActCrySad = 6605;
58
59 public const int ActCryRage = 6604;
60
61 public const int ActNTR = 6603;
62
63 public const int ActDraw = 6602;
64
65 public const int AI_TendAnimal = 5043;
66
67 public const int ActEntangle = 6601;
68
69 public const int ActCrabBreathe = 6500;
70
71 public const int ActRush = 6450;
72
73 public const int ActDuplicate = 6420;
74
75 public const int ActSuicide = 6410;
76
77 public const int ActEscape = 6400;
78
79 public const int ActPray = 6050;
80
81 public const int ActDreamBug = 6020;
82
83 public const int ActParasite = 6019;
84
85 public const int ActCurse = 6600;
86
87 public const int ActKick = 5042;
88
89 public const int AI_Read = 5041;
90
91 public const int ActRanged = 5040;
92
93 public const int TaskTalk = 5017;
94
95 public const int TaskPick = 5018;
96
97 public const int TaskReadBoard = 5019;
98
99 public const int TaskFarm = 5020;
100
101 public const int TaskTrain = 5021;
102
103 public const int TaskSleepOnBed = 5022;
104
105 public const int TaskGoOut = 5023;
106
107 public const int AI_Eat = 5024;
108
109 public const int TaskTame = 5016;
110
111 public const int AI_Grab = 5025;
112
113 public const int GoalSleep = 5027;
114
115 public const int ActReleaseHeld = 5028;
116
117 public const int AI_Offer = 5029;
118
119 public const int AI_ReleaseHeld = 5030;
120
121 public const int AI_Deconstruct = 5031;
122
123 public const int AI_Equip = 5032;
124
125 public const int ActCancelTask = 5033;
126
127 public const int GoalIdle = 5034;
128
129 public const int AI_Haul = 5026;
130
131 public const int ActTouchSleep = 6612;
132
133 public const int TaskAttack = 5015;
134
135 public const int ActAttack = 5013;
136
137 public const int AI_Fish = 5039;
138
139 public const int ActThrow = 5038;
140
141 public const int ActNoItem = 5037;
142
143 public const int TaskMoveInstalled = 5036;
144
145 public const int TaskBuild = 5035;
146
147 public const int ActWait = 5000;
148
149 public const int ActMelee = 5001;
150
151 public const int Melee = 5002;
152
153 public const int TaskPlow = 5014;
154
155 public const int Ranged = 5003;
156
157 public const int Wait = 5005;
158
159 public const int Shoot = 5006;
160
161 public const int Use = 5007;
162
163 public const int General = 5008;
164
165 public const int TaskMine = 5009;
166
167 public const int TaskDig = 5010;
168
169 public const int TaskCut = 5011;
170
171 public const int AI_Goto = 5012;
172
173 public const int Sleep = 5004;
174
175 public const int ActTouchDrown = 6613;
176
177 public const int ActSlime = 6608;
178
179 public const int ActGazeInsane = 6621;
180
181 public const int SongValor = 6752;
182
183 public const int SongEnd = 6753;
184
185 public const int SongPebble = 6754;
186
187 public const int ActManaAbsorb = 6900;
188
189 public const int ActJureHeal = 6901;
190
191 public const int ActLulwyTrick = 6902;
192
193 public const int ActKizuamiTrick = 6903;
194
195 public const int ActHeadpat = 6904;
196
197 public const int breathe_ = 7000;
198
199 public const int SpTransmuteBat = 8793;
200
201 public const int SpTransmuteMimic = 8794;
202
203 public const int ActGazeDim = 6620;
204
205 public const int SpTransmuteHuman = 8796;
206
207 public const int breathe_Fire = 50200;
208
209 public const int SongTulip = 6751;
210
211 public const int breathe_Cold = 50201;
212
213 public const int breathe_Darkness = 50203;
214
215 public const int breathe_Mind = 50204;
216
217 public const int breathe_Poison = 50205;
218
219 public const int breathe_Nether = 50206;
220
221 public const int breathe_Sound = 50207;
222
223 public const int breathe_Nerve = 50208;
224
225 public const int breathe_Holy = 50209;
226
227 public const int breathe_Chaos = 50210;
228
229 public const int breathe_Magic = 50211;
230
231 public const int breathe_Ether = 50212;
232
233 public const int breathe_Acid = 50213;
234
235 public const int breathe_Cut = 50214;
236
237 public const int breathe_Impact = 50215;
238
239 public const int breathe_Void = 50216;
240
241 public const int breathe_Lightning = 50202;
242
243 public const int SongSleep = 6750;
244
245 public const int SpTransmuteShadow = 8795;
246
247 public const int StMama = 6701;
248
249 public const int ActGazeMutation = 6622;
250
251 public const int StManaCost = 6720;
252
253 public const int ActDrainBlood = 6626;
254
255 public const int ActCatHuffing = 6627;
256
257 public const int ActKiss = 6628;
258
259 public const int ActDeepKiss = 6629;
260
261 public const int ActInsult = 6630;
262
263 public const int ActScream = 6631;
264
265 public const int ActFuse = 6632;
266
267 public const int ActStopTime = 6633;
268
269 public const int ActSteal = 6640;
270
271 public const int ActStealFood = 6641;
272
273 public const int ActStealMoney = 6642;
274
275 public const int ActNeckHunt = 6650;
276
277 public const int ActGazeMana = 6623;
278
279 public const int ActThrowPotion = 6661;
280
281 public const int ActSwarm = 6662;
282
283 public const int ActMultiHit = 6663;
284
285 public const int ActBladeStorm = 6664;
286
287 public const int ActBladeStorm2 = 6665;
288
289 public const int ActWhirlwind = 6666;
290
291 public const int ActMissileBarrage = 6667;
292
293 public const int ActMissileBarrage2 = 6668;
294
295 public const int ActDropMine = 6660;
296
297 public const int ActSummonSpecial = 6800;
298
299 public const int ActWombDark = 6801;
300
301 public const int ActDeathSentense = 6802;
302
303 public const int StTaunt = 6700;
304
305 public static readonly int[] IDS = new int[150]
306 {
307 6001, 6011, 6003, 5058, 5057, 5056, 5055, 5054, 5053, 5052,
308 5051, 5050, 5049, 5048, 5047, 5046, 5045, 5044, 6012, 6013,
309 6015, 6018, 6611, 6610, 6607, 6606, 6605, 6604, 6603, 6602,
310 5043, 6601, 6500, 6450, 6420, 6410, 6400, 6050, 6020, 6019,
311 6600, 5042, 5041, 5040, 5017, 5018, 5019, 5020, 5021, 5022,
312 5023, 5024, 5016, 5025, 5027, 5028, 5029, 5030, 5031, 5032,
313 5033, 5034, 5026, 6612, 5015, 5013, 5039, 5038, 5037, 5036,
314 5035, 5000, 5001, 5002, 5014, 5003, 5005, 5006, 5007, 5008,
315 5009, 5010, 5011, 5012, 5004, 6613, 6608, 6621, 6752, 6753,
316 6754, 6900, 6901, 6902, 6903, 6904, 7000, 8793, 8794, 6620,
317 8796, 50200, 6751, 50201, 50203, 50204, 50205, 50206, 50207, 50208,
318 50209, 50210, 50211, 50212, 50213, 50214, 50215, 50216, 50202, 6750,
319 8795, 6701, 6622, 6720, 6626, 6627, 6628, 6629, 6630, 6631,
320 6632, 6633, 6640, 6641, 6642, 6650, 6623, 6661, 6662, 6663,
321 6664, 6665, 6666, 6667, 6668, 6660, 6800, 6801, 6802, 6700
322 };
323}
324public class Ability : Act
325{
326 public override bool ShowBonuses => false;
327
328 public override bool CanPressRepeat => base.source.tag.Contains("repeat");
329
330 public override bool LocalAct => id != 8793;
331
332 public override bool CanLink(ElementContainer owner)
333 {
334 if (owner.Card == null)
335 {
336 return !base.IsGlobalElement;
337 }
338 return false;
339 }
340
341 public override long GetSourceValue(long v, int lv, SourceValueType type)
342 {
343 if (type != SourceValueType.Chara)
344 {
345 return base.GetSourceValue(v, lv, type);
346 }
347 return 10 * (100 + ((long)lv - 1L) * base.source.lvFactor / 10) / 100;
348 }
349
350 public override int GetPower(Card c)
351 {
352 long a = base.Value * 8 + 50;
353 if (!c.IsPC)
354 {
355 a = MathEx.Max(a, (long)c.LV * 6L + 30);
356 if (c.IsPCFactionOrMinion && !base.source.aliasParent.IsEmpty())
357 {
358 a = MathEx.Max(a, (long)c.Evalue(base.source.aliasParent) * 4L + 30);
359 }
360 }
361 a = EClass.curve(a, 400, 100);
362 if (this is Song)
363 {
364 a = a * Mathf.Max(100 + c.Evalue(411) / 3, 1) / 100 * Mathf.Clamp(50 + EClass.curve(c.Evalue(241), 50, 10, 50) * 2, 1, 300) / 100 * (100 + c.Evalue(1294) * 20) / 100;
365 }
366 else if (this is Spell)
367 {
368 a = a * Mathf.Max(100 + c.Evalue(411) - c.Evalue(93), 1) / 100;
369 }
370 else if (this is ActBreathe)
371 {
372 a = a * Mathf.Max(100 + c.Evalue(411), 1) / 100;
373 }
374 if (a > 214748364)
375 {
376 a = 214748364L;
377 }
378 return (int)a;
379 }
380
381 public override void OnChangeValue()
382 {
384 if (card != null && card._IsPC)
385 {
387 }
388 }
389}
SourceValueType
const int Ranged
Definition: ABILITY.cs:155
const int breathe_Holy
Definition: ABILITY.cs:225
const int ActGazeMutation
Definition: ABILITY.cs:249
const int TaskPick
Definition: ABILITY.cs:95
const int ActFear
Definition: ABILITY.cs:49
const int ActBladeStorm
Definition: ABILITY.cs:285
const int ActDeathSentense
Definition: ABILITY.cs:301
static readonly int[] IDS
Definition: ABILITY.cs:305
const int ActDuplicate
Definition: ABILITY.cs:73
const int ActFuse
Definition: ABILITY.cs:265
const int ActKizuamiTrick
Definition: ABILITY.cs:193
const int TaskTalk
Definition: ABILITY.cs:93
const int TaskSleepOnBed
Definition: ABILITY.cs:103
const int SongEnd
Definition: ABILITY.cs:183
const int ActDropMine
Definition: ABILITY.cs:295
const int StMama
Definition: ABILITY.cs:247
const int TaskGoOut
Definition: ABILITY.cs:105
const int breathe_Impact
Definition: ABILITY.cs:237
const int SpTransmuteMimic
Definition: ABILITY.cs:201
const int breathe_Magic
Definition: ABILITY.cs:229
const int breathe_Acid
Definition: ABILITY.cs:233
const int General
Definition: ABILITY.cs:163
const int ActAttack
Definition: ABILITY.cs:135
const int Sleep
Definition: ABILITY.cs:173
const int TaskFarm
Definition: ABILITY.cs:99
const int ActTouchDrown
Definition: ABILITY.cs:175
const int breathe_Poison
Definition: ABILITY.cs:217
const int SongSleep
Definition: ABILITY.cs:243
const int SongValor
Definition: ABILITY.cs:181
const int ActCatHuffing
Definition: ABILITY.cs:255
const int TaskAttack
Definition: ABILITY.cs:133
const int breathe_Darkness
Definition: ABILITY.cs:213
const int breathe_Nether
Definition: ABILITY.cs:219
const int breathe_Void
Definition: ABILITY.cs:239
const int ActWombDark
Definition: ABILITY.cs:299
const int ActStopTime
Definition: ABILITY.cs:267
const int Shoot
Definition: ABILITY.cs:159
const int ActBladeStorm2
Definition: ABILITY.cs:287
const int ActGazeDim
Definition: ABILITY.cs:203
const int breathe_Sound
Definition: ABILITY.cs:221
const int breathe_Fire
Definition: ABILITY.cs:207
const int ActCrabBreathe
Definition: ABILITY.cs:69
const int SongPebble
Definition: ABILITY.cs:185
const int ActEntangle
Definition: ABILITY.cs:67
const int ActEscape
Definition: ABILITY.cs:77
const int SpTransmuteBat
Definition: ABILITY.cs:199
const int ActScream
Definition: ABILITY.cs:263
const int StTaunt
Definition: ABILITY.cs:303
const int ActNeckHunt
Definition: ABILITY.cs:275
const int ActJureHeal
Definition: ABILITY.cs:189
const int breathe_Mind
Definition: ABILITY.cs:215
const int breathe_
Definition: ABILITY.cs:197
const int StManaCost
Definition: ABILITY.cs:251
const int TaskTame
Definition: ABILITY.cs:109
const int breathe_Cut
Definition: ABILITY.cs:235
const int ActLulwyTrick
Definition: ABILITY.cs:191
const int ActInstall
Definition: ABILITY.cs:35
const int ActInsult
Definition: ABILITY.cs:261
const int ActHeadpat
Definition: ABILITY.cs:195
const int breathe_Lightning
Definition: ABILITY.cs:241
const int ActStealFood
Definition: ABILITY.cs:271
const int ActCurse
Definition: ABILITY.cs:85
const int ActManaAbsorb
Definition: ABILITY.cs:187
const int SpTransmuteHuman
Definition: ABILITY.cs:205
const int Use
Definition: ABILITY.cs:161
const int ActStealMoney
Definition: ABILITY.cs:273
const int breathe_Ether
Definition: ABILITY.cs:231
const int ActCancelTask
Definition: ABILITY.cs:125
const int ActSummonSpecial
Definition: ABILITY.cs:297
const int ActDraw
Definition: ABILITY.cs:63
const int ActGazeInsane
Definition: ABILITY.cs:179
const int Melee
Definition: ABILITY.cs:151
const int breathe_Cold
Definition: ABILITY.cs:211
const int ActThrowPotion
Definition: ABILITY.cs:279
const int ActSteal
Definition: ABILITY.cs:269
const int breathe_Nerve
Definition: ABILITY.cs:223
const int ActReleaseHeld
Definition: ABILITY.cs:115
const int ActGazeMana
Definition: ABILITY.cs:277
const int ActTouchSleep
Definition: ABILITY.cs:131
const int TaskReadBoard
Definition: ABILITY.cs:97
const int ActBurnMana
Definition: ABILITY.cs:55
const int ActDrainBlood
Definition: ABILITY.cs:253
const int SongTulip
Definition: ABILITY.cs:209
const int ActSuicide
Definition: ABILITY.cs:75
const int ActMultiHit
Definition: ABILITY.cs:283
const int TaskTrain
Definition: ABILITY.cs:101
const int ActWeaken
Definition: ABILITY.cs:51
const int SpTransmuteShadow
Definition: ABILITY.cs:245
const int breathe_Chaos
Definition: ABILITY.cs:227
Definition: AI_Eat.cs:5
override long GetSourceValue(long v, int lv, SourceValueType type)
Definition: ABILITY.cs:341
override void OnChangeValue()
Definition: ABILITY.cs:381
override bool ShowBonuses
Definition: ABILITY.cs:326
override bool CanPressRepeat
Definition: ABILITY.cs:328
override bool LocalAct
Definition: ABILITY.cs:330
override bool CanLink(ElementContainer owner)
Definition: ABILITY.cs:332
override int GetPower(Card c)
Definition: ABILITY.cs:350
Definition: ActNTR.cs:2
Definition: ActZap.cs:2
Definition: ACT.cs:62
Definition: Card.cs:11
bool IsPCFactionOrMinion
Definition: Card.cs:2342
virtual bool IsPC
Definition: Card.cs:2197
int Evalue(int ele)
Definition: Card.cs:2704
int LV
Definition: Card.cs:389
Definition: EClass.cs:6
static int curve(long _a, int start, int step, int rate=75)
Definition: EClass.cs:69
virtual Card Card
ElementContainer owner
Definition: ELEMENT.cs:275
static void SetDirty(Element a)
Definition: MathEx.cs:2
static long Max(long a, long b)
Definition: MathEx.cs:64
Definition: Song.cs:2
Definition: SPELL.cs:710
Definition: Wait.cs:2