diff --git a/frontend/assets/css/hero-header-compact.css b/frontend/assets/css/hero-header-compact.css
new file mode 100644
index 0000000..fc3b05f
--- /dev/null
+++ b/frontend/assets/css/hero-header-compact.css
@@ -0,0 +1,58 @@
+@media (min-width: 1121px) {
+ .hero:not(.historical-hero) .hero__content {
+ padding-block: 54px 60px;
+ padding-inline: clamp(48px, 5vw, 88px);
+ }
+
+ .hero:not(.historical-hero) .hero__brand {
+ grid-template-columns: minmax(300px, 340px) minmax(0, 1fr);
+ column-gap: clamp(150px, 14vw, 260px);
+ max-width: 1420px;
+ margin: 0 auto;
+ }
+
+ .hero:not(.historical-hero) .logo-frame {
+ width: min(370px, 100%);
+ min-height: 300px;
+ padding: 26px 30px;
+ }
+
+ .hero:not(.historical-hero) .logo-frame__image {
+ max-height: 292px;
+ }
+
+ .hero:not(.historical-hero) .hero__copy {
+ max-width: 980px;
+ align-content: center;
+ transform: none;
+ }
+
+ .hero:not(.historical-hero) .hero__title {
+ max-width: none;
+ font-size: clamp(4.2rem, 5.2vw, 6.35rem);
+ line-height: 1.02;
+ }
+
+ .hero:not(.historical-hero) .hero__title-accent {
+ display: inline;
+ }
+
+ .hero:not(.historical-hero) .hero__text {
+ max-width: 68ch;
+ }
+}
+
+@media (min-width: 1121px) and (max-width: 1380px) {
+ .hero:not(.historical-hero) .hero__brand {
+ grid-template-columns: minmax(260px, 310px) minmax(0, 1fr);
+ column-gap: clamp(112px, 9vw, 150px);
+ }
+
+ .hero:not(.historical-hero) .hero__copy {
+ transform: none;
+ }
+
+ .hero:not(.historical-hero) .hero__title {
+ font-size: clamp(3.6rem, 5.5vw, 5.1rem);
+ }
+}
diff --git a/frontend/assets/img/weapons/black/bazooka_black.svg b/frontend/assets/img/weapons/black/bazooka_black.svg
new file mode 100644
index 0000000..d8711de
--- /dev/null
+++ b/frontend/assets/img/weapons/black/bazooka_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/bren_gun_black.svg b/frontend/assets/img/weapons/black/bren_gun_black.svg
new file mode 100644
index 0000000..83f3cc0
--- /dev/null
+++ b/frontend/assets/img/weapons/black/bren_gun_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/browing_m1919_black.svg b/frontend/assets/img/weapons/black/browing_m1919_black.svg
new file mode 100644
index 0000000..3b70295
--- /dev/null
+++ b/frontend/assets/img/weapons/black/browing_m1919_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/colt_1911_black.svg b/frontend/assets/img/weapons/black/colt_1911_black.svg
new file mode 100644
index 0000000..78e032c
--- /dev/null
+++ b/frontend/assets/img/weapons/black/colt_1911_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/dp27_black.svg b/frontend/assets/img/weapons/black/dp27_black.svg
new file mode 100644
index 0000000..b98d87b
--- /dev/null
+++ b/frontend/assets/img/weapons/black/dp27_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/flammenwefer41_black.svg b/frontend/assets/img/weapons/black/flammenwefer41_black.svg
new file mode 100644
index 0000000..c797876
--- /dev/null
+++ b/frontend/assets/img/weapons/black/flammenwefer41_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/gewehr_black.svg b/frontend/assets/img/weapons/black/gewehr_black.svg
new file mode 100644
index 0000000..f49e4dd
--- /dev/null
+++ b/frontend/assets/img/weapons/black/gewehr_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/kar98k_black.svg b/frontend/assets/img/weapons/black/kar98k_black.svg
new file mode 100644
index 0000000..daf387c
--- /dev/null
+++ b/frontend/assets/img/weapons/black/kar98k_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/kar98k_x8_black.svg b/frontend/assets/img/weapons/black/kar98k_x8_black.svg
new file mode 100644
index 0000000..5becf00
--- /dev/null
+++ b/frontend/assets/img/weapons/black/kar98k_x8_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/lee_enfield_n4_black.svg b/frontend/assets/img/weapons/black/lee_enfield_n4_black.svg
new file mode 100644
index 0000000..805e28e
--- /dev/null
+++ b/frontend/assets/img/weapons/black/lee_enfield_n4_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/luger_p08_black.svg b/frontend/assets/img/weapons/black/luger_p08_black.svg
new file mode 100644
index 0000000..274abdf
--- /dev/null
+++ b/frontend/assets/img/weapons/black/luger_p08_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m1903_springfield_black.svg b/frontend/assets/img/weapons/black/m1903_springfield_black.svg
new file mode 100644
index 0000000..69bdbc6
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m1903_springfield_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m1_carabine_black.svg b/frontend/assets/img/weapons/black/m1_carabine_black.svg
new file mode 100644
index 0000000..e8cb265
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m1_carabine_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m1_garand_black.svg b/frontend/assets/img/weapons/black/m1_garand_black.svg
new file mode 100644
index 0000000..198d463
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m1_garand_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m2_flamethrower_black.svg b/frontend/assets/img/weapons/black/m2_flamethrower_black.svg
new file mode 100644
index 0000000..13b196f
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m2_flamethrower_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m3_grease_gun_black.svg b/frontend/assets/img/weapons/black/m3_grease_gun_black.svg
new file mode 100644
index 0000000..ed95d47
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m3_grease_gun_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/m97_black.svg b/frontend/assets/img/weapons/black/m97_black.svg
new file mode 100644
index 0000000..36e1370
--- /dev/null
+++ b/frontend/assets/img/weapons/black/m97_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mg34_black.svg b/frontend/assets/img/weapons/black/mg34_black.svg
new file mode 100644
index 0000000..73623ca
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mg34_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mg42_black.svg b/frontend/assets/img/weapons/black/mg42_black.svg
new file mode 100644
index 0000000..572d28e
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mg42_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mosing_nagant_1891_black.svg b/frontend/assets/img/weapons/black/mosing_nagant_1891_black.svg
new file mode 100644
index 0000000..9a43a30
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mosing_nagant_1891_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mosing_nagant_9130_black.svg b/frontend/assets/img/weapons/black/mosing_nagant_9130_black.svg
new file mode 100644
index 0000000..0f4cb80
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mosing_nagant_9130_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mosing_nagant_m38_black.svg b/frontend/assets/img/weapons/black/mosing_nagant_m38_black.svg
new file mode 100644
index 0000000..28752e1
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mosing_nagant_m38_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/mp40_black.svg b/frontend/assets/img/weapons/black/mp40_black.svg
new file mode 100644
index 0000000..1dc44c5
--- /dev/null
+++ b/frontend/assets/img/weapons/black/mp40_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/nagant_m1895_black.svg b/frontend/assets/img/weapons/black/nagant_m1895_black.svg
new file mode 100644
index 0000000..90b609d
--- /dev/null
+++ b/frontend/assets/img/weapons/black/nagant_m1895_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/panzerchreck_black.svg b/frontend/assets/img/weapons/black/panzerchreck_black.svg
new file mode 100644
index 0000000..76a0074
--- /dev/null
+++ b/frontend/assets/img/weapons/black/panzerchreck_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/piat_black.svg b/frontend/assets/img/weapons/black/piat_black.svg
new file mode 100644
index 0000000..cb2cd98
--- /dev/null
+++ b/frontend/assets/img/weapons/black/piat_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/ppsh41_black.svg b/frontend/assets/img/weapons/black/ppsh41_black.svg
new file mode 100644
index 0000000..b83dbd0
--- /dev/null
+++ b/frontend/assets/img/weapons/black/ppsh41_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/ppsh_41w_drum_black.svg b/frontend/assets/img/weapons/black/ppsh_41w_drum_black.svg
new file mode 100644
index 0000000..e3c4e30
--- /dev/null
+++ b/frontend/assets/img/weapons/black/ppsh_41w_drum_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/ptrs41_black.svg b/frontend/assets/img/weapons/black/ptrs41_black.svg
new file mode 100644
index 0000000..b6cf077
--- /dev/null
+++ b/frontend/assets/img/weapons/black/ptrs41_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/scoped_mosin_nagant_9130_black.svg b/frontend/assets/img/weapons/black/scoped_mosin_nagant_9130_black.svg
new file mode 100644
index 0000000..fbb9b02
--- /dev/null
+++ b/frontend/assets/img/weapons/black/scoped_mosin_nagant_9130_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/scoped_svt40_black.svg b/frontend/assets/img/weapons/black/scoped_svt40_black.svg
new file mode 100644
index 0000000..2a48ea9
--- /dev/null
+++ b/frontend/assets/img/weapons/black/scoped_svt40_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/sten_mk_v_black.svg b/frontend/assets/img/weapons/black/sten_mk_v_black.svg
new file mode 100644
index 0000000..0bf6fde
--- /dev/null
+++ b/frontend/assets/img/weapons/black/sten_mk_v_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/stg44_black.svg b/frontend/assets/img/weapons/black/stg44_black.svg
new file mode 100644
index 0000000..acf00fc
--- /dev/null
+++ b/frontend/assets/img/weapons/black/stg44_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/svt40_black.svg b/frontend/assets/img/weapons/black/svt40_black.svg
new file mode 100644
index 0000000..74feee4
--- /dev/null
+++ b/frontend/assets/img/weapons/black/svt40_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/thompson_black.svg b/frontend/assets/img/weapons/black/thompson_black.svg
new file mode 100644
index 0000000..c2082e2
--- /dev/null
+++ b/frontend/assets/img/weapons/black/thompson_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/tokarev_tt33_black.svg b/frontend/assets/img/weapons/black/tokarev_tt33_black.svg
new file mode 100644
index 0000000..39885cc
--- /dev/null
+++ b/frontend/assets/img/weapons/black/tokarev_tt33_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/walther_p38_black.svg b/frontend/assets/img/weapons/black/walther_p38_black.svg
new file mode 100644
index 0000000..4c04457
--- /dev/null
+++ b/frontend/assets/img/weapons/black/walther_p38_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/black/webley_revolver_black.svg b/frontend/assets/img/weapons/black/webley_revolver_black.svg
new file mode 100644
index 0000000..3fd7b99
--- /dev/null
+++ b/frontend/assets/img/weapons/black/webley_revolver_black.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/bazooka_red.svg b/frontend/assets/img/weapons/red/bazooka_red.svg
new file mode 100644
index 0000000..0556eb2
--- /dev/null
+++ b/frontend/assets/img/weapons/red/bazooka_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/bren_gun_red.svg b/frontend/assets/img/weapons/red/bren_gun_red.svg
new file mode 100644
index 0000000..9379ee1
--- /dev/null
+++ b/frontend/assets/img/weapons/red/bren_gun_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/browing_m1919_red.svg b/frontend/assets/img/weapons/red/browing_m1919_red.svg
new file mode 100644
index 0000000..282f47b
--- /dev/null
+++ b/frontend/assets/img/weapons/red/browing_m1919_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/colt_1911_red.svg b/frontend/assets/img/weapons/red/colt_1911_red.svg
new file mode 100644
index 0000000..00fd839
--- /dev/null
+++ b/frontend/assets/img/weapons/red/colt_1911_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/dp27_red.svg b/frontend/assets/img/weapons/red/dp27_red.svg
new file mode 100644
index 0000000..f7c254a
--- /dev/null
+++ b/frontend/assets/img/weapons/red/dp27_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/flammenwefer41_red.svg b/frontend/assets/img/weapons/red/flammenwefer41_red.svg
new file mode 100644
index 0000000..ba31c70
--- /dev/null
+++ b/frontend/assets/img/weapons/red/flammenwefer41_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/gewehr_red.svg b/frontend/assets/img/weapons/red/gewehr_red.svg
new file mode 100644
index 0000000..68863e6
--- /dev/null
+++ b/frontend/assets/img/weapons/red/gewehr_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/kar98k_red.svg b/frontend/assets/img/weapons/red/kar98k_red.svg
new file mode 100644
index 0000000..71400d5
--- /dev/null
+++ b/frontend/assets/img/weapons/red/kar98k_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/kar98k_x8_red.svg b/frontend/assets/img/weapons/red/kar98k_x8_red.svg
new file mode 100644
index 0000000..9405c4c
--- /dev/null
+++ b/frontend/assets/img/weapons/red/kar98k_x8_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/lee_enfield_n4_red.svg b/frontend/assets/img/weapons/red/lee_enfield_n4_red.svg
new file mode 100644
index 0000000..a20179a
--- /dev/null
+++ b/frontend/assets/img/weapons/red/lee_enfield_n4_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/luger_p08_red.svg b/frontend/assets/img/weapons/red/luger_p08_red.svg
new file mode 100644
index 0000000..662f0c1
--- /dev/null
+++ b/frontend/assets/img/weapons/red/luger_p08_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m1903_springfield_red.svg b/frontend/assets/img/weapons/red/m1903_springfield_red.svg
new file mode 100644
index 0000000..458cf4d
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m1903_springfield_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m1_carabine_red.svg b/frontend/assets/img/weapons/red/m1_carabine_red.svg
new file mode 100644
index 0000000..c7eaed3
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m1_carabine_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m1_garand_red.svg b/frontend/assets/img/weapons/red/m1_garand_red.svg
new file mode 100644
index 0000000..cf46ede
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m1_garand_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m2_flamethrower_red.svg b/frontend/assets/img/weapons/red/m2_flamethrower_red.svg
new file mode 100644
index 0000000..674e42c
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m2_flamethrower_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m3_grease_gun_red.svg b/frontend/assets/img/weapons/red/m3_grease_gun_red.svg
new file mode 100644
index 0000000..5c49209
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m3_grease_gun_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/m97_red.svg b/frontend/assets/img/weapons/red/m97_red.svg
new file mode 100644
index 0000000..bd375f5
--- /dev/null
+++ b/frontend/assets/img/weapons/red/m97_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mg34_red.svg b/frontend/assets/img/weapons/red/mg34_red.svg
new file mode 100644
index 0000000..ac77a19
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mg34_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mg42_red.svg b/frontend/assets/img/weapons/red/mg42_red.svg
new file mode 100644
index 0000000..90c53e9
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mg42_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mosing_nagant_1891_red.svg b/frontend/assets/img/weapons/red/mosing_nagant_1891_red.svg
new file mode 100644
index 0000000..d318b8f
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mosing_nagant_1891_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mosing_nagant_9130_red.svg b/frontend/assets/img/weapons/red/mosing_nagant_9130_red.svg
new file mode 100644
index 0000000..dacd7b2
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mosing_nagant_9130_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mosing_nagant_m38_red.svg b/frontend/assets/img/weapons/red/mosing_nagant_m38_red.svg
new file mode 100644
index 0000000..ae943c7
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mosing_nagant_m38_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/mp40_red.svg b/frontend/assets/img/weapons/red/mp40_red.svg
new file mode 100644
index 0000000..91c2e9f
--- /dev/null
+++ b/frontend/assets/img/weapons/red/mp40_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/nagant_m1895_red.svg b/frontend/assets/img/weapons/red/nagant_m1895_red.svg
new file mode 100644
index 0000000..afcbafd
--- /dev/null
+++ b/frontend/assets/img/weapons/red/nagant_m1895_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/panzerchreck_red.svg b/frontend/assets/img/weapons/red/panzerchreck_red.svg
new file mode 100644
index 0000000..9680f07
--- /dev/null
+++ b/frontend/assets/img/weapons/red/panzerchreck_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/piat_red.svg b/frontend/assets/img/weapons/red/piat_red.svg
new file mode 100644
index 0000000..429fb6b
--- /dev/null
+++ b/frontend/assets/img/weapons/red/piat_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/ppsh41_red.svg b/frontend/assets/img/weapons/red/ppsh41_red.svg
new file mode 100644
index 0000000..bcd6bcf
--- /dev/null
+++ b/frontend/assets/img/weapons/red/ppsh41_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/ppsh_41w_drum_red.svg b/frontend/assets/img/weapons/red/ppsh_41w_drum_red.svg
new file mode 100644
index 0000000..88dbb6b
--- /dev/null
+++ b/frontend/assets/img/weapons/red/ppsh_41w_drum_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/ptrs41_red.svg b/frontend/assets/img/weapons/red/ptrs41_red.svg
new file mode 100644
index 0000000..bede18f
--- /dev/null
+++ b/frontend/assets/img/weapons/red/ptrs41_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/scoped_mosin_nagant_9130_red.svg b/frontend/assets/img/weapons/red/scoped_mosin_nagant_9130_red.svg
new file mode 100644
index 0000000..504fd22
--- /dev/null
+++ b/frontend/assets/img/weapons/red/scoped_mosin_nagant_9130_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/scoped_svt40_red.svg b/frontend/assets/img/weapons/red/scoped_svt40_red.svg
new file mode 100644
index 0000000..7f19ebb
--- /dev/null
+++ b/frontend/assets/img/weapons/red/scoped_svt40_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/sten_mk_v_red.svg b/frontend/assets/img/weapons/red/sten_mk_v_red.svg
new file mode 100644
index 0000000..0d59100
--- /dev/null
+++ b/frontend/assets/img/weapons/red/sten_mk_v_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/stg44_red.svg b/frontend/assets/img/weapons/red/stg44_red.svg
new file mode 100644
index 0000000..e67a238
--- /dev/null
+++ b/frontend/assets/img/weapons/red/stg44_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/svt40_red.svg b/frontend/assets/img/weapons/red/svt40_red.svg
new file mode 100644
index 0000000..91e45fa
--- /dev/null
+++ b/frontend/assets/img/weapons/red/svt40_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/thompson_red.svg b/frontend/assets/img/weapons/red/thompson_red.svg
new file mode 100644
index 0000000..5b82748
--- /dev/null
+++ b/frontend/assets/img/weapons/red/thompson_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/tokarev_tt33_red.svg b/frontend/assets/img/weapons/red/tokarev_tt33_red.svg
new file mode 100644
index 0000000..8ba75e2
--- /dev/null
+++ b/frontend/assets/img/weapons/red/tokarev_tt33_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/walther_p38_red.svg b/frontend/assets/img/weapons/red/walther_p38_red.svg
new file mode 100644
index 0000000..56cb2a7
--- /dev/null
+++ b/frontend/assets/img/weapons/red/walther_p38_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/red/webley_revolver_red.svg b/frontend/assets/img/weapons/red/webley_revolver_red.svg
new file mode 100644
index 0000000..94c783f
--- /dev/null
+++ b/frontend/assets/img/weapons/red/webley_revolver_red.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/bazooka_white.svg b/frontend/assets/img/weapons/white/bazooka_white.svg
new file mode 100644
index 0000000..417e068
--- /dev/null
+++ b/frontend/assets/img/weapons/white/bazooka_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/bren_gun_white.svg b/frontend/assets/img/weapons/white/bren_gun_white.svg
new file mode 100644
index 0000000..feeb12c
--- /dev/null
+++ b/frontend/assets/img/weapons/white/bren_gun_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/browing_m1919_white.svg b/frontend/assets/img/weapons/white/browing_m1919_white.svg
new file mode 100644
index 0000000..b6cee7c
--- /dev/null
+++ b/frontend/assets/img/weapons/white/browing_m1919_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/colt_1911_white.svg b/frontend/assets/img/weapons/white/colt_1911_white.svg
new file mode 100644
index 0000000..612b7cd
--- /dev/null
+++ b/frontend/assets/img/weapons/white/colt_1911_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/dp27_white.svg b/frontend/assets/img/weapons/white/dp27_white.svg
new file mode 100644
index 0000000..88d4284
--- /dev/null
+++ b/frontend/assets/img/weapons/white/dp27_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/flammenwefer41_white.svg b/frontend/assets/img/weapons/white/flammenwefer41_white.svg
new file mode 100644
index 0000000..75df07a
--- /dev/null
+++ b/frontend/assets/img/weapons/white/flammenwefer41_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/gewehr_white.svg b/frontend/assets/img/weapons/white/gewehr_white.svg
new file mode 100644
index 0000000..ee556f6
--- /dev/null
+++ b/frontend/assets/img/weapons/white/gewehr_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/kar98k_white.svg b/frontend/assets/img/weapons/white/kar98k_white.svg
new file mode 100644
index 0000000..a88e7b3
--- /dev/null
+++ b/frontend/assets/img/weapons/white/kar98k_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/kar98k_x8_white.svg b/frontend/assets/img/weapons/white/kar98k_x8_white.svg
new file mode 100644
index 0000000..7e0b27d
--- /dev/null
+++ b/frontend/assets/img/weapons/white/kar98k_x8_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/lee_enfield_n4_white.svg b/frontend/assets/img/weapons/white/lee_enfield_n4_white.svg
new file mode 100644
index 0000000..1f38f33
--- /dev/null
+++ b/frontend/assets/img/weapons/white/lee_enfield_n4_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/luger_p08_white.svg b/frontend/assets/img/weapons/white/luger_p08_white.svg
new file mode 100644
index 0000000..6c135a5
--- /dev/null
+++ b/frontend/assets/img/weapons/white/luger_p08_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m1903_springfield_white.svg b/frontend/assets/img/weapons/white/m1903_springfield_white.svg
new file mode 100644
index 0000000..c0222e1
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m1903_springfield_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m1_carabine_white.svg b/frontend/assets/img/weapons/white/m1_carabine_white.svg
new file mode 100644
index 0000000..dcdc33e
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m1_carabine_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m1_garand_white.svg b/frontend/assets/img/weapons/white/m1_garand_white.svg
new file mode 100644
index 0000000..5cf2b51
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m1_garand_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m2_flamethrower_white.svg b/frontend/assets/img/weapons/white/m2_flamethrower_white.svg
new file mode 100644
index 0000000..6a06490
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m2_flamethrower_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m3_grease_gun_white.svg b/frontend/assets/img/weapons/white/m3_grease_gun_white.svg
new file mode 100644
index 0000000..f945b66
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m3_grease_gun_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/m97_white.svg b/frontend/assets/img/weapons/white/m97_white.svg
new file mode 100644
index 0000000..c82c3bb
--- /dev/null
+++ b/frontend/assets/img/weapons/white/m97_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mg34_white.svg b/frontend/assets/img/weapons/white/mg34_white.svg
new file mode 100644
index 0000000..0f1fa80
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mg34_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mg42_white.svg b/frontend/assets/img/weapons/white/mg42_white.svg
new file mode 100644
index 0000000..2a1d01c
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mg42_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mosing_nagant_1891_white.svg b/frontend/assets/img/weapons/white/mosing_nagant_1891_white.svg
new file mode 100644
index 0000000..f918409
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mosing_nagant_1891_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mosing_nagant_9130_white.svg b/frontend/assets/img/weapons/white/mosing_nagant_9130_white.svg
new file mode 100644
index 0000000..bef6ec0
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mosing_nagant_9130_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mosing_nagant_m38_white.svg b/frontend/assets/img/weapons/white/mosing_nagant_m38_white.svg
new file mode 100644
index 0000000..f7fb0b7
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mosing_nagant_m38_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/mp40_white.svg b/frontend/assets/img/weapons/white/mp40_white.svg
new file mode 100644
index 0000000..3474642
--- /dev/null
+++ b/frontend/assets/img/weapons/white/mp40_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/nagant_m1895_white.svg b/frontend/assets/img/weapons/white/nagant_m1895_white.svg
new file mode 100644
index 0000000..9624574
--- /dev/null
+++ b/frontend/assets/img/weapons/white/nagant_m1895_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/panzerchreck_white.svg b/frontend/assets/img/weapons/white/panzerchreck_white.svg
new file mode 100644
index 0000000..abd8964
--- /dev/null
+++ b/frontend/assets/img/weapons/white/panzerchreck_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/piat_white.svg b/frontend/assets/img/weapons/white/piat_white.svg
new file mode 100644
index 0000000..95ca97a
--- /dev/null
+++ b/frontend/assets/img/weapons/white/piat_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/ppsh41_white.svg b/frontend/assets/img/weapons/white/ppsh41_white.svg
new file mode 100644
index 0000000..11bd2b3
--- /dev/null
+++ b/frontend/assets/img/weapons/white/ppsh41_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/ppsh_41w_drum_white.svg b/frontend/assets/img/weapons/white/ppsh_41w_drum_white.svg
new file mode 100644
index 0000000..7d5883c
--- /dev/null
+++ b/frontend/assets/img/weapons/white/ppsh_41w_drum_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/ptrs41_white.svg b/frontend/assets/img/weapons/white/ptrs41_white.svg
new file mode 100644
index 0000000..f3a8d0b
--- /dev/null
+++ b/frontend/assets/img/weapons/white/ptrs41_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/scoped_mosin_nagant_9130_white.svg b/frontend/assets/img/weapons/white/scoped_mosin_nagant_9130_white.svg
new file mode 100644
index 0000000..62a2f9e
--- /dev/null
+++ b/frontend/assets/img/weapons/white/scoped_mosin_nagant_9130_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/scoped_svt40_white.svg b/frontend/assets/img/weapons/white/scoped_svt40_white.svg
new file mode 100644
index 0000000..f7a9fcf
--- /dev/null
+++ b/frontend/assets/img/weapons/white/scoped_svt40_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/sten_mk_v_white.svg b/frontend/assets/img/weapons/white/sten_mk_v_white.svg
new file mode 100644
index 0000000..402f091
--- /dev/null
+++ b/frontend/assets/img/weapons/white/sten_mk_v_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/stg44_white.svg b/frontend/assets/img/weapons/white/stg44_white.svg
new file mode 100644
index 0000000..d7c4ed7
--- /dev/null
+++ b/frontend/assets/img/weapons/white/stg44_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/svt40_white.svg b/frontend/assets/img/weapons/white/svt40_white.svg
new file mode 100644
index 0000000..2161cc9
--- /dev/null
+++ b/frontend/assets/img/weapons/white/svt40_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/thompson_white.svg b/frontend/assets/img/weapons/white/thompson_white.svg
new file mode 100644
index 0000000..e6a1e64
--- /dev/null
+++ b/frontend/assets/img/weapons/white/thompson_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/tokarev_tt33_white.svg b/frontend/assets/img/weapons/white/tokarev_tt33_white.svg
new file mode 100644
index 0000000..9a68803
--- /dev/null
+++ b/frontend/assets/img/weapons/white/tokarev_tt33_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/walther_p38_white.svg b/frontend/assets/img/weapons/white/walther_p38_white.svg
new file mode 100644
index 0000000..881ffaa
--- /dev/null
+++ b/frontend/assets/img/weapons/white/walther_p38_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/img/weapons/white/webley_revolver_white.svg b/frontend/assets/img/weapons/white/webley_revolver_white.svg
new file mode 100644
index 0000000..f48d20b
--- /dev/null
+++ b/frontend/assets/img/weapons/white/webley_revolver_white.svg
@@ -0,0 +1,3 @@
+
diff --git a/frontend/assets/js/partida-actual.js b/frontend/assets/js/partida-actual.js
index 2841876..b3fd7fd 100644
--- a/frontend/assets/js/partida-actual.js
+++ b/frontend/assets/js/partida-actual.js
@@ -10,37 +10,209 @@ const CURRENT_MATCH_SCOREBOARDS = Object.freeze({
"comunidad-hispana-02": "https://scoreboard.comunidadhll.es:5443",
});
const CURRENT_MATCH_KILL_FEED_LIMIT = 18;
+const CURRENT_MATCH_BLACK_WEAPON_ICON_PATH = "./assets/img/weapons/black/";
+const CURRENT_MATCH_BLACK_WEAPON_ICON_FILES = Object.freeze([
+ "bazooka_black.svg",
+ "bren_gun_black.svg",
+ "browing_m1919_black.svg",
+ "colt_1911_black.svg",
+ "dp27_black.svg",
+ "flammenwefer41_black.svg",
+ "gewehr_black.svg",
+ "kar98k_black.svg",
+ "kar98k_x8_black.svg",
+ "lee_enfield_n4_black.svg",
+ "luger_p08_black.svg",
+ "m1903_springfield_black.svg",
+ "m1_carabine_black.svg",
+ "m1_garand_black.svg",
+ "m2_flamethrower_black.svg",
+ "m3_grease_gun_black.svg",
+ "m97_black.svg",
+ "mg34_black.svg",
+ "mg42_black.svg",
+ "mosing_nagant_1891_black.svg",
+ "mosing_nagant_9130_black.svg",
+ "mosing_nagant_m38_black.svg",
+ "mp40_black.svg",
+ "nagant_m1895_black.svg",
+ "panzerchreck_black.svg",
+ "piat_black.svg",
+ "ppsh41_black.svg",
+ "ppsh_41w_drum_black.svg",
+ "ptrs41_black.svg",
+ "scoped_mosin_nagant_9130_black.svg",
+ "scoped_svt40_black.svg",
+ "sten_mk_v_black.svg",
+ "stg44_black.svg",
+ "svt40_black.svg",
+ "thompson_black.svg",
+ "tokarev_tt33_black.svg",
+ "walther_p38_black.svg",
+ "webley_revolver_black.svg",
+]);
const CURRENT_MATCH_WEAPONS = Object.freeze({
- "m1 garand": { label: "M1 Garand", icon: "m1_garand.PNG" },
- mp40: { label: "MP40", icon: "mp40.PNG" },
- "m1a1 thompson": { label: "M1A1 Thompson", icon: "thompson.PNG" },
- "m1a1": { label: "M1A1 Thompson", icon: "thompson.PNG" },
- thompson: { label: "M1A1 Thompson", icon: "thompson.PNG" },
- "gewehr 43": { label: "Gewehr 43", icon: "gewehr.PNG" },
- "gewehr43": { label: "Gewehr 43", icon: "gewehr.PNG" },
- g43: { label: "Gewehr 43", icon: "gewehr.PNG" },
- mg42: { label: "MG42", icon: "mg42.PNG" },
- kar98k: { label: "Kar98k", icon: "kar98k.PNG" },
- kar98: { label: "Kar98k", icon: "kar98k.PNG" },
- stg44: { label: "StG 44", icon: "stg44.PNG" },
- "stg 44": { label: "StG 44", icon: "stg44.PNG" },
- bar: { label: "BAR", icon: "" },
- "m1919": { label: "M1919", icon: "browing_m1919.PNG" },
- "m1919 browning": { label: "M1919", icon: "browing_m1919.PNG" },
- "browning m1919": { label: "M1919", icon: "browing_m1919.PNG" },
- "m1 carbine": { label: "M1 Carbine", icon: "m1_carabine.PNG" },
- "m1 carabine": { label: "M1 Carbine", icon: "m1_carabine.PNG" },
- luger: { label: "Luger", icon: "luger_p08.PNG" },
- "luger p08": { label: "Luger", icon: "luger_p08.PNG" },
- colt: { label: "Colt", icon: "colt_1911.PNG" },
- "colt 1911": { label: "Colt", icon: "colt_1911.PNG" },
- "colt m1911": { label: "Colt", icon: "colt_1911.PNG" },
- "frag grenade": { label: "Frag Grenade", icon: "" },
- grenade: { label: "Frag Grenade", icon: "" },
- "smoke grenade": { label: "Smoke Grenade", icon: "" },
+ bazooka: currentMatchWeapon("Bazooka", "bazooka_black.svg"),
+ "m1 bazooka": currentMatchWeapon("M1 Bazooka", "bazooka_black.svg"),
+ "us bazooka": currentMatchWeapon("M1 Bazooka", "bazooka_black.svg"),
+ bren: currentMatchWeapon("Bren Gun", "bren_gun_black.svg"),
+ "bren gun": currentMatchWeapon("Bren Gun", "bren_gun_black.svg"),
+ m1919: currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "m1919 browning": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "browning m1919": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ browning: currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "us tank machine gun": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "us coaxial mg": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "us vehicle mg": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "coaxial m1919": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ "m1919 coaxial": currentMatchWeapon("Browning M1919", "browing_m1919_black.svg"),
+ colt: currentMatchWeapon("Colt 1911", "colt_1911_black.svg"),
+ "colt 1911": currentMatchWeapon("Colt 1911", "colt_1911_black.svg"),
+ "colt m1911": currentMatchWeapon("Colt 1911", "colt_1911_black.svg"),
+ m1911: currentMatchWeapon("Colt 1911", "colt_1911_black.svg"),
+ "m1911 pistol": currentMatchWeapon("Colt 1911", "colt_1911_black.svg"),
+ dp27: currentMatchWeapon("DP-27", "dp27_black.svg"),
+ "dp 27": currentMatchWeapon("DP-27", "dp27_black.svg"),
+ "dp 27 lmg": currentMatchWeapon("DP-27", "dp27_black.svg"),
+ "flammenwerfer 41": currentMatchWeapon("Flammenwerfer 41", "flammenwefer41_black.svg"),
+ flammenwerfer: currentMatchWeapon("Flammenwerfer 41", "flammenwefer41_black.svg"),
+ flammenwefer41: currentMatchWeapon("Flammenwerfer 41", "flammenwefer41_black.svg"),
+ "german flamethrower": currentMatchWeapon("Flammenwerfer 41", "flammenwefer41_black.svg"),
+ "gewehr 43": currentMatchWeapon("Gewehr 43", "gewehr_black.svg"),
+ gewehr43: currentMatchWeapon("Gewehr 43", "gewehr_black.svg"),
+ g43: currentMatchWeapon("Gewehr 43", "gewehr_black.svg"),
+ kar98k: currentMatchWeapon("Kar98k", "kar98k_black.svg"),
+ "kar 98k": currentMatchWeapon("Kar98k", "kar98k_black.svg"),
+ kar98: currentMatchWeapon("Kar98k", "kar98k_black.svg"),
+ k98: currentMatchWeapon("Kar98k", "kar98k_black.svg"),
+ "k98k": currentMatchWeapon("Kar98k", "kar98k_black.svg"),
+ "scoped kar98k": currentMatchWeapon("Scoped Kar98k", "kar98k_x8_black.svg"),
+ "kar98k x8": currentMatchWeapon("Scoped Kar98k", "kar98k_x8_black.svg"),
+ "kar 98k x8": currentMatchWeapon("Scoped Kar98k", "kar98k_x8_black.svg"),
+ "german sniper kar98k": currentMatchWeapon("Scoped Kar98k", "kar98k_x8_black.svg"),
+ "sniper kar98k": currentMatchWeapon("Scoped Kar98k", "kar98k_x8_black.svg"),
+ "lee enfield no 4": currentMatchWeapon("Lee-Enfield No.4", "lee_enfield_n4_black.svg"),
+ "lee enfield no4": currentMatchWeapon("Lee-Enfield No.4", "lee_enfield_n4_black.svg"),
+ "lee enfield": currentMatchWeapon("Lee-Enfield No.4", "lee_enfield_n4_black.svg"),
+ enfield: currentMatchWeapon("Lee-Enfield No.4", "lee_enfield_n4_black.svg"),
+ luger: currentMatchWeapon("Luger P08", "luger_p08_black.svg"),
+ p08: currentMatchWeapon("Luger P08", "luger_p08_black.svg"),
+ "luger p08": currentMatchWeapon("Luger P08", "luger_p08_black.svg"),
+ "m1903 springfield": currentMatchWeapon("M1903 Springfield", "m1903_springfield_black.svg"),
+ springfield: currentMatchWeapon("M1903 Springfield", "m1903_springfield_black.svg"),
+ "us sniper springfield": currentMatchWeapon("M1903 Springfield", "m1903_springfield_black.svg"),
+ "scoped springfield": currentMatchWeapon("M1903 Springfield", "m1903_springfield_black.svg"),
+ "m1 carbine": currentMatchWeapon("M1 Carbine", "m1_carabine_black.svg"),
+ "m1 carabine": currentMatchWeapon("M1 Carbine", "m1_carabine_black.svg"),
+ "m1 garand": currentMatchWeapon("M1 Garand", "m1_garand_black.svg"),
+ garand: currentMatchWeapon("M1 Garand", "m1_garand_black.svg"),
+ "m2 flamethrower": currentMatchWeapon("M2 Flamethrower", "m2_flamethrower_black.svg"),
+ "us flamethrower": currentMatchWeapon("M2 Flamethrower", "m2_flamethrower_black.svg"),
+ "m3 grease gun": currentMatchWeapon("M3 Grease Gun", "m3_grease_gun_black.svg"),
+ "grease gun": currentMatchWeapon("M3 Grease Gun", "m3_grease_gun_black.svg"),
+ m97: currentMatchWeapon("Winchester M97", "m97_black.svg"),
+ "winchester m97": currentMatchWeapon("Winchester M97", "m97_black.svg"),
+ "trench gun": currentMatchWeapon("Winchester M97", "m97_black.svg"),
+ shotgun: currentMatchWeapon("Winchester M97", "m97_black.svg"),
+ mg34: currentMatchWeapon("MG34", "mg34_black.svg"),
+ "mg 34": currentMatchWeapon("MG34", "mg34_black.svg"),
+ "german tank machine gun": currentMatchWeapon("MG34", "mg34_black.svg"),
+ "german coaxial mg": currentMatchWeapon("MG34", "mg34_black.svg"),
+ "german vehicle mg": currentMatchWeapon("MG34", "mg34_black.svg"),
+ "coaxial mg34": currentMatchWeapon("MG34", "mg34_black.svg"),
+ "mg34 coaxial": currentMatchWeapon("MG34", "mg34_black.svg"),
+ mg42: currentMatchWeapon("MG42", "mg42_black.svg"),
+ "mg 42": currentMatchWeapon("MG42", "mg42_black.svg"),
+ "mosin nagant 1891": currentMatchWeapon("Mosin Nagant 1891", "mosing_nagant_1891_black.svg"),
+ "mosin 1891": currentMatchWeapon("Mosin Nagant 1891", "mosing_nagant_1891_black.svg"),
+ "mosin nagant 91 30": currentMatchWeapon("Mosin Nagant 91/30", "mosing_nagant_9130_black.svg"),
+ "mosin 9130": currentMatchWeapon("Mosin Nagant 91/30", "mosing_nagant_9130_black.svg"),
+ "mosin nagant 9130": currentMatchWeapon("Mosin Nagant 91/30", "mosing_nagant_9130_black.svg"),
+ "mosin nagant m38": currentMatchWeapon("Mosin Nagant M38", "mosing_nagant_m38_black.svg"),
+ "mosin m38": currentMatchWeapon("Mosin Nagant M38", "mosing_nagant_m38_black.svg"),
+ m38: currentMatchWeapon("Mosin Nagant M38", "mosing_nagant_m38_black.svg"),
+ mp40: currentMatchWeapon("MP40", "mp40_black.svg"),
+ "mp 40": currentMatchWeapon("MP40", "mp40_black.svg"),
+ "nagant m1895": currentMatchWeapon("Nagant M1895", "nagant_m1895_black.svg"),
+ "nagant revolver": currentMatchWeapon("Nagant M1895", "nagant_m1895_black.svg"),
+ panzerschreck: currentMatchWeapon("Panzerschreck", "panzerchreck_black.svg"),
+ panzerchreck: currentMatchWeapon("Panzerschreck", "panzerchreck_black.svg"),
+ raketenpanzerbuchse: currentMatchWeapon("Panzerschreck", "panzerchreck_black.svg"),
+ piat: currentMatchWeapon("PIAT", "piat_black.svg"),
+ "ppsh 41": currentMatchWeapon("PPSh-41", "ppsh41_black.svg"),
+ ppsh41: currentMatchWeapon("PPSh-41", "ppsh41_black.svg"),
+ ppsh: currentMatchWeapon("PPSh-41", "ppsh41_black.svg"),
+ "ppsh 41 drum": currentMatchWeapon("PPSh-41 Drum", "ppsh_41w_drum_black.svg"),
+ "ppsh 41 w drum": currentMatchWeapon("PPSh-41 Drum", "ppsh_41w_drum_black.svg"),
+ "ppsh drum": currentMatchWeapon("PPSh-41 Drum", "ppsh_41w_drum_black.svg"),
+ "ppsh41 drum": currentMatchWeapon("PPSh-41 Drum", "ppsh_41w_drum_black.svg"),
+ "ptrs 41": currentMatchWeapon("PTRS-41", "ptrs41_black.svg"),
+ ptrs41: currentMatchWeapon("PTRS-41", "ptrs41_black.svg"),
+ ptrs: currentMatchWeapon("PTRS-41", "ptrs41_black.svg"),
+ "scoped mosin nagant 91 30": currentMatchWeapon("Scoped Mosin Nagant 91/30", "scoped_mosin_nagant_9130_black.svg"),
+ "scoped mosin nagant 9130": currentMatchWeapon("Scoped Mosin Nagant 91/30", "scoped_mosin_nagant_9130_black.svg"),
+ "soviet sniper mosin": currentMatchWeapon("Scoped Mosin Nagant 91/30", "scoped_mosin_nagant_9130_black.svg"),
+ "sniper mosin": currentMatchWeapon("Scoped Mosin Nagant 91/30", "scoped_mosin_nagant_9130_black.svg"),
+ "scoped svt 40": currentMatchWeapon("Scoped SVT-40", "scoped_svt40_black.svg"),
+ "scoped svt40": currentMatchWeapon("Scoped SVT-40", "scoped_svt40_black.svg"),
+ "svt40 scoped": currentMatchWeapon("Scoped SVT-40", "scoped_svt40_black.svg"),
+ "sten mk v": currentMatchWeapon("Sten Mk V", "sten_mk_v_black.svg"),
+ sten: currentMatchWeapon("Sten Mk V", "sten_mk_v_black.svg"),
+ stg44: currentMatchWeapon("StG 44", "stg44_black.svg"),
+ "stg 44": currentMatchWeapon("StG 44", "stg44_black.svg"),
+ "sturmgewehr 44": currentMatchWeapon("StG 44", "stg44_black.svg"),
+ "svt 40": currentMatchWeapon("SVT-40", "svt40_black.svg"),
+ svt40: currentMatchWeapon("SVT-40", "svt40_black.svg"),
+ "m1a1 thompson": currentMatchWeapon("M1A1 Thompson", "thompson_black.svg"),
+ m1a1: currentMatchWeapon("M1A1 Thompson", "thompson_black.svg"),
+ "m1928 thompson": currentMatchWeapon("M1928 Thompson", "thompson_black.svg"),
+ thompson: currentMatchWeapon("Thompson", "thompson_black.svg"),
+ "tokarev tt 33": currentMatchWeapon("Tokarev TT-33", "tokarev_tt33_black.svg"),
+ "tokarev tt33": currentMatchWeapon("Tokarev TT-33", "tokarev_tt33_black.svg"),
+ tt33: currentMatchWeapon("Tokarev TT-33", "tokarev_tt33_black.svg"),
+ "walther p38": currentMatchWeapon("Walther P38", "walther_p38_black.svg"),
+ p38: currentMatchWeapon("Walther P38", "walther_p38_black.svg"),
+ webley: currentMatchWeapon("Webley Revolver", "webley_revolver_black.svg"),
+ "webley revolver": currentMatchWeapon("Webley Revolver", "webley_revolver_black.svg"),
unknown: { label: "Arma desconocida", icon: "" },
});
+validateCurrentMatchWeaponMapping();
+
+function currentMatchWeapon(label, fileName) {
+ return {
+ label,
+ icon: `${CURRENT_MATCH_BLACK_WEAPON_ICON_PATH}${fileName}`,
+ };
+}
+
+function validateCurrentMatchWeaponMapping() {
+ const expectedIcons = new Set(CURRENT_MATCH_BLACK_WEAPON_ICON_FILES);
+ const mappedIcons = new Set();
+ const invalidIcons = [];
+ Object.entries(CURRENT_MATCH_WEAPONS).forEach(([alias, weapon]) => {
+ if (!weapon.icon) {
+ return;
+ }
+ if (!weapon.icon.startsWith(CURRENT_MATCH_BLACK_WEAPON_ICON_PATH)) {
+ invalidIcons.push(`${alias}: ${weapon.icon}`);
+ return;
+ }
+ const fileName = weapon.icon.slice(CURRENT_MATCH_BLACK_WEAPON_ICON_PATH.length);
+ mappedIcons.add(fileName);
+ if (!expectedIcons.has(fileName)) {
+ invalidIcons.push(`${alias}: ${weapon.icon}`);
+ }
+ });
+ const unmappedIcons = [...expectedIcons].filter((fileName) => !mappedIcons.has(fileName));
+ if (unmappedIcons.length > 0 || invalidIcons.length > 0) {
+ console.warn("Current match weapon icon mapping needs review.", {
+ unmappedIcons,
+ invalidIcons,
+ });
+ }
+}
+
document.addEventListener("DOMContentLoaded", () => {
const params = new URLSearchParams(window.location.search);
const serverSlug = params.get("server") || "";
@@ -361,7 +533,7 @@ function renderKillFeedWeaponIcon(weapon) {
return `
+
Servidores públicos
+Servidores públicos
@@ -124,3 +125,4 @@ +