blacktrigram 0.7.85 → 0.7.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/assets/index.css
CHANGED
|
@@ -424,12 +424,15 @@
|
|
|
424
424
|
|
|
425
425
|
|
|
426
426
|
/* Black Trigram - Korean Cyberpunk Martial Arts Styling */
|
|
427
|
+
|
|
427
428
|
/* Note: CSS variables are now centralized in index.css */
|
|
429
|
+
|
|
428
430
|
* {
|
|
429
431
|
margin: 0;
|
|
430
432
|
padding: 0;
|
|
431
433
|
box-sizing: border-box;
|
|
432
434
|
}
|
|
435
|
+
|
|
433
436
|
body {
|
|
434
437
|
font-family: var(--font-korean);
|
|
435
438
|
background: linear-gradient(
|
|
@@ -441,6 +444,7 @@ body {
|
|
|
441
444
|
overflow: hidden;
|
|
442
445
|
user-select: none;
|
|
443
446
|
}
|
|
447
|
+
|
|
444
448
|
#root {
|
|
445
449
|
width: 100vw;
|
|
446
450
|
height: 100vh;
|
|
@@ -453,6 +457,7 @@ body {
|
|
|
453
457
|
var(--color-bg-dark) 100%
|
|
454
458
|
);
|
|
455
459
|
}
|
|
460
|
+
|
|
456
461
|
/* Korean Text Enhancement */
|
|
457
462
|
.korean-text {
|
|
458
463
|
font-family: var(--font-korean);
|
|
@@ -460,6 +465,7 @@ body {
|
|
|
460
465
|
text-shadow: 0 0 8px var(--color-korean-east);
|
|
461
466
|
letter-spacing: 0.02em;
|
|
462
467
|
}
|
|
468
|
+
|
|
463
469
|
.korean-title {
|
|
464
470
|
font-family: var(--font-korean);
|
|
465
471
|
font-weight: 700;
|
|
@@ -474,6 +480,7 @@ body {
|
|
|
474
480
|
background-clip: text;
|
|
475
481
|
text-shadow: 0 0 20px var(--color-accent-cyan);
|
|
476
482
|
}
|
|
483
|
+
|
|
477
484
|
.cyber-text {
|
|
478
485
|
font-family: var(--font-cyber);
|
|
479
486
|
color: var(--color-accent-cyan);
|
|
@@ -481,6 +488,7 @@ body {
|
|
|
481
488
|
letter-spacing: 0.1em;
|
|
482
489
|
text-shadow: 0 0 10px currentColor;
|
|
483
490
|
}
|
|
491
|
+
|
|
484
492
|
/* Cyberpunk UI Elements */
|
|
485
493
|
.cyberpunk-border {
|
|
486
494
|
border: 2px solid var(--color-accent-cyan);
|
|
@@ -494,6 +502,7 @@ body {
|
|
|
494
502
|
box-shadow: 0 0 10px var(--color-accent-cyan),
|
|
495
503
|
inset 0 0 10px color-mix(in srgb, var(--color-accent-cyan) 10%, transparent);
|
|
496
504
|
}
|
|
505
|
+
|
|
497
506
|
.cyberpunk-button {
|
|
498
507
|
background: linear-gradient(
|
|
499
508
|
135deg,
|
|
@@ -510,6 +519,7 @@ body {
|
|
|
510
519
|
position: relative;
|
|
511
520
|
overflow: hidden;
|
|
512
521
|
}
|
|
522
|
+
|
|
513
523
|
.cyberpunk-button:hover {
|
|
514
524
|
background: linear-gradient(
|
|
515
525
|
135deg,
|
|
@@ -519,6 +529,7 @@ body {
|
|
|
519
529
|
box-shadow: 0 0 20px var(--color-accent-cyan);
|
|
520
530
|
transform: translateY(-2px);
|
|
521
531
|
}
|
|
532
|
+
|
|
522
533
|
.cyberpunk-button:before {
|
|
523
534
|
content: "";
|
|
524
535
|
position: absolute;
|
|
@@ -534,9 +545,11 @@ body {
|
|
|
534
545
|
);
|
|
535
546
|
transition: left 0.5s;
|
|
536
547
|
}
|
|
548
|
+
|
|
537
549
|
.cyberpunk-button:hover:before {
|
|
538
550
|
left: 100%;
|
|
539
551
|
}
|
|
552
|
+
|
|
540
553
|
/* Combat HUD Styling */
|
|
541
554
|
.combat-hud {
|
|
542
555
|
position: absolute;
|
|
@@ -551,6 +564,7 @@ body {
|
|
|
551
564
|
padding: 1rem;
|
|
552
565
|
border-bottom: 1px solid var(--color-accent-cyan);
|
|
553
566
|
}
|
|
567
|
+
|
|
554
568
|
.health-bar {
|
|
555
569
|
background: var(--color-bg-dark);
|
|
556
570
|
border: 1px solid var(--color-accent-cyan);
|
|
@@ -559,6 +573,7 @@ body {
|
|
|
559
573
|
overflow: hidden;
|
|
560
574
|
position: relative;
|
|
561
575
|
}
|
|
576
|
+
|
|
562
577
|
.health-bar-fill {
|
|
563
578
|
background: linear-gradient(
|
|
564
579
|
90deg,
|
|
@@ -570,6 +585,7 @@ body {
|
|
|
570
585
|
transition: width 0.3s ease;
|
|
571
586
|
box-shadow: 0 0 10px currentColor;
|
|
572
587
|
}
|
|
588
|
+
|
|
573
589
|
/* Animation Effects */
|
|
574
590
|
@keyframes korean-glow {
|
|
575
591
|
0%,
|
|
@@ -580,9 +596,11 @@ body {
|
|
|
580
596
|
text-shadow: 0 0 20px var(--color-korean-east);
|
|
581
597
|
}
|
|
582
598
|
}
|
|
599
|
+
|
|
583
600
|
.animate-glow {
|
|
584
601
|
animation: korean-glow 2s ease-in-out infinite;
|
|
585
602
|
}
|
|
603
|
+
|
|
586
604
|
@keyframes combat-flash {
|
|
587
605
|
0% {
|
|
588
606
|
background-color: color-mix(in srgb, var(--color-danger) 10%, transparent);
|
|
@@ -594,9 +612,11 @@ body {
|
|
|
594
612
|
background-color: color-mix(in srgb, var(--color-danger) 10%, transparent);
|
|
595
613
|
}
|
|
596
614
|
}
|
|
615
|
+
|
|
597
616
|
.combat-flash {
|
|
598
617
|
animation: combat-flash 0.2s ease-in-out;
|
|
599
618
|
}
|
|
619
|
+
|
|
600
620
|
/* Responsive Design */
|
|
601
621
|
@media (max-width: 768px) {
|
|
602
622
|
.korean-title {
|
|
@@ -637,6 +657,7 @@ body {
|
|
|
637
657
|
z-index: 500;
|
|
638
658
|
}
|
|
639
659
|
}
|
|
660
|
+
|
|
640
661
|
/* Tablet optimizations */
|
|
641
662
|
@media (min-width: 768px) and (max-width: 1024px) {
|
|
642
663
|
.app-container canvas {
|
|
@@ -644,6 +665,7 @@ body {
|
|
|
644
665
|
height: 100vh !important;
|
|
645
666
|
}
|
|
646
667
|
}
|
|
668
|
+
|
|
647
669
|
/* Desktop optimizations */
|
|
648
670
|
@media (min-width: 1024px) {
|
|
649
671
|
.app-container {
|
|
@@ -651,6 +673,7 @@ body {
|
|
|
651
673
|
align-items: center;
|
|
652
674
|
}
|
|
653
675
|
}
|
|
676
|
+
|
|
654
677
|
/* Loading and Error States */
|
|
655
678
|
.loading-spinner {
|
|
656
679
|
border: 2px solid var(--color-bg-medium);
|
|
@@ -661,6 +684,7 @@ body {
|
|
|
661
684
|
animation: spin 1s linear infinite;
|
|
662
685
|
margin: 0 auto;
|
|
663
686
|
}
|
|
687
|
+
|
|
664
688
|
@keyframes spin {
|
|
665
689
|
0% {
|
|
666
690
|
transform: rotate(0deg);
|
|
@@ -669,6 +693,7 @@ body {
|
|
|
669
693
|
transform: rotate(360deg);
|
|
670
694
|
}
|
|
671
695
|
}
|
|
696
|
+
|
|
672
697
|
.error-message {
|
|
673
698
|
color: var(--color-danger);
|
|
674
699
|
background: color-mix(in srgb, var(--color-danger) 10%, transparent);
|
|
@@ -678,6 +703,7 @@ body {
|
|
|
678
703
|
margin: 1rem 0;
|
|
679
704
|
font-family: var(--font-korean);
|
|
680
705
|
}
|
|
706
|
+
|
|
681
707
|
/* Accessibility */
|
|
682
708
|
.sr-only {
|
|
683
709
|
position: absolute;
|
|
@@ -690,6 +716,7 @@ body {
|
|
|
690
716
|
white-space: nowrap;
|
|
691
717
|
border: 0;
|
|
692
718
|
}
|
|
719
|
+
|
|
693
720
|
/* High contrast mode support - Comprehensive accessibility */
|
|
694
721
|
@media (prefers-contrast: high) {
|
|
695
722
|
:root {
|
|
@@ -716,6 +743,7 @@ body {
|
|
|
716
743
|
border-width: 3px;
|
|
717
744
|
}
|
|
718
745
|
}
|
|
746
|
+
|
|
719
747
|
/* Reduced motion support */
|
|
720
748
|
@media (prefers-reduced-motion: reduce) {
|
|
721
749
|
*,
|
|
@@ -726,6 +754,7 @@ body {
|
|
|
726
754
|
transition-duration: 0.01ms !important;
|
|
727
755
|
}
|
|
728
756
|
}
|
|
757
|
+
|
|
729
758
|
/* Reset default Vite styles */
|
|
730
759
|
#root {
|
|
731
760
|
width: 100vw;
|
|
@@ -734,6 +763,7 @@ body {
|
|
|
734
763
|
padding: 0;
|
|
735
764
|
overflow: hidden;
|
|
736
765
|
}
|
|
766
|
+
|
|
737
767
|
/* Full-screen game container */
|
|
738
768
|
.app-container {
|
|
739
769
|
position: fixed;
|
|
@@ -764,11 +794,13 @@ body {
|
|
|
764
794
|
transform: translateZ(0);
|
|
765
795
|
backface-visibility: hidden;
|
|
766
796
|
}
|
|
797
|
+
|
|
767
798
|
/* Hide any old game elements */
|
|
768
799
|
.app-container h1,
|
|
769
800
|
.app-container .instructions {
|
|
770
801
|
display: none !important;
|
|
771
802
|
}
|
|
803
|
+
|
|
772
804
|
/* Korean typography support */
|
|
773
805
|
/* NOTE: overflow: hidden on body prevents the page itself from scrolling.
|
|
774
806
|
* This is intentional for a full-screen game. Individual screens that need
|
|
@@ -784,6 +816,7 @@ body {
|
|
|
784
816
|
width: 100vw;
|
|
785
817
|
height: 100vh;
|
|
786
818
|
}
|
|
819
|
+
|
|
787
820
|
/* Traditional Korean color scheme enhancements */
|
|
788
821
|
.app-container::before {
|
|
789
822
|
content: "";
|
|
@@ -800,12 +833,14 @@ body {
|
|
|
800
833
|
pointer-events: none;
|
|
801
834
|
z-index: -1;
|
|
802
835
|
}
|
|
836
|
+
|
|
803
837
|
/* Performance optimizations for WebGL */
|
|
804
838
|
.app-container canvas {
|
|
805
839
|
will-change: transform;
|
|
806
840
|
transform: translateZ(0);
|
|
807
841
|
backface-visibility: hidden;
|
|
808
842
|
}
|
|
843
|
+
|
|
809
844
|
/* Responsive adjustments for different screen sizes */
|
|
810
845
|
@media (max-width: 768px) {
|
|
811
846
|
.app-container {
|
|
@@ -818,6 +853,7 @@ body {
|
|
|
818
853
|
height: 100vh !important;
|
|
819
854
|
}
|
|
820
855
|
}
|
|
856
|
+
|
|
821
857
|
@media (max-width: 375px) {
|
|
822
858
|
.app-container {
|
|
823
859
|
width: 100vw !important;
|
|
@@ -829,17 +865,22 @@ body {
|
|
|
829
865
|
height: 100vh !important;
|
|
830
866
|
}
|
|
831
867
|
}
|
|
868
|
+
|
|
832
869
|
/* Remove any legacy Vite template styles that might interfere */
|
|
833
870
|
.logo {
|
|
834
871
|
display: none !important;
|
|
835
872
|
}
|
|
873
|
+
|
|
836
874
|
.card {
|
|
837
875
|
display: none !important;
|
|
838
876
|
}
|
|
877
|
+
|
|
839
878
|
.read-the-docs {
|
|
840
879
|
display: none !important;
|
|
841
880
|
}
|
|
881
|
+
|
|
842
882
|
/* Note: Theme variables are now centralized in index.css */
|
|
883
|
+
|
|
843
884
|
/* Performance optimizations for mobile */
|
|
844
885
|
@media (max-width: 768px) {
|
|
845
886
|
.app-container {
|
|
@@ -851,6 +892,7 @@ body {
|
|
|
851
892
|
overflow: hidden;
|
|
852
893
|
}
|
|
853
894
|
}
|
|
895
|
+
|
|
854
896
|
/* High DPI display support */
|
|
855
897
|
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
|
|
856
898
|
.app-container canvas {
|
|
@@ -858,6 +900,7 @@ body {
|
|
|
858
900
|
image-rendering: crisp-edges;
|
|
859
901
|
}
|
|
860
902
|
}
|
|
903
|
+
|
|
861
904
|
.app {
|
|
862
905
|
width: 100vw;
|
|
863
906
|
height: 100vh;
|
|
@@ -871,6 +914,7 @@ body {
|
|
|
871
914
|
* The game container is made focusable for keyboard input capture. */
|
|
872
915
|
outline: none;
|
|
873
916
|
}
|
|
917
|
+
|
|
874
918
|
.app-header {
|
|
875
919
|
padding: 1rem 2rem;
|
|
876
920
|
background: color-mix(in srgb, var(--color-bg-dark) 90%, transparent);
|
|
@@ -880,30 +924,35 @@ body {
|
|
|
880
924
|
align-items: center;
|
|
881
925
|
box-shadow: 0 2px 10px color-mix(in srgb, var(--color-primary-gold) 30%, transparent);
|
|
882
926
|
}
|
|
927
|
+
|
|
883
928
|
.app-title {
|
|
884
929
|
margin: 0;
|
|
885
930
|
display: flex;
|
|
886
931
|
flex-direction: column;
|
|
887
932
|
gap: 0.25rem;
|
|
888
933
|
}
|
|
934
|
+
|
|
889
935
|
.korean-title {
|
|
890
936
|
font-size: 1.8rem;
|
|
891
937
|
font-weight: bold;
|
|
892
938
|
color: var(--color-primary-gold);
|
|
893
939
|
text-shadow: 2px 2px 4px color-mix(in srgb, var(--color-primary-black) 80%, transparent);
|
|
894
940
|
}
|
|
941
|
+
|
|
895
942
|
.english-title {
|
|
896
943
|
font-size: 1rem;
|
|
897
944
|
color: var(--color-info);
|
|
898
945
|
font-style: italic;
|
|
899
946
|
text-shadow: 1px 1px 2px color-mix(in srgb, var(--color-primary-black) 60%, transparent);
|
|
900
947
|
}
|
|
948
|
+
|
|
901
949
|
.app-status {
|
|
902
950
|
display: flex;
|
|
903
951
|
flex-direction: column;
|
|
904
952
|
gap: 0.5rem;
|
|
905
953
|
text-align: right;
|
|
906
954
|
}
|
|
955
|
+
|
|
907
956
|
.phase-indicator,
|
|
908
957
|
.time-indicator {
|
|
909
958
|
padding: 0.25rem 0.75rem;
|
|
@@ -911,16 +960,19 @@ body {
|
|
|
911
960
|
font-size: 0.9rem;
|
|
912
961
|
font-weight: bold;
|
|
913
962
|
}
|
|
963
|
+
|
|
914
964
|
.phase-indicator {
|
|
915
965
|
background: color-mix(in srgb, var(--color-primary-gold) 20%, transparent);
|
|
916
966
|
color: var(--color-primary-gold);
|
|
917
967
|
border: 1px solid var(--color-primary-gold);
|
|
918
968
|
}
|
|
969
|
+
|
|
919
970
|
.time-indicator {
|
|
920
971
|
background: color-mix(in srgb, var(--color-info) 20%, transparent);
|
|
921
972
|
color: var(--color-info);
|
|
922
973
|
border: 1px solid var(--color-info);
|
|
923
974
|
}
|
|
975
|
+
|
|
924
976
|
.app-main {
|
|
925
977
|
flex: 1;
|
|
926
978
|
display: flex;
|
|
@@ -928,6 +980,7 @@ body {
|
|
|
928
980
|
align-items: center;
|
|
929
981
|
overflow: hidden;
|
|
930
982
|
}
|
|
983
|
+
|
|
931
984
|
.app-debug {
|
|
932
985
|
background: color-mix(in srgb, var(--color-primary-black) 80%, transparent);
|
|
933
986
|
color: #00ff00;
|
|
@@ -936,18 +989,21 @@ body {
|
|
|
936
989
|
max-height: 200px;
|
|
937
990
|
overflow-y: auto;
|
|
938
991
|
}
|
|
992
|
+
|
|
939
993
|
.app-debug summary {
|
|
940
994
|
padding: 0.5rem;
|
|
941
995
|
cursor: pointer;
|
|
942
996
|
background: color-mix(in srgb, var(--color-success) 10%, transparent);
|
|
943
997
|
border-bottom: 1px solid #00ff00;
|
|
944
998
|
}
|
|
999
|
+
|
|
945
1000
|
.app-debug pre {
|
|
946
1001
|
padding: 1rem;
|
|
947
1002
|
margin: 0;
|
|
948
1003
|
white-space: pre-wrap;
|
|
949
1004
|
word-wrap: break-word;
|
|
950
1005
|
}
|
|
1006
|
+
|
|
951
1007
|
/* Responsive design */
|
|
952
1008
|
@media (max-width: 768px) {
|
|
953
1009
|
.app-header {
|
|
@@ -969,6 +1025,7 @@ body {
|
|
|
969
1025
|
gap: 1rem;
|
|
970
1026
|
}
|
|
971
1027
|
}
|
|
1028
|
+
|
|
972
1029
|
/* Korean traditional design elements */
|
|
973
1030
|
.app::before {
|
|
974
1031
|
content: "";
|
|
@@ -990,6 +1047,7 @@ body {
|
|
|
990
1047
|
pointer-events: none;
|
|
991
1048
|
z-index: -1;
|
|
992
1049
|
}
|
|
1050
|
+
|
|
993
1051
|
/* Loading screen styles */
|
|
994
1052
|
.loading-screen {
|
|
995
1053
|
display: flex;
|
|
@@ -1000,10 +1058,12 @@ body {
|
|
|
1000
1058
|
color: #ffffff;
|
|
1001
1059
|
font-family: "Noto Sans KR", Arial, sans-serif;
|
|
1002
1060
|
}
|
|
1061
|
+
|
|
1003
1062
|
.loading-content {
|
|
1004
1063
|
text-align: center;
|
|
1005
1064
|
animation: pulse 2s ease-in-out infinite;
|
|
1006
1065
|
}
|
|
1066
|
+
|
|
1007
1067
|
.korean-title {
|
|
1008
1068
|
font-size: 2.5rem;
|
|
1009
1069
|
font-weight: 700;
|
|
@@ -1011,12 +1071,14 @@ body {
|
|
|
1011
1071
|
margin-bottom: 1rem;
|
|
1012
1072
|
text-shadow: 0 0 20px color-mix(in srgb, var(--color-primary-gold) 50%, transparent);
|
|
1013
1073
|
}
|
|
1074
|
+
|
|
1014
1075
|
.english-subtitle {
|
|
1015
1076
|
font-size: 1.2rem;
|
|
1016
1077
|
font-weight: 300;
|
|
1017
1078
|
color: #00ffff;
|
|
1018
1079
|
margin: 0;
|
|
1019
1080
|
}
|
|
1081
|
+
|
|
1020
1082
|
/* Error state styles */
|
|
1021
1083
|
.error-state {
|
|
1022
1084
|
display: flex;
|
|
@@ -1029,10 +1091,12 @@ body {
|
|
|
1029
1091
|
font-family: "Noto Sans KR", Arial, sans-serif;
|
|
1030
1092
|
text-align: center;
|
|
1031
1093
|
}
|
|
1094
|
+
|
|
1032
1095
|
.error-state h1 {
|
|
1033
1096
|
color: #ff4444;
|
|
1034
1097
|
margin-bottom: 2rem;
|
|
1035
1098
|
}
|
|
1099
|
+
|
|
1036
1100
|
.error-state button {
|
|
1037
1101
|
padding: 1rem 2rem;
|
|
1038
1102
|
background: #ffd700;
|
|
@@ -1043,9 +1107,11 @@ body {
|
|
|
1043
1107
|
cursor: pointer;
|
|
1044
1108
|
transition: background-color 0.3s ease;
|
|
1045
1109
|
}
|
|
1110
|
+
|
|
1046
1111
|
.error-state button:hover {
|
|
1047
1112
|
background: #ffed4e;
|
|
1048
1113
|
}
|
|
1114
|
+
|
|
1049
1115
|
@keyframes pulse {
|
|
1050
1116
|
0%,
|
|
1051
1117
|
100% {
|
|
@@ -1055,18 +1121,22 @@ body {
|
|
|
1055
1121
|
opacity: 0.7;
|
|
1056
1122
|
}
|
|
1057
1123
|
}
|
|
1124
|
+
|
|
1058
1125
|
/* App-specific styles for Black Trigram */
|
|
1126
|
+
|
|
1059
1127
|
.app-container {
|
|
1060
1128
|
width: 100%;
|
|
1061
1129
|
height: 100%;
|
|
1062
1130
|
position: relative;
|
|
1063
1131
|
background: linear-gradient(45deg, #0a0a0a, #1a1a1e);
|
|
1064
1132
|
}
|
|
1133
|
+
|
|
1065
1134
|
.game-canvas {
|
|
1066
1135
|
width: 100%;
|
|
1067
1136
|
height: 100%;
|
|
1068
1137
|
display: block;
|
|
1069
1138
|
}
|
|
1139
|
+
|
|
1070
1140
|
.loading-screen {
|
|
1071
1141
|
position: absolute;
|
|
1072
1142
|
top: 50%;
|
|
@@ -1075,6 +1145,7 @@ body {
|
|
|
1075
1145
|
text-align: center;
|
|
1076
1146
|
color: var(--color-primary-cyan);
|
|
1077
1147
|
}
|
|
1148
|
+
|
|
1078
1149
|
.error-screen {
|
|
1079
1150
|
position: absolute;
|
|
1080
1151
|
top: 50%;
|
|
@@ -1086,6 +1157,7 @@ body {
|
|
|
1086
1157
|
border: 1px solid #ff4136;
|
|
1087
1158
|
background: color-mix(in srgb, var(--color-danger) 10%, transparent);
|
|
1088
1159
|
}
|
|
1160
|
+
|
|
1089
1161
|
/* Fix UI overlay positioning to not interfere with canvas visibility */
|
|
1090
1162
|
.test-overlay {
|
|
1091
1163
|
pointer-events: none;
|
|
@@ -1097,12 +1169,14 @@ body {
|
|
|
1097
1169
|
z-index: 100; /* Reduced from 500 to ensure canvas visibility */
|
|
1098
1170
|
background: transparent;
|
|
1099
1171
|
}
|
|
1172
|
+
|
|
1100
1173
|
/* Fix button z-index to be lower than canvas but still interactive */
|
|
1101
1174
|
.test-overlay button {
|
|
1102
1175
|
z-index: 50 !important; /* Reduced from 400 */
|
|
1103
1176
|
pointer-events: auto;
|
|
1104
1177
|
position: absolute;
|
|
1105
1178
|
}
|
|
1179
|
+
|
|
1106
1180
|
/* Ensure buttons don't cover the center of the canvas */
|
|
1107
1181
|
.training-button {
|
|
1108
1182
|
top: 60% !important; /* Move down from 50% */
|
|
@@ -1111,6 +1185,7 @@ body {
|
|
|
1111
1185
|
width: auto !important;
|
|
1112
1186
|
max-width: 200px !important;
|
|
1113
1187
|
}
|
|
1188
|
+
|
|
1114
1189
|
.combat-button {
|
|
1115
1190
|
top: 70% !important; /* Move down from 60% */
|
|
1116
1191
|
left: 5% !important;
|
|
@@ -1118,6 +1193,7 @@ body {
|
|
|
1118
1193
|
width: auto !important;
|
|
1119
1194
|
max-width: 200px !important;
|
|
1120
1195
|
}
|
|
1196
|
+
|
|
1121
1197
|
/* Mobile specific adjustments */
|
|
1122
1198
|
@media (max-width: 768px) {
|
|
1123
1199
|
.training-button {
|
|
@@ -1138,6 +1214,7 @@ body {
|
|
|
1138
1214
|
padding: 10px 16px;
|
|
1139
1215
|
}
|
|
1140
1216
|
}
|
|
1217
|
+
|
|
1141
1218
|
@media (max-width: 375px) {
|
|
1142
1219
|
.training-button {
|
|
1143
1220
|
top: 70% !important;
|
|
@@ -21,7 +21,7 @@ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
|
21
21
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
22
22
|
import { Canvas } from "@react-three/fiber";
|
|
23
23
|
//#region src/components/screens/intro/IntroScreen3D.tsx
|
|
24
|
-
var APP_VERSION = "0.7.
|
|
24
|
+
var APP_VERSION = "0.7.86";
|
|
25
25
|
var MENU_ITEMS = [
|
|
26
26
|
{
|
|
27
27
|
mode: GameMode.VERSUS,
|
|
@@ -183,7 +183,7 @@ var SplashScreen = ({ onStart, width, height }) => {
|
|
|
183
183
|
}),
|
|
184
184
|
/* @__PURE__ */ jsxs("div", {
|
|
185
185
|
role: "contentinfo",
|
|
186
|
-
"aria-label": `Application version 0.7.
|
|
186
|
+
"aria-label": `Application version 0.7.86`,
|
|
187
187
|
style: {
|
|
188
188
|
position: "absolute",
|
|
189
189
|
bottom: "20px",
|
|
@@ -192,7 +192,7 @@ var SplashScreen = ({ onStart, width, height }) => {
|
|
|
192
192
|
fontSize: "10px",
|
|
193
193
|
zIndex: 1
|
|
194
194
|
},
|
|
195
|
-
children: ["v", "0.7.
|
|
195
|
+
children: ["v", "0.7.86"]
|
|
196
196
|
})
|
|
197
197
|
]
|
|
198
198
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "blacktrigram",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.86",
|
|
4
4
|
"description": "Black Trigram (흑괘) - Korean Martial Arts Combat Simulator. Reusable game systems, combat mechanics, animation framework, and Korean martial arts data built with React, Three.js, and TypeScript.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -189,7 +189,7 @@
|
|
|
189
189
|
"three": "0.185.1"
|
|
190
190
|
},
|
|
191
191
|
"devDependencies": {
|
|
192
|
-
"@aws-sdk/client-bedrock-runtime": "3.
|
|
192
|
+
"@aws-sdk/client-bedrock-runtime": "3.1088.0",
|
|
193
193
|
"@eslint/js": "10.0.1",
|
|
194
194
|
"@react-three/drei": "10.7.7",
|
|
195
195
|
"@react-three/fiber": "9.6.1",
|
|
@@ -217,14 +217,14 @@
|
|
|
217
217
|
"globals": "17.7.0",
|
|
218
218
|
"jest-axe": "10.0.0",
|
|
219
219
|
"jsdom": "29.1.1",
|
|
220
|
-
"knip": "6.
|
|
220
|
+
"knip": "6.27.0",
|
|
221
221
|
"license-compliance": "3.0.1",
|
|
222
222
|
"mermaid": "11.16.0",
|
|
223
223
|
"mocha-junit-reporter": "2.2.1",
|
|
224
224
|
"mochawesome": "7.1.4",
|
|
225
225
|
"mochawesome-merge": "5.1.1",
|
|
226
226
|
"mochawesome-report-generator": "6.3.2",
|
|
227
|
-
"openai": "6.
|
|
227
|
+
"openai": "6.47.0",
|
|
228
228
|
"playwright": "1.61.1",
|
|
229
229
|
"postprocessing": "6.39.2",
|
|
230
230
|
"react": "19.2.7",
|
|
@@ -242,7 +242,7 @@
|
|
|
242
242
|
"typescript": "npm:@typescript/typescript6@6.0.2",
|
|
243
243
|
"typescript-7": "npm:typescript@7.0.1-rc",
|
|
244
244
|
"typescript-eslint": "8.64.0",
|
|
245
|
-
"vite": "8.1.
|
|
245
|
+
"vite": "8.1.5",
|
|
246
246
|
"vite-bundle-analyzer": "1.3.9",
|
|
247
247
|
"vite-tsconfig-paths": "6.1.1",
|
|
248
248
|
"vitest": "4.1.10"
|