()
| 443 | } |
| 444 | |
| 445 | heroes () { |
| 446 | const heroes = (this.get('purchased')?.heroes || []).concat([ |
| 447 | // Free CodeCombat heroes |
| 448 | ThangTypeConstants.heroes.captain, |
| 449 | ThangTypeConstants.heroes.knight, |
| 450 | ThangTypeConstants.heroes.champion, |
| 451 | ThangTypeConstants.heroes.duelist, |
| 452 | // Free CodeCombat Junior heroes |
| 453 | ThangTypeConstants.heroes['wolf-pup-hero'], |
| 454 | ThangTypeConstants.heroes['cougar-hero'], |
| 455 | ThangTypeConstants.heroes['polar-bear-cub-hero'], |
| 456 | ThangTypeConstants.heroes['frog-hero'], |
| 457 | ThangTypeConstants.heroes['turtle-hero'], |
| 458 | ThangTypeConstants.heroes['blue-fox-hero'], |
| 459 | ThangTypeConstants.heroes['panther-cub-hero'], |
| 460 | ThangTypeConstants.heroes['brown-rat-hero'], |
| 461 | ThangTypeConstants.heroes['duck-hero'], |
| 462 | ThangTypeConstants.heroes['tiger-cub-hero'], |
| 463 | ]) |
| 464 | if (window.serverConfig.codeNinjas) { heroes.push(ThangTypeConstants.heroes['code-ninja']) } |
| 465 | for (const clanHero of utils.clanHeroes) { |
| 466 | if ((this.get('clans') || []).includes(clanHero.clanId)) { |
| 467 | heroes.push(clanHero.thangTypeOriginal) |
| 468 | } |
| 469 | } |
| 470 | return heroes |
| 471 | } |
| 472 | |
| 473 | items () { |
| 474 | let left, left1 |
no test coverage detected