import { Injectable } from '@angular/core';

@Injectable({
  providedIn: 'root',
})
export class SubclassService {
  public getSubclassDetails(subclass: string): any {
    switch (subclass) {
      case 'Echo Knight':
        return this.echoKnight;
      case 'PeaceDomain':
        return this.peaceDomain;
      default:
        return null;
    }
  }

  private peaceDomain: any = {
    title: 'Peace Domain',
    description: `
      The balm of peace thrives at the heart of healthy communities, between friendly nations, and in the souls of the kindhearted. The gods of peace inspire people of all sorts to resolve conflict and to stand up against those forces that try to prevent peace from flourishing. See the Peace Deities table for a list of some of the gods associated with this domain.

      Clerics of the Peace Domain preside over the signing of treaties, and they are often asked to arbitrate in disputes. These clerics' blessings draw people together and help them shoulder one another's burdens, and the clerics' magic aids those who are driven to fight for the way of peace.
    `,
    features: [
      {
        name: 'Implement of Peace',
        level: 1,
        description: `
          When you choose this domain at 1st level, you gain proficiency in the Insight, Performance, or Persuasion skill (your choice).
        `,
      },
      {
        name: 'Emboldening Bond',
        level: 1,
        description: `
          Starting at 1st level, you can forge an empowering bond among people who are at peace with one another. As an action, you choose a number of willing creatures within 30 feet of you (this can include yourself) equal to your proficiency bonus. You create a magical bond among them for 10 minutes or until you use this feature again. While any bonded creature is within 30 feet of another, the creature can roll a d4 and add the number rolled to an attack roll, an ability check, or a saving throw it makes. Each creature can add the d4 no more than once per turn.

          You can use this feature a number of times equal to your proficiency bonus, and you regain all expended uses when you finish a long rest.
        `,
      },
      {
        name: 'Channel Divinity: Balm of Peace',
        level: 2,
        description: `
          Starting at 2nd level, you can use your Channel Divinity to make your very presence a soothing balm. As an action, you can move up to your speed, without provoking opportunity attacks, and when you move within 5 feet of any other creature during this action, you can restore a number of hit points to that creature equal to 2d6 + your Wisdom modifier (minimum of 1 hit point). A creature can receive this healing only once whenever you take this action.
        `,
      },
    ],
  };
  private echoKnight: any = {
    title: 'Echo Knight',
    description: `
     A mysterious and feared frontline warrior of the Kryn Dynasty, the Echo Knight has mastered the art of using dunamis to summon the fading shades of unrealized timelines to aid them in battle. Surrounded by echoes of their own might, they charge into the fray as a cycling swarm of shadows and strikes.
    `,
    features: [
      {
        name: 'Manifest Echo',
        level: 3,
        description: `
          At 3rd level, you can use a bonus action to magically manifest an echo of yourself in an unoccupied space you can see within 15 feet of you. This echo is a magical, translucent, gray image of you that lasts until it is destroyed, until you dismiss it as a bonus action, until you manifest another echo, or until you're incapacitated.

          Your echo has AC 14 + your proficiency bonus, 1 hit point, and immunity to all conditions. If it has to make a saving throw, it uses your saving throw bonus for the roll. It is the same size as you, and it occupies its space. On your turn, you can mentally command the echo to move up to 30 feet in any direction (no action required). If your echo is ever more than 30 feet from you at the end of your turn, it is destroyed.

          - As a bonus action, you can teleport, magically swapping places with your echo at a cost of 15 feet of your movement, regardless of the distance between the two of you.
          - When you take the Attack action on your turn, any attack you make with that action can originate from your space or the echo's space. You make this choice for each attack.
          - When a creature that you can see within 5 feet of your echo moves at least 5 feet away from it, you can use your reaction to make an opportunity attack against that creature as if you were in the echo's space.
        `,
      },
      {
        name: 'Unleash Incarnation',
        level: 3,
        description: `
          At 3rd level, you can heighten your echo's fury. Whenever you take the Attack action, you can make one additional melee attack from the echo's position.

          You can use this feature a number of times equal to your Constitution modifier (a minimum of once). You regain all expended uses when you finish a long rest.
        `,
      },
      {
        name: 'Echo Avatar',
        level: 7,
        description: `
          Starting at 7th level, you can temporarily transfer your consciousness to your echo. As an action, you can see through your echo's eyes and hear through its ears. During this time, you are deafened and blinded. You can sustain this effect for up to 10 minutes, and you can end it at any time (requires no action). While your echo is being used in this way, it can be up to 1,000 feet away from you without being destroyed.
        `,
      },
      {
        name: 'Shadow Martyr',
        level: 10,
        description: `
          Starting at 10th level, you can make your echo throw itself in front of an attack directed at another creature that you can see. Before the attack roll is made, you can use your reaction to teleport the echo to an unoccupied space within 5 feet of the targeted creature. The attack roll that triggered the reaction is instead made against your echo.

          Once you use this feature, you can't use it again until you finish a short or long rest.
        `,
      },
      {
        name: 'Reclaim Potential',
        level: 15,
        description: `
          By 15th level, you've learned to absorb the fleeting magic of your echo. When an echo of yours is destroyed by taking damage, you can gain a number of temporary hit points equal to 2d6 + your Constitution modifier, provided you don't already have temporary hit points.

          You can use this feature a number of times equal to your Constitution modifier (a minimum of once). You regain all expended uses when you finish a long rest.
        `,
      },
      {
        name: 'Legion of One',
        level: 15,
        description: `
          At 18th level, you can use a bonus action to create two echos with your Manifest Echo feature, and these echoes can co-exist. If you try to create a third echo, the previous two echoes are destroyed. Anything you can do from one echo's position can be done from the other's instead.

          In addition, when you roll initiative and have no uses of your Unleash Incarnation feature left, you regain one use of that feature.
        `,
      },
    ],
  };
}
