switch to 1v1

This commit is contained in:
EmulatorOS 2022-07-09 16:22:41 -05:00 committed by GitHub
parent a76254ed08
commit 8280dfe709
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 138 additions and 7575 deletions

View file

@ -1,24 +0,0 @@
function UnityProgress(gameInstance, progress) {
if (!gameInstance.Module)
return;
if (!gameInstance.logo) {
gameInstance.logo = document.createElement("div");
gameInstance.logo.className = "logo " + gameInstance.Module.splashScreenStyle;
gameInstance.container.appendChild(gameInstance.logo);
}
if (!gameInstance.progress) {
gameInstance.progress = document.createElement("div");
gameInstance.progress.className = "progress " + gameInstance.Module.splashScreenStyle;
gameInstance.progress.empty = document.createElement("div");
gameInstance.progress.empty.className = "empty";
gameInstance.progress.appendChild(gameInstance.progress.empty);
gameInstance.progress.full = document.createElement("div");
gameInstance.progress.full.className = "full";
gameInstance.progress.appendChild(gameInstance.progress.full);
gameInstance.container.appendChild(gameInstance.progress);
}
gameInstance.progress.full.style.width = (100 * progress) + "%";
gameInstance.progress.empty.style.width = (100 * (1 - progress)) + "%";
if (progress == 1)
gameInstance.logo.style.display = gameInstance.progress.style.display = "none";
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -1,24 +0,0 @@
html,body{margin:0;padding:0}canvas{padding:0;margin:0 auto;display:block;width:1024px;height:640px}body{overflow:hidden}div#loadingBox{width:100%;height:20px;position:absolute;top:50%;margin-top:-10px;text-align:center}div#bgBar{position:absolute;width:200px;margin-left:-100px;left:50%;height:2px;display:block;background-color:#333}div#progressBar{left:50%;position:absolute;margin-left:-100px;width:0;height:2px;background-color:#fff;border-radius:2px}div#bgBar{border-radius:2px}p#loadingInfo{color:#666;letter-spacing:1px;position:absolute;width:100%;font-family:monaco,sans-serif;text-transform:uppercase;text-align:center;font-size:14px;margin-top:10px}
body {margin: 0; padding: 0}.webgl-content * {border: 0; margin: 0; padding: 0}
.webgl-content {position: absolute} .webgl-content, #gameContainer, #unityContainer, canvas {width:100%!important; height: 100%!important}
.webgl-content .logo, .progress {position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
.webgl-content .logo {background: url('progressLogo.Light.png') no-repeat center / contain; width: 154px; height: 130px;}
.webgl-content .progress {height: 18px; width: 141px; margin-top: 90px;}
.webgl-content .progress .empty {background: url('progressEmpty.Light.png') no-repeat right / cover; float: right; width: 100%; height: 100%; display: inline-block;}
.webgl-content .progress .full {background: url('progressFull.Light.png') no-repeat left / cover; float: left; width: 0%; height: 100%; display: inline-block;}
.webgl-content .logo.Dark {background-image: url('progressLogo.Dark.png');}
.webgl-content .progress.Dark .empty {background-image: url('progressEmpty.Dark.png');}
.webgl-content .progress.Dark .full {background-image: url('progressFull.Dark.png');}
.webgl-content .footer {margin-top: 5px; height: 38px; line-height: 38px; font-family: Helvetica, Verdana, Arial, sans-serif; font-size: 18px;}
.webgl-content .footer .webgl-logo, .title, .fullscreen {height: 100%; display: inline-block; background: transparent center no-repeat;}
/*.webgl-content .footer .webgl-logo {background-image: url('webgl-logo.png'); width: 204px; float: left;}*/
.webgl-content .footer .title {margin-right: 10px; float: right;}
.webgl-content .footer .fullscreen {background-image: url('fullscreen.png'); width: 38px; float: right;}
* {
background-color: #2C3547;
}

6893
baldi.js

File diff suppressed because one or more lines are too long

View file

@ -1,16 +0,0 @@
{
"companyName": "Mystman12",
"productName": "Baldi's Basics in Education and Learning",
"productVersion": "1.4.3",
"dataUrl": "https://cdn.glitch.com/bb74b7a3-d636-40fd-8ad9-c777b5ae5515%2Fbaldi.data.unityweb?v=1584033075597",
"wasmCodeUrl": "https://cdn.glitch.com/bb74b7a3-d636-40fd-8ad9-c777b5ae5515%2Fbaldi.wasm.code.unityweb?v=1584033044601",
"wasmFrameworkUrl": "https://cdn.glitch.com/bb74b7a3-d636-40fd-8ad9-c777b5ae5515%2Fbaldi.wasm.framework.unityweb?v=1584033041630",
"graphicsAPI": ["WebGL 2.0","WebGL 1.0"],
"webglContextAttributes": {"preserveDrawingBuffer": false},
"splashScreenStyle": "Dark",
"backgroundColor": "#000000",
"cacheControl": {"default": "must-revalidate"},
"developmentBuild": false,
"multithreading": false,
"unityVersion": "2019.2.20f1"
}

View file

@ -1,599 +0,0 @@
!(function(e, t) {
"object" == typeof exports && "undefined" != typeof module
? (module.exports = t())
: "function" == typeof define && define.amd
? define(t)
: ((e = e || self).firebase = t());
})(this, function() {
"use strict";
var r = function(e, t) {
return (r =
Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array &&
function(e, t) {
e.__proto__ = t;
}) ||
function(e, t) {
for (var r in t) t.hasOwnProperty(r) && (e[r] = t[r]);
})(e, t);
};
var n = function() {
return (n =
Object.assign ||
function(e) {
for (var t, r = 1, n = arguments.length; r < n; r++)
for (var o in (t = arguments[r]))
Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
return e;
}).apply(this, arguments);
};
function d(e, t) {
if (!(t instanceof Object)) return t;
switch (t.constructor) {
case Date:
return new Date(t.getTime());
case Object:
void 0 === e && (e = {});
break;
case Array:
e = [];
break;
default:
return t;
}
for (var r in t) t.hasOwnProperty(r) && (e[r] = d(e[r], t[r]));
return e;
}
var e,
t,
o,
f =
((o = Error),
r((e = a), (t = o)),
void (e.prototype =
null === t ? Object.create(t) : ((i.prototype = t.prototype), new i())),
a);
function i() {
this.constructor = e;
}
function a(e, t) {
var r = o.call(this, t) || this;
return (
(r.code = e),
(r.name = "FirebaseError"),
Object.setPrototypeOf(r, a.prototype),
Error.captureStackTrace && Error.captureStackTrace(r, s.prototype.create),
r
);
}
var s =
((c.prototype.create = function(e) {
for (var t = [], r = 1; r < arguments.length; r++)
t[r - 1] = arguments[r];
for (
var n = t[0] || {},
o = this.service + "/" + e,
i = this.errors[e],
a = i
? (function(e, n) {
return e.replace(h, function(e, t) {
var r = n[t];
return null != r ? r.toString() : "<" + t + "?>";
});
})(i, n)
: "Error",
s = this.serviceName + ": " + a + " (" + o + ").",
c = new f(o, s),
p = 0,
l = Object.keys(n);
p < l.length;
p++
) {
var u = l[p];
"_" !== u.slice(-1) &&
(u in c &&
console.warn(
'Overwriting FirebaseError base field "' +
u +
'" can cause unexpected behavior.'
),
(c[u] = n[u]));
}
return c;
}),
c);
function c(e, t, r) {
(this.service = e), (this.serviceName = t), (this.errors = r);
}
var h = /\{\$([^}]+)}/g;
function v(e, t) {
return Object.prototype.hasOwnProperty.call(e, t);
}
function p(e, t) {
var r = new b(e, t);
return r.subscribe.bind(r);
}
var l,
u,
b =
((y.prototype.next = function(t) {
this.forEachObserver(function(e) {
e.next(t);
});
}),
(y.prototype.error = function(t) {
this.forEachObserver(function(e) {
e.error(t);
}),
this.close(t);
}),
(y.prototype.complete = function() {
this.forEachObserver(function(e) {
e.complete();
}),
this.close();
}),
(y.prototype.subscribe = function(e, t, r) {
var n,
o = this;
if (void 0 === e && void 0 === t && void 0 === r)
throw new Error("Missing Observer.");
void 0 ===
(n = (function(e, t) {
if ("object" != typeof e || null === e) return !1;
for (var r = 0, n = t; r < n.length; r++) {
var o = n[r];
if (o in e && "function" == typeof e[o]) return !0;
}
return !1;
})(e, ["next", "error", "complete"])
? e
: { next: e, error: t, complete: r }).next && (n.next = g),
void 0 === n.error && (n.error = g),
void 0 === n.complete && (n.complete = g);
var i = this.unsubscribeOne.bind(this, this.observers.length);
return (
this.finalized &&
this.task.then(function() {
try {
o.finalError ? n.error(o.finalError) : n.complete();
} catch (e) {}
}),
this.observers.push(n),
i
);
}),
(y.prototype.unsubscribeOne = function(e) {
void 0 !== this.observers &&
void 0 !== this.observers[e] &&
(delete this.observers[e],
(this.observerCount -= 1),
0 === this.observerCount &&
void 0 !== this.onNoObservers &&
this.onNoObservers(this));
}),
(y.prototype.forEachObserver = function(e) {
if (!this.finalized)
for (var t = 0; t < this.observers.length; t++) this.sendOne(t, e);
}),
(y.prototype.sendOne = function(e, t) {
var r = this;
this.task.then(function() {
if (void 0 !== r.observers && void 0 !== r.observers[e])
try {
t(r.observers[e]);
} catch (e) {
"undefined" != typeof console &&
console.error &&
console.error(e);
}
});
}),
(y.prototype.close = function(e) {
var t = this;
this.finalized ||
((this.finalized = !0),
void 0 !== e && (this.finalError = e),
this.task.then(function() {
(t.observers = void 0), (t.onNoObservers = void 0);
}));
}),
y);
function y(e, t) {
var r = this;
(this.observers = []),
(this.unsubscribes = []),
(this.observerCount = 0),
(this.task = Promise.resolve()),
(this.finalized = !1),
(this.onNoObservers = t),
this.task
.then(function() {
e(r);
})
.catch(function(e) {
r.error(e);
});
}
function g() {}
((u = l = l || {})[(u.DEBUG = 0)] = "DEBUG"),
(u[(u.VERBOSE = 1)] = "VERBOSE"),
(u[(u.INFO = 2)] = "INFO"),
(u[(u.WARN = 3)] = "WARN"),
(u[(u.ERROR = 4)] = "ERROR"),
(u[(u.SILENT = 5)] = "SILENT");
function m(e, t) {
for (var r = [], n = 2; n < arguments.length; n++) r[n - 2] = arguments[n];
if (!(t < e.logLevel)) {
var o = new Date().toISOString();
switch (t) {
case l.DEBUG:
case l.VERBOSE:
console.log.apply(
console,
["[" + o + "] " + e.name + ":"].concat(r)
);
break;
case l.INFO:
console.info.apply(
console,
["[" + o + "] " + e.name + ":"].concat(r)
);
break;
case l.WARN:
console.warn.apply(
console,
["[" + o + "] " + e.name + ":"].concat(r)
);
break;
case l.ERROR:
console.error.apply(
console,
["[" + o + "] " + e.name + ":"].concat(r)
);
break;
default:
throw new Error(
"Attempted to log a message with an invalid logType (value: " +
t +
")"
);
}
}
}
var _,
E = l.INFO,
N =
(Object.defineProperty(O.prototype, "logLevel", {
get: function() {
return this._logLevel;
},
set: function(e) {
if (!(e in l))
throw new TypeError("Invalid value assigned to `logLevel`");
this._logLevel = e;
},
enumerable: !0,
configurable: !0
}),
Object.defineProperty(O.prototype, "logHandler", {
get: function() {
return this._logHandler;
},
set: function(e) {
if ("function" != typeof e)
throw new TypeError(
"Value assigned to `logHandler` must be a function"
);
this._logHandler = e;
},
enumerable: !0,
configurable: !0
}),
(O.prototype.debug = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
this._logHandler.apply(this, [this, l.DEBUG].concat(e));
}),
(O.prototype.log = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
this._logHandler.apply(this, [this, l.VERBOSE].concat(e));
}),
(O.prototype.info = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
this._logHandler.apply(this, [this, l.INFO].concat(e));
}),
(O.prototype.warn = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
this._logHandler.apply(this, [this, l.WARN].concat(e));
}),
(O.prototype.error = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
this._logHandler.apply(this, [this, l.ERROR].concat(e));
}),
O);
function O(e) {
(this.name = e), (this._logLevel = E), (this._logHandler = m);
}
var w =
(((_ = {})["no-app"] =
"No Firebase App '{$appName}' has been created - call Firebase App.initializeApp()"),
(_["bad-app-name"] = "Illegal App name: '{$appName}"),
(_["duplicate-app"] = "Firebase App named '{$appName}' already exists"),
(_["app-deleted"] = "Firebase App named '{$appName}' already deleted"),
(_["duplicate-service"] =
"Firebase service named '{$appName}' already registered"),
(_["invalid-app-argument"] =
"firebase.{$appName}() takes either no argument or a Firebase App instance."),
_),
A = new s("app", "Firebase", w),
k = "[DEFAULT]",
R = [],
I =
(Object.defineProperty(T.prototype, "automaticDataCollectionEnabled", {
get: function() {
return this.checkDestroyed_(), this.automaticDataCollectionEnabled_;
},
set: function(e) {
this.checkDestroyed_(), (this.automaticDataCollectionEnabled_ = e);
},
enumerable: !0,
configurable: !0
}),
Object.defineProperty(T.prototype, "name", {
get: function() {
return this.checkDestroyed_(), this.name_;
},
enumerable: !0,
configurable: !0
}),
Object.defineProperty(T.prototype, "options", {
get: function() {
return this.checkDestroyed_(), this.options_;
},
enumerable: !0,
configurable: !0
}),
(T.prototype.delete = function() {
var s = this;
return new Promise(function(e) {
s.checkDestroyed_(), e();
})
.then(function() {
s.firebase_.INTERNAL.removeApp(s.name_);
for (
var e = [], t = 0, r = Object.keys(s.services_);
t < r.length;
t++
)
for (
var n = r[t], o = 0, i = Object.keys(s.services_[n]);
o < i.length;
o++
) {
var a = i[o];
e.push(s.services_[n][a]);
}
return Promise.all(
e
.filter(function(e) {
return "INTERNAL" in e;
})
.map(function(e) {
return e.INTERNAL.delete();
})
);
})
.then(function() {
(s.isDeleted_ = !0), (s.services_ = {});
});
}),
(T.prototype._getService = function(e, t) {
if (
(void 0 === t && (t = k),
this.checkDestroyed_(),
this.services_[e] || (this.services_[e] = {}),
!this.services_[e][t])
) {
var r = t !== k ? t : void 0,
n = this.firebase_.INTERNAL.factories[e](
this,
this.extendApp.bind(this),
r
);
this.services_[e][t] = n;
}
return this.services_[e][t];
}),
(T.prototype._removeServiceInstance = function(e, t) {
void 0 === t && (t = k),
this.services_[e] &&
this.services_[e][t] &&
delete this.services_[e][t];
}),
(T.prototype.extendApp = function(e) {
var t = this;
d(this, e),
e.INTERNAL &&
e.INTERNAL.addAuthTokenListener &&
(R.forEach(function(e) {
t.INTERNAL.addAuthTokenListener(e);
}),
(R = []));
}),
(T.prototype.checkDestroyed_ = function() {
if (this.isDeleted_)
throw A.create("app-deleted", { appName: this.name_ });
}),
T);
function T(e, t, r) {
(this.firebase_ = r),
(this.isDeleted_ = !1),
(this.services_ = {}),
(this.name_ = t.name),
(this.automaticDataCollectionEnabled_ =
t.automaticDataCollectionEnabled || !1),
(this.options_ = (function(e) {
return d(void 0, e);
})(e)),
(this.INTERNAL = {
getUid: function() {
return null;
},
getToken: function() {
return Promise.resolve(null);
},
addAuthTokenListener: function(e) {
R.push(e),
setTimeout(function() {
return e(null);
}, 0);
},
removeAuthTokenListener: function(t) {
R = R.filter(function(e) {
return e !== t;
});
}
});
}
(I.prototype.name && I.prototype.options) ||
I.prototype.delete ||
console.log("dc");
var j = "6.3.4";
var F = new N("@firebase/app");
if (
"object" == typeof self &&
self.self === self &&
void 0 !== self.firebase
) {
F.warn(
"\n Warning: Firebase is already defined in the global scope. Please make sure\n Firebase library is only loaded once.\n "
);
var D = self.firebase.SDK_VERSION;
D &&
0 <= D.indexOf("LITE") &&
F.warn(
"\n Warning: You are trying to load Firebase while using Firebase Performance standalone script.\n You should load Firebase Performance with this instance of Firebase to avoid loading duplicate code.\n "
);
}
var L = (function e() {
var t = (function(a) {
var i = {},
s = {},
c = {},
p = {
__esModule: !0,
initializeApp: function(e, t) {
void 0 === t && (t = {}),
("object" == typeof t && null !== t) || (t = { name: t });
var r = t;
void 0 === r.name && (r.name = k);
var n = r.name;
if ("string" != typeof n || !n)
throw A.create("bad-app-name", { appName: String(n) });
if (v(i, n)) throw A.create("duplicate-app", { appName: n });
var o = new a(e, r, p);
return f((i[n] = o), "create"), o;
},
app: l,
apps: null,
SDK_VERSION: j,
INTERNAL: {
registerService: function(r, e, t, n, o) {
if ((void 0 === o && (o = !1), s[r]))
throw A.create("duplicate-service", { appName: r });
function i(e) {
if ((void 0 === e && (e = l()), "function" != typeof e[r]))
throw A.create("invalid-app-argument", { appName: r });
return e[r]();
}
return (
(s[r] = e),
n &&
((c[r] = n),
u().forEach(function(e) {
n("create", e);
})),
void 0 !== t && d(i, t),
(p[r] = i),
(a.prototype[r] = function() {
for (var e = [], t = 0; t < arguments.length; t++)
e[t] = arguments[t];
return this._getService
.bind(this, r)
.apply(this, o ? e : []);
}),
i
);
},
removeApp: function(e) {
f(i[e], "delete"), delete i[e];
},
factories: s,
useAsService: h
}
};
function l(e) {
if (!v(i, (e = e || k))) throw A.create("no-app", { appName: e });
return i[e];
}
function u() {
return Object.keys(i).map(function(e) {
return i[e];
});
}
function f(e, t) {
for (var r = 0, n = Object.keys(s); r < n.length; r++) {
var o = h(0, n[r]);
if (null === o) return;
c[o] && c[o](t, e);
}
}
function h(e, t) {
return "serverAuth" === t ? null : t;
}
return (
(p.default = p),
Object.defineProperty(p, "apps", { get: u }),
(l.App = a),
p
);
})(I);
return (
(t.INTERNAL = n({}, t.INTERNAL, {
createFirebaseNamespace: e,
extendNamespace: function(e) {
d(t, e);
},
createSubscribe: p,
ErrorFactory: s,
deepExtend: d
})),
t
);
})(),
S = L.initializeApp;
return (
(L.initializeApp = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
return (
(function() {
try {
return (
"[object process]" ===
Object.prototype.toString.call(global.process)
);
} catch (e) {
return !1;
}
})() &&
F.warn(
'\n Warning: This is a browser-targeted Firebase bundle but it appears it is being\n run in a Node environment. If running in a Node environment, make sure you\n are using the bundle specified by the "main" field in package.json.\n \n If you are using Webpack, you can specify "main" as the first item in\n "resolve.mainFields":\n https://webpack.js.org/configuration/resolve/#resolvemainfields\n \n If using Rollup, use the rollup-plugin-node-resolve plugin and specify "main"\n as the first item in "mainFields", e.g. [\'main\', \'module\'].\n https://github.com/rollup/rollup-plugin-node-resolve\n '
),
S.apply(void 0, e)
);
}),
L
);
});
//# sourceMappingURL=firebase-app.js.map

