{"action":"created","comment":{"url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/comments/159143527","pull_request_review_id":86050348,"id":159143527,"diff_hunk":"@@ -0,0 +1,163 @@\n+import React from 'react';\n+import SPELLS from 'common/SPELLS';\n+import SpellLink from 'common/SpellLink';\n+import SpellIcon from 'common/SpellIcon';\n+import Wrapper from 'common/Wrapper';\n+import { formatMilliseconds, formatPercentage } from 'common/format';\n+import StatisticBox, { STATISTIC_ORDER } from 'Main/StatisticBox';\n+import Combatants from 'Parser/Core/Modules/Combatants';\n+import Analyzer from 'Parser/Core/Analyzer';\n+import AbilityTracker from 'Parser/Core/Modules/AbilityTracker';\n+import EnemyInstances, { encodeTargetString } from 'Parser/Core/Modules/EnemyInstances';\n+\n+const debug = false;\n+\n+const GUARANTEE_CRIT_SPELLS = [\n+  SPELLS.FIRE_BLAST.id,\n+  SPELLS.PHOENIXS_FLAMES.id,\n+];\n+\n+class HeatingUp extends Analyzer {\n+  static dependencies = {\n+    combatants: Combatants,\n+    abilityTracker: AbilityTracker,\n+    enemies: EnemyInstances,\n+  };\n+\n+  fireBlastWithoutHeatingUp = 0;\n+  phoenixFlamesWithoutHeatingUp = 0;\n+  fireBlastWithHotStreak = 0;\n+  phoenixFlamesWithHotStreak = 0;\n+  targetId = 0;\n+\n+  on_byPlayer_cast(event) {\n+    const spellId = event.ability.guid;\n+    if (spellId !== SPELLS.PHOENIXS_FLAMES.id) {\n+      return;\n+    }\n+    this.targetId = encodeTargetString(event.targetID, event.targetInstance);\n+  }\n+\n+  on_byPlayer_damage(event) {\n+    const spellId = event.ability.guid;\n+    const damageTarget = encodeTargetString(event.targetID, event.targetInstance);\n+    if (!GUARANTEE_CRIT_SPELLS.includes(spellId) || (spellId === SPELLS.PHOENIXS_FLAMES.id && (this.targetId !== damageTarget))) {\n+      return;\n+    }\n+    const hasHeatingUp = this.combatants.selected.hasBuff(SPELLS.HEATING_UP.id);\n+    const hasHotStreak = this.combatants.selected.hasBuff(SPELLS.HOT_STREAK.id);\n+\n+    switch (spellId) {\n+      case SPELLS.FIRE_BLAST.id:\n+        if (hasHotStreak) {\n+          this.fireBlastWithHotStreak += 1;\n+          debug && console.log(\"Fire Blast with Hot Streak @ \" + formatMilliseconds(event.timestamp - this.owner.fight.start_time));\n+        }\n+        if (!hasHeatingUp && !hasHotStreak) {\n+          this.fireBlastWithoutHeatingUp += 1;\n+          debug && console.log(\"Fire Blast without Heating Up @ \" + formatMilliseconds(event.timestamp - this.owner.fight.start_time));\n+        }\n+        break;\n+      case SPELLS.PHOENIXS_FLAMES.id:\n+        if (hasHotStreak) {\n+          this.phoenixFlamesWithHotStreak += 1;\n+          debug && console.log(\"Phoenix Flames with Hot Streak @ \" + formatMilliseconds(event.timestamp - this.owner.fight.start_time));\n+        }\n+        if (!hasHeatingUp && !hasHotStreak) {","path":"src/Parser/Mage/Fire/Modules/Features/HeatingUp.js","position":66,"original_position":66,"commit_id":"69d5b22323eb65f9be3ee23e47f760ea56d4863d","original_commit_id":"69d5b22323eb65f9be3ee23e47f760ea56d4863d","user":{"login":"kfinch","id":7143486,"avatar_url":"https://avatars3.githubusercontent.com/u/7143486?v=4","gravatar_id":"","url":"https://api.github.com/users/kfinch","html_url":"https://github.com/kfinch","followers_url":"https://api.github.com/users/kfinch/followers","following_url":"https://api.github.com/users/kfinch/following{/other_user}","gists_url":"https://api.github.com/users/kfinch/gists{/gist_id}","starred_url":"https://api.github.com/users/kfinch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kfinch/subscriptions","organizations_url":"https://api.github.com/users/kfinch/orgs","repos_url":"https://api.github.com/users/kfinch/repos","events_url":"https://api.github.com/users/kfinch/events{/privacy}","received_events_url":"https://api.github.com/users/kfinch/received_events","type":"User","site_admin":false},"body":"Could be `else if (!hasHeatingUp) {` because the `else` ensures you don't have hot streak","created_at":"2017-12-31T16:34:30Z","updated_at":"2017-12-31T16:37:21Z","html_url":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108#discussion_r159143527","pull_request_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/comments/159143527"},"html":{"href":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108#discussion_r159143527"},"pull_request":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108"}}},"pull_request":{"url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108","id":160598410,"html_url":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108","diff_url":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108.diff","patch_url":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108.patch","issue_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/1108","number":1108,"state":"open","locked":false,"title":"[Fire Mage] Add Heating Up Module","user":{"login":"Sharrq","id":1304554,"avatar_url":"https://avatars2.githubusercontent.com/u/1304554?v=4","gravatar_id":"","url":"https://api.github.com/users/Sharrq","html_url":"https://github.com/Sharrq","followers_url":"https://api.github.com/users/Sharrq/followers","following_url":"https://api.github.com/users/Sharrq/following{/other_user}","gists_url":"https://api.github.com/users/Sharrq/gists{/gist_id}","starred_url":"https://api.github.com/users/Sharrq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Sharrq/subscriptions","organizations_url":"https://api.github.com/users/Sharrq/orgs","repos_url":"https://api.github.com/users/Sharrq/repos","events_url":"https://api.github.com/users/Sharrq/events{/privacy}","received_events_url":"https://api.github.com/users/Sharrq/received_events","type":"User","site_admin":false},"body":"Add module to check Utilization of Heating Up to ensure that the player is not casting Fire Blast or Phoenix Flames while Hot Streak is up or when they have neither Heating Up or Hot Streak.","created_at":"2017-12-30T19:24:43Z","updated_at":"2017-12-31T16:37:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a37a64ffa2111275e6c1030040ed74df6ac619dd","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108/commits","review_comments_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108/comments","review_comment_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/comments{/number}","comments_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/1108/comments","statuses_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/statuses/69d5b22323eb65f9be3ee23e47f760ea56d4863d","head":{"label":"Sharrq:HeatingUp","ref":"HeatingUp","sha":"69d5b22323eb65f9be3ee23e47f760ea56d4863d","user":{"login":"Sharrq","id":1304554,"avatar_url":"https://avatars2.githubusercontent.com/u/1304554?v=4","gravatar_id":"","url":"https://api.github.com/users/Sharrq","html_url":"https://github.com/Sharrq","followers_url":"https://api.github.com/users/Sharrq/followers","following_url":"https://api.github.com/users/Sharrq/following{/other_user}","gists_url":"https://api.github.com/users/Sharrq/gists{/gist_id}","starred_url":"https://api.github.com/users/Sharrq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Sharrq/subscriptions","organizations_url":"https://api.github.com/users/Sharrq/orgs","repos_url":"https://api.github.com/users/Sharrq/repos","events_url":"https://api.github.com/users/Sharrq/events{/privacy}","received_events_url":"https://api.github.com/users/Sharrq/received_events","type":"User","site_admin":false},"repo":{"id":106206754,"name":"WoWAnalyzer","full_name":"Sharrq/WoWAnalyzer","owner":{"login":"Sharrq","id":1304554,"avatar_url":"https://avatars2.githubusercontent.com/u/1304554?v=4","gravatar_id":"","url":"https://api.github.com/users/Sharrq","html_url":"https://github.com/Sharrq","followers_url":"https://api.github.com/users/Sharrq/followers","following_url":"https://api.github.com/users/Sharrq/following{/other_user}","gists_url":"https://api.github.com/users/Sharrq/gists{/gist_id}","starred_url":"https://api.github.com/users/Sharrq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Sharrq/subscriptions","organizations_url":"https://api.github.com/users/Sharrq/orgs","repos_url":"https://api.github.com/users/Sharrq/repos","events_url":"https://api.github.com/users/Sharrq/events{/privacy}","received_events_url":"https://api.github.com/users/Sharrq/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Sharrq/WoWAnalyzer","description":"WoW Analyzer is a comprehensive tool for analyzing your performance based on important metrics for your spec using a Warcraft Logs report. Built by community contributors; PRs welcome!","fork":true,"url":"https://api.github.com/repos/Sharrq/WoWAnalyzer","forks_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/forks","keys_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/teams","hooks_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/hooks","issue_events_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/issues/events{/number}","events_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/events","assignees_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/assignees{/user}","branches_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/branches{/branch}","tags_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/tags","blobs_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/git/refs{/sha}","trees_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/statuses/{sha}","languages_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/languages","stargazers_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/stargazers","contributors_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/contributors","subscribers_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/subscribers","subscription_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/subscription","commits_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/commits{/sha}","git_commits_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/git/commits{/sha}","comments_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/comments{/number}","issue_comment_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/issues/comments{/number}","contents_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/contents/{+path}","compare_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/merges","archive_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/downloads","issues_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/issues{/number}","pulls_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/pulls{/number}","milestones_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/milestones{/number}","notifications_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/labels{/name}","releases_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/releases{/id}","deployments_url":"https://api.github.com/repos/Sharrq/WoWAnalyzer/deployments","created_at":"2017-10-08T20:15:07Z","updated_at":"2017-10-08T20:15:11Z","pushed_at":"2017-12-30T19:24:37Z","git_url":"git://github.com/Sharrq/WoWAnalyzer.git","ssh_url":"git@github.com:Sharrq/WoWAnalyzer.git","clone_url":"https://github.com/Sharrq/WoWAnalyzer.git","svn_url":"https://github.com/Sharrq/WoWAnalyzer","homepage":"http://wowanalyzer.com/","size":69152,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"WoWAnalyzer:master","ref":"master","sha":"771148f760cc36f9d8d525a70a5b36beb509cf75","user":{"login":"WoWAnalyzer","id":32273378,"avatar_url":"https://avatars2.githubusercontent.com/u/32273378?v=4","gravatar_id":"","url":"https://api.github.com/users/WoWAnalyzer","html_url":"https://github.com/WoWAnalyzer","followers_url":"https://api.github.com/users/WoWAnalyzer/followers","following_url":"https://api.github.com/users/WoWAnalyzer/following{/other_user}","gists_url":"https://api.github.com/users/WoWAnalyzer/gists{/gist_id}","starred_url":"https://api.github.com/users/WoWAnalyzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WoWAnalyzer/subscriptions","organizations_url":"https://api.github.com/users/WoWAnalyzer/orgs","repos_url":"https://api.github.com/users/WoWAnalyzer/repos","events_url":"https://api.github.com/users/WoWAnalyzer/events{/privacy}","received_events_url":"https://api.github.com/users/WoWAnalyzer/received_events","type":"Organization","site_admin":false},"repo":{"id":80472692,"name":"WoWAnalyzer","full_name":"WoWAnalyzer/WoWAnalyzer","owner":{"login":"WoWAnalyzer","id":32273378,"avatar_url":"https://avatars2.githubusercontent.com/u/32273378?v=4","gravatar_id":"","url":"https://api.github.com/users/WoWAnalyzer","html_url":"https://github.com/WoWAnalyzer","followers_url":"https://api.github.com/users/WoWAnalyzer/followers","following_url":"https://api.github.com/users/WoWAnalyzer/following{/other_user}","gists_url":"https://api.github.com/users/WoWAnalyzer/gists{/gist_id}","starred_url":"https://api.github.com/users/WoWAnalyzer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WoWAnalyzer/subscriptions","organizations_url":"https://api.github.com/users/WoWAnalyzer/orgs","repos_url":"https://api.github.com/users/WoWAnalyzer/repos","events_url":"https://api.github.com/users/WoWAnalyzer/events{/privacy}","received_events_url":"https://api.github.com/users/WoWAnalyzer/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/WoWAnalyzer/WoWAnalyzer","description":"WoW Analyzer is a comprehensive tool for analyzing your performance based on important metrics for your spec using a Warcraft Logs report. Built by community contributors; PRs welcome!","fork":false,"url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer","forks_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/forks","keys_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/keys{/key_id}","collaborators_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/teams","hooks_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/hooks","issue_events_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/events{/number}","events_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/events","assignees_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/assignees{/user}","branches_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/branches{/branch}","tags_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/tags","blobs_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/git/refs{/sha}","trees_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/git/trees{/sha}","statuses_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/statuses/{sha}","languages_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/languages","stargazers_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/stargazers","contributors_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/contributors","subscribers_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/subscribers","subscription_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/subscription","commits_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/commits{/sha}","git_commits_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/git/commits{/sha}","comments_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/comments{/number}","issue_comment_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/comments{/number}","contents_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/contents/{+path}","compare_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/compare/{base}...{head}","merges_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/merges","archive_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/downloads","issues_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues{/number}","pulls_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls{/number}","milestones_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/milestones{/number}","notifications_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/labels{/name}","releases_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/releases{/id}","deployments_url":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/deployments","created_at":"2017-01-30T23:02:17Z","updated_at":"2017-12-31T13:01:46Z","pushed_at":"2017-12-31T16:18:36Z","git_url":"git://github.com/WoWAnalyzer/WoWAnalyzer.git","ssh_url":"git@github.com:WoWAnalyzer/WoWAnalyzer.git","clone_url":"https://github.com/WoWAnalyzer/WoWAnalyzer.git","svn_url":"https://github.com/WoWAnalyzer/WoWAnalyzer","homepage":"http://wowanalyzer.com/","size":69256,"stargazers_count":93,"watchers_count":93,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":143,"mirror_url":null,"archived":false,"open_issues_count":135,"license":{"key":"agpl-3.0","name":"GNU Affero General Public License v3.0","spdx_id":"AGPL-3.0","url":"https://api.github.com/licenses/agpl-3.0"},"forks":143,"open_issues":135,"watchers":93,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108"},"html":{"href":"https://github.com/WoWAnalyzer/WoWAnalyzer/pull/1108"},"issue":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/1108"},"comments":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/issues/1108/comments"},"review_comments":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108/comments"},"review_comment":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/pulls/1108/commits"},"statuses":{"href":"https://api.github.com/repos/WoWAnalyzer/WoWAnalyzer/statuses/69d5b22323eb65f9be3ee23e47f760ea56d4863d"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"kfinch"}}