diff options
author | Minteck <46352972+Minteck@users.noreply.github.com> | 2021-07-07 17:01:51 +0200 |
---|---|---|
committer | Minteck <46352972+Minteck@users.noreply.github.com> | 2021-07-07 17:01:51 +0200 |
commit | adabd5f0b2d7326958126dc960bf4ef09c9a4e4f (patch) | |
tree | cce44ad2c805c5c05a5e89f0aa63ca64b2c9fc30 /race/cars/car1.js | |
parent | ce99cfa3de0a74c8ab09c47d9a5295212021d769 (diff) | |
download | kartik-client-adabd5f0b2d7326958126dc960bf4ef09c9a4e4f.tar.gz kartik-client-adabd5f0b2d7326958126dc960bf4ef09c9a4e4f.tar.bz2 kartik-client-adabd5f0b2d7326958126dc960bf4ef09c9a4e4f.zip |
Update!
Diffstat (limited to 'race/cars/car1.js')
-rw-r--r-- | race/cars/car1.js | 180 |
1 files changed, 97 insertions, 83 deletions
diff --git a/race/cars/car1.js b/race/cars/car1.js index 0c4c9f0..448008c 100644 --- a/race/cars/car1.js +++ b/race/cars/car1.js @@ -8,11 +8,7 @@ startHooks.push(() => { car1startx = 388.9; car1starty = 79.4; } - if (online) { - car1collisionon = false; - } else { - car1collisionon = true; - } + car1collisionon = !online; car1enableOOBChecker = false; // Collision Manager @@ -20,7 +16,7 @@ startHooks.push(() => { if (!keysEnabled) { return; } if (started) { - carshb = document.getElementById("car0").getBoundingClientRect(); + carshb = document.getElementById("car1").getBoundingClientRect(); hitbox = document.getElementById("barrier").getBoundingClientRect(); var overlap = !(carshb.right < hitbox.left || @@ -28,12 +24,16 @@ startHooks.push(() => { carshb.bottom < hitbox.top || carshb.top > hitbox.bottom) - if (overlap) { - info("CarManager:car0", "Reversal prevented at X " + document.getElementById("car0").style.left + ", Y " + document.getElementById("car0").style.top); - document.getElementById("car0").style.left = car0startx + "px"; - document.getElementById("car0").style.top = car0starty + "px"; - document.getElementById("car0").style.transform = "rotate(0deg)"; - car0cspeed = 0; + if (overlap && car1collisionon) { + info("CarManager:car0", "Reversal prevented at X " + document.getElementById("car1").style.left + ", Y " + document.getElementById("car1").style.top); + car1collisionon = false; + document.getElementById("car1").style.left = car1startx + "px"; + document.getElementById("car1").style.top = car1starty + "px"; + document.getElementById("car1").style.transform = "rotate(0deg)"; + car1cspeed = 0; + setTimeout(() => { + car1collisionon = true; + }, 500) } } @@ -55,14 +55,18 @@ startHooks.push(() => { if (location.search === "?sp") { scenar("wall2", "angry"); } - Sound.crash() + car1collisionon = false; + Sound.crash(); document.getElementById("car1").style.left = car1startx + "px"; document.getElementById("car1").style.top = car1starty + "px"; + document.getElementById("car1").style.transform = "rotate(0deg)"; Array.from(document.getElementById('oil').children).forEach((item) => { spreadOil(item); }) - document.getElementById("car1").style.transform = "rotate(0deg)"; car1cspeed = 0; + setTimeout(() => { + car1collisionon = true; + }, 500) } }) @@ -76,79 +80,11 @@ startHooks.push(() => { carshb.top > hitbox.bottom) if (overlap) { - car1cspeed = 7; + car1cspeed = 5; } }) carshb = document.getElementById("car1").getBoundingClientRect(); - hitbox = document.getElementById("arrival").getBoundingClientRect(); - - var overlap = !(carshb.right < hitbox.left || - carshb.left > hitbox.right || - carshb.bottom < hitbox.top || - carshb.top > hitbox.bottom) - - if (overlap && started) { - started = false; - if ((document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1) < 4) { - info("CarManager:car1", "New lap"); - Array.from(document.getElementById('oil').children).forEach((item) => { - spreadOil(item); - }) - if ((document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1) < 3) { - Sound.pass() - } else { - Sound.last() - } - document.getElementById('laps-car1').innerText = (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 2).toString(); - if (location.search === "?sp") { - if ((document.getElementById('laps-car0').innerText.split("/")[0] - 1 + 1) > (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1)) { - scenar("ahead1", "angry"); - } else { - scenar("ahead2", "happy"); - } - } - } else { - info("CarManager:car1", "Car won the game"); - if (location.search === "?sp") { - scenar("won2", "happy"); - } - require('electron').ipcRenderer.send('addstats', { catalog: "results", key: "loses", add: 1 }); - try { document.getElementById('music').src = "about:blank"; } catch (e) { console.error(e); } - Sound.win(); - keysEnabled = false; - car1cspeed = 0; - car1speed = 0; - document.getElementById('laps-car1').innerText = (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 2).toString(); - $("#box").fadeOut(500); - setTimeout(() => { - setTimeout(() => { - if (location.search === "?sp" || (online && role === "guest")) { - if (online) {} else { - location.href = "win.html?sp#car1"; - } - } else { - location.href = "win.html#car1"; - } - }, 3500) - }, 3000) - } - document.getElementById("car1").style.left = car1startx + "px"; - document.getElementById("car1").style.top = car1starty + "px"; - Array.from(document.getElementById('oil').children).forEach((item) => { - spreadOil(item); - }) - document.getElementById("car1").style.transform = "rotate(0deg)"; - Array.from(document.getElementById('oil').children).forEach((item) => { - spreadOil(item); - }) - car1cspeed = 0; - setTimeout(() => { - started = true; - }, 150) - } - - carshb = document.getElementById("car1").getBoundingClientRect(); hitbox = document.getElementById("car0").getBoundingClientRect(); var overlap = !(carshb.right < hitbox.left || @@ -160,6 +96,7 @@ startHooks.push(() => { if (location.search === "?sp") { scenar("wall2", "angry"); } + car1collisionon = false; Sound.crash(); document.getElementById("car1").style.left = car1startx + "px"; document.getElementById("car1").style.top = car1starty + "px"; @@ -168,6 +105,9 @@ startHooks.push(() => { spreadOil(item); }) car1cspeed = 0; + setTimeout(() => { + car1collisionon = true; + }, 500) } } @@ -222,4 +162,78 @@ startHooks.push(() => { } }, 200) + setInterval(() => { + if (!car1collisionon) { return; } + + carshb = document.getElementById("car1").getBoundingClientRect(); + hitbox = document.getElementById("arrival").getBoundingClientRect(); + + var overlap = !(carshb.right < hitbox.left || + carshb.left > hitbox.right || + carshb.bottom < hitbox.top || + carshb.top > hitbox.bottom) + + if (overlap && started) { + started = false; + if ((document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1) < 4) { + info("CarManager:car1", "New lap"); + Array.from(document.getElementById('oil').children).forEach((item) => { + spreadOil(item); + }) + if ((document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1) < 3) { + Sound.pass() + } else { + Sound.last() + } + document.getElementById('laps-car1').innerText = (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 2).toString(); + if (location.search === "?sp") { + if ((document.getElementById('laps-car0').innerText.split("/")[0] - 1 + 1) > (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 1)) { + scenar("ahead1", "angry"); + } else { + scenar("ahead2", "happy"); + } + } + } else { + info("CarManager:car1", "Car won the game"); + if (location.search === "?sp") { + scenar("won2", "happy"); + } + require('electron').ipcRenderer.send('addstats', { catalog: "results", key: "loses", add: 1 }); + try { document.getElementById('music').src = "about:blank"; } catch (e) { console.error(e); } + Sound.win(); + keysEnabled = false; + car1cspeed = 0; + car1speed = 0; + document.getElementById('laps-car1').innerText = (document.getElementById('laps-car1').innerText.split("/")[0] - 1 + 2).toString(); + $("#box").fadeOut(500); + setTimeout(() => { + setTimeout(() => { + if (location.search === "?sp" || (online && role === "guest")) { + if (online) {} else { + location.href = "win.html?sp#car1"; + } + } else { + location.href = "win.html#car1"; + } + }, 3500) + }, 3000) + } + car1collisionon = false; + Sound.crash(); + document.getElementById("car1").style.left = car1startx + "px"; + document.getElementById("car1").style.top = car1starty + "px"; + document.getElementById("car1").style.transform = "rotate(0deg)"; + Array.from(document.getElementById('oil').children).forEach((item) => { + spreadOil(item); + }) + car1cspeed = 0; + setTimeout(() => { + car1collisionon = true; + }, 500) + setTimeout(() => { + started = true; + }, 150) + } + }, 20) + })
\ No newline at end of file |