View file

@ -1,19 +1,138 @@
<html>
<header>
<link rel="stylesheet" href="TemplateData/style.css">
<script src="TemplateData/UnityProgress.js"></script>
<script src="baldi.js"></script>
<script>
var gameInstance = UnityLoader.instantiate("gameContainer", "baldi.json", {onProgress: UnityProgress,Module:{onRuntimeInitialized: function() {UnityProgress(gameInstance, "complete")}}});
</script>
</header>
<body style="margin: 0;">
<div class="webgl-content">
<div id="unityContainer" style="width: 960px; height: 600px; padding: 0px; margin: 0px; border: 0px; position: relative; background: rgb(35, 31, 32);">
<div id="gameContainer" style="width: 800px; height: 560px; margin: auto"></div>
</div>
<script src="firebase-app.js"></script>
</body>
</html>
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<title>1v1.LOL | Building Simulator, Battle Royale & Shooting Game</title>
<script>
Object.defineProperty(document, 'URL', {
get() {
return 'https://1v1.lol/';
}
});
window.rWS = WebSocket;
WebSocket = function (url, options) {
var split = url.split('://');
var prefix = '';
switch (split[0].toLowerCase()) {
case 'ws':
prefix = 'wss://www.holyubrevived.gq:8080/proxy/ws://';
break;
case 'wss':
prefix = 'wss://www.holyubrevived.gq:8080/proxy/wss://';
break;
default:
prefix = split[0];
}
return new (Function.prototype.bind.call(window.rWS, null, (split[1].match(/\//g) || []).length === 0 ? (split[1].includes('?') ? prefix + split[1].replace('?', '/?') : prefix + split[1] + '/') : prefix + split[1], options));
};
</script>
<!-- Firebase App (the core Firebase SDK) is always required and must be listed first -->
<script src="https://www.gstatic.com/firebasejs/7.2.1/firebase-app.js"></script>
<!-- Add Firebase products that you want to use -->
<script src="https://www.gstatic.com/firebasejs/7.2.1/firebase-analytics.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.2.1/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.2.1/firebase-firestore.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.2.1/firebase-remote-config.js"></script>
<script src="js/dependencyLoader.js"></script>
<script>
var gameLoaded = false;
window.addEventListener("beforeunload", function (e) {
if (adsVisible || !gameLoaded || !lockedOccured)
return null;
var confirmationMessage = 'Are you sure you want to leave? ';
(e || window.event).returnValue = confirmationMessage; //Gecko + IE
return confirmationMessage; //Gecko + Webkit, Safari, Chrome etc.
});
window.alert = function(e) {console.log(e)};
</script>
<link rel='shortcut icon' type="image/png" href="img/favicon.png?v2" />
<link rel="alternate" href="https://1v1.lol" hreflang="en">
<link rel="alternate" href="https://1v1.lol/de" hreflang="de">
<link rel="alternate" href="https://1v1.lol/it" hreflang="it">
<link rel="alternate" href="https://1v1.lol/fr" hreflang="fr">
<link rel="alternate" href="https://1v1.lol/es" hreflang="es">
<link rel="alternate" href="https://1v1.lol/pt" hreflang="pt">
<link rel="alternate" href="https://1v1.lol/pl" hreflang="pl">
<link rel="alternate" href="https://1v1.lol/ja" hreflang="ja">
<link rel="alternate" href="https://1v1.lol/ru" hreflang="ru">
<link rel="canonical" href="https://1v1.lol" />
<meta property="og:title" content="1v1.LOL" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://1v1.lol/" />
<meta property="og:image" content="https://1v1.lol/splash.jpg" />
<meta property="og:description" content="Discover 1v1, the online building simulator & third person shooting game. Battle royale, build fight, box fight, zone wars and more game modes to enjoy!">
<link rel="stylesheet" href="css/style.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<meta name="description"
content="Discover 1v1, the online building simulator & third person shooting game. Battle royale, build fight, box fight, zone wars and more game modes to enjoy!">
<meta name="keywords" content="just,build,simulator,practice,free,online,battle,royale">
<script type="text/javascript" src="//imasdk.googleapis.com/js/sdkloader/ima3.js"></script>
<!-- ZONETAG - PLACE INTO HEAD SECTION OR RUN CODE AT STARTUP -->
<script>
(function(zonefile) {
var y=window.location.href.split('#')[0].split('').reduce(function(a,b){return(a<<5)-a+b.charCodeAt(0)>>>1},0);y=(10+((y*7)%26)).toString(36)+y.toString(36);
var drutObj = window[y] = window[y] || {};
function failCpmstarAPI() { var failFn = function(o) { o && typeof(o) === "object" && o.fail && o.fail(); }; drutObj && Array.isArray(drutObj.cmd) && drutObj.cmd.forEach(failFn) && (drutObj.cmd.length = 0); window.cpmstarAPI = window["_"+zonefile] = failFn; }
var rnd = Math.round(Math.random()*999999);
var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.onerror=failCpmstarAPI;
var proto = document.location.protocol;
var host = ( proto == "https:" || proto == "file:")?"https://server":"//cdn";
if(window.location.hash=="#cpmstarDev") host = "//dev.server";
if(window.location.hash=="#cpmstarStaging") host = "//staging.server";
s.src = host + ".cpmstar.com/cached/zonefiles/" + zonefile + ".js?rnd="+rnd;
var s2=document.getElementsByTagName('script')[0];
s2.parentNode.insertBefore(s, s2);
window.cpmstarAPI = function(o) { (drutObj.cmd = drutObj.cmd || []).push(o); }
}('372_49986_1v1'));
Object.defineProperty(window.performance.__proto__,"measures",Object.getOwnPropertyDescriptor(window.performance.__proto__,"now")),delete window.performance.__proto__.now,window.performance.__proto__.now={},Object.defineProperty(window.performance.__proto__,"now",{get:function(){return this.measures}}),Object.defineProperty(window.performance.__proto__,"now",{set:function(){Object.defineProperty(window.performance.__proto__,"now",{get:function(){return function(){return this.measures()/2}}})}});
</script>
</head>
<body>
<!--<div class="ads">
<div class="ad-smallscreen">
<div class="ad ad-rectangle-bottom">
</div>
</div>
<div class="ad ad-rectangle-upper" id="adRectangleUpper">
<script>
(function(w,pid){
var r=function(c,m){c=c.split('').reduce(function(a,b){return(a<<5)-a+b.charCodeAt(0)>>>m},0);return(10+((c*7)%26)).toString(36)+c.toString(36);},y=r(w.location.href.split('#')[0],1),c=r(w.location.href.split('#')[0]+pid,0);
w.document.write('<div style="width:300px;height:250px" class="'+c+'"></div>');
})(window,83023);
</script>
</div>
<div class="ad-largescreen">
<div class="ad ad-leaderboard-bottom">
<script>
(function(w,pid){
var r=function(c,m){c=c.split('').reduce(function(a,b){return(a<<5)-a+b.charCodeAt(0)>>>m},0);return(10+((c*7)%26)).toString(36)+c.toString(36);},y=r(w.location.href.split('#')[0],1),c=r(w.location.href.split('#')[0]+pid,0);
w.document.write('<div style="width:300px;height:600px" class="'+c+'"></div>');
})(window,85420);
</script>
</div>
</div>
</div> -->
<div id="interAdsContainer" style="display: none;"></div>
<div id="gameContainer"></div>
<div id="loader">
<img class="logo" src="img/logo.png">
<div class="spinner"></div>
<div class="progress">
<div class="full"></div>
</div>
</div>
<script>
// var gameJsonUrl = "https://justbuild.nyc3.cdn.digitaloceanspaces.com/NewCI/1v1/Prod/11/3e3a3e7f9b174542bcfb0fd7615b7725/WebGL.json"; //%gameJsonUrl
// <script id="unity-loader" src="https://justbuild.nyc3.cdn.digitaloceanspaces.com/NewCI/1v1/Prod/11/3e3a3e7f9b174542bcfb0fd7615b7725/UnityLoader.js">
</script>
<div id="unity-loader-div"></div>
</body>
</html>