summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschneefux <schneefux+commit@schneefux.xyz>2017-11-05 14:49:12 +0100
committerschneefux <schneefux+commit@schneefux.xyz>2017-11-05 14:49:12 +0100
commit5c2609634a31611de9532cbc8125c0cd446120c5 (patch)
treeb3553dd832f1c01a77db9c8ede271dcda5a3bbd8
parenta30dfe231baf3b1e156e1cb79a7ee6e94bba1b29 (diff)
downloadshrinker-5c2609634a31611de9532cbc8125c0cd446120c5.tar.gz
shrinker-5c2609634a31611de9532cbc8125c0cd446120c5.zip
add heal to ally, vampirism
-rw-r--r--worker.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/worker.js b/worker.js
index 27e1080..dd50d39 100644
--- a/worker.js
+++ b/worker.js
@@ -305,6 +305,18 @@ amqp.connect(RABBITMQ_URI).then(async (rabbit) => {
t.target = participants.filter((p) =>
p.actor == t.payload.TargetActor
&& p.team == t.payload.TargetTeam)[0];
+ // vampirism actor (since 2.10)
+ if (t.type == "Vampirism"
+ && t.payload.IsHero == 1)
+ t.actor = participants.filter((p) =>
+ p.actor == t.payload.Actor
+ && p.team == t.payload.Team)[0];
+ // vampirism target (since 2.10)
+ if (t.type == "Vampirism"
+ && t.payload.TargetIsHero == 1)
+ t.target = participants.filter((p) =>
+ p.actor == t.payload.TargetActor
+ && p.team == t.payload.TargetTeam)[0];
});
const participants_phase = participants.map((p) => { return {
@@ -761,6 +773,24 @@ amqp.connect(RABBITMQ_URI).then(async (rabbit) => {
? acc + ev.payload.Healed
: acc
, 0),
+ // theoretical heal from actor to ally
+ heal_heal_ally: telemetry.data.reduce((acc, ev) =>
+ ev.actor == p
+ && ev.target != p
+ && ev.type == "HealTarget"
+ && ev.payload.TargetIsHero == 1
+ ? acc + ev.payload.Healed
+ : acc
+ , 0),
+ // actual heal from actor to ally
+ heal_healed_ally: telemetry.data.reduce((acc, ev) =>
+ ev.actor == p
+ && ev.target != p
+ && ev.type == "HealTarget"
+ && ev.payload.TargetIsHero == 1
+ ? acc + ev.payload.Healed
+ : acc
+ , 0),
// theoretical heal from actor to other
heal_heal_other: telemetry.data.reduce((acc, ev) =>
ev.actor == p
@@ -793,6 +823,31 @@ amqp.connect(RABBITMQ_URI).then(async (rabbit) => {
? acc + ev.payload.Healed
: acc
, 0),
+ // theoretical heal received from ally
+ heal_rcvd_heal_ally: telemetry.data.reduce((acc, ev) =>
+ ev.target == p
+ && ev.actor != p
+ && ev.type == "HealTarget"
+ && ev.payload.IsHero == 1
+ ? acc + ev.payload.Heal
+ : acc
+ , 0),
+ // actual heal received from hero
+ heal_rcvd_healed_ally: telemetry.data.reduce((acc, ev) =>
+ ev.target == p
+ && ev.actor != p
+ && ev.type == "HealTarget"
+ && ev.payload.IsHero == 1
+ ? acc + ev.payload.Healed
+ : acc
+ , 0),
+ // lifesteal
+ heal_rcvd_healed_vamp: telemetry.data.reduce((acc, ev) =>
+ ev.actor == p
+ && ev.type == "Vampirism"
+ ? acc + ev.payload.Vamp
+ : acc
+ , 0),
// theoretical heal received from minion
heal_rcvd_heal_other: telemetry.data.reduce((acc, ev) =>
ev.target == p