This repository was archived by the owner on Jul 21, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathteam.lks
More file actions
63 lines (60 loc) · 2.02 KB
/
team.lks
File metadata and controls
63 lines (60 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
include('chip');
include('cell');
var alliesLife = [];
function getAllyToHeal(){
debugC("getAllyToHeal", COLOR_BLUE);
var allies = getAliveAllies();
var alliesToHeal = [];
for(var key : var ally in allies){
var distance = getPathLength(getCell(), getCell(ally));
var percentageOfAllyLife = (getLife(ally) * 100 / getTotalLife(ally));
if(ally !== getLeek() && !isSummon(ally)
&& distance < getMP() && percentageOfAllyLife < 50){
push(alliesToHeal, ally);
}
}
return arraySort(
alliesToHeal,
function (a, b) {
return getLife(a) - getLife(b);
}
)[0];
}
function healWoundedAlly(){
debugC("healWoundedAlly", COLOR_BLUE);
var ally = getAllyToHeal();
if(null !== ally){
debugC('emergency : ' + getName(ally), COLOR_GREEN);
var chips = getChips();
var chipsHeal = [];
for (var i = 0; i < count(chips); i++) {
var e = getChipEffects(chips[i]);
if (e[0][0] == EFFECT_HEAL) {
chipsHeal[count(chipsHeal)] = chips[i];
}
}
var chipHeal = bestChip(chipsHeal, EFFECT_HEAL);
while(!isEmpty(chipsHeal) && null !== chipHeal
&& getTP() >= getChipCost(chipHeal)){
if(canUseChip(chipHeal, ally)){
useChip(chipHeal, ally);
removeElement(chipsHeal, chipHeal);
chipHeal = bestChip(chipsHeal, EFFECT_HEAL);
}else{
var closest = getClosestCellToUse(chipHeal, ally);
debugW('closest : '+closest);
if(null !== closest){
var pathLength = getPathLength(getCell(), closest);
debugW('path : '+pathLength);
if(null !== pathLength && pathLength <= getMP()){
moveToward(ally, pathLength);
}else{
return;
}
}else{
return;
}
}
}
}
}