Compare commits
	
		
			2 Commits 
		
	
	
		
			be1266fa41
			...
			095afe221a
		
	
	| Author | SHA1 | Date | 
|---|---|---|
| 
							
							
								 | 
						095afe221a | |
| 
							
							
								 | 
						6099dc8697 | 
											
												
													File diff suppressed because one or more lines are too long
												
											
										
									
								
								
									
									
										
											41
										
									
									game.js
									
									
									
									
								
								
							
							
										
											41
										
									
									game.js
									
									
									
									
								| 
						 | 
				
			
			@ -2117,7 +2117,10 @@ function dE() {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	function wZ(title, w3, d) {
 | 
			
		||||
		wa(d), i.j(4, 5, new k("⚠️ " + title, w3, !0))
 | 
			
		||||
		wa(d), i.j(4, 5, new k("⚠️ " + title, {
 | 
			
		||||
			"3249": "No servers found",
 | 
			
		||||
			"4705": "Lobby not found"
 | 
			
		||||
		} [w3] || w3, !0))
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	function wa(d) {
 | 
			
		||||
| 
						 | 
				
			
			@ -4569,7 +4572,7 @@ function c7() {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	function a7b() {
 | 
			
		||||
		0 === a7Q ? g.wc(3249) : (a7Q === aq.kt.a7X - 1 && (a7Q = -1), a7T())
 | 
			
		||||
		0 === a7Q ? g.wc(3249) : 1 === a7Q && __fx.customLobby.isActive() ? (g.wc(3249), __fx.customLobby.setActive(false)) : (a7Q === aq.kt.a7X - 1 && (a7Q = -1), a7T())
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	function a7i(eR, a3m, a7h) {
 | 
			
		||||
| 
						 | 
				
			
			@ -4592,7 +4595,7 @@ function c7() {
 | 
			
		|||
			ll = Math.floor(.5 * (an.ir - bR.gap - a1v - a7M)) + a1v + bR.gap;
 | 
			
		||||
		return lk < eP && eP < lk + a2u && ll < eR && eR < ll + a7M && (this.xZ(), aL.wq(eP, eR, !1), !0)
 | 
			
		||||
	}, this.xZ = function() {
 | 
			
		||||
		aq.kt.wf(3260), i.kt.we()
 | 
			
		||||
		aq.kt.wf(3260), __fx.customLobby.setActive(false), i.kt.we()
 | 
			
		||||
	}, this.iC = function() {
 | 
			
		||||
		6 === aN.wU() && (a7S ? bU.ds > lV + 12e3 && g.wc(3250) : bU.ds > lV + 12e3 && a7b(), 100 < (a7K += .07 * a7L * (a7K < 16 ? 5 + a7K : 84 < a7K ? 105 - a7K : 17)) ? (a7K = 100, a7L = -1) : a7K < 0 && (a7K = 0, a7L = 1), a7O = "rgba(0," +
 | 
			
		||||
			Math.floor(190 - 1.9 * a7K) + "," + Math.floor(120 - 1.2 * a7K) + "," + (.4 + .004 * a7K) + ")", a7P = "rgba(0," + Math.floor(1.9 * a7K) + "," + Math.floor(1.2 * a7K) + "," + (.8 - .004 * a7K) + ")", bU.dO = !0)
 | 
			
		||||
| 
						 | 
				
			
			@ -4762,8 +4765,9 @@ function cY() {
 | 
			
		|||
			}(z + 2);
 | 
			
		||||
			a8T(7, aP.get(4)), a8U(8, aY.tl.u6 + aY.tl.uN), a8U(9, aY.tl.u6 + aY.tl.uL), a8U(10, 1024 - aY.tl.u3), a8T(11, aP.get(19)), a8T(12, aP.get(20)), bU.dO = !0
 | 
			
		||||
		}, this.xY = function() {
 | 
			
		||||
		this.wg(), aq.kt.wf(3240), aN.setState(0), i.j(5, 5)
 | 
			
		||||
	}, this.wg = function() {
 | 
			
		||||
			this.wg(), aq.kt.wf(3240), __fx.customLobby.setActive(false), aN.setState(0), i.j(5, 5)
 | 
			
		||||
		},
 | 
			
		||||
		__fx.customLobby.setLeaveFunction(() => this.xY()), this.wg = function() {
 | 
			
		||||
			os = [], a8D = []
 | 
			
		||||
		}, this.a1t = function() {
 | 
			
		||||
			return a8J
 | 
			
		||||
| 
						 | 
				
			
			@ -5909,8 +5913,9 @@ function cK() {
 | 
			
		|||
		new Uint16Array(a1.eF), this.g6 = new Uint32Array(a1.eF), this.t8 = new Uint32Array(a1.eF), this.gK = new Uint32Array(a1.eF), this.fi = null, this.fw = null, this.fx = null, this.ei = null, this.oL = new Uint16Array(a1.eF), this.iK =
 | 
			
		||||
		new Uint16Array(a1.eF), this.iL = new Uint16Array(a1.eF), this.vo = new Uint16Array(a1.eF), this.vu = new Uint8Array(a1.eF), this.yg = new Uint16Array(a1.eF), this.dH = function(tb) {
 | 
			
		||||
			for (var z = tb.length - 1; 0 <= z; z--) this.a1G[z] = this.w2[z] = tb[z].name, this.yb[z] = tb[z].a9H;
 | 
			
		||||
			this.lI.fill(0), this.ht.fill(0), this.hv.fill(0), this.hu.fill(0), this.hw.fill(0), this.g6.fill(0), this.t8.fill(0), this.gK.fill(0), __fx.donationsTracker.reset(), __fx.leaderboardFilter.reset(), this.fi = new Array(a1.eF), this.fw =
 | 
			
		||||
				new Array(a1.eF), this.fx = new Array(a1.eF), this.ei = new Array(a1.eF), this.oL.fill(0), this.iK.fill(0), this.iL.fill(0), this.vo.fill(0), this.vu.fill(0), this.yg.fill(0)
 | 
			
		||||
			this.lI.fill(0), this.ht.fill(0), this.hv.fill(0), this.hu.fill(0), this.hw.fill(0), this.g6.fill(0), this.t8.fill(0), this.gK.fill(0), __fx.donationsTracker.reset(), __fx.leaderboardFilter.reset(), __fx.customLobby.isActive() && __fx
 | 
			
		||||
				.customLobby.setActive(false), this.fi = new Array(a1.eF), this.fw = new Array(a1.eF), this.fx = new Array(a1.eF), this.ei = new Array(a1.eF), this.oL.fill(0), this.iK.fill(0), this.iL.fill(0), this.vo.fill(0), this.vu.fill(0), this
 | 
			
		||||
				.yg.fill(0)
 | 
			
		||||
		}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -6194,7 +6199,7 @@ function aDY() {
 | 
			
		|||
			aEb = [130, 117, 106],
 | 
			
		||||
			aEc = [12, 12, 68],
 | 
			
		||||
			aEd = [270, 210, 1024, 28, 19, 33, 50, 8, 26, 3, 9];
 | 
			
		||||
		this.sh = new Array(bI.aBG + 1), this.sh[0] = {
 | 
			
		||||
		this.sh = new Array(bI.aBG + 1), __fx.customLobby.setMapInfo(this.sh), this.sh[0] = {
 | 
			
		||||
			name: L(114),
 | 
			
		||||
			t: 230,
 | 
			
		||||
			ir: 230,
 | 
			
		||||
| 
						 | 
				
			
			@ -7044,7 +7049,10 @@ function aFc() {
 | 
			
		|||
		}, p.mH, !1),
 | 
			
		||||
		new l("FX Client settings", function() {
 | 
			
		||||
			__fx.WindowManager.openWindow("settings");
 | 
			
		||||
		}, "rgba(0, 0, 20, 0.5")
 | 
			
		||||
		}, "rgba(0, 0, 20, 0.5)"),
 | 
			
		||||
		new l("Join/Create custom lobby", function() {
 | 
			
		||||
			__fx.customLobby.showJoinPrompt();
 | 
			
		||||
		}, "rgba(20, 9, 77, 0.5)")
 | 
			
		||||
	], aG6 = new pg(bY.dZ.data[122]);
 | 
			
		||||
	for (var z = 0; z < aHj.length; z++) aHj[z].button.style.position = "absolute";
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -7071,6 +7079,7 @@ function aFc() {
 | 
			
		|||
			a3h = (b2.ow.qN(aG6.d, eP, a6g, a3h, aHr), b2.ow.qN(aHj[4].button, eP + a3h + gap, a6g, aHr, aHr), .5 * (aHH.eR + aHH.ir - (a6g += aHr + gap) - gap));
 | 
			
		||||
		b2.ow.qN(aHj[0].button, eP, a6g, t, a3h), b2.ow.qN(aHj[1].button, eP + t + gap, a6g, t, a3h), b2.ow.qN(aHj[2].button, eP, a6g + a3h + gap, t, a3h), b2.ow.qN(aHj[3].button, eP + t + gap, a6g + a3h + gap, t, a3h);
 | 
			
		||||
		b2.ow.qN(aHj[5].button, eP, a6g + a3h * 2 + gap * 2, t * 2 + gap, a3h / 3);
 | 
			
		||||
		b2.ow.qN(aHj[6].button, eP, a6g + a3h * 2.33 + gap * 3, t * 2 + gap, a3h / 3);
 | 
			
		||||
		for (var z = 0; z < aHj.length; z++) aHj[z].button.style.font = b2.ow.q5(0, b2.ow.yT(.065 * aHH.ir)), b2.ow.p8(aHj[z].button, 5);
 | 
			
		||||
		aG6.d.style.font = b2.ow.q5(0, b2.ow.yT(.08 * aHH.ir)), b2.ow.p8(aG6.d, 5)
 | 
			
		||||
	}, this.qn = function() {
 | 
			
		||||
| 
						 | 
				
			
			@ -7428,7 +7437,12 @@ function aFT() {
 | 
			
		|||
			i.rX(), aO.dH()
 | 
			
		||||
		}, this.aHm = function() {
 | 
			
		||||
			i.rX(), aM.a7U(bY.dZ.data[10].value), aM.dH()
 | 
			
		||||
	}, this.a6a = function() {
 | 
			
		||||
		},
 | 
			
		||||
		__fx.customLobby.setJoinFunction(() => {
 | 
			
		||||
			i.rX();
 | 
			
		||||
			aM.a7U(0);
 | 
			
		||||
			aM.dH();
 | 
			
		||||
		}), this.a6a = function() {
 | 
			
		||||
			i.j(0 === aN.wU() ? 5 : 0)
 | 
			
		||||
		}, this.aHE = function() {
 | 
			
		||||
			if (1 === bY.dZ.data[130].value) i.j(8, i.a9d().aFX, new q0(24, {
 | 
			
		||||
| 
						 | 
				
			
			@ -7750,7 +7764,7 @@ function aIn() {
 | 
			
		|||
		return aJ6[z].aIf && aJ4[z].a7S()
 | 
			
		||||
	}, this.send = function(wR, a0) {
 | 
			
		||||
		aJE(wR), aJ4[wR].send(a0)
 | 
			
		||||
	}, this.x7 = function(wR) {
 | 
			
		||||
	}, __fx.customLobby.setSendFunction(this.send), this.x7 = function(wR) {
 | 
			
		||||
		8 === aN.wU() && (aJ6[wR].aJ8 = !0, aq.kx.jh = !0)
 | 
			
		||||
	}, this.close = function(wR, aJI) {
 | 
			
		||||
		di(wR) && aJ4[wR].close(aJI)
 | 
			
		||||
| 
						 | 
				
			
			@ -7775,7 +7789,7 @@ function aIo() {
 | 
			
		|||
 | 
			
		||||
function aIv() {
 | 
			
		||||
	this.aJO = function(wR, a0) {
 | 
			
		||||
		b7.dH(a0), 0 === b7.size ? aq.kt.aJJ(wR, 3205) : ((0 === b7.o1(1) ? function(wR) {
 | 
			
		||||
		b7.dH(a0), 0 === b7.size ? aq.kt.aJJ(wR, 3205) : __fx.customLobby.isCustomMessage(a0) || ((0 === b7.o1(1) ? function(wR) {
 | 
			
		||||
			var aJS = b7.o1(6);
 | 
			
		||||
			0 === aJS ? function(wR) {
 | 
			
		||||
					if (0 === wR && 8 !== aN.wU()) {
 | 
			
		||||
| 
						 | 
				
			
			@ -8099,7 +8113,8 @@ function aJF() {
 | 
			
		|||
	this.dH = function(o0, aKN) {
 | 
			
		||||
		wR = o0, aFX = aKN;
 | 
			
		||||
		o0 = aKM[0];
 | 
			
		||||
		wR < aq.kt.a81 ? o0 += aq.kt.aJ5[wR] + aKM[1 + dS] : o0 += aq.kt.aJ5[0] + "/i" + (1 + dS) + (wR - aq.kt.a82) + "/", (b = new WebSocket(o0)).binaryType = "arraybuffer", b.onopen = aJG, b.onmessage = aKR, b.onclose = aJL, b.onerror = aKS
 | 
			
		||||
		wR < aq.kt.a81 ? o0 += aq.kt.aJ5[wR] + aKM[1 + dS] : o0 += aq.kt.aJ5[0] + "/i" + (1 + dS) + (wR - aq.kt.a82) + "/", (b = new WebSocket(__fx.customLobby.isActive() && wR === 1 ? __fx.customLobby.getSocketURL() : o0)).binaryType =
 | 
			
		||||
			"arraybuffer", b.onopen = aJG, b.onmessage = aKR, b.onclose = aJL, b.onerror = aKS
 | 
			
		||||
	}, this.aKP = function() {
 | 
			
		||||
		return b.readyState === b.CONNECTING
 | 
			
		||||
	}, this.a7S = function() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
								
									
									
										
											10
										
									
									index.html
									
									
									
									
								
								
							
							
										
											10
										
									
									index.html
									
									
									
									
								| 
						 | 
				
			
			@ -35,7 +35,7 @@
 | 
			
		|||
    <meta itemprop="image" content="https://fxclient.github.io/FXclient/assets/logo.png">
 | 
			
		||||
    
 | 
			
		||||
    <!-- FX Client CSS -->
 | 
			
		||||
    <link rel="stylesheet" href="main.css?1728538364699">
 | 
			
		||||
    <link rel="stylesheet" href="main.css?1728927690438">
 | 
			
		||||
    <!-- Game CSS -->
 | 
			
		||||
    <style>
 | 
			
		||||
        html,
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +59,7 @@
 | 
			
		|||
 | 
			
		||||
<body onload="aiCommand746(0);">
 | 
			
		||||
    <canvas id="canvasA" width="128" height="128"></canvas>
 | 
			
		||||
    <span><div class="window flex settings" style="display:none">
 | 
			
		||||
    <span id="windowContainer"><div class="window flex-column settings" style="display:none">
 | 
			
		||||
        <h1>Settings</h1>
 | 
			
		||||
        <div class="scrollable"></div>
 | 
			
		||||
        <hr>
 | 
			
		||||
| 
						 | 
				
			
			@ -79,8 +79,8 @@
 | 
			
		|||
        <p id="donationhistory_note">Note: donations from bots are not shown here</p>
 | 
			
		||||
        <table><tbody id="donationhistory_content"></tbody></table>
 | 
			
		||||
    </div></span>
 | 
			
		||||
    <script src="variables.js?1728538364699"></script>
 | 
			
		||||
    <script src="fx.bundle.js?1728538364699"></script>
 | 
			
		||||
    <script src="game.js?1728538364699"></script>
 | 
			
		||||
    <script src="variables.js?1728927690438"></script>
 | 
			
		||||
    <script src="fx.bundle.js?1728927690438"></script>
 | 
			
		||||
    <script src="game.js?1728927690438"></script>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
								
									
									
										
											29
										
									
									main.css
									
									
									
									
								
								
							
							
										
											29
										
									
									main.css
									
									
									
									
								| 
						 | 
				
			
			@ -34,11 +34,31 @@
 | 
			
		|||
	z-index         : 10;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.window.flex {
 | 
			
		||||
.flex {
 | 
			
		||||
	display: flex;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.flex-column {
 | 
			
		||||
	display       : flex;
 | 
			
		||||
	flex-direction: column;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.customlobby-main {
 | 
			
		||||
	display: flex;
 | 
			
		||||
    justify-content: space-evenly;
 | 
			
		||||
    flex-wrap: wrap;
 | 
			
		||||
	gap: 10px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.lobby-player {
 | 
			
		||||
	margin: 5px;
 | 
			
		||||
	width: 15rem;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.text-align-center {
 | 
			
		||||
	text-align: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
hr {
 | 
			
		||||
	width: 100%;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -54,6 +74,13 @@ hr {
 | 
			
		|||
	transition      : 0.2s;
 | 
			
		||||
	border          : 1px solid #fff;
 | 
			
		||||
	border-radius   : 5px;
 | 
			
		||||
	margin          : 5px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.window.settings button,
 | 
			
		||||
.window.settings input,
 | 
			
		||||
.window.settings select {
 | 
			
		||||
	margin: 0px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
h1 {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue