Fraser commited on
Commit
cf7c859
·
1 Parent(s): 8db63ba
src/lib/components/Piclets/AddToRosterDialog.svelte CHANGED
@@ -55,7 +55,7 @@
55
  onclick={() => handleAddToRoster(piclet)}
56
  disabled={isAdding}
57
  >
58
- <PicletCard instance={piclet} size={100} />
59
  </button>
60
  {/each}
61
  </div>
 
55
  onclick={() => handleAddToRoster(piclet)}
56
  disabled={isAdding}
57
  >
58
+ <PicletCard piclet={piclet} size={100} />
59
  </button>
60
  {/each}
61
  </div>
src/lib/components/Piclets/DraggablePicletCard.svelte CHANGED
@@ -52,7 +52,7 @@
52
  role="button"
53
  tabindex="0"
54
  >
55
- <PicletCard {instance} {size} {onClick} />
56
  </div>
57
 
58
  <style>
 
52
  role="button"
53
  tabindex="0"
54
  >
55
+ <PicletCard piclet={instance} {size} {onClick} />
56
  </div>
57
 
58
  <style>
src/lib/components/Piclets/PicletCard.svelte CHANGED
@@ -4,25 +4,25 @@
4
  import { picletInstanceToBattleDefinition } from '$lib/utils/battleConversion';
5
 
6
  interface Props {
7
- instance: PicletInstance;
8
  size?: number;
9
  onClick?: () => void;
10
  }
11
 
12
- let { instance, size = 100, onClick }: Props = $props();
13
 
14
- const hpPercentage = $derived(instance.currentHp / instance.maxHp);
15
  const hpColor = $derived(
16
  hpPercentage > 0.5 ? '#34c759' :
17
  hpPercentage > 0.25 ? '#ffcc00' :
18
  '#ff3b30'
19
  );
20
 
21
- const typeColor = $derived(TYPE_DATA[instance.primaryType].color);
22
  const softTypeColor = $derived(`${typeColor}20`); // Add 20% opacity for soft background
23
 
24
  // Get battle definition for enhanced ability info
25
- const battleDefinition = $derived(picletInstanceToBattleDefinition(instance));
26
  const ability = $derived(battleDefinition.specialAbility);
27
  </script>
28
 
@@ -34,20 +34,20 @@
34
  >
35
  <div class="image-container">
36
  <img
37
- src={instance.imageData || instance.imageUrl}
38
- alt={instance.nickname || 'Piclet'}
39
  class="piclet-image"
40
  style="width: {size * 0.8}px; height: {size * 0.8}px;"
41
  />
42
  <div class="level-badge">
43
- Lv.{instance.level}
44
  </div>
45
  </div>
46
 
47
  <div class="details-section">
48
- <p class="nickname">{instance.nickname || 'Unknown'}</p>
49
  <div class="hp-section">
50
- <span class="hp-text">HP: {instance.currentHp}/{instance.maxHp}</span>
51
  <div class="hp-bar">
52
  <div
53
  class="hp-fill"
 
4
  import { picletInstanceToBattleDefinition } from '$lib/utils/battleConversion';
5
 
6
  interface Props {
7
+ piclet: PicletInstance;
8
  size?: number;
9
  onClick?: () => void;
10
  }
11
 
12
+ let { piclet, size = 100, onClick }: Props = $props();
13
 
14
+ const hpPercentage = $derived(piclet.currentHp / piclet.maxHp);
15
  const hpColor = $derived(
16
  hpPercentage > 0.5 ? '#34c759' :
17
  hpPercentage > 0.25 ? '#ffcc00' :
18
  '#ff3b30'
19
  );
20
 
21
+ const typeColor = $derived(TYPE_DATA[piclet.primaryType].color);
22
  const softTypeColor = $derived(`${typeColor}20`); // Add 20% opacity for soft background
23
 
24
  // Get battle definition for enhanced ability info
25
+ const battleDefinition = $derived(picletInstanceToBattleDefinition(piclet));
26
  const ability = $derived(battleDefinition.specialAbility);
27
  </script>
28
 
 
34
  >
35
  <div class="image-container">
36
  <img
37
+ src={piclet.imageData || piclet.imageUrl}
38
+ alt={piclet.nickname || 'Piclet'}
39
  class="piclet-image"
40
  style="width: {size * 0.8}px; height: {size * 0.8}px;"
41
  />
42
  <div class="level-badge">
43
+ Lv.{piclet.level}
44
  </div>
45
  </div>
46
 
47
  <div class="details-section">
48
+ <p class="nickname">{piclet.nickname || 'Unknown'}</p>
49
  <div class="hp-section">
50
+ <span class="hp-text">HP: {piclet.currentHp}/{piclet.maxHp}</span>
51
  <div class="hp-bar">
52
  <div
53
  class="hp-fill"