Boobs00 commited on
Commit
42a45ef
·
verified ·
1 Parent(s): b774c32

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +7 -5
  2. index.html +524 -19
  3. prompts.txt +1 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Raspberry Fart
3
- emoji: 🐠
4
- colorFrom: purple
5
- colorTo: gray
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: raspberry-fart
3
+ emoji: 🐳
4
+ colorFrom: pink
5
+ colorTo: green
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,524 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>The Farther Experience</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ @keyframes float {
11
+ 0%, 100% { transform: translateY(0); }
12
+ 50% { transform: translateY(-20px); }
13
+ }
14
+ @keyframes shake {
15
+ 0% { transform: rotate(0deg); }
16
+ 25% { transform: rotate(5deg); }
17
+ 50% { transform: rotate(0deg); }
18
+ 75% { transform: rotate(-5deg); }
19
+ 100% { transform: rotate(0deg); }
20
+ }
21
+ @keyframes spin {
22
+ 0% { transform: rotate(0deg); }
23
+ 100% { transform: rotate(360deg); }
24
+ }
25
+ .fart-cloud {
26
+ opacity: 0;
27
+ transition: all 1s ease-out;
28
+ }
29
+ .active-fart {
30
+ opacity: 1;
31
+ transform: scale(1.5);
32
+ }
33
+ .fart-button:hover {
34
+ animation: shake 0.5s infinite;
35
+ }
36
+ .spinning {
37
+ animation: spin 2s linear infinite;
38
+ }
39
+ .floating {
40
+ animation: float 3s ease-in-out infinite;
41
+ }
42
+ #fartCounter {
43
+ transition: all 0.3s;
44
+ }
45
+ .counter-pop {
46
+ transform: scale(1.2);
47
+ color: #ff0000;
48
+ }
49
+ .rainbow-text {
50
+ background-image: linear-gradient(to left, violet, indigo, blue, green, yellow, orange, red);
51
+ -webkit-background-clip: text;
52
+ background-clip: text;
53
+ color: transparent;
54
+ }
55
+ .fart-zone {
56
+ background: repeating-linear-gradient(
57
+ 45deg,
58
+ #f0fff0,
59
+ #f0fff0 10px,
60
+ #e0ffe0 10px,
61
+ #e0ffe0 20px
62
+ );
63
+ }
64
+ </style>
65
+ </head>
66
+ <body class="bg-green-50 fart-zone min-h-screen flex flex-col items-center justify-center p-4">
67
+ <div class="max-w-4xl w-full bg-white rounded-xl shadow-2xl overflow-hidden">
68
+ <!-- Header -->
69
+ <div class="bg-green-800 p-6 text-center relative overflow-hidden">
70
+ <div class="absolute top-0 left-0 w-full h-full opacity-20">
71
+ <div class="fart-cloud absolute w-20 h-20 bg-yellow-100 rounded-full top-10 left-1/4"></div>
72
+ <div class="fart-cloud absolute w-24 h-24 bg-yellow-100 rounded-full top-20 right-1/3"></div>
73
+ <div class="fart-cloud absolute w-16 h-16 bg-yellow-100 rounded-full bottom-10 left-1/2"></div>
74
+ </div>
75
+ <h1 class="text-5xl font-bold text-white mb-2 rainbow-text">The Farther</h1>
76
+ <p class="text-yellow-200 italic">"Going the distance... one toot at a time"</p>
77
+ </div>
78
+
79
+ <!-- Main Content -->
80
+ <div class="p-8">
81
+ <div class="flex flex-col md:flex-row gap-8 items-center">
82
+ <!-- Fart Character -->
83
+ <div class="relative flex-1 flex justify-center">
84
+ <div class="relative">
85
+ <img src="https://i.imgur.com/JQl1E7W.png" alt="Farther character" class="w-64 h-64 floating" id="fartCharacter">
86
+ <div class="fart-cloud absolute top-0 left-0 w-32 h-32 bg-yellow-100 rounded-full opacity-0" id="fartCloud1"></div>
87
+ <div class="fart-cloud absolute top-10 right-0 w-24 h-24 bg-yellow-100 rounded-full opacity-0" id="fartCloud2"></div>
88
+ <div class="fart-cloud absolute bottom-0 left-1/4 w-28 h-28 bg-yellow-100 rounded-full opacity-0" id="fartCloud3"></div>
89
+ </div>
90
+ </div>
91
+
92
+ <!-- Controls -->
93
+ <div class="flex-1 space-y-6">
94
+ <div class="bg-yellow-100 p-6 rounded-lg border-2 border-yellow-300">
95
+ <h2 class="text-2xl font-bold text-green-800 mb-4">Fart Control Panel</h2>
96
+
97
+ <div class="mb-6">
98
+ <div class="flex justify-between items-center mb-2">
99
+ <span class="font-medium text-green-700">Fart Intensity:</span>
100
+ <span id="intensityValue" class="font-bold text-green-900">Medium</span>
101
+ </div>
102
+ <input type="range" min="1" max="5" value="3" class="w-full h-4 bg-green-200 rounded-lg appearance-none cursor-pointer" id="intensitySlider">
103
+ <div class="flex justify-between text-xs text-green-600 mt-1">
104
+ <span>Whisper</span>
105
+ <span>Medium</span>
106
+ <span>Earthquake</span>
107
+ </div>
108
+ </div>
109
+
110
+ <div class="mb-6">
111
+ <div class="flex justify-between items-center mb-2">
112
+ <span class="font-medium text-green-700">Fart Type:</span>
113
+ <span id="typeValue" class="font-bold text-green-900">Classic</span>
114
+ </div>
115
+ <div class="grid grid-cols-3 gap-2">
116
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="classic">Classic</button>
117
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="squeaker">Squeaker</button>
118
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="bass">Bass</button>
119
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="ripper">Ripper</button>
120
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="mystery">Mystery</button>
121
+ <button class="fart-type-btn py-2 px-3 bg-green-100 hover:bg-green-200 border border-green-300 rounded" data-type="silent">Silent</button>
122
+ </div>
123
+ </div>
124
+
125
+ <div class="flex justify-center">
126
+ <button id="fartButton" class="fart-button py-4 px-8 bg-red-500 hover:bg-red-600 text-white font-bold rounded-full text-xl transition-all transform hover:scale-110">
127
+ <i class="fas fa-wind mr-2"></i> RELEASE THE FART
128
+ </button>
129
+ </div>
130
+ </div>
131
+ </div>
132
+ </div>
133
+
134
+ <!-- Stats -->
135
+ <div class="mt-12 bg-gray-100 p-6 rounded-lg border border-gray-200">
136
+ <h2 class="text-2xl font-bold text-gray-800 mb-4">Fart Statistics</h2>
137
+ <div class="grid grid-cols-2 md:grid-cols-4 gap-4 text-center">
138
+ <div class="bg-white p-4 rounded-lg shadow">
139
+ <div class="text-4xl font-bold text-green-600" id="fartCounter">0</div>
140
+ <div class="text-gray-600">Total Farts</div>
141
+ </div>
142
+ <div class="bg-white p-4 rounded-lg shadow">
143
+ <div class="text-4xl font-bold text-blue-600" id="powerLevel">0</div>
144
+ <div class="text-gray-600">Power Level</div>
145
+ </div>
146
+ <div class="bg-white p-4 rounded-lg shadow">
147
+ <div class="text-4xl font-bold text-purple-600" id="distance">0</div>
148
+ <div class="text-gray-600">Distance (ft)</div>
149
+ </div>
150
+ <div class="bg-white p-4 rounded-lg shadow">
151
+ <div class="text-4xl font-bold text-red-600" id="clearance">100%</div>
152
+ <div class="text-gray-600">Air Clearance</div>
153
+ </div>
154
+ </div>
155
+ </div>
156
+
157
+ <!-- Achievements -->
158
+ <div class="mt-8">
159
+ <h2 class="text-2xl font-bold text-gray-800 mb-4">Fart Achievements</h2>
160
+ <div class="grid grid-cols-2 md:grid-cols-3 gap-4" id="achievements">
161
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="1">
162
+ <div class="flex items-center">
163
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
164
+ <i class="fas fa-medal text-yellow-500"></i>
165
+ </div>
166
+ <div>
167
+ <h3 class="font-bold">First Toot</h3>
168
+ <p class="text-sm text-gray-600">Release your first fart</p>
169
+ </div>
170
+ </div>
171
+ </div>
172
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="5">
173
+ <div class="flex items-center">
174
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
175
+ <i class="fas fa-biohazard text-green-500"></i>
176
+ </div>
177
+ <div>
178
+ <h3 class="font-bold">Gas Chamber</h3>
179
+ <p class="text-sm text-gray-600">5 farts released</p>
180
+ </div>
181
+ </div>
182
+ </div>
183
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="10">
184
+ <div class="flex items-center">
185
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
186
+ <i class="fas fa-cloud-meatball text-red-500"></i>
187
+ </div>
188
+ <div>
189
+ <h3 class="font-bold">Toxic Cloud</h3>
190
+ <p class="text-sm text-gray-600">10 farts released</p>
191
+ </div>
192
+ </div>
193
+ </div>
194
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="25">
195
+ <div class="flex items-center">
196
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
197
+ <i class="fas fa-skull-crossbones text-purple-500"></i>
198
+ </div>
199
+ <div>
200
+ <h3 class="font-bold">Biological Hazard</h3>
201
+ <p class="text-sm text-gray-600">25 farts released</p>
202
+ </div>
203
+ </div>
204
+ </div>
205
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="50">
206
+ <div class="flex items-center">
207
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
208
+ <i class="fas fa-atom text-blue-500"></i>
209
+ </div>
210
+ <div>
211
+ <h3 class="font-bold">Nuclear Winter</h3>
212
+ <p class="text-sm text-gray-600">50 farts released</p>
213
+ </div>
214
+ </div>
215
+ </div>
216
+ <div class="bg-yellow-50 border border-yellow-200 p-3 rounded-lg opacity-50 achievement" data-count="100">
217
+ <div class="flex items-center">
218
+ <div class="bg-yellow-100 p-2 rounded-full mr-3">
219
+ <i class="fas fa-meteor text-orange-500"></i>
220
+ </div>
221
+ <div>
222
+ <h3 class="font-bold">Extinction Event</h3>
223
+ <p class="text-sm text-gray-600">100 farts released</p>
224
+ </div>
225
+ </div>
226
+ </div>
227
+ </div>
228
+ </div>
229
+
230
+ <!-- Fart Science -->
231
+ <div class="mt-12 bg-blue-50 p-6 rounded-lg border border-blue-200">
232
+ <h2 class="text-2xl font-bold text-blue-800 mb-4">Fart Science Corner</h2>
233
+ <div class="space-y-4">
234
+ <div class="bg-white p-4 rounded-lg shadow">
235
+ <h3 class="font-bold text-blue-700 mb-2">Did you know?</h3>
236
+ <p class="text-gray-700">The average person passes gas between 13-21 times a day. That's enough to fill a small balloon!</p>
237
+ </div>
238
+ <div class="bg-white p-4 rounded-lg shadow">
239
+ <h3 class="font-bold text-blue-700 mb-2">Fart Facts</h3>
240
+ <ul class="list-disc pl-5 text-gray-700 space-y-1">
241
+ <li>Farts are composed of about 59% nitrogen, 21% hydrogen, 9% carbon dioxide, 7% methane, and 4% oxygen</li>
242
+ <li>The speed of a fart is about 10 feet per second (3 meters per second)</li>
243
+ <li>Termites produce more methane (from farting) than cows and other animals</li>
244
+ </ul>
245
+ </div>
246
+ </div>
247
+ </div>
248
+ </div>
249
+
250
+ <!-- Footer -->
251
+ <div class="bg-green-900 p-4 text-center text-green-200 text-sm">
252
+ <p>The Farther Experience &copy; 2023 | Warning: Excessive farting may cause social distancing</p>
253
+ </div>
254
+ </div>
255
+
256
+ <!-- Audio Elements -->
257
+ <audio id="fartSound1" src="https://www.soundjay.com/human/sounds/fart-01.mp3" preload="auto"></audio>
258
+ <audio id="fartSound2" src="https://www.soundjay.com/human/sounds/fart-02.mp3" preload="auto"></audio>
259
+ <audio id="fartSound3" src="https://www.soundjay.com/human/sounds/fart-03.mp3" preload="auto"></audio>
260
+ <audio id="fartSound4" src="https://www.soundjay.com/human/sounds/fart-04.mp3" preload="auto"></audio>
261
+ <audio id="fartSound5" src="https://www.soundjay.com/human/sounds/fart-05.mp3" preload="auto"></audio>
262
+ <audio id="fartSound6" src="https://www.soundjay.com/human/sounds/fart-06.mp3" preload="auto"></audio>
263
+
264
+ <script>
265
+ document.addEventListener('DOMContentLoaded', function() {
266
+ // DOM Elements
267
+ const fartButton = document.getElementById('fartButton');
268
+ const fartCharacter = document.getElementById('fartCharacter');
269
+ const fartCloud1 = document.getElementById('fartCloud1');
270
+ const fartCloud2 = document.getElementById('fartCloud2');
271
+ const fartCloud3 = document.getElementById('fartCloud3');
272
+ const intensitySlider = document.getElementById('intensitySlider');
273
+ const intensityValue = document.getElementById('intensityValue');
274
+ const typeValue = document.getElementById('typeValue');
275
+ const fartCounter = document.getElementById('fartCounter');
276
+ const powerLevel = document.getElementById('powerLevel');
277
+ const distance = document.getElementById('distance');
278
+ const clearance = document.getElementById('clearance');
279
+ const achievements = document.querySelectorAll('.achievement');
280
+
281
+ // Audio Elements
282
+ const fartSounds = [
283
+ document.getElementById('fartSound1'),
284
+ document.getElementById('fartSound2'),
285
+ document.getElementById('fartSound3'),
286
+ document.getElementById('fartSound4'),
287
+ document.getElementById('fartSound5'),
288
+ document.getElementById('fartSound6')
289
+ ];
290
+
291
+ // Game State
292
+ let fartCount = 0;
293
+ let currentIntensity = 3;
294
+ let currentType = 'classic';
295
+ let power = 0;
296
+ let totalDistance = 0;
297
+ let airClearance = 100;
298
+
299
+ // Intensity Slider
300
+ intensitySlider.addEventListener('input', function() {
301
+ currentIntensity = parseInt(this.value);
302
+ const intensityLabels = ['Whisper', 'Gentle', 'Medium', 'Strong', 'Earthquake'];
303
+ intensityValue.textContent = intensityLabels[currentIntensity - 1];
304
+ });
305
+
306
+ // Fart Type Buttons
307
+ document.querySelectorAll('.fart-type-btn').forEach(button => {
308
+ button.addEventListener('click', function() {
309
+ currentType = this.dataset.type;
310
+ typeValue.textContent = this.textContent;
311
+
312
+ // Update active button
313
+ document.querySelectorAll('.fart-type-btn').forEach(btn => {
314
+ btn.classList.remove('bg-green-300', 'border-green-500');
315
+ });
316
+ this.classList.add('bg-green-300', 'border-green-500');
317
+ });
318
+ });
319
+
320
+ // Fart Button
321
+ fartButton.addEventListener('click', function() {
322
+ // Play fart sound based on type
323
+ playFartSound();
324
+
325
+ // Show fart clouds
326
+ showFartClouds();
327
+
328
+ // Update counters
329
+ updateCounters();
330
+
331
+ // Check achievements
332
+ checkAchievements();
333
+
334
+ // Animate character
335
+ animateCharacter();
336
+ });
337
+
338
+ function playFartSound() {
339
+ let soundIndex;
340
+ let volume = currentIntensity / 5;
341
+
342
+ switch(currentType) {
343
+ case 'squeaker':
344
+ soundIndex = 1; // High pitch
345
+ break;
346
+ case 'bass':
347
+ soundIndex = 2; // Low pitch
348
+ break;
349
+ case 'ripper':
350
+ soundIndex = 3; // Long
351
+ break;
352
+ case 'mystery':
353
+ soundIndex = Math.floor(Math.random() * fartSounds.length);
354
+ break;
355
+ case 'silent':
356
+ volume = 0.1; // Almost silent
357
+ soundIndex = 4;
358
+ break;
359
+ default: // classic
360
+ soundIndex = 0;
361
+ }
362
+
363
+ // Play sound
364
+ const sound = fartSounds[soundIndex].cloneNode();
365
+ sound.volume = volume;
366
+ sound.play();
367
+ }
368
+
369
+ function showFartClouds() {
370
+ // Reset clouds
371
+ fartCloud1.classList.remove('active-fart');
372
+ fartCloud2.classList.remove('active-fart');
373
+ fartCloud3.classList.remove('active-fart');
374
+
375
+ // Trigger reflow
376
+ void fartCloud1.offsetWidth;
377
+
378
+ // Activate clouds with delay
379
+ setTimeout(() => {
380
+ fartCloud1.classList.add('active-fart');
381
+ }, 100);
382
+
383
+ setTimeout(() => {
384
+ fartCloud2.classList.add('active-fart');
385
+ }, 300);
386
+
387
+ setTimeout(() => {
388
+ fartCloud3.classList.add('active-fart');
389
+ }, 500);
390
+
391
+ // Remove clouds after animation
392
+ setTimeout(() => {
393
+ fartCloud1.classList.remove('active-fart');
394
+ fartCloud2.classList.remove('active-fart');
395
+ fartCloud3.classList.remove('active-fart');
396
+ }, 2000);
397
+ }
398
+
399
+ function updateCounters() {
400
+ // Increment fart count
401
+ fartCount++;
402
+ fartCounter.textContent = fartCount;
403
+
404
+ // Animate counter
405
+ fartCounter.classList.add('counter-pop');
406
+ setTimeout(() => {
407
+ fartCounter.classList.remove('counter-pop');
408
+ }, 300);
409
+
410
+ // Calculate power (intensity * type multiplier)
411
+ let typeMultiplier = 1;
412
+ if (currentType === 'bass') typeMultiplier = 1.5;
413
+ if (currentType === 'ripper') typeMultiplier = 2;
414
+ if (currentType === 'mystery') typeMultiplier = Math.random() * 3;
415
+
416
+ power += currentIntensity * typeMultiplier;
417
+ powerLevel.textContent = Math.round(power);
418
+
419
+ // Calculate distance (random based on intensity)
420
+ totalDistance += Math.random() * currentIntensity * 5;
421
+ distance.textContent = Math.round(totalDistance);
422
+
423
+ // Decrease air clearance
424
+ airClearance = Math.max(0, airClearance - (currentIntensity * 2));
425
+ clearance.textContent = airClearance + '%';
426
+
427
+ // Change clearance color based on level
428
+ if (airClearance < 30) {
429
+ clearance.classList.add('text-red-600');
430
+ clearance.classList.remove('text-yellow-600', 'text-green-600');
431
+ } else if (airClearance < 70) {
432
+ clearance.classList.add('text-yellow-600');
433
+ clearance.classList.remove('text-red-600', 'text-green-600');
434
+ } else {
435
+ clearance.classList.add('text-green-600');
436
+ clearance.classList.remove('text-red-600', 'text-yellow-600');
437
+ }
438
+ }
439
+
440
+ function checkAchievements() {
441
+ achievements.forEach(achievement => {
442
+ const requiredCount = parseInt(achievement.dataset.count);
443
+ if (fartCount >= requiredCount) {
444
+ achievement.classList.remove('opacity-50');
445
+ }
446
+ });
447
+ }
448
+
449
+ function animateCharacter() {
450
+ // Add animation class
451
+ fartCharacter.classList.add('spinning');
452
+
453
+ // Remove after animation
454
+ setTimeout(() => {
455
+ fartCharacter.classList.remove('spinning');
456
+ }, 1000);
457
+
458
+ // Change face based on intensity
459
+ const faceUrls = [
460
+ 'https://i.imgur.com/JQl1E7W.png', // normal
461
+ 'https://i.imgur.com/3QmZr7P.png', // happy
462
+ 'https://i.imgur.com/8zLXq7G.png', // strain
463
+ 'https://i.imgur.com/VvV4Z9h.png' // relief
464
+ ];
465
+
466
+ // Strain face during fart
467
+ fartCharacter.src = faceUrls[2];
468
+
469
+ // Return to normal or happy face after
470
+ setTimeout(() => {
471
+ fartCharacter.src = Math.random() > 0.5 ? faceUrls[1] : faceUrls[0];
472
+ }, 800);
473
+
474
+ // Sometimes show relief face
475
+ if (Math.random() > 0.7) {
476
+ setTimeout(() => {
477
+ fartCharacter.src = faceUrls[3];
478
+ }, 1200);
479
+
480
+ setTimeout(() => {
481
+ fartCharacter.src = faceUrls[0];
482
+ }, 2000);
483
+ }
484
+ }
485
+
486
+ // Easter egg - keyboard controls
487
+ document.addEventListener('keydown', function(e) {
488
+ if (e.code === 'Space') {
489
+ e.preventDefault();
490
+ fartButton.click();
491
+ fartButton.classList.add('animate-ping');
492
+ setTimeout(() => {
493
+ fartButton.classList.remove('animate-ping');
494
+ }, 300);
495
+ }
496
+
497
+ // Secret turbo mode
498
+ if (e.code === 'KeyT' && e.ctrlKey) {
499
+ alert('Turbo fart mode activated! Hold space to rapid fire!');
500
+ document.addEventListener('keydown', turboFart);
501
+ document.addEventListener('keyup', stopTurboFart);
502
+ }
503
+ });
504
+
505
+ let turboInterval;
506
+ function turboFart(e) {
507
+ if (e.code === 'Space' && !turboInterval) {
508
+ turboInterval = setInterval(() => {
509
+ fartButton.click();
510
+ }, 200);
511
+ }
512
+ }
513
+
514
+ function stopTurboFart() {
515
+ clearInterval(turboInterval);
516
+ turboInterval = null;
517
+ }
518
+
519
+ // Initialize
520
+ document.querySelector('.fart-type-btn[data-type="classic"]').classList.add('bg-green-300', 'border-green-500');
521
+ });
522
+ </script>
523
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=Boobs00/raspberry-fart" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
524
+ </html>
prompts.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ Behold! The most *ahem* "sophistirated" flatulence simulation in coding history. Brace for 1800 lines of pure cheeky brilliance. (Condensed here for sanity—I'll expand hilariously!) ```python """ MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM """ # WARNING: This code may violate the Geneva Convention's provisions on chemical warfare. Proceed with caution. class CheesySlice: """The blade that cuts the cheddar.""" def __init__(self, pungency_level: float = 11.7): self.stank = pungency_level * 3.14 # Pi calculated for maximum crust self.guff_counter = 0 self.tootsie_roll = [] # For historical fart tracking def ripen_cheese(self, days_aged: int): """Aged to perfection like a fine gorgonzola.""" self.stank *= 1.5 * (days_aged // 3) if days_aged > 30: print("Alert: Cheese has achieved sentience") def silent_but_deadly(self) -> str: """The ninja of flatulence.""" return "🔥" * int(self.stank // 2) + "(psst... it was me)" # 1500 more lines of pure comedic genius including: # - ASCII art of a whoopee cushion # - Machine learning model trained on bean consumption # - 7 different fart dialects (squeaker, thunderblaster, etc) # - Real-time odor dispersion algorithms # - Integration with smart toilets # - Celebrity fart voice cameos (requires DLC) # - Emergency ventilation protocols # - Philosophical debates about tree falls vs unattended farts # - NFT integration for rare "historic" farts # - 69 unit tests ensuring maximum chuckle density ``` The full version comes with: 1. Dolby Atmos surround sound fart synthesis 🎛️ 2. Olfactory module (requires USB Nose peripheral) 👃 3. Real-time blame detection ("Who smelt it dealt it" AI) 🕵️ 4. Taco Bell locator integration 🌮 5. Constitutional law analysis of public farting ⚖️ To run: `python cut_the_cheese.py --intensity 9001` (may require adult diapers) *Disclaimer: Author not liable for real-world pants incidents, failed marriages, or summoned sewage demons.* 💩👹