v2 #1
@ -78,6 +78,37 @@ body {
|
||||
backdrop-filter: blur(0);
|
||||
}
|
||||
}
|
||||
warnings {
|
||||
position: absolute;
|
||||
top: -20px;
|
||||
left: -20px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
warning {
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
color: var(--text-color);
|
||||
border-radius: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 4px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.gore {
|
||||
background-color: rgb(100, 20, 20);
|
||||
box-shadow: 0 0 10px rgb(100, 20, 20);
|
||||
}
|
||||
.thirteen {
|
||||
background-color: rgb(0, 0, 0);
|
||||
box-shadow: 0 0 10px rgb(0, 0, 0);
|
||||
}
|
||||
.horror {
|
||||
background-color: rgb(118, 118, 118);
|
||||
box-shadow: 0 0 10px rgb(193, 193, 193);
|
||||
}
|
||||
body[fast] game {
|
||||
background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%);
|
||||
backdrop-filter: blur(0);
|
||||
|
||||
@ -94,7 +94,7 @@ results {
|
||||
overflow-y: scroll;
|
||||
background-color: color-mix(in srgb, var(--color-3) 50%, #00000000 50%);
|
||||
box-shadow: 0 0 10px var(--color-3);
|
||||
bottom: 16px;
|
||||
margin-top: 12px;
|
||||
flex-direction: column;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
section {
|
||||
width: 30%;
|
||||
/* height: 400px; */
|
||||
height: auto;
|
||||
min-width: 20%;
|
||||
height: 400px;
|
||||
padding: 8px;
|
||||
margin: 16px;
|
||||
background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
/* justify-content: center; */
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
border-radius: 20px;
|
||||
@ -17,10 +16,11 @@ section {
|
||||
box-shadow: 0 0 10px var(--color-2);
|
||||
}
|
||||
sections {
|
||||
width: 90vw;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 90vw;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
#colorPicker {
|
||||
|
||||
@ -98,4 +98,50 @@ iframe {
|
||||
bottom: 60px;
|
||||
filter: drop-shadow(0 0 0 #fff5);
|
||||
opacity: 0;
|
||||
}
|
||||
alert {
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
position: absolute;
|
||||
width: 40%;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 8px;
|
||||
color: white;
|
||||
background-color: color-mix(in srgb, #d46c6c 80%, #00000000 20%);
|
||||
backdrop-filter: blur(2px);
|
||||
box-shadow: 0 0 10px #d46c6c;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
animation: fadeIn 1s ease-in-out forwards, fadeOut 1s ease-in-out forwards 14s;
|
||||
cursor: pointer;
|
||||
}
|
||||
alert h1 {
|
||||
font-size: 20px;
|
||||
margin: 0;
|
||||
}
|
||||
alert p {
|
||||
font-size: 16px;
|
||||
margin: 0;
|
||||
}
|
||||
@keyframes fadeIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
top: -50px;
|
||||
}
|
||||
100% {
|
||||
opacity: 1;
|
||||
top: 10px;
|
||||
}
|
||||
}
|
||||
@keyframes fadeOut {
|
||||
0% {
|
||||
opacity: 1;
|
||||
top: 10px;
|
||||
}
|
||||
100% {
|
||||
opacity: 0;
|
||||
top: -50px;
|
||||
}
|
||||
}
|
||||
21
index.html
21
index.html
@ -109,6 +109,20 @@
|
||||
function updateTime() {
|
||||
document.getElementById("time").innerText = (new Date()).toLocaleTimeString();
|
||||
}
|
||||
function sAlert(title, message) {
|
||||
let alertHolder = document.createElement("alert");
|
||||
let alertTitle = document.createElement("h1");
|
||||
alertTitle.innerHTML = title;
|
||||
let alertMessage = document.createElement("p");
|
||||
alertMessage.innerHTML = message;
|
||||
alertHolder.appendChild(alertTitle);
|
||||
alertHolder.appendChild(alertMessage);
|
||||
document.body.appendChild(alertHolder);
|
||||
alertHolder.addEventListener("click", alertHolder.remove);
|
||||
setTimeout(() => {
|
||||
alertHolder.remove();
|
||||
}, 1000 * 15)
|
||||
}
|
||||
document.addEventListener("DOMContentLoaded", async ()=>{
|
||||
getWeather();
|
||||
setInterval(getWeather, 1000 * 60 * 30);
|
||||
@ -154,9 +168,14 @@
|
||||
}
|
||||
});
|
||||
socket.addEventListener("message", (e)=>{
|
||||
socket.send("1");
|
||||
if(e.data.split("=")[0] == "online") {
|
||||
socket.send("1");
|
||||
document.getElementById("online").innerText = `currently online: ${e.data.split("=")[1]}`;
|
||||
} else {
|
||||
if(e.data.startsWith("annc")) {
|
||||
let message = e.data.split(";;");
|
||||
sAlert(message[1], message[2]);
|
||||
}
|
||||
}
|
||||
})
|
||||
let currentCloak = {name: "", icon: ""};
|
||||
|
||||
23
js/games.js
23
js/games.js
@ -1,5 +1,6 @@
|
||||
document.addEventListener("DOMContentLoaded", loadGames);
|
||||
let elements = [];
|
||||
let isDev = [];
|
||||
async function loadGames() {
|
||||
// taken from mdn
|
||||
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort
|
||||
@ -35,16 +36,37 @@ async function loadGames() {
|
||||
star.id = "star";
|
||||
star.classList = "star";
|
||||
star.src = isStarred ? "/img/star-fill.svg" : "/img/star.svg";
|
||||
let warnings = document.createElement("warnings");
|
||||
newElement.appendChild(image);
|
||||
holder.appendChild(title);
|
||||
newElement.appendChild(holder);
|
||||
newElement.appendChild(warnings);
|
||||
if(element.tags) {
|
||||
if(element.tags.includes("13+")) {
|
||||
let thirteenplus = document.createElement("warning");
|
||||
thirteenplus.innerText = "13+";
|
||||
thirteenplus.classList = "thirteen";
|
||||
warnings.appendChild(thirteenplus);
|
||||
}
|
||||
if(element.tags.includes("horror")) {
|
||||
let horror = document.createElement("warning");
|
||||
horror.innerText = "😱";
|
||||
horror.classList = "horror";
|
||||
warnings.appendChild(horror);
|
||||
}
|
||||
if(element.tags.includes("gore")) {
|
||||
let gore = document.createElement("warning");
|
||||
gore.innerText = "🩸";
|
||||
gore.classList = "gore";
|
||||
warnings.appendChild(gore);
|
||||
}
|
||||
if(element.tags.includes("top")) {
|
||||
topGElement.appendChild(newElement);
|
||||
} else {
|
||||
gamesElement.appendChild(newElement);
|
||||
holder.appendChild(star);
|
||||
}
|
||||
if(element.tags.includes("tofinish")) isDev.push(element.directory);
|
||||
} else {
|
||||
gamesElement.appendChild(newElement);
|
||||
holder.appendChild(star);
|
||||
@ -63,6 +85,7 @@ async function loadGames() {
|
||||
document.getElementById("loadingMsg").style.display = "none";
|
||||
document.getElementById("allHeader").style.display = "block";
|
||||
document.getElementById("topHeader").style.display = "block";
|
||||
if(isDev.length > 0) {sAlert("wip games", "dev message, shouldnt be seen");console.log(isDev.join(","))};
|
||||
starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]');
|
||||
if(starredGames.length > 0) {
|
||||
document.getElementById("starredHeader").style.display = "block";
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
let sAlert = window.parent.sAlert;
|
||||
|
||||
function setBackground() {
|
||||
let randomNumbers = [100-Math.abs(Math.floor(Math.random() * 200) - 99), 100-Math.abs(Math.floor(Math.random() * 200) - 99)];
|
||||
document.body.style.setProperty("--gradient-x", randomNumbers[0] + "%");
|
||||
|
||||
107
quotes.json
107
quotes.json
@ -0,0 +1,107 @@
|
||||
[
|
||||
"pay attention during school",
|
||||
"yall playing games while im making the website ur using",
|
||||
"Hello!",
|
||||
"Lorem ipsum dolor sit amet, adipiscing consequat adipiscing sit amet. In tortor dolor, sollicitudin quis urna vitae, rutrum selecrelico dolor. Ut facilisis ornare lacus, ut dictum felis aliquam ut. Omnino interdum fit cum cura. Non est aequum, non solum, sed nec refert quis sit terra. Sed vestibulum a tellus non semper. Aliquam a neque euismod dolor dapibus aliquet ultricies ut nibh. Sed eget auctor ante. Aliquam dictum volutpat vestibulum. Putasti ovum paschale futurum. Nullo modo.",
|
||||
"join the discord NOW",
|
||||
"linux is so much better than windows",
|
||||
"Did you know that oxygen is tasty?",
|
||||
"Did you know that drinking water is dangerous?",
|
||||
"🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸",
|
||||
"chromebooks suck",
|
||||
"Made 10% from actual code 90% skidded",
|
||||
"moni",
|
||||
"uwu",
|
||||
"uWu",
|
||||
"OwO",
|
||||
"UwU",
|
||||
"Chocolate hummus is a disgrace to the entire middle east.",
|
||||
"3kh0 has fell, and now 3kh0 has sadly died.",
|
||||
"Fun fact: Your chromebook is likely being monitored 24/7",
|
||||
"Activate Selenite, Go to settings to activate Selenite",
|
||||
"This copy of Selenite is not genuine.",
|
||||
"contains 100% all-natural beef",
|
||||
"You may be a victim of software counterfeiting",
|
||||
"Woe to those who don't use this game site",
|
||||
"Did you know we are open source?",
|
||||
"SUPR COL GAMS V2 IS AWESOME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!",
|
||||
"thank you to louis pasteur for inventing milk",
|
||||
"you found the secret message",
|
||||
"i know where you live",
|
||||
"i",
|
||||
"technoblade never dies",
|
||||
"Selenite has shut down.",
|
||||
"theres at least 2, maybe 3 games on this website",
|
||||
"🥺👉👈",
|
||||
"what website is this?",
|
||||
"we love about:blank",
|
||||
"join the discord to be cool",
|
||||
"bigfoot is an L",
|
||||
"check steam",
|
||||
"selentine",
|
||||
"geometry dash two point two",
|
||||
"does anyone call twitter X unironically",
|
||||
"rights to the trans people 🏳️⚧️ (trans rights)",
|
||||
"happy new years everyone",
|
||||
"merry christmas everyone",
|
||||
"happy easter day everyone",
|
||||
"happy halloween everyone",
|
||||
"happy thanksgiving everyone",
|
||||
"happy valentines day everyone",
|
||||
"happy birthday to me",
|
||||
"happy birthday to you",
|
||||
"happy birthday to everyone",
|
||||
"happy birthday to the website",
|
||||
"dont look behind you",
|
||||
"sky",
|
||||
"penguinify",
|
||||
"a456pur",
|
||||
"selenite",
|
||||
"3kh0",
|
||||
"selenite is the best",
|
||||
"selenite is the best website",
|
||||
"selenite is the best website ever",
|
||||
"selenite is the best website ever made",
|
||||
"selenite is the best website ever made in the history of the world",
|
||||
"selenite is the best website ever made in the history of the world and the universe",
|
||||
"Your network admin has logged this visit. You will be reported to the authorities.",
|
||||
"share with your friends",
|
||||
"i love piracy",
|
||||
"i love piracy and you should too",
|
||||
"ai is gonna take over the world",
|
||||
"serap",
|
||||
"slenetine",
|
||||
"Behind you.",
|
||||
"if you are seeing this message, please ping the owner of selenite in the discord server immediately.",
|
||||
"sorry in advance for may 18th",
|
||||
"selenite stole $100k from the pentagon to keep paying for hosting",
|
||||
"this is your sign to get off games and get a good academic life",
|
||||
"Josh",
|
||||
"We skidded from everyone including ourselves.",
|
||||
"congrats on who got a 53 by using this site",
|
||||
"ive spent 10 minutes writing 8 quotes gosh i need better things to do",
|
||||
"selenite workers are immensely underpaid",
|
||||
"how does one",
|
||||
"Please add proxy im begging i need proxy",
|
||||
"seraphite",
|
||||
"if u self-hosted this then ur cool",
|
||||
"if you want to install linux, first crack the skid, then restart and you should be set",
|
||||
"sure just downgrade the about:blank page",
|
||||
"...that's not how it works. if you want to unenroll the only way to do that is to uninstall the shim",
|
||||
"sure just hack the crosh shell",
|
||||
"yeah so you want to playstore bypass the servers, you don't want to remove the servers",
|
||||
"yeah so you want to crack the proxy, you don't want to hack the goguardian",
|
||||
"to disable filters, you need to hack the proxy",
|
||||
"to downgrade, you need to rm -rf the shim",
|
||||
"🥺👉👈",
|
||||
"me when i the me the when the the me the when i the when the me the the the when the",
|
||||
"ayyy, ay, six sevennnn",
|
||||
"41 but i got 41 gold",
|
||||
"HelloWorld(Print)",
|
||||
"im thinking miku miku uu ee uu",
|
||||
"i love miku, teto, and the yellow one",
|
||||
"you only really have 2 choices",
|
||||
"ts is a tuff ahh site boi",
|
||||
"mrrp :3",
|
||||
"mrrreeeooooowww :3"
|
||||
]
|
||||
@ -144,13 +144,39 @@
|
||||
return theme;
|
||||
}
|
||||
});
|
||||
function wipeData() {
|
||||
if(prompt("Wiping your data means you will lose all progress in every game, and every setting you have selected.\nAre you sure you would like to continue?\n\nType \"please wipe my data\" to continue.") == "please wipe my data") {
|
||||
localStorage.clear();
|
||||
document.cookie.split(";").forEach(e => {
|
||||
document.cookie = e.split("=")[0] + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT"
|
||||
})
|
||||
}
|
||||
}
|
||||
function downloadData() {
|
||||
// grab localstorage
|
||||
// grab cookies
|
||||
// json.stringify
|
||||
// base64
|
||||
alert("not completed");
|
||||
}
|
||||
function uploadData() {
|
||||
if(prompt("Are you sure you want to upload data?\nThis may overwrite any previous data you had stored.\n\nType \"i am sure\" to continue.") == "i am sure") {
|
||||
// prompt file upload
|
||||
// read file
|
||||
// atob
|
||||
// set cookies
|
||||
// set localstorage
|
||||
alert("not completed");
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="title">settings</h1>
|
||||
<sections>
|
||||
<section>
|
||||
<h2>theme</h2>
|
||||
<h2>style</h2>
|
||||
<p style="font-size:20px;margin:6px;">themes</p>
|
||||
<select id="themes">
|
||||
<option value="">selenite</option>
|
||||
<option value="blackandwhite">black and white</option>
|
||||
@ -160,9 +186,7 @@
|
||||
<option value="custom">custom</option>
|
||||
</select>
|
||||
<input type="color" id="colorPicker" style="display: none">
|
||||
</section>
|
||||
<section>
|
||||
<h2>toggles</h2>
|
||||
<p style="font-size:20px;margin:6px;">toggles</p>
|
||||
<div class="samerow"><input type="checkbox" id="fastMode"><label for="fastMode" title="disables particles, animated background, & other misc effects">fast mode</label></div>
|
||||
<div class="samerow"><input type="checkbox" id="superFastMode"><label for="superFastMode" title="disables all blurs and transparency">super fast mode</label></div>
|
||||
</section>
|
||||
@ -193,6 +217,13 @@
|
||||
<input type="text" id="panicURL">
|
||||
<button id="submitPanic">set panic mode</button>
|
||||
</section>
|
||||
<section>
|
||||
<h2>manage data</h2>
|
||||
<p>not implemented</p>
|
||||
<button id="downloadData">download</button>
|
||||
<button id="uploadData">upload</button>
|
||||
<button onclick="wipeData()">wipe (erases all game data)</button>
|
||||
</section>
|
||||
</sections>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user