Fraser commited on
Commit
cf131a8
·
1 Parent(s): 782d90b
src/lib/components/Piclets/MoveDisplay.svelte CHANGED
@@ -4,7 +4,7 @@
4
 
5
  interface Props {
6
  move: DBBattleMove;
7
- enhancedMove?: { move: BattleMove; currentPP: number };
8
  expanded?: boolean;
9
  showPP?: boolean;
10
  }
@@ -12,8 +12,8 @@
12
  let { move, enhancedMove, expanded = false, showPP = true }: Props = $props();
13
 
14
  // Use enhanced move data if available, otherwise fall back to basic move
15
- $: battleMove = enhancedMove?.move;
16
- $: currentPP = enhancedMove?.currentPP ?? move.currentPp;
17
 
18
  function getTypeEmoji(type: string): string {
19
  switch (type) {
@@ -110,8 +110,8 @@
110
  return desc;
111
  }
112
 
113
- $: isOutOfPP = currentPP <= 0;
114
- $: typeColor = getTypeColor(move.type);
115
  </script>
116
 
117
  <div class="move-display" class:disabled={isOutOfPP}>
@@ -137,7 +137,7 @@
137
  {#if showPP}
138
  <div class="pp-display" class:out-of-pp={isOutOfPP}>
139
  <span class="pp-label">PP</span>
140
- <span class="pp-value">{currentPP}/{move.pp}</span>
141
  </div>
142
  {/if}
143
 
 
4
 
5
  interface Props {
6
  move: DBBattleMove;
7
+ enhancedMove?: { move: BattleMove; currentPp: number };
8
  expanded?: boolean;
9
  showPP?: boolean;
10
  }
 
12
  let { move, enhancedMove, expanded = false, showPP = true }: Props = $props();
13
 
14
  // Use enhanced move data if available, otherwise fall back to basic move
15
+ const battleMove = $derived(enhancedMove?.move);
16
+ const currentPp = $derived(enhancedMove?.currentPp ?? move.currentPp);
17
 
18
  function getTypeEmoji(type: string): string {
19
  switch (type) {
 
110
  return desc;
111
  }
112
 
113
+ const isOutOfPP = $derived(currentPp <= 0);
114
+ const typeColor = $derived(getTypeColor(move.type));
115
  </script>
116
 
117
  <div class="move-display" class:disabled={isOutOfPP}>
 
137
  {#if showPP}
138
  <div class="pp-display" class:out-of-pp={isOutOfPP}>
139
  <span class="pp-label">PP</span>
140
+ <span class="pp-value">{currentPp}/{move.pp}</span>
141
  </div>
142
  {/if}
143
 
src/lib/components/Piclets/PicletCard.svelte CHANGED
@@ -22,8 +22,8 @@
22
  const softTypeColor = $derived(`${typeColor}20`); // Add 20% opacity for soft background
23
 
24
  // Get battle definition for enhanced ability info
25
- $: battleDefinition = picletInstanceToBattleDefinition(instance);
26
- $: ability = battleDefinition.specialAbility;
27
  </script>
28
 
29
  <button
 
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
 
29
  <button
src/lib/components/Piclets/PicletDetail.svelte CHANGED
@@ -23,7 +23,7 @@
23
  let isSharing = $state(false);
24
 
25
  // Convert to battle definition to get enhanced ability data
26
- $: battleDefinition = picletInstanceToBattleDefinition(instance);
27
 
28
  // Type-based styling
29
  const typeData = $derived(TYPE_DATA[instance.primaryType]);
@@ -490,75 +490,6 @@
490
  color: #000;
491
  }
492
 
493
- /* Actions Tab */
494
- .move-card {
495
- width: 100%;
496
- background: #f2f2f7;
497
- border: 1px solid rgba(0, 123, 255, 0.3);
498
- border-radius: 8px;
499
- padding: 12px;
500
- margin-bottom: 12px;
501
- cursor: pointer;
502
- text-align: left;
503
- transition: all 0.2s;
504
- }
505
-
506
- .move-card:active {
507
- transform: scale(0.98);
508
- }
509
-
510
- .move-header {
511
- display: flex;
512
- justify-content: space-between;
513
- align-items: center;
514
- margin-bottom: 8px;
515
- }
516
-
517
- .move-name {
518
- font-size: 16px;
519
- font-weight: bold;
520
- color: #000;
521
- }
522
-
523
- .move-badges {
524
- display: flex;
525
- gap: 6px;
526
- }
527
-
528
- .power-badge {
529
- background: rgba(255, 59, 48, 0.2);
530
- color: #ff3b30;
531
- padding: 4px 8px;
532
- border-radius: 12px;
533
- font-size: 12px;
534
- font-weight: 500;
535
- }
536
-
537
- .move-description {
538
- margin: 0 0 12px;
539
- font-size: 14px;
540
- color: #666;
541
- line-height: 1.3;
542
- }
543
-
544
- .move-stats {
545
- display: flex;
546
- gap: 16px;
547
- font-size: 13px;
548
- color: #8e8e93;
549
- }
550
-
551
- .move-details {
552
- margin-top: 12px;
553
- padding-top: 12px;
554
- border-top: 1px solid #e5e5ea;
555
- font-size: 14px;
556
- color: #666;
557
- }
558
-
559
- .move-details p {
560
- margin: 0;
561
- }
562
 
563
  /* Bottom Actions */
564
  .bottom-actions {
 
23
  let isSharing = $state(false);
24
 
25
  // Convert to battle definition to get enhanced ability data
26
+ const battleDefinition = $derived(picletInstanceToBattleDefinition(instance));
27
 
28
  // Type-based styling
29
  const typeData = $derived(TYPE_DATA[instance.primaryType]);
 
490
  color: #000;
491
  }
492
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
493
 
494
  /* Bottom Actions */
495
  .bottom-actions {