Skip to content

Commit 58d281d

Browse files
committed
display gamemode on server info if not sandbox
1 parent b8d80fa commit 58d281d

File tree

3 files changed

+10835
-10955
lines changed

3 files changed

+10835
-10955
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"author": "Tenri",
66
"private": true,
77
"scripts": {
8-
"dev": "cross-env NODE_ENV=development nodemon --unhandled-rejections=warn src/server/index.js --watch src/server ",
8+
"dev": "cross-env NODE_ENV=development NODE_OPTIONS=--openssl-legacy-provider nodemon --unhandled-rejections=warn src/server/index.js --watch src/server",
99
"build": "nuxt build",
1010
"start": "cross-env NODE_ENV=production node src/server/index.js",
1111
"generate": "nuxt generate"

src/client/components/ServerInfo.vue

Lines changed: 40 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@
44
.background
55
.card-content(@mousedown="startJoin", @mouseup="endJoin")
66
p.title.has-text-primary-light {{ idToName[id] || id }}
7-
p.subtitle
8-
| {{ server.playerinfo.length > 0 ?
9-
|
10-
| server.playerinfo.length + (" player" + (server.playerinfo.length != 1 ? "s" : "")) :
11-
|
12-
| "Empty,"
13-
| }} on {{ server.serverinfo.map }}
14-
br
15-
| {{ ((server.time - server.started) / 60 / 60).toFixed(1) }} hours uptime
7+
.subtitle
8+
div(style="display: flex; align-items: center;")
9+
span {{ playerCount }} on  
10+
span.small-code {{ server.serverinfo.map }}
11+
template(v-if="!server.serverinfo.gm.includes('sandbox')")
12+
span.small-code.gamemode(style="margin-left: 0.5em") {{ server.serverinfo.gm }}
13+
.subtitle
14+
| {{ ((server.time - server.started) / 60 / 60).toFixed(1) }} hours uptime
1615
ul.playerlist(v-if="server.playerinfo.length > 0", @mousedown.stop, @mouseup.stop)
1716
li.player(v-for="player in server.playerinfo", :class="{ 'is-admin': player.IsAdmin }")
1817
a(
@@ -52,16 +51,13 @@
5251
bottom: 0;
5352
left: 0;
5453
right: 0;
55-
background:
56-
linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
54+
background: linear-gradient(0deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
5755
url("/img/gm_construct_m.jpg");
5856
background-size: cover;
5957
background-position: center center;
6058
filter: brightness(100%) blur(3px);
6159
transform-origin: center;
62-
transition:
63-
margin 0.25s ease-out,
64-
filter 0.25s ease-out;
60+
transition: margin 0.25s ease-out, filter 0.25s ease-out;
6561
}
6662
}
6763
@@ -133,6 +129,27 @@
133129
}
134130
}
135131
132+
.small-code {
133+
font-size: 11pt;
134+
font-family: monospace;
135+
font-weight: 400;
136+
}
137+
138+
.gamemode {
139+
--x-padding: 3px;
140+
--height: 24px;
141+
display: inline-flex;
142+
justify-content: center;
143+
align-items: center;
144+
height: var(--height);
145+
border-radius: calc(var(--height) + var(--x-padding));
146+
padding: 3px 6px;
147+
background: linear-gradient(225deg, hsl(25, 88%, 40%) 0%, hsl(25, 88%, 30%) 100%);
148+
color: white;
149+
font-size: 9pt;
150+
opacity: 1;
151+
}
152+
136153
.server-info-bottom {
137154
display: flex;
138155
justify-content: space-around;
@@ -163,11 +180,20 @@ export default {
163180
mY: null,
164181
};
165182
},
183+
computed: {
184+
playerCount() {
185+
return this.server.playerinfo.length > 0
186+
? this.server.playerinfo.length +
187+
(" player" + (this.server.playerinfo.length !== 1 ? "s" : ""))
188+
: "Empty,";
189+
},
190+
},
166191
methods: {
167192
startJoin(ev) {
168193
[this.mX, this.mY] = [ev.x, ev.y];
169194
},
170195
endJoin(ev) {
196+
if (ev.button !== 0) return; // Only handle left click
171197
if (this.mX - ev.x === 0 && this.mY - ev.y === 0)
172198
window.open(
173199
`steam://connect/${this.server.serverinfo.address}:${this.server.serverinfo.port}`,

0 commit comments

Comments
 (0)