full-spellcard.component.html 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <div class="full-spellcard-container">
  2. <div class="full-spellcard">
  3. <h2 style="text-align: center; margin-top: 1rem">{{ spell.german }}</h2>
  4. <table class="table table-striped" style="height: 20rem; overflow: auto">
  5. <thead>
  6. <tr>
  7. <th scope="col">Property</th>
  8. <th scope="col">Value</th>
  9. </tr>
  10. </thead>
  11. <tbody>
  12. <tr>
  13. <td>Komponenten:</td>
  14. <td>
  15. @if(spell.needsVerbal){Verbal} @if(spell.needsSomatic){, Somatic}
  16. @if(spell.needsMaterial){, Material}
  17. </td>
  18. </tr>
  19. <!-- <tr>
  20. <td>Benötigt Geste</td>
  21. <td>{{ spell.needsSomatic }}</td>
  22. </tr>
  23. <tr>
  24. <td>Benötigt materielle Komponente</td>
  25. <td>{{ spell.needsMaterial }}</td>
  26. </tr> -->
  27. <tr>
  28. <td>Stufe</td>
  29. <td>{{ spell.level }}</td>
  30. </tr>
  31. <tr>
  32. <td>Kosten</td>
  33. <td>{{ spell.cost }}</td>
  34. </tr>
  35. <tr>
  36. <td>Kann als Ritual gewirkt werden</td>
  37. <td>{{ spell.canRitual }}</td>
  38. </tr>
  39. <tr>
  40. <td>Wirkungsdauer</td>
  41. <td>{{ spell.duration }}</td>
  42. </tr>
  43. <tr></tr>
  44. <tr>
  45. <td>Benötigt Konzentration</td>
  46. <td>{{ spell.needsConcentration }}</td>
  47. </tr>
  48. <tr>
  49. <td>Schule</td>
  50. <td>{{ spell.school }}</td>
  51. </tr>
  52. <tr>
  53. <td>Reichweite</td>
  54. @if (spell.isRanged){
  55. <td>{{ spell.range }}</td>
  56. } @else {
  57. <td>Berührung</td>
  58. }
  59. </tr>
  60. @if (spell.hasAreaOfEffect){
  61. <tr>
  62. <td>Flächeneffekt</td>
  63. <td>{{ spell.areaOfEffectType }}</td>
  64. </tr>
  65. <tr>
  66. <td>Radius</td>
  67. <td>{{ spell.radius }}</td>
  68. </tr>
  69. } @if (spell.needsAttackRoll){
  70. <tr>
  71. <td>Benötigt Angriffswurf</td>
  72. <td>{{ spell.needsAttackRoll }}</td>
  73. </tr>
  74. } @if (spell.needsSavingThrow){
  75. <tr>
  76. <td>Benötigt Rettungswurf</td>
  77. <td>{{ spell.needsSavingThrow }}</td>
  78. </tr>
  79. <tr>
  80. <td>Rettungswurfattribut</td>
  81. <td>{{ spell.savingThrowAttribute }}</td>
  82. </tr>
  83. } @if (spell.doesDamage){
  84. <tr>
  85. <td>Schaden</td>
  86. <td>
  87. @for(damage of spell.damage; track damage){
  88. {{ damage.diceNumber }} {{ damage.diceType }}
  89. {{ damage.damageType }} @if (damage.additionalDamage){ +
  90. {{ damage.additionalDamage }}}
  91. <br />
  92. }
  93. </td>
  94. </tr>
  95. } @if (spell.doesHeal){
  96. <tr>
  97. <td>Heilung</td>
  98. <td>
  99. {{ spell.heal.diceNumber }} {{ spell.heal.diceType }} @if
  100. (spell.heal.additionalHeal){ + {{ spell.heal.additionalHeal }}}
  101. </td>
  102. </tr>
  103. }
  104. <h3>Beschreibung</h3>
  105. <div [innerHTML]="spell.description_de"></div>
  106. </tbody>
  107. </table>
  108. </div>
  109. <div class="delete-row">
  110. @if(isFromDashboard){
  111. <button class="delete-button" (click)="remove()">Entfernen</button>
  112. }@else {
  113. <!-- Add to favorites -->
  114. <button
  115. [class]="alreadyInFavorites ? 'disabled add-button' : 'add-button'"
  116. (click)="alreadyInFavorites ? '' : addToFavorites()"
  117. >
  118. @if(alreadyInFavorites){ Bereits in Favoriten} @else{ Zu Favoriten
  119. hinzufügen }
  120. </button>
  121. <!-- Modify spell (only available for custom spells) -->
  122. @if(spell.isCustom){
  123. <button class="edit-button" (click)="update()">Anpassen</button>
  124. }
  125. <button class="delete-button" (click)="remove()">Entfernen</button>
  126. <button class="delete-button" (click)="delete()">Löschen</button>
  127. }
  128. </div>
  129. </div>