Skip to content

Commit 05e3615

Browse files
committed
CS2News Update for this day. :-)
1 parent 6e28490 commit 05e3615

File tree

5 files changed

+191
-69
lines changed

5 files changed

+191
-69
lines changed

cs2update/2025-jan-30.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: "Pro CS2 - Competition Server Updates"
3+
hide_table_of_contents: true
4+
date: 2025-01-30 09:05
5+
---
6+
7+
**Custom Configs & Improvements** 🎉<br/>
8+
9+
### 🚀 **New Features**
10+
**Config Change Requests for RetakesAllocator & MultiAddonManager**
11+
- Users can now request configuration changes on the RetakesAllocator directly for their own CS2 servers. And MultiAddonManager, allowing for easy customization of specific plugins or any other server-dependent requirements.
12+
13+
**MatchZy Practice Mode Enhancement**
14+
- Implemented `.breakrestore` command for smoother practice sessions, allowing player to quickly reset its state (props, particles, etc)
15+
16+
### 🛠️ **Technical Fixes**
17+
**MatchZy Warmup Optimization:**
18+
- Updated `warmup.cfg` to enforce competitive integrity during warmup phases by properly restricting grenade access, trajectory displays, and grenade-cam features

package-lock.json

Lines changed: 35 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
"prism-react-renderer": "^2.4.1",
3636
"react": "^18.3.1",
3737
"react-dom": "^18.3.1",
38+
"react-markdown": "^9.0.3",
3839
"rehype": "^13.0.2",
3940
"remark": "^15.0.1",
4041
"rss": "^1.2.2",

src/components/CommandSearch.js

Lines changed: 51 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import React, { useState } from 'react';
2+
import ReactMarkdown from 'react-markdown';
23

34
export default function CommandSearch({ commandCategories }) {
45
const [search, setSearch] = useState('');
@@ -49,42 +50,57 @@ export default function CommandSearch({ commandCategories }) {
4950
filteredCategories.map((category, index) => (
5051
<div key={index}>
5152
<h3>{category.title}</h3>
52-
<ul>
53-
{category.commands.map((cmd, cmdIndex) => (
54-
<li key={cmdIndex}>
55-
<strong>{cmd.command}</strong>
56-
{cmd.syntax && (
57-
<div style={{ marginTop: '5px', color: '#1a73e8', fontStyle: 'italic' }}>
58-
<strong>Syntax:</strong> {cmd.syntax}
59-
</div>
60-
)}
61-
{cmd.aliases && Array.isArray(cmd.aliases) && cmd.aliases.length > 0 && (
62-
<span style={{ marginLeft: '10px', color: '#888' }}>
63-
(Aliases: {cmd.aliases.join(', ')})
64-
</span>
65-
)}
66-
<br />
67-
{cmd.description}
68-
{cmd.example && (
69-
<div style={{ marginTop: '5px', color: '#1a73e8', fontWeight: 'bold' }}>
70-
<strong>Example:</strong> {cmd.example}
71-
</div>
72-
)}
73-
{cmd.arguments && typeof cmd.arguments === 'object' && (
74-
<div style={{ marginTop: '5px', color: '#555', fontStyle: 'italic' }}>
75-
<strong>Arguments:</strong>
76-
<ul style={{ margin: '5px 0 0 15px', padding: 0, listStyleType: 'disc' }}>
77-
{Object.entries(cmd.arguments).map(([argName, argDesc], index) => (
78-
<li key={index}>
79-
<strong>{argName}</strong>: {argDesc}
80-
</li>
81-
))}
82-
</ul>
83-
</div>
53+
<ul>
54+
{category.commands.map((cmd, cmdIndex) => (
55+
<li key={cmdIndex} style={{ marginBottom: '15px' }}>
56+
<strong>{cmd.command}</strong> {/* Command Title */}
57+
58+
{/* Render description with Markdown */}
59+
{cmd.description && (
60+
<ReactMarkdown
61+
components={{
62+
p: ({ node, children }) => (
63+
<div style={{ margin: '5px 0', color: '#888' }}>{children}</div>
64+
),
65+
}}
66+
>
67+
{cmd.description}
68+
</ReactMarkdown>
8469
)}
85-
</li>
86-
))}
87-
</ul>
70+
71+
{cmd.syntax && ( /* Syntax block comes after description */
72+
<div style={{ marginTop: '5px', color: '#1a73e8', fontStyle: 'italic' }}>
73+
<strong>Syntax:</strong> {cmd.syntax}
74+
</div>
75+
)}
76+
77+
{cmd.aliases && Array.isArray(cmd.aliases) && cmd.aliases.length > 0 && (
78+
<span style={{ marginLeft: '10px', color: '#888' }}>
79+
(Aliases: {cmd.aliases.join(', ')})
80+
</span>
81+
)}
82+
83+
{cmd.example && (
84+
<div style={{ marginTop: '5px', color: '#1a73e8', fontWeight: 'bold' }}>
85+
<strong>Example:</strong> {cmd.example}
86+
</div>
87+
)}
88+
89+
{cmd.arguments && typeof cmd.arguments === 'object' && (
90+
<div style={{ marginTop: '5px', color: '#555', fontStyle: 'italic' }}>
91+
<strong>Arguments:</strong>
92+
<ul style={{ margin: '5px 0 0 15px', padding: 0, listStyleType: 'disc' }}>
93+
{Object.entries(cmd.arguments).map(([argName, argDesc], index) => (
94+
<li key={index}>
95+
<strong>{argName}</strong>: {argDesc}
96+
</li>
97+
))}
98+
</ul>
99+
</div>
100+
)}
101+
</li>
102+
))}
103+
</ul>
88104
</div>
89105
))
90106
) : (

src/css/custom.css

Lines changed: 86 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,71 @@ details {
4848
--docusaurus-details-decoration-color: transparent; /* No decoration */
4949
}
5050

51+
/********** Ensure long titles wrap properly **********/
52+
.recent-posts li a {
53+
display: block;
54+
white-space: normal;
55+
word-wrap: break-word;
56+
overflow-wrap: anywhere;
57+
line-height: 1.6;
58+
}
59+
60+
/********** Fix layout and ensure spacing **********/
61+
.main-container {
62+
display: flex;
63+
flex-wrap: nowrap;
64+
}
65+
66+
.main-content {
67+
flex-grow: 1;
68+
overflow-y: auto;
69+
}
70+
71+
/* Limit scrolling for main content */
72+
.main-content {
73+
margin-left: 320px; /* Matches sidebar width */
74+
}
75+
76+
/*********** Consolidated Sidebar Styles ***********/
77+
.sidebar {
78+
width: 300px; /* Default width for desktop */
79+
max-width: 300px;
80+
padding-right: 10px;
81+
overflow-y: auto;
82+
position: relative; /* Fix layout issues */
83+
}
84+
85+
/* Responsive sidebar for mobile view */
86+
@media (max-width: 768px) {
87+
.sidebar {
88+
width: 100%; /* Full width on mobile */
89+
position: static; /* Remove fixed position */
90+
padding-bottom: 20px;
91+
overflow-y: auto;
92+
}
93+
94+
.main-content {
95+
margin-left: 0;
96+
overflow-y: visible;
97+
}
98+
}
99+
100+
/*********** Fix Content Layout ***********/
101+
.main-container {
102+
display: flex;
103+
flex-wrap: nowrap;
104+
}
105+
106+
.main-content {
107+
flex-grow: 1;
108+
overflow-y: auto;
109+
padding: 20px;
110+
}
111+
112+
/*********** Smooth Scrolling for Links ***********/
113+
html {
114+
scroll-behavior: smooth;
115+
}
51116

52117
/* Add the vertical bar using a pseudo-element */
53118
details::before {
@@ -132,11 +197,15 @@ img, iframe {
132197
z-index: 100;
133198
}
134199

200+
/********** Smooth Scrolling **********/
201+
html {
202+
scroll-behavior: smooth;
203+
}
204+
135205
/* make tables fullwidth */
136206
table {
137-
display: table;
138-
width: auto;
139-
margin: 0 auto;
207+
width: auto;
208+
margin: 0 auto;
140209
}
141210

142211
/* smaller edit button */
@@ -157,6 +226,13 @@ table {
157226
font-size: 16px;
158227
}
159228

229+
.sidebar-title {
230+
font-size: 0.8rem;
231+
letter-spacing: 0.05rem;
232+
text-transform: uppercase;
233+
font-weight: 600;
234+
}
235+
160236
.menu>.menu__list .menu__list{
161237
border-left: 2px solid var(--ifm-color-primary);
162238
padding: 0px;
@@ -181,14 +257,6 @@ table {
181257
vertical-align: middle;
182258
}
183259

184-
.sidebar-title {
185-
font-size: 0.8rem;
186-
letter-spacing: 0.05rem;
187-
text-transform: uppercase;
188-
font-weight: 600;
189-
color: var(--ifm-color-gray-600);
190-
}
191-
192260
.sidebar-title:not(:first-child) {
193261
margin-top: 25px;
194262
}
@@ -268,8 +336,7 @@ table {
268336
width: 100%;
269337
}
270338

271-
/* Navigation Bar Scaling */
272-
@media (max-width: 1550px) and (min-width: 996px){
339+
@media (max-width: 1550px) and (min-width: 996px) {
273340
.navbar {
274341
height: auto;
275342
}
@@ -279,40 +346,25 @@ table {
279346
grid-template-columns: auto auto auto;
280347
justify-items: right;
281348
column-gap: 0px;
282-
row-gap: 0px;
283349
align-items: center;
284-
padding: 0.3rem;
285-
padding-top: 0px;
286-
}
287-
288-
.navbar__items--right .navbarSearchContainer_node_modules-\@docusaurus-theme-classic-lib-theme-Navbar-Search-styles-module {
289-
grid-row: 2;
290-
grid-column: span 3;
291350
}
292351
}
293352

294-
@media (max-width: 1350px) and (min-width: 996px){
295-
.navbar__items:not(.navbar__items--right) {
296-
display: grid;
297-
grid-template-columns: auto auto auto auto;
298-
justify-content: left;
299-
column-gap: 0px;
300-
row-gap: 0px;
301-
align-items: center;
302-
padding: 0.3rem;
353+
@media (max-width: 996px) {
354+
.navbar__search-input {
355+
width: 2rem;
303356
}
304-
357+
}
305358
.navbar__brand {
306359
grid-row: span 2;
307360
}
308361

309362
.navbar__inner {
310363
align-items: center;
311364
}
312-
}
313365

314-
@media (max-width: 996px){
366+
@media (max-width: 996px) {
315367
.navbar__search-input {
316-
width: 2rem;
368+
width: 2rem;
317369
}
318370
}

0 commit comments

Comments
 (0)