added TADS 1 and 2
|
Before Width: | Height: | Size: 861 KiB |
BIN
static/projects/tads/baldicampertalk.webp
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
static/projects/tads/baldicrying.webp
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
BIN
static/projects/tads/baldifarmerspank.webp
Normal file
|
After Width: | Height: | Size: 9.8 KiB |
BIN
static/projects/tads/baldiwaveparty.gif
Normal file
|
After Width: | Height: | Size: 170 KiB |
BIN
static/projects/tads/baldiwaveparty.webp
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
static/projects/tads/batman.jpeg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
static/projects/tads/biden.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
static/projects/tads/bigsmoke.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
static/projects/tads/burn.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
static/projects/tads/california.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
static/projects/tads/cena.jpeg
Normal file
|
After Width: | Height: | Size: 8.5 KiB |
BIN
static/projects/tads/dannyass.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
static/projects/tads/deniz.gif
Normal file
|
After Width: | Height: | Size: 615 KiB |
BIN
static/projects/tads/dream.gif
Normal file
|
After Width: | Height: | Size: 105 KiB |
BIN
static/projects/tads/frax.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
static/projects/tads/garry.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
static/projects/tads/helga.png
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
static/projects/tads/homersweet.jpg
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
static/projects/tads/isa.png
Normal file
|
After Width: | Height: | Size: 90 KiB |
BIN
static/projects/tads/nook.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
99
static/projects/tads/pagestyle.css
Normal file
@@ -0,0 +1,99 @@
|
||||
@import url('https://fonts.upset.dev/css2?family=Bricolage+Grotesque&family=Lato&family=Borel&family=Kanit:ital@1&display=swap');
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
* {
|
||||
font-family: 'Lato', sans-serif;
|
||||
}
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
color: var(--color-on-primary);
|
||||
font-family: 'Kanit', sans-serif;
|
||||
}
|
||||
.fancy-header {
|
||||
font-family: 'Borel', serif;
|
||||
}
|
||||
:root {
|
||||
--text-color: #212121;
|
||||
--color-on-primary: #e0e0e0;
|
||||
--primary: #3a433c;
|
||||
--secondary: #819688;
|
||||
--tertiary: #7296a4;
|
||||
--neutral: #8f918e;
|
||||
|
||||
--color-background: #121212;
|
||||
--color-text: #e3e3e3;
|
||||
--color-button-border: #24c76c;
|
||||
}
|
||||
body {
|
||||
background-color: var(--color-background);
|
||||
max-width: 35cm;
|
||||
margin: auto;
|
||||
}
|
||||
p {
|
||||
color: var(--color-on-primary);
|
||||
}
|
||||
span {
|
||||
color: var(--color-on-primary);
|
||||
}
|
||||
.styled-button {
|
||||
padding: 8px;
|
||||
font-size: 0.9em;
|
||||
font-family: 'Lato', sans-serif;
|
||||
border-radius: 12px;
|
||||
color: var(--color-text);
|
||||
border-color: var(--color-button-border);
|
||||
background-color: var(--color-background);
|
||||
}
|
||||
.page-header-div {
|
||||
position: relative;
|
||||
text-align: center;
|
||||
}
|
||||
.page-header-text {
|
||||
margin: 12px 24px;
|
||||
font-size: 3em;
|
||||
/* display: flex; */
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
width: fit-content;
|
||||
text-align: center;
|
||||
}
|
||||
.page-header {
|
||||
margin: 8px 0px 0px 0px;
|
||||
}
|
||||
.page-subheader {
|
||||
margin: 0px 0px 8px 0px;
|
||||
}
|
||||
.page-header-banner {
|
||||
background-color: #24c76c;
|
||||
}
|
||||
.page-header-image {
|
||||
width: 100%;
|
||||
filter: brightness(70%);
|
||||
}
|
||||
.clickable {
|
||||
cursor: pointer;
|
||||
}
|
||||
/* unvisited link */
|
||||
a:link {
|
||||
color: #c2e8ff;
|
||||
}
|
||||
|
||||
/* visited link */
|
||||
a:visited {
|
||||
color: #ffd7f0;
|
||||
}
|
||||
|
||||
/* mouse over link */
|
||||
a:hover {
|
||||
color: #ffdad5;
|
||||
}
|
||||
.centered {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
.page-content {
|
||||
margin: 0px 32px;
|
||||
}
|
||||
BIN
static/projects/tads/red.webp
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
static/projects/tads/reigns.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
static/projects/tads/sandwich.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
static/projects/tads/sonicbad.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/projects/tads/sonicgood.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
static/projects/tads/spacerat.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
63
static/projects/tads/tads1/index.html
Normal file
@@ -0,0 +1,63 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset='utf-8'>
|
||||
<meta name='viewport' content='width=device-width'>
|
||||
<title>Totally Accurate Dating Simulator</title>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="stylesheet" href="/projects/tads/pagestyle.css">
|
||||
<script>
|
||||
let playerNameEmptyError = "Your name cannot be nothing, silly.";
|
||||
let promisingButtonText = "Find hot girls";
|
||||
let disillusionedButtonText = "Continue being sad";
|
||||
let loserText = "There are hot girls around, but they are not interested in ";
|
||||
|
||||
var isButtonClicked = false;
|
||||
|
||||
var playerName;
|
||||
|
||||
window.onload = function() {
|
||||
document.getElementById("button").innerText = promisingButtonText;
|
||||
|
||||
document.getElementById("datingsim").style.display = "none";
|
||||
}
|
||||
|
||||
function finishPrep() {
|
||||
let name = document.getElementById("playerName").value;
|
||||
|
||||
if (name.trim() === "") {
|
||||
document.getElementById("error").innerText = playerNameEmptyError;
|
||||
return;
|
||||
}
|
||||
|
||||
playerName = name;
|
||||
document.getElementById("prep").style.display = "none";
|
||||
document.getElementById("datingsim").style.display = "block";
|
||||
}
|
||||
|
||||
function datingSimButton() {
|
||||
if (isButtonClicked) {
|
||||
document.getElementById("text").innerText = "";
|
||||
document.getElementById("button").innerText = promisingButtonText;
|
||||
} else {
|
||||
document.getElementById("text").innerText = loserText + playerName + ".";
|
||||
document.getElementById("button").innerText = disillusionedButtonText;
|
||||
}
|
||||
isButtonClicked = !isButtonClicked;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="fancy-header">Totally Accurate Dating Simulator</h1>
|
||||
<div id="prep">
|
||||
<input id="playerName"/>
|
||||
<p id="error"></p>
|
||||
<button onclick="finishPrep()">Get dating!</button>
|
||||
</div>
|
||||
<div id="datingsim">
|
||||
<p id="text"></p>
|
||||
<button id="button" onclick="datingSimButton()">Find hot girls</button>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
302
static/projects/tads/tads2/index.html
Normal file
@@ -0,0 +1,302 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset='utf-8'>
|
||||
<meta name='viewport' content='width=device-width'>
|
||||
<title>Totally Accurate Dating Simulator 2</title>
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="stylesheet" href="/projects/tads/pagestyle.css">
|
||||
<script>
|
||||
let playerNameEmptyError = "Your name cannot be nothing, silly.";
|
||||
let promisingButtonText = "Find hot girls";
|
||||
let disillusionedButtonText = "Continue being sad";
|
||||
|
||||
let baldiImages = [
|
||||
"baldicampertalk.webp", // 1
|
||||
"baldiwaveparty.webp",
|
||||
"baldifarmerspank.webp",
|
||||
"baldicrying.webp",
|
||||
"spacerat.png", // 5
|
||||
"red.webp",
|
||||
"cena.jpeg",
|
||||
"vaso1.png",
|
||||
"vaso2.png",
|
||||
"dannyass.png", // 10
|
||||
"batman.jpeg",
|
||||
"homersweet.jpg",
|
||||
"california.jpg",
|
||||
"dream.gif",
|
||||
"frax.png", // 15
|
||||
"sandwich.png",
|
||||
"sonicgood.png",
|
||||
"sonicbad.png",
|
||||
"toilet.jpg",
|
||||
"nook.png", // 20
|
||||
"garry.jpg",
|
||||
"bigsmoke.png",
|
||||
"biden.png",
|
||||
"burn.jpg",
|
||||
"reigns.png", // 25
|
||||
"helga.png",
|
||||
"deniz.gif",
|
||||
"isa.png"
|
||||
];
|
||||
|
||||
let baldiTexts;
|
||||
|
||||
function initBaldiTexts() {
|
||||
baldiTexts = [
|
||||
`${playerName} just met Baldi as he returned from a camping trip! Baldi is eager to talk to ${playerName} and they form a lasting friendship`,
|
||||
`${playerName} just met Baldi after he went to a party and he is drunk as fuck, he touches ${playerName}'s bum and ${playerName} reports Baldi to the police for sexual assault`,
|
||||
`${playerName} meets Baldi, and he is horny as fuck. Fortunately, ${playerName} is also in the mood for it. Baldi has a stick ready to spank ${playerName}`,
|
||||
`${playerName} meets Baldi as he is having an existential crisis. Baldi doesn't know what to do with his life and neither does ${playerName} so they cry together`,
|
||||
`${playerName} meets a space rat from 3000 years into the future. The space rat does not speak ${playerName}'s language. The space rat pulls out a rocket launcher and ${playerName} runs away`,
|
||||
`${playerName} meets red\n\nthat's kinda sus`,
|
||||
`${playerName} meets John Cena. Or at least ${playerName} thinks so, because ${playerName} cannot see him`,
|
||||
`${playerName} encounters Vaso, but he doesn't look too well. ${playerName} calls an ambulance and Vaso dies in the hospital, holding ${playerName}'s hand, sharing his last moments with ${playerName}`,
|
||||
`${playerName} meets Vaso! He is excited to tell ${playerName} all about how Outer Wilds has changed his life, and how it will change ${playerName}'s life as well`,
|
||||
`${playerName} bears witness to a weird couple doing fetish things in public. They ask ${playerName} if they would like to join, but ${playerName} declines and dies alone`,
|
||||
`${playerName} encounters plagiarism Batman and Robin. They discover that ${playerName} didn't correctly cite Karl Marx in an essay ${playerName} submitted 4 years ago, and they run over ${playerName} with the Batmobile`,
|
||||
`${playerName} sees Homer Simpson wielding a bat. Homer wants to protect ${playerName}. ${playerName} and Homer live happily ever after`,
|
||||
`${playerName} meets the US state California. It is on fire due to climate change and ${playerName} suffocates from smoke inhalation`,
|
||||
`${playerName} approaches Vaso's dream girl. Vaso notices and punches ${playerName} to death`,
|
||||
`${playerName} meets Fraxiom at a rave. Fraxiom wants to fantasize about being or kissing Skrillex. Rejected, ${playerName} walks away and drowns their sadness in alcohol`,
|
||||
`${playerName} sees a sandwich lying on the floor. ${playerName} picks it up and begins to eat it. ${playerName} realizes that they just ate a potential lover, and that they will be forever alone`,
|
||||
`${playerName} meets Sonic from the Sonic the Hedgehog series! Sonic takes one look at ${playerName} and proceeds to run away as far as possible at top speed`,
|
||||
`${playerName} meets Sonic from the Sonic the Hedgehog series! But it's the original design from the movie, so ${playerName} decides to pretend they don't speak Sonic's language and walks away`,
|
||||
`${playerName} sees a cool toilet. ${playerName} realizes that the toilet is a metaphor for how ${playerName}'s life is going down the shitter, so ${playerName} goes to cry in the shower`,
|
||||
`${playerName} meets Tom Nook. Tom Nook is here to collect the 2,498,000 bell debt that ${playerName} has not paid off in 28 months. Tom Nook shoots ${playerName}`,
|
||||
`${playerName} meets Garry! But Garry is too busy with creating the base game groundwork for renowned fantasy shooter Team Fortress 2`,
|
||||
`${playerName} meets up with Big Smoke from Grand Theft Auto: San Andreas, and they go out for a meal at the Cluckin' Bell. Big Smoke orders two number 9s, a number 9 large, a number 6 with extra dip, a number 7, two number 45s, one with cheese, and a large soda. ${playerName} is embarrassed, runs away, and gets caught in the crossfire of a drive-by shooting`,
|
||||
`${playerName} gets invited to the White House and has the pleasure of meeting Joe Biden. ${playerName} tells Joe Biden their name, and Joe Biden responds: "nice to meet you ${playerName.shuffle()}!" ${playerName} decides to leave the state of Washington`,
|
||||
`Unable to find a lover, ${playerName} travels towards the sun and burns to death`,
|
||||
`${playerName} meets Roman Reigns! ${playerName} boos him and quickly regrets it, as Roman Reigns is filled with hatred and all members of the Bloodline body slam ${playerName} out of existence`,
|
||||
`${playerName} meets Helga von Streissenburgen! She tells ${playerName} that they are too weak, weak, weak, and that they could eat them for breakfast, so Helga fries up some robot bacon alongside ${playerName} and eats them`,
|
||||
`${playerName} meets Deniz! Unfortunately, Deniz is busy creating a dating simulator and has no time for ${playerName}`,
|
||||
`${playerName} meets Isabel! She is lonely and watches all the cool kids from her window. ${playerName} joins Isabel and they are lonely together`
|
||||
];
|
||||
}
|
||||
|
||||
let viewPrep, viewButtons, viewAnswer, text;
|
||||
|
||||
var userPreference;
|
||||
|
||||
var playerName;
|
||||
|
||||
window.onload = function() {
|
||||
viewPrep = document.getElementById("viewPrep");
|
||||
viewButtons = document.getElementById("viewButtons");
|
||||
viewAnswer = document.getElementById("viewAnswer");
|
||||
text = document.getElementById("text");
|
||||
|
||||
viewPrep.style.display = "block";
|
||||
viewButtons.style.display = "none";
|
||||
viewAnswer.style.display = "none";
|
||||
document.getElementById("viewCheater").style.display = "none";
|
||||
|
||||
document.getElementById("buttonHotGirls").style.display = "block";
|
||||
document.getElementById("buttonHotGuys").style.display = "block";
|
||||
document.getElementById("buttonCuteGirls").style.display = "none";
|
||||
document.getElementById("buttonCuteGuys").style.display = "none";
|
||||
document.getElementById("buttonNormalGirls").style.display = "none";
|
||||
document.getElementById("buttonNormalGuys").style.display = "none";
|
||||
document.getElementById("buttonAnyGirl").style.display = "none";
|
||||
document.getElementById("buttonAnyGuy").style.display = "none";
|
||||
document.getElementById("buttonLiterallyAny").style.display = "none";
|
||||
}
|
||||
|
||||
String.prototype.shuffle = function () {
|
||||
var a = this.split(""),
|
||||
n = a.length;
|
||||
|
||||
for(var i = n - 1; i > 0; i--) {
|
||||
var j = Math.floor(Math.random() * (i + 1));
|
||||
var tmp = a[i];
|
||||
a[i] = a[j];
|
||||
a[j] = tmp;
|
||||
}
|
||||
return a.join("");
|
||||
}
|
||||
|
||||
function finishPrep() {
|
||||
let name = document.getElementById("playerName").value;
|
||||
|
||||
if (name.trim() === "") {
|
||||
document.getElementById("error").innerText = playerNameEmptyError;
|
||||
return;
|
||||
}
|
||||
|
||||
if (name.trim() === "cheater") {
|
||||
showCheaterMenu();
|
||||
return;
|
||||
}
|
||||
|
||||
playerName = name.trim();
|
||||
viewPrep.style.display = "none";
|
||||
viewButtons.style.display = "block";
|
||||
|
||||
document.getElementById("cheaterDescription").innerText = `Pick a number from 1-${baldiImages.length + 1}`;
|
||||
|
||||
initBaldiTexts();
|
||||
}
|
||||
|
||||
function hotGirls() {
|
||||
document.getElementById("buttonHotGirls").onclick = alreadyTried;
|
||||
userPreference = "girl";
|
||||
document.getElementById("buttonHotGuys").style.display = "none";
|
||||
document.getElementById("buttonCuteGirls").style.display = "block";
|
||||
|
||||
showAnswer(
|
||||
`There are hot girls around, but they are not interested in ${playerName}`,
|
||||
"Look around some more"
|
||||
);
|
||||
}
|
||||
|
||||
function hotGuys() {
|
||||
document.getElementById("buttonHotGuys").onclick = alreadyTried;
|
||||
userPreference = "guy";
|
||||
document.getElementById("buttonHotGirls").style.display = "none";
|
||||
document.getElementById("buttonCuteGuys").style.display = "block";
|
||||
|
||||
showAnswer(
|
||||
`There are hot guys around, but they are not interested in ${playerName}`,
|
||||
"Look around some more"
|
||||
);
|
||||
}
|
||||
|
||||
function cute() {
|
||||
document.getElementById("buttonCuteGirls").onclick = alreadyTried;
|
||||
document.getElementById("buttonCuteGuys").onclick = alreadyTried;
|
||||
if (userPreference == "girl") {
|
||||
document.getElementById("buttonNormalGirls").style.display = "block";
|
||||
} else {
|
||||
document.getElementById("buttonNormalGuys").style.display = "block";
|
||||
}
|
||||
|
||||
showAnswer(
|
||||
`A cute ${userPreference} walks by, ${playerName} waves at them but the ${userPreference} pretends they didn't see that`,
|
||||
":("
|
||||
);
|
||||
}
|
||||
|
||||
function normal() {
|
||||
document.getElementById("buttonNormalGirls").onclick = alreadyTried;
|
||||
document.getElementById("buttonNormalGuys").onclick = alreadyTried;
|
||||
if (userPreference == "girl") {
|
||||
document.getElementById("buttonAnyGirl").style.display = "block";
|
||||
} else {
|
||||
document.getElementById("buttonAnyGuy").style.display = "block";
|
||||
}
|
||||
|
||||
showAnswer(
|
||||
`${playerName} sees a group of ${userPreference}s but ${playerName} is too scared to talk to any of them`,
|
||||
"maybe another time"
|
||||
);
|
||||
}
|
||||
|
||||
function any() {
|
||||
document.getElementById("buttonAnyGirl").onclick = alreadyTried;
|
||||
document.getElementById("buttonAnyGuy").onclick = alreadyTried;
|
||||
document.getElementById("buttonLiterallyAny").style.display = "block";
|
||||
|
||||
showAnswer(
|
||||
`Losing patience, ${playerName} approaches a ${userPreference} but they already have a partner and tell ${playerName} to leave`,
|
||||
"oof really?"
|
||||
);
|
||||
}
|
||||
|
||||
function random(min,max) {
|
||||
return Math.floor((Math.random())*(max-min+1))+min;
|
||||
}
|
||||
|
||||
function literallyany(i) {
|
||||
document.getElementById("answerButton").onclick = null;
|
||||
showAnswer(
|
||||
baldiTexts[i],
|
||||
`Ending ${i + 1} of ${baldiImages.length}`
|
||||
);
|
||||
|
||||
document.getElementById("baldiImage").src = `/projects/tads/${baldiImages[i]}`;
|
||||
}
|
||||
|
||||
function literallyanyButton() {
|
||||
literallyany(random(0, baldiImages.length - 1));
|
||||
}
|
||||
|
||||
function returnToOverview() {
|
||||
viewButtons.style.display = "block";
|
||||
viewAnswer.style.display = "none";
|
||||
}
|
||||
|
||||
function alreadyTried() {
|
||||
showAnswer(
|
||||
`${playerName} considers it but then decides against it, because it would only end in disappointment`,
|
||||
"depressing but ok"
|
||||
);
|
||||
}
|
||||
|
||||
function showAnswer(answer, buttonText) {
|
||||
text.innerText = answer;
|
||||
document.getElementById("answerButton").innerText = buttonText;
|
||||
|
||||
viewButtons.style.display = "none";
|
||||
viewAnswer.style.display = "block";
|
||||
}
|
||||
|
||||
function showCheaterMenu() {
|
||||
viewPrep.style.display = "none";
|
||||
document.getElementById("viewCheater").style.display = "block";
|
||||
}
|
||||
|
||||
function buttonCheater() {
|
||||
let index = document.getElementById("cheater").value;
|
||||
|
||||
if (baldiImages[index - 1] == undefined) {
|
||||
document.getElementById("cheaterError").innerText = `'${index}' does not exist`;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
playerName = "cheater";
|
||||
initBaldiTexts();
|
||||
|
||||
|
||||
document.getElementById("viewCheater").style.display = "none";
|
||||
literallyany(index - 1);
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1 class="fancy-header">Totally Accurate Dating Simulator 2</h1>
|
||||
<div id="viewPrep">
|
||||
<p>Enter your name, dating padawan:</p>
|
||||
<input id="playerName"/>
|
||||
<p id="error"></p>
|
||||
<button onclick="finishPrep()">Get dating!</button>
|
||||
</div>
|
||||
<div id="viewButtons">
|
||||
<button id="buttonHotGirls" onclick="hotGirls()">Find hot girls</button>
|
||||
<button id="buttonHotGuys" onclick="hotGuys()">Find hot guys</button>
|
||||
<button id="buttonCuteGirls" onclick="cute()">Find cute girls</button>
|
||||
<button id="buttonCuteGuys" onclick="cute()">Find cute guys</button>
|
||||
<button id="buttonNormalGirls" onclick="normal()">Find normal girls</button>
|
||||
<button id="buttonNormalGuys" onclick="normal()">Find normal guys</button>
|
||||
<button id="buttonAnyGirl" onclick="any()">Find any girl</button>
|
||||
<button id="buttonAnyGuy" onclick="any()">Find any guy</button>
|
||||
<button id="buttonLiterallyAny" onclick="literallyanyButton()">Really, no one??</button>
|
||||
</div>
|
||||
<div id="viewAnswer">
|
||||
<p id="text"></p>
|
||||
<img id="baldiImage"/>
|
||||
<button id="answerButton" onclick="returnToOverview()"></button>
|
||||
</div>
|
||||
<div id="viewCheater">
|
||||
<h3>CHEATER CHEATER CHEATER</h3>
|
||||
<p id="cheaterDescription"></p>
|
||||
<input id="cheater"/>
|
||||
<p id="cheaterError"></p>
|
||||
<button onclick="buttonCheater()">THAT'S RIGHT WE'RE GONNA CHEAT</button>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
static/projects/tads/toilet.jpg
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
static/projects/tads/vaso1.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
static/projects/tads/vaso2.png
Normal file
|
After Width: | Height: | Size: 26 KiB |