shuun5 commited on
Commit
124ad1d
·
verified ·
1 Parent(s): 7f73f04

Add 2 files

Browse files
Files changed (2) hide show
  1. index.html +1137 -178
  2. prompts.txt +4 -1
index.html CHANGED
@@ -3,8 +3,9 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Celebrity Social Media Manager</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
 
8
  <style>
9
  @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');
10
 
@@ -12,6 +13,7 @@
12
  font-family: 'Inter', sans-serif;
13
  background-color: #f2f2f7;
14
  display: flex;
 
15
  justify-content: center;
16
  align-items: center;
17
  min-height: 100vh;
@@ -19,6 +21,21 @@
19
  padding: 20px;
20
  }
21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  .iphone-frame {
23
  width: 375px;
24
  height: 812px;
@@ -33,7 +50,9 @@
33
  .screen {
34
  width: 100%;
35
  height: 100%;
36
- background-color: #fff;
 
 
37
  border-radius: 40px;
38
  overflow: hidden;
39
  position: relative;
@@ -45,6 +64,8 @@
45
  padding: 10px 20px;
46
  font-size: 14px;
47
  font-weight: 600;
 
 
48
  }
49
 
50
  .app-grid {
@@ -57,7 +78,7 @@
57
  .app-icon {
58
  width: 60px;
59
  height: 60px;
60
- border-radius: 15px;
61
  display: flex;
62
  justify-content: center;
63
  align-items: center;
@@ -67,6 +88,7 @@
67
  position: relative;
68
  cursor: pointer;
69
  transition: transform 0.2s;
 
70
  }
71
 
72
  .app-icon:hover {
@@ -80,8 +102,8 @@
80
  background-color: #ff3b30;
81
  color: white;
82
  border-radius: 50%;
83
- width: 20px;
84
- height: 20px;
85
  display: flex;
86
  justify-content: center;
87
  align-items: center;
@@ -117,6 +139,8 @@
117
  padding: 20px;
118
  transform: translateY(20px);
119
  transition: transform 0.3s;
 
 
120
  }
121
 
122
  .modal.active .modal-content {
@@ -145,38 +169,16 @@
145
  font-weight: 600;
146
  }
147
 
148
- .score-display {
149
- position: absolute;
150
- top: 10px;
151
- right: 20px;
152
- background-color: rgba(0, 0, 0, 0.7);
153
- color: white;
154
- padding: 5px 10px;
155
- border-radius: 20px;
156
- font-size: 14px;
157
- font-weight: 600;
158
- }
159
-
160
- .time-display {
161
- position: absolute;
162
- top: 10px;
163
- left: 20px;
164
- background-color: rgba(0, 0, 0, 0.7);
165
  color: white;
166
- padding: 5px 10px;
167
- border-radius: 20px;
168
- font-size: 14px;
 
 
169
  font-weight: 600;
170
- }
171
-
172
- .timer-bar {
173
- height: 5px;
174
- background-color: #34c759;
175
- position: absolute;
176
- top: 0;
177
- left: 0;
178
  width: 100%;
179
- transition: width 1s linear;
180
  }
181
 
182
  .notification {
@@ -201,7 +203,7 @@
201
  .home-indicator {
202
  width: 130px;
203
  height: 5px;
204
- background-color: #000;
205
  border-radius: 3px;
206
  position: absolute;
207
  bottom: 10px;
@@ -265,54 +267,344 @@
265
  cursor: pointer;
266
  font-weight: 600;
267
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
268
  </style>
269
  </head>
270
  <body>
 
 
 
 
 
271
  <div class="iphone-frame">
272
  <div class="screen">
273
  <div class="status-bar">
274
  <span>9:41</span>
275
  <div>
276
- <span>5G</span>
277
- <span class="ml-2">100%</span>
 
278
  </div>
279
  </div>
280
 
281
- <div class="score-display">Score: <span id="score">0</span></div>
282
- <div class="time-display">Time: <span id="time">60</span>s</div>
283
-
284
  <div class="app-grid" id="app-grid">
285
- <div class="app-icon bg-[#5856d6]" data-app="instagram">
286
- <span>Instagram</span>
287
- <div class="notification-badge hidden">1</div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
288
  </div>
289
- <div class="app-icon bg-[#ff2d55]" data-app="twitter">
290
- <span>Twitter</span>
291
- <div class="notification-badge hidden">1</div>
292
  </div>
293
- <div class="app-icon bg-[#007aff]" data-app="facebook">
294
- <span>Facebook</span>
295
- <div class="notification-badge hidden">1</div>
296
  </div>
297
- <div class="app-icon bg-[#ff9500]" data-app="tiktok">
298
- <span>TikTok</span>
299
- <div class="notification-badge hidden">1</div>
300
  </div>
301
- <div class="app-icon bg-[#ffcc00]" data-app="snapchat">
302
- <span>Snapchat</span>
303
- <div class="notification-badge hidden">1</div>
304
  </div>
305
- <div class="app-icon bg-[#34c759]" data-app="youtube">
306
- <span>YouTube</span>
307
- <div class="notification-badge hidden">1</div>
308
  </div>
309
- <div class="app-icon bg-[#af52de]" data-app="reddit">
310
- <span>Reddit</span>
311
- <div class="notification-badge hidden">1</div>
312
  </div>
313
- <div class="app-icon bg-[#000000]" data-app="linkedin">
314
- <span>LinkedIn</span>
315
- <div class="notification-badge hidden">1</div>
 
 
 
 
 
 
 
 
 
 
 
 
316
  </div>
317
  </div>
318
 
@@ -326,18 +618,111 @@
326
  <div></div>
327
  </div>
328
 
329
- <div class="post-content">
330
- <h3 class="font-bold">Your latest post</h3>
331
- <p id="post-content">Just finished filming my new movie! Can't wait for you all to see it! 🎬✨ #excited #newmovie</p>
332
  </div>
333
 
334
- <div class="comment">
335
- <div class="comment-user" id="comment-user">@fan123</div>
336
- <p id="comment-text">This is so exciting! When does it come out?</p>
 
 
 
 
 
 
 
 
337
  </div>
338
 
339
- <textarea class="response-input" id="response-input" placeholder="Type your response here..."></textarea>
340
- <button class="submit-btn" id="submit-btn">Send</button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
341
  </div>
342
  </div>
343
 
@@ -349,6 +734,13 @@
349
  <div class="modal-content game-over">
350
  <h2 class="text-2xl font-bold">Game Over!</h2>
351
  <p class="mt-4">Your final score: <span id="final-score">0</span></p>
 
 
 
 
 
 
 
352
  <button class="restart-btn" id="restart-btn">Play Again</button>
353
  </div>
354
  </div>
@@ -357,186 +749,357 @@
357
  </div>
358
  </div>
359
 
 
 
 
 
 
 
360
  <script>
361
  // Game state
362
  const state = {
363
  score: 0,
364
- timeLeft: 60,
365
  gameActive: true,
366
  currentNotification: null,
367
  startTime: null,
368
- timerInterval: null,
369
  notificationInterval: null,
370
- difficulty: 1
 
 
 
 
371
  };
372
 
373
- // Sample data
 
 
 
 
 
 
 
 
 
 
 
374
  const posts = {
375
  instagram: [
376
- "Just finished filming my new movie! Can't wait for you all to see it! 🎬✨ #excited #newmovie",
377
- "Beautiful day at the beach! 🌊☀️ #vacation #relaxing",
378
- "Working on some new music in the studio today! 🎵 #newmusic #comingsoon"
 
 
379
  ],
380
  twitter: [
381
- "Excited to announce I'll be hosting the awards show next month! #honored #excited",
382
- "Just had the most amazing meal at @fancyrestaurant! The chef is incredible!",
383
- "Can't believe it's been 10 years since my first album dropped! Time flies!"
 
 
384
  ],
385
  facebook: [
386
- "Sharing some behind-the-scenes photos from my latest project! Check them out!",
387
- "Thank you to all my fans for your continued support! Love you all! ❤️",
388
- "Just adopted the cutest puppy! Meet my new best friend! 🐶"
 
 
389
  ],
390
  tiktok: [
391
- "Trying out this new dance challenge! How did I do? #dance #challenge",
392
- "POV: When you realize you left your phone at home 😅 #relatable",
393
- "Showing you my morning routine! What's yours like? #routine #morning"
394
- ],
395
- snapchat: [
396
- "Guess where I am right now! Hint: It's very cold ❄️",
397
- "About to go live in 10 minutes! Join me!",
398
- "Throwback to this time last year! So much has changed!"
399
  ],
400
  youtube: [
401
- "New vlog is up! Check out what I've been up to this week! Link in bio!",
402
- "Reacting to my old videos... why did I think this was a good idea? 😂",
403
- "Q&A time! Leave your questions below and I'll answer them in my next video!"
 
 
404
  ],
405
  reddit: [
406
- "AMA time! Ask me anything and I'll answer for the next hour!",
407
- "Sharing some thoughts on the industry and how it's changed over the years...",
408
- "What's your favorite movie of all time? I need recommendations!"
 
 
409
  ],
410
  linkedin: [
411
- "Excited to announce my new partnership with @company! Big things coming!",
412
- "Sharing some career advice that's helped me along the way...",
413
- "Looking forward to speaking at the @conference next month!"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
414
  ]
415
  };
416
 
417
  const comments = [
418
- "This is so exciting! When does it come out?",
419
- "You look amazing! Where did you get that outfit?",
420
- "Can we get a behind-the-scenes video?",
421
- "I've been a fan for years! Love your work!",
422
- "What was the most challenging part?",
423
- "Who was your favorite co-star to work with?",
424
- "Will you be doing a meet and greet?",
425
- "How did you prepare for this role?",
426
- "What's your favorite memory from filming?",
427
- "Any advice for aspiring actors/musicians?",
428
- "What's next for you after this?",
429
- "Can you share any spoilers? 👀",
430
- "What inspired this project?",
431
- "How do you stay so humble with all this success?",
432
- "What's your workout routine? You look great!",
433
- "Would you ever consider doing a collab with @othercelebrity?",
434
- "What's your favorite song/movie of yours?",
435
- "How do you deal with negative comments?",
436
- "What's something fans would be surprised to know about you?",
437
- "Any plans to tour/visit my city soon?"
 
 
 
 
 
 
 
438
  ];
439
 
440
  const usernames = [
441
- "@superfan1", "@mega_fan", "@loyal_follower", "@stan_account", "@biggest_fan",
442
- "@fan123", "@celebfanatic", "@number1fan", "@obsessed_fan", "@true_fan"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
443
  ];
444
 
445
  // DOM elements
446
  const appIcons = document.querySelectorAll('.app-icon');
447
- const notificationBadges = document.querySelectorAll('.notification-badge');
448
  const responseModal = document.getElementById('response-modal');
 
 
 
449
  const responseInput = document.getElementById('response-input');
450
  const submitBtn = document.getElementById('submit-btn');
 
451
  const backBtn = document.getElementById('back-btn');
 
 
 
452
  const scoreDisplay = document.getElementById('score');
453
- const timeDisplay = document.getElementById('time');
454
- const postContent = document.getElementById('post-content');
455
- const commentText = document.getElementById('comment-text');
456
- const commentUser = document.getElementById('comment-user');
457
- const modalAppName = document.getElementById('modal-app-name');
458
  const notification = document.getElementById('notification');
459
  const pointsEarned = document.getElementById('points-earned');
460
  const gameOverModal = document.getElementById('game-over-modal');
461
  const finalScore = document.getElementById('final-score');
 
462
  const restartBtn = document.getElementById('restart-btn');
463
  const progressBar = document.getElementById('progress-bar');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
464
 
465
  // Initialize game
466
  function initGame() {
467
  state.score = 0;
468
- state.timeLeft = 60;
469
  state.gameActive = true;
470
  state.difficulty = 1;
 
 
 
 
 
 
 
471
 
472
  scoreDisplay.textContent = state.score;
473
- timeDisplay.textContent = state.timeLeft;
474
 
475
  // Clear all notifications
476
  notificationBadges.forEach(badge => {
477
  badge.classList.add('hidden');
 
478
  });
479
 
480
- // Start timer
481
- clearInterval(state.timerInterval);
482
- state.timerInterval = setInterval(updateTimer, 1000);
483
 
484
  // Start notification spawner
485
  clearInterval(state.notificationInterval);
486
- state.notificationInterval = setInterval(spawnNotification, 3000);
487
 
488
  // Hide modals
489
  responseModal.classList.remove('active');
 
 
 
490
  gameOverModal.classList.remove('active');
 
 
 
 
 
 
 
491
  }
492
 
493
- // Update timer
494
- function updateTimer() {
495
- state.timeLeft--;
496
- timeDisplay.textContent = state.timeLeft;
 
 
497
 
498
- if (state.timeLeft <= 0) {
 
 
 
499
  endGame();
500
  }
501
  }
502
 
503
- // Spawn random notification
504
- function spawnNotification() {
505
  if (!state.gameActive) return;
506
 
507
- // Only spawn if no current notification
508
- if (state.currentNotification) return;
509
 
510
- // Random app
511
- const randomAppIndex = Math.floor(Math.random() * appIcons.length);
512
- const appIcon = appIcons[randomAppIndex];
513
- const appName = appIcon.dataset.app;
514
-
515
- // Show notification badge
516
- const badge = appIcon.querySelector('.notification-badge');
517
- badge.classList.remove('hidden');
518
- badge.textContent = '1';
519
-
520
- // Store current notification
521
- state.currentNotification = {
522
- app: appName,
523
- element: appIcon,
524
- startTime: Date.now()
525
- };
 
 
 
 
 
 
 
 
 
 
526
 
527
  // Update difficulty (spawn faster over time)
528
- state.difficulty = Math.min(5, Math.floor((60 - state.timeLeft) / 12) + 1);
529
  }
530
 
531
  // Handle app click
532
  function handleAppClick(e) {
533
- if (!state.gameActive || !state.currentNotification) return;
 
534
 
535
  const appIcon = e.currentTarget;
536
  const appName = appIcon.dataset.app;
537
 
538
- // Check if this is the app with notification
539
- if (state.currentNotification.app !== appName) {
540
  // Penalty for wrong click
541
  state.score = Math.max(0, state.score - 5);
542
  scoreDisplay.textContent = state.score;
@@ -544,33 +1107,222 @@
544
  return;
545
  }
546
 
547
- // Set up modal
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
548
  modalAppName.textContent = appName.charAt(0).toUpperCase() + appName.slice(1);
549
 
 
 
 
 
 
 
 
550
  // Random post and comment
551
  const randomPostIndex = Math.floor(Math.random() * posts[appName].length);
552
  const randomCommentIndex = Math.floor(Math.random() * comments.length);
553
  const randomUserIndex = Math.floor(Math.random() * usernames.length);
 
 
 
 
 
 
 
 
 
 
554
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
555
  postContent.textContent = posts[appName][randomPostIndex];
556
- commentText.textContent = comments[randomCommentIndex];
 
 
 
 
 
 
 
557
  commentUser.textContent = usernames[randomUserIndex];
 
 
 
 
 
 
 
 
 
 
558
 
559
  // Show modal
560
  responseModal.classList.add('active');
561
  responseInput.value = '';
562
  responseInput.focus();
 
 
 
 
 
 
563
 
564
- // Start timer for response
565
- state.startTime = Date.now();
 
 
 
 
 
 
 
 
 
 
 
 
566
 
567
- // Hide notification badge
568
- const badge = appIcon.querySelector('.notification-badge');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
569
  badge.classList.add('hidden');
570
  }
571
 
572
  // Handle submit response
573
  function handleSubmit() {
 
574
  const response = responseInput.value.trim();
575
 
576
  if (response === '') {
@@ -581,7 +1333,7 @@
581
  // Calculate time taken (in seconds)
582
  const timeTaken = (Date.now() - state.startTime) / 1000;
583
 
584
- // Calculate score (more points for faster responses)
585
  let points = Math.max(1, Math.floor(20 - timeTaken));
586
 
587
  // Bonus for longer responses
@@ -602,20 +1354,166 @@
602
  points += 3;
603
  }
604
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
605
  // Update score
606
  state.score += points;
607
  scoreDisplay.textContent = state.score;
608
 
 
 
 
609
  // Show points earned
610
  showNotification(points);
611
 
612
- // Clear current notification
613
- state.currentNotification = null;
614
-
615
  // Hide modal
616
  responseModal.classList.remove('active');
617
  }
618
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
619
  // Show points notification
620
  function showNotification(points) {
621
  pointsEarned.textContent = points;
@@ -629,26 +1527,82 @@
629
  // End game
630
  function endGame() {
631
  state.gameActive = false;
632
- clearInterval(state.timerInterval);
633
  clearInterval(state.notificationInterval);
634
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
635
  // Show game over modal
636
  finalScore.textContent = state.score;
 
637
  gameOverModal.classList.add('active');
638
  }
639
 
 
 
 
 
 
 
 
 
 
 
 
 
640
  // Event listeners
641
  appIcons.forEach(icon => {
642
  icon.addEventListener('click', handleAppClick);
643
  });
644
 
645
  submitBtn.addEventListener('click', handleSubmit);
 
 
 
646
 
647
  backBtn.addEventListener('click', () => {
 
648
  responseModal.classList.remove('active');
649
  });
650
 
651
- restartBtn.addEventListener('click', initGame);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
652
 
653
  // Keyboard shortcut for submit (Cmd+Enter or Ctrl+Enter)
654
  responseInput.addEventListener('keydown', (e) => {
@@ -657,9 +1611,14 @@
657
  }
658
  });
659
 
 
 
 
 
 
660
  // Update progress bar
661
  setInterval(() => {
662
- const progress = (state.score / 200) * 100;
663
  progressBar.style.width = `${Math.min(100, progress)}%`;
664
  }, 100);
665
 
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Kanye West Social Media Manager</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
  @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');
11
 
 
13
  font-family: 'Inter', sans-serif;
14
  background-color: #f2f2f7;
15
  display: flex;
16
+ flex-direction: column;
17
  justify-content: center;
18
  align-items: center;
19
  min-height: 100vh;
 
21
  padding: 20px;
22
  }
23
 
24
+ .game-header {
25
+ display: flex;
26
+ justify-content: space-between;
27
+ width: 375px;
28
+ margin-bottom: 20px;
29
+ }
30
+
31
+ .followers-box, .score-box {
32
+ background-color: #000;
33
+ color: white;
34
+ padding: 10px 15px;
35
+ border-radius: 10px;
36
+ font-weight: 600;
37
+ }
38
+
39
  .iphone-frame {
40
  width: 375px;
41
  height: 812px;
 
50
  .screen {
51
  width: 100%;
52
  height: 100%;
53
+ background-image: url('https://images.unsplash.com/photo-1618005182384-a83a8bd57fbe?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1064&q=80');
54
+ background-size: cover;
55
+ background-position: center;
56
  border-radius: 40px;
57
  overflow: hidden;
58
  position: relative;
 
64
  padding: 10px 20px;
65
  font-size: 14px;
66
  font-weight: 600;
67
+ color: white;
68
+ text-shadow: 0 0 2px rgba(0,0,0,0.5);
69
  }
70
 
71
  .app-grid {
 
78
  .app-icon {
79
  width: 60px;
80
  height: 60px;
81
+ border-radius: 18px;
82
  display: flex;
83
  justify-content: center;
84
  align-items: center;
 
88
  position: relative;
89
  cursor: pointer;
90
  transition: transform 0.2s;
91
+ box-shadow: 0 4px 8px rgba(0,0,0,0.2);
92
  }
93
 
94
  .app-icon:hover {
 
102
  background-color: #ff3b30;
103
  color: white;
104
  border-radius: 50%;
105
+ width: 24px;
106
+ height: 24px;
107
  display: flex;
108
  justify-content: center;
109
  align-items: center;
 
139
  padding: 20px;
140
  transform: translateY(20px);
141
  transition: transform 0.3s;
142
+ max-height: 80vh;
143
+ overflow-y: auto;
144
  }
145
 
146
  .modal.active .modal-content {
 
169
  font-weight: 600;
170
  }
171
 
172
+ .action-btn {
173
+ background-color: #34c759;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  color: white;
175
+ border: none;
176
+ border-radius: 10px;
177
+ padding: 10px 20px;
178
+ margin-top: 10px;
179
+ cursor: pointer;
180
  font-weight: 600;
 
 
 
 
 
 
 
 
181
  width: 100%;
 
182
  }
183
 
184
  .notification {
 
203
  .home-indicator {
204
  width: 130px;
205
  height: 5px;
206
+ background-color: rgba(255,255,255,0.8);
207
  border-radius: 3px;
208
  position: absolute;
209
  bottom: 10px;
 
267
  cursor: pointer;
268
  font-weight: 600;
269
  }
270
+
271
+ .responses-list {
272
+ max-height: 200px;
273
+ overflow-y: auto;
274
+ margin-top: 20px;
275
+ border: 1px solid #eee;
276
+ border-radius: 10px;
277
+ padding: 10px;
278
+ }
279
+
280
+ .response-item {
281
+ padding: 8px 0;
282
+ border-bottom: 1px solid #f0f0f0;
283
+ }
284
+
285
+ .response-app {
286
+ font-weight: 600;
287
+ color: #007aff;
288
+ }
289
+
290
+ .response-text {
291
+ color: #333;
292
+ }
293
+
294
+ .action-modal .modal-content {
295
+ text-align: center;
296
+ }
297
+
298
+ .action-icon {
299
+ font-size: 40px;
300
+ margin-bottom: 15px;
301
+ color: #007aff;
302
+ }
303
+
304
+ /* App-specific styles */
305
+ .instagram-post {
306
+ background: linear-gradient(to right, #833ab4, #fd1d1d, #fcb045);
307
+ color: white;
308
+ padding: 15px;
309
+ border-radius: 10px;
310
+ margin-bottom: 15px;
311
+ }
312
+
313
+ .twitter-post {
314
+ background-color: #1da1f2;
315
+ color: white;
316
+ padding: 15px;
317
+ border-radius: 10px;
318
+ margin-bottom: 15px;
319
+ }
320
+
321
+ .facebook-post {
322
+ background-color: #1877f2;
323
+ color: white;
324
+ padding: 15px;
325
+ border-radius: 10px;
326
+ margin-bottom: 15px;
327
+ }
328
+
329
+ .tiktok-post {
330
+ background-color: #000;
331
+ color: white;
332
+ padding: 15px;
333
+ border-radius: 10px;
334
+ margin-bottom: 15px;
335
+ }
336
+
337
+ .youtube-post {
338
+ background-color: #ff0000;
339
+ color: white;
340
+ padding: 15px;
341
+ border-radius: 10px;
342
+ margin-bottom: 15px;
343
+ }
344
+
345
+ .reddit-post {
346
+ background-color: #ff5700;
347
+ color: white;
348
+ padding: 15px;
349
+ border-radius: 10px;
350
+ margin-bottom: 15px;
351
+ }
352
+
353
+ .linkedin-post {
354
+ background-color: #0a66c2;
355
+ color: white;
356
+ padding: 15px;
357
+ border-radius: 10px;
358
+ margin-bottom: 15px;
359
+ }
360
+
361
+ .messages-post {
362
+ background-color: #34c759;
363
+ color: white;
364
+ padding: 15px;
365
+ border-radius: 10px;
366
+ margin-bottom: 15px;
367
+ }
368
+
369
+ .email-post {
370
+ background-color: #ea4335;
371
+ color: white;
372
+ padding: 15px;
373
+ border-radius: 10px;
374
+ margin-bottom: 15px;
375
+ }
376
+
377
+ .discord-post {
378
+ background-color: #5865f2;
379
+ color: white;
380
+ padding: 15px;
381
+ border-radius: 10px;
382
+ margin-bottom: 15px;
383
+ }
384
+
385
+ .messenger-post {
386
+ background-color: #0084ff;
387
+ color: white;
388
+ padding: 15px;
389
+ border-radius: 10px;
390
+ margin-bottom: 15px;
391
+ }
392
+
393
+ .spotify-post {
394
+ background-color: #1db954;
395
+ color: white;
396
+ padding: 15px;
397
+ border-radius: 10px;
398
+ margin-bottom: 15px;
399
+ }
400
+
401
+ .cashapp-post {
402
+ background-color: #00d632;
403
+ color: white;
404
+ padding: 15px;
405
+ border-radius: 10px;
406
+ margin-bottom: 15px;
407
+ }
408
+
409
+ .doordash-post {
410
+ background-color: #ff3008;
411
+ color: white;
412
+ padding: 15px;
413
+ border-radius: 10px;
414
+ margin-bottom: 15px;
415
+ }
416
+
417
+ .snapchat-post {
418
+ background-color: #fffc00;
419
+ color: black;
420
+ padding: 15px;
421
+ border-radius: 10px;
422
+ margin-bottom: 15px;
423
+ }
424
+
425
+ .settings-post {
426
+ background-color: #8e8e93;
427
+ color: white;
428
+ padding: 15px;
429
+ border-radius: 10px;
430
+ margin-bottom: 15px;
431
+ }
432
+
433
+ .avatar {
434
+ width: 40px;
435
+ height: 40px;
436
+ border-radius: 50%;
437
+ margin-right: 10px;
438
+ object-fit: cover;
439
+ }
440
+
441
+ .post-header {
442
+ display: flex;
443
+ align-items: center;
444
+ margin-bottom: 10px;
445
+ }
446
+
447
+ .post-image {
448
+ width: 100%;
449
+ border-radius: 10px;
450
+ margin-top: 10px;
451
+ }
452
+
453
+ .wifi-list {
454
+ margin-top: 15px;
455
+ }
456
+
457
+ .wifi-item {
458
+ display: flex;
459
+ justify-content: space-between;
460
+ padding: 10px;
461
+ border-bottom: 1px solid #eee;
462
+ cursor: pointer;
463
+ }
464
+
465
+ .wifi-item:hover {
466
+ background-color: #f5f5f5;
467
+ }
468
+
469
+ .wifi-icon {
470
+ color: #007aff;
471
+ }
472
+
473
+ .snap-image {
474
+ width: 100%;
475
+ height: 300px;
476
+ object-fit: cover;
477
+ border-radius: 10px;
478
+ margin: 10px 0;
479
+ }
480
+
481
+ .snap-buttons {
482
+ display: flex;
483
+ justify-content: space-around;
484
+ margin-top: 15px;
485
+ }
486
+
487
+ .snap-btn {
488
+ padding: 8px 15px;
489
+ border-radius: 20px;
490
+ font-weight: 600;
491
+ cursor: pointer;
492
+ }
493
+
494
+ .snap-like {
495
+ background-color: #ff3b30;
496
+ color: white;
497
+ }
498
+
499
+ .snap-dislike {
500
+ background-color: #007aff;
501
+ color: white;
502
+ }
503
+
504
+ .notification-count {
505
+ position: absolute;
506
+ top: -10px;
507
+ right: -10px;
508
+ background-color: #ff3b30;
509
+ color: white;
510
+ border-radius: 50%;
511
+ min-width: 24px;
512
+ height: 24px;
513
+ display: flex;
514
+ justify-content: center;
515
+ align-items: center;
516
+ font-size: 12px;
517
+ font-weight: bold;
518
+ padding: 0 5px;
519
+ }
520
+
521
+ .follower-count {
522
+ font-size: 1.2em;
523
+ color: #ff3b30;
524
+ }
525
  </style>
526
  </head>
527
  <body>
528
+ <div class="game-header">
529
+ <div class="followers-box">Followers: <span id="followers" class="follower-count">10,000,000</span></div>
530
+ <div class="score-box">Score: <span id="score">0</span></div>
531
+ </div>
532
+
533
  <div class="iphone-frame">
534
  <div class="screen">
535
  <div class="status-bar">
536
  <span>9:41</span>
537
  <div>
538
+ <i class="fas fa-signal"></i>
539
+ <i class="fas fa-wifi ml-2"></i>
540
+ <i class="fas fa-battery-full ml-2"></i>
541
  </div>
542
  </div>
543
 
 
 
 
544
  <div class="app-grid" id="app-grid">
545
+ <div class="app-icon bg-gradient-to-br from-purple-500 to-pink-500" data-app="instagram">
546
+ <i class="fab fa-instagram text-2xl"></i>
547
+ <div class="notification-count hidden">0</div>
548
+ </div>
549
+ <div class="app-icon bg-blue-400" data-app="twitter">
550
+ <i class="fab fa-twitter text-2xl"></i>
551
+ <div class="notification-count hidden">0</div>
552
+ </div>
553
+ <div class="app-icon bg-blue-600" data-app="facebook">
554
+ <i class="fab fa-facebook-f text-2xl"></i>
555
+ <div class="notification-count hidden">0</div>
556
+ </div>
557
+ <div class="app-icon bg-black" data-app="tiktok">
558
+ <i class="fab fa-tiktok text-2xl"></i>
559
+ <div class="notification-count hidden">0</div>
560
+ </div>
561
+ <div class="app-icon bg-yellow-400" data-app="snapchat">
562
+ <i class="fab fa-snapchat-ghost text-2xl"></i>
563
+ <div class="notification-count hidden">0</div>
564
+ </div>
565
+ <div class="app-icon bg-red-600" data-app="youtube">
566
+ <i class="fab fa-youtube text-2xl"></i>
567
+ <div class="notification-count hidden">0</div>
568
  </div>
569
+ <div class="app-icon bg-orange-600" data-app="reddit">
570
+ <i class="fab fa-reddit-alien text-2xl"></i>
571
+ <div class="notification-count hidden">0</div>
572
  </div>
573
+ <div class="app-icon bg-blue-700" data-app="linkedin">
574
+ <i class="fab fa-linkedin-in text-2xl"></i>
575
+ <div class="notification-count hidden">0</div>
576
  </div>
577
+ <div class="app-icon bg-green-500" data-app="messages">
578
+ <i class="fas fa-comment-dots text-2xl"></i>
579
+ <div class="notification-count hidden">0</div>
580
  </div>
581
+ <div class="app-icon bg-red-500" data-app="email">
582
+ <i class="fas fa-envelope text-2xl"></i>
583
+ <div class="notification-count hidden">0</div>
584
  </div>
585
+ <div class="app-icon bg-indigo-500" data-app="discord">
586
+ <i class="fab fa-discord text-2xl"></i>
587
+ <div class="notification-count hidden">0</div>
588
  </div>
589
+ <div class="app-icon bg-blue-500" data-app="messenger">
590
+ <i class="fab fa-facebook-messenger text-2xl"></i>
591
+ <div class="notification-count hidden">0</div>
592
  </div>
593
+ <div class="app-icon bg-green-600" data-app="spotify">
594
+ <i class="fab fa-spotify text-2xl"></i>
595
+ <div class="notification-count hidden">0</div>
596
+ </div>
597
+ <div class="app-icon bg-emerald-500" data-app="cashapp">
598
+ <i class="fas fa-dollar-sign text-2xl"></i>
599
+ <div class="notification-count hidden">0</div>
600
+ </div>
601
+ <div class="app-icon bg-red-500" data-app="doordash">
602
+ <i class="fas fa-utensils text-2xl"></i>
603
+ <div class="notification-count hidden">0</div>
604
+ </div>
605
+ <div class="app-icon bg-gray-800" data-app="settings">
606
+ <i class="fas fa-cog text-2xl"></i>
607
+ <div class="notification-count hidden">0</div>
608
  </div>
609
  </div>
610
 
 
618
  <div></div>
619
  </div>
620
 
621
+ <div id="app-post-container">
622
+ <!-- App-specific content will be loaded here -->
 
623
  </div>
624
 
625
+ <textarea class="response-input" id="response-input" placeholder="Type Kanye's response here..."></textarea>
626
+ <button class="submit-btn" id="submit-btn">Send</button>
627
+ </div>
628
+ </div>
629
+
630
+ <div class="modal" id="action-modal">
631
+ <div class="modal-content">
632
+ <div class="app-header">
633
+ <button class="back-btn" id="action-back-btn">← Back</button>
634
+ <h3 id="action-app-name">Instagram</h3>
635
+ <div></div>
636
  </div>
637
 
638
+ <div id="action-post-container">
639
+ <!-- Action-specific content will be loaded here -->
640
+ </div>
641
+
642
+ <div class="action-icon">
643
+ <i id="action-icon" class="fas fa-heart"></i>
644
+ </div>
645
+ <p id="action-description">Like this comment from @fan123</p>
646
+ <button class="action-btn" id="action-btn">Confirm</button>
647
+ </div>
648
+ </div>
649
+
650
+ <div class="modal" id="snapchat-modal">
651
+ <div class="modal-content">
652
+ <div class="app-header">
653
+ <button class="back-btn" id="snap-back-btn">← Back</button>
654
+ <h3>Snapchat</h3>
655
+ <div></div>
656
+ </div>
657
+
658
+ <div class="post-header">
659
+ <img src="https://randomuser.me/api/portraits/women/1.jpg" class="avatar" id="snap-avatar">
660
+ <div>
661
+ <div class="font-bold" id="snap-username">@hotgirl1</div>
662
+ <div class="text-sm text-gray-500">2m ago</div>
663
+ </div>
664
+ </div>
665
+
666
+ <img src="https://source.unsplash.com/random/300x400/?concert,kanye" class="snap-image" id="snap-image">
667
+
668
+ <div class="snap-buttons">
669
+ <div class="snap-btn snap-like" id="snap-like-btn">
670
+ <i class="fas fa-heart"></i> Like
671
+ </div>
672
+ <div class="snap-btn snap-dislike" id="snap-dislike-btn">
673
+ <i class="fas fa-times"></i> Skip
674
+ </div>
675
+ </div>
676
+ </div>
677
+ </div>
678
+
679
+ <div class="modal" id="settings-modal">
680
+ <div class="modal-content">
681
+ <div class="app-header">
682
+ <button class="back-btn" id="settings-back-btn">← Back</button>
683
+ <h3>Settings</h3>
684
+ <div></div>
685
+ </div>
686
+
687
+ <div class="settings-post">
688
+ <h3 class="font-bold">Wi-Fi</h3>
689
+ <p>Connect to a network to manage notifications</p>
690
+
691
+ <div class="wifi-list">
692
+ <div class="wifi-item" data-wifi="Starbucks Free WiFi">
693
+ <div>
694
+ <i class="fas fa-wifi wifi-icon"></i> Starbucks Free WiFi
695
+ </div>
696
+ <div>
697
+ <i class="fas fa-lock-open"></i>
698
+ </div>
699
+ </div>
700
+ <div class="wifi-item" data-wifi="Airport WiFi">
701
+ <div>
702
+ <i class="fas fa-wifi wifi-icon"></i> Airport WiFi
703
+ </div>
704
+ <div>
705
+ <i class="fas fa-lock-open"></i>
706
+ </div>
707
+ </div>
708
+ <div class="wifi-item" data-wifi="YeDomeNetwork">
709
+ <div>
710
+ <i class="fas fa-wifi wifi-icon"></i> YeDomeNetwork
711
+ </div>
712
+ <div>
713
+ <i class="fas fa-lock"></i>
714
+ </div>
715
+ </div>
716
+ <div class="wifi-item" data-wifi="Hotel Guest">
717
+ <div>
718
+ <i class="fas fa-wifi wifi-icon"></i> Hotel Guest
719
+ </div>
720
+ <div>
721
+ <i class="fas fa-lock-open"></i>
722
+ </div>
723
+ </div>
724
+ </div>
725
+ </div>
726
  </div>
727
  </div>
728
 
 
734
  <div class="modal-content game-over">
735
  <h2 class="text-2xl font-bold">Game Over!</h2>
736
  <p class="mt-4">Your final score: <span id="final-score">0</span></p>
737
+ <p class="mt-2">Followers lost: <span id="followers-lost">0</span></p>
738
+
739
+ <h3 class="mt-6 font-bold">Your Responses:</h3>
740
+ <div class="responses-list" id="responses-list">
741
+ <!-- Responses will be added here -->
742
+ </div>
743
+
744
  <button class="restart-btn" id="restart-btn">Play Again</button>
745
  </div>
746
  </div>
 
749
  </div>
750
  </div>
751
 
752
+ <audio id="tapSound" src="https://assets.mixkit.co/sfx/preview/mixkit-arcade-game-jump-coin-216.mp3" preload="auto"></audio>
753
+ <audio id="keySound" src="https://assets.mixkit.co/sfx/preview/mixkit-quick-jump-arcade-game-239.mp3" preload="auto"></audio>
754
+ <audio id="bgMusic" loop>
755
+ <source src="https://assets.mixkit.co/music/preview/mixkit-funky-hip-hop-2084.mp3" type="audio/mpeg">
756
+ </audio>
757
+
758
  <script>
759
  // Game state
760
  const state = {
761
  score: 0,
762
+ followers: 10000000, // 10 million
763
  gameActive: true,
764
  currentNotification: null,
765
  startTime: null,
766
+ followerInterval: null,
767
  notificationInterval: null,
768
+ difficulty: 1,
769
+ responses: [],
770
+ musicPlaying: false,
771
+ appNotifications: {},
772
+ connectedToWifi: false
773
  };
774
 
775
+ // Initialize app notifications
776
+ const apps = [
777
+ 'instagram', 'twitter', 'facebook', 'tiktok', 'snapchat',
778
+ 'youtube', 'reddit', 'linkedin', 'messages', 'email',
779
+ 'discord', 'messenger', 'spotify', 'cashapp', 'doordash', 'settings'
780
+ ];
781
+
782
+ apps.forEach(app => {
783
+ state.appNotifications[app] = 0;
784
+ });
785
+
786
+ // Kanye-themed data
787
  const posts = {
788
  instagram: [
789
+ "Just designed a new Yeezy prototype in my sleep. Woke up and sketched it immediately. Genius works 24/7. 🌙✏️ #Yeezy #Visionary",
790
+ "Taylor Swift owes me 50 million streams. Facts. 🎤🔥 #TruthHurts #Famous",
791
+ "Kim would still be working at a gas station if it wasn't for me. Changed her life. Changed the world. 🌎 #ThankMeLater",
792
+ "Just bought a new ranch in Wyoming. Gonna build a dome city for all my fans. Utopia coming soon. 🏡✨ #YeezyDomes",
793
+ "Presidential campaign 2024 starts now. We bringing truth to the White House. 🇺🇸 #Ye2024"
794
  ],
795
  twitter: [
796
+ "The media wants to paint me as crazy but I'm the only one telling the truth. Wake up people! 🚨 #FreeThinker",
797
+ "Drake still using ghostwriters. I write all my own lyrics while designing shoes. Multitasking king. 👑 #NoHelpNeeded",
798
+ "Adidas tried to drop me but I dropped them first. Yeezy season never ends. 👟 #Independent",
799
+ "All these fashion designers copying my style but can't copy my mind. Original thinker. 🧠 #Uncopyable",
800
+ "The education system is designed to make you a slave. I dropped out of college and became a billionaire. Think about that. 💰 #FreeMind"
801
  ],
802
  facebook: [
803
+ "Sharing some behind-the-scenes photos from my Sunday Service. Healing the world through music. 🎶🙏 #GodsPlan",
804
+ "My new album is 90% done. It's gonna change music forever. Again. 🎧 #HistoryInTheMaking",
805
+ "Just adopted 10 more dogs. My ranch is now a sanctuary for all God's creatures. 🐕 #AllLove",
806
+ "The matrix doesn't want you to see this documentary. Watch it before they take it down. 🎥 #RedPill",
807
+ "Building schools in Africa. Education is the key to freedom. 📚 #WakandaForever"
808
  ],
809
  tiktok: [
810
+ "POV: You're the greatest artist of all time but they don't want to admit it. 😎 #UnderratedGenius",
811
+ "Trying this new dance challenge but I'm making up my own moves. Creativity can't be contained. 💃 #Innovator",
812
+ "When you realize all your old tweets were prophecies. 🔮 #AheadOfMyTime",
813
+ "Me explaining to the label why I need complete creative control. They never listen. 🤦‍♂️ #TrustTheVision",
814
+ "Reacting to my old interviews. I was right about everything. 🎯 #ToldYouSo"
 
 
 
815
  ],
816
  youtube: [
817
+ "New vlog: Touring my underground bunker. Gotta be prepared. 🏗️ #SafetyFirst",
818
+ "Reacting to reaction videos of my music. Y'all still don't get it. 🎶 #DeepArt",
819
+ "Documentary: The truth about the music industry they don't want you to know. 🎥 #IndustrySecrets",
820
+ "Tutorial: How to design a billion dollar sneaker with just a marker and paper. ✏️ #YeezyDesign",
821
+ "24 hours in my life. This is how a genius operates. ⏳ #Productivity"
822
  ],
823
  reddit: [
824
+ "AMA time! Ask me anything about music, fashion, or the meaning of life. I got answers. 💡 #AskYe",
825
+ "Breaking down why modern architecture is destroying our souls. We need domes. 🏛️ #DomeLife",
826
+ "The real reason I interrupted Taylor at the VMAs. She needed that moment. 🎤 #CharacterBuilding",
827
+ "Explaining my presidential platform: Free Yeezys for all, dome cities, and chicken tenders on every corner. 🍗 #YePolicy",
828
+ "Debunking music theory. The rules are made to be broken. 🎼 #NoRules"
829
  ],
830
  linkedin: [
831
+ "How I turned a shoe design into a billion dollar empire. Spoiler: Believe in yourself. 💪 #Entrepreneur",
832
+ "The education system failed me so I created my own curriculum. Now teaching masterclasses. 🎓 #SelfTaught",
833
+ "Why I fired all my managers and became my own CEO. Too many middlemen. ✂️ #DirectControl",
834
+ "Case study: Yeezy brand growth through authentic self-expression. No focus groups needed. 📈 #BeYourself",
835
+ "Looking for architects to help build my dome city. Must think outside the box. Literally. 🏗️ #DomeJobs"
836
+ ],
837
+ messages: [
838
+ "Text from Kim: We need to talk about the kids.",
839
+ "Text from Jay-Z: You crossed a line this time.",
840
+ "Text from Elon: The Twitter deal is happening. You in?",
841
+ "Text from Manager: The label is threatening to drop you.",
842
+ "Text from Producer: The beat is ready when you are."
843
+ ],
844
+ email: [
845
+ "From: Adidas Legal - Contract Termination Notice",
846
+ "From: White House Invitation - Arts Committee",
847
+ "From: Harvard University - Honorary Degree Offer",
848
+ "From: TMZ - Interview Request",
849
+ "From: Sunday Service Choir - Setlist Approval"
850
+ ],
851
+ discord: [
852
+ "Yeezy Fan Server: @everyone New merch drop tomorrow!",
853
+ "Music Producers Channel: Need feedback on this track",
854
+ "Gaming Group: Who's on tonight?",
855
+ "Dome Designers: New blueprints uploaded",
856
+ "Moderators: Need help with spam bots"
857
+ ],
858
+ messenger: [
859
+ "Message from Drake: We need to squash this beef",
860
+ "Message from Elon: Twitter deal update",
861
+ "Message from Kim: The kids miss you",
862
+ "Message from Fan: Can you sign my shoes?",
863
+ "Message from Producer: Album mix ready"
864
+ ],
865
+ spotify: [
866
+ "Playlist: Kanye's Morning Motivation",
867
+ "Notification: Your monthly listeners reached 50M",
868
+ "Alert: New release from artist you follow",
869
+ "Update: Your top fans this month",
870
+ "Reminder: Update your artist profile"
871
+ ],
872
+ cashapp: [
873
+ "Payment Received: $2M - Yeezy Royalties",
874
+ "Payment Sent: $200K - Dome Materials",
875
+ "Request: $50 - from @yeezyfan123",
876
+ "Alert: Large withdrawal detected",
877
+ "Reminder: Tax documents ready"
878
+ ],
879
+ doordash: [
880
+ "Order Confirmed: 50 Chick-fil-A meals",
881
+ "Driver En Route: Your sushi is coming",
882
+ "Special Offer: Free delivery today",
883
+ "Rating Request: How was your order?",
884
+ "Alert: New vegan restaurant nearby"
885
  ]
886
  };
887
 
888
  const comments = [
889
+ "Yo Ye, you ever think maybe you ARE crazy? Just asking...",
890
+ "Kanye I love you but please take your meds",
891
+ "Bro you need Jesus. And a therapist.",
892
+ "Yeezy season approaching but so is your midlife crisis",
893
+ "How much for a pair of Yeezys signed with 'I hate fish sticks'?",
894
+ "You interrupted Taylor Swift AND my childhood. How do you sleep?",
895
+ "Ye if you're reading this blink twice if the illuminati has you",
896
+ "I'll vote for you if you promise free Yeezys for all",
897
+ "You say you're a genius but can you solve a Rubik's cube?",
898
+ "Kim was famous before you but go off I guess",
899
+ "Remember when you said slavery was a choice? Pepperidge Farm remembers",
900
+ "Your music slaps but your takes are trash",
901
+ "Ye vs. Drake beef is the only thing keeping me alive rn",
902
+ "You built a dome but can you build a healthy relationship?",
903
+ "I bet you think this comment is about you... it is",
904
+ "How many times you gonna change your name bro?",
905
+ "You need help but not the kind you can buy",
906
+ "I made a remix of your tweet about fish sticks",
907
+ "You're not wrong about the education system tho",
908
+ "Drop the album or drop the act"
909
+ ];
910
+
911
+ const actions = [
912
+ { type: "like", icon: "fa-heart", text: "Like this comment from", points: 5 },
913
+ { type: "follow", icon: "fa-user-plus", text: "Follow this user", points: 10 },
914
+ { type: "subscribe", icon: "fa-bell", text: "Subscribe to this channel", points: 15 },
915
+ { type: "tip", icon: "fa-dollar-sign", text: "Send $10 to this creator", points: 20 }
916
  ];
917
 
918
  const usernames = [
919
+ "@yeezystan", "@kimye4eva", "@fishstickhater", "@domeenthusiast", "@yeezy2024",
920
+ "@truthsayer", "@yeahright", "@kanyedoesntsleep", "@yeezytaughtme", "@notacultmember"
921
+ ];
922
+
923
+ const avatars = [
924
+ "https://randomuser.me/api/portraits/men/1.jpg",
925
+ "https://randomuser.me/api/portraits/women/1.jpg",
926
+ "https://randomuser.me/api/portraits/men/2.jpg",
927
+ "https://randomuser.me/api/portraits/women/2.jpg",
928
+ "https://randomuser.me/api/portraits/men/3.jpg",
929
+ "https://randomuser.me/api/portraits/women/3.jpg",
930
+ "https://randomuser.me/api/portraits/men/4.jpg",
931
+ "https://randomuser.me/api/portraits/women/4.jpg",
932
+ "https://randomuser.me/api/portraits/men/5.jpg",
933
+ "https://randomuser.me/api/portraits/women/5.jpg"
934
+ ];
935
+
936
+ const snapImages = [
937
+ "https://source.unsplash.com/random/300x400/?concert,kanye",
938
+ "https://source.unsplash.com/random/300x400/?selfie,woman",
939
+ "https://source.unsplash.com/random/300x400/?party,celebrity",
940
+ "https://source.unsplash.com/random/300x400/?model,beach",
941
+ "https://source.unsplash.com/random/300x400/?club,dancing"
942
+ ];
943
+
944
+ const snapUsernames = [
945
+ "@hotgirl1", "@yeezyfan99", "@modelalert", "@clubqueen", "@partyanimal",
946
+ "@selfiequeen", "@celebfan", "@musiclover", "@fashionista", "@trendsetter"
947
  ];
948
 
949
  // DOM elements
950
  const appIcons = document.querySelectorAll('.app-icon');
951
+ const notificationBadges = document.querySelectorAll('.notification-count');
952
  const responseModal = document.getElementById('response-modal');
953
+ const actionModal = document.getElementById('action-modal');
954
+ const snapchatModal = document.getElementById('snapchat-modal');
955
+ const settingsModal = document.getElementById('settings-modal');
956
  const responseInput = document.getElementById('response-input');
957
  const submitBtn = document.getElementById('submit-btn');
958
+ const actionBtn = document.getElementById('action-btn');
959
  const backBtn = document.getElementById('back-btn');
960
+ const actionBackBtn = document.getElementById('action-back-btn');
961
+ const snapBackBtn = document.getElementById('snap-back-btn');
962
+ const settingsBackBtn = document.getElementById('settings-back-btn');
963
  const scoreDisplay = document.getElementById('score');
964
+ const followersDisplay = document.getElementById('followers');
965
+ const appPostContainer = document.getElementById('app-post-container');
966
+ const actionPostContainer = document.getElementById('action-post-container');
 
 
967
  const notification = document.getElementById('notification');
968
  const pointsEarned = document.getElementById('points-earned');
969
  const gameOverModal = document.getElementById('game-over-modal');
970
  const finalScore = document.getElementById('final-score');
971
+ const followersLost = document.getElementById('followers-lost');
972
  const restartBtn = document.getElementById('restart-btn');
973
  const progressBar = document.getElementById('progress-bar');
974
+ const responsesList = document.getElementById('responses-list');
975
+ const actionIcon = document.getElementById('action-icon');
976
+ const actionDescription = document.getElementById('action-description');
977
+ const snapAvatar = document.getElementById('snap-avatar');
978
+ const snapUsername = document.getElementById('snap-username');
979
+ const snapImage = document.getElementById('snap-image');
980
+ const snapLikeBtn = document.getElementById('snap-like-btn');
981
+ const snapDislikeBtn = document.getElementById('snap-dislike-btn');
982
+ const wifiItems = document.querySelectorAll('.wifi-item');
983
+ const tapSound = document.getElementById('tapSound');
984
+ const keySound = document.getElementById('keySound');
985
+ const bgMusic = document.getElementById('bgMusic');
986
+ const modalAppName = document.getElementById('modal-app-name');
987
+ const actionAppName = document.getElementById('action-app-name');
988
+
989
+ // Format number with commas
990
+ function formatNumber(num) {
991
+ return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
992
+ }
993
 
994
  // Initialize game
995
  function initGame() {
996
  state.score = 0;
997
+ state.followers = 10000000; // 10 million
998
  state.gameActive = true;
999
  state.difficulty = 1;
1000
+ state.responses = [];
1001
+ state.connectedToWifi = false;
1002
+
1003
+ // Reset all app notifications
1004
+ apps.forEach(app => {
1005
+ state.appNotifications[app] = 0;
1006
+ });
1007
 
1008
  scoreDisplay.textContent = state.score;
1009
+ followersDisplay.textContent = formatNumber(state.followers);
1010
 
1011
  // Clear all notifications
1012
  notificationBadges.forEach(badge => {
1013
  badge.classList.add('hidden');
1014
+ badge.textContent = '0';
1015
  });
1016
 
1017
+ // Start follower countdown
1018
+ clearInterval(state.followerInterval);
1019
+ state.followerInterval = setInterval(updateFollowers, 1000);
1020
 
1021
  // Start notification spawner
1022
  clearInterval(state.notificationInterval);
1023
+ state.notificationInterval = setInterval(spawnNotifications, 50); // Spawn every 50ms (20 per second)
1024
 
1025
  // Hide modals
1026
  responseModal.classList.remove('active');
1027
+ actionModal.classList.remove('active');
1028
+ snapchatModal.classList.remove('active');
1029
+ settingsModal.classList.remove('active');
1030
  gameOverModal.classList.remove('active');
1031
+
1032
+ // Start music if not already playing
1033
+ if (!state.musicPlaying) {
1034
+ bgMusic.volume = 0.3;
1035
+ bgMusic.play().catch(e => console.log("Autoplay prevented"));
1036
+ state.musicPlaying = true;
1037
+ }
1038
  }
1039
 
1040
+ // Update followers count
1041
+ function updateFollowers() {
1042
+ if (!state.gameActive) return;
1043
+
1044
+ // Lose followers over time
1045
+ state.followers = Math.max(0, state.followers - 100000); // 100k per second
1046
 
1047
+ // Update display
1048
+ followersDisplay.textContent = formatNumber(state.followers);
1049
+
1050
+ if (state.followers <= 0) {
1051
  endGame();
1052
  }
1053
  }
1054
 
1055
+ // Spawn random notifications
1056
+ function spawnNotifications() {
1057
  if (!state.gameActive) return;
1058
 
1059
+ // Spawn multiple notifications per interval
1060
+ const notificationsToSpawn = 5; // Spawn 5 notifications per interval (100 per second)
1061
 
1062
+ for (let i = 0; i < notificationsToSpawn; i++) {
1063
+ // Random app
1064
+ const randomAppIndex = Math.floor(Math.random() * apps.length);
1065
+ const appName = apps[randomAppIndex];
1066
+
1067
+ // Skip settings if not connected to wifi
1068
+ if (appName === 'settings' && !state.connectedToWifi) continue;
1069
+
1070
+ // Find the app icon
1071
+ const appIcon = document.querySelector(`.app-icon[data-app="${appName}"]`);
1072
+
1073
+ // Increment notification count
1074
+ state.appNotifications[appName]++;
1075
+
1076
+ // Show notification badge
1077
+ const badge = appIcon.querySelector('.notification-count');
1078
+ badge.classList.remove('hidden');
1079
+ badge.textContent = state.appNotifications[appName] > 99 ? '99+' : state.appNotifications[appName];
1080
+
1081
+ // Store current notification
1082
+ state.currentNotification = {
1083
+ app: appName,
1084
+ element: appIcon,
1085
+ count: state.appNotifications[appName]
1086
+ };
1087
+ }
1088
 
1089
  // Update difficulty (spawn faster over time)
1090
+ state.difficulty = Math.min(5, Math.floor((10000000 - state.followers) / 2000000) + 1);
1091
  }
1092
 
1093
  // Handle app click
1094
  function handleAppClick(e) {
1095
+ playTapSound();
1096
+ if (!state.gameActive) return;
1097
 
1098
  const appIcon = e.currentTarget;
1099
  const appName = appIcon.dataset.app;
1100
 
1101
+ // Check if this app has notifications
1102
+ if (state.appNotifications[appName] === 0) {
1103
  // Penalty for wrong click
1104
  state.score = Math.max(0, state.score - 5);
1105
  scoreDisplay.textContent = state.score;
 
1107
  return;
1108
  }
1109
 
1110
+ // Special handling for Snapchat
1111
+ if (appName === 'snapchat') {
1112
+ showSnapchatModal();
1113
+ return;
1114
+ }
1115
+
1116
+ // Special handling for Settings
1117
+ if (appName === 'settings') {
1118
+ showSettingsModal();
1119
+ return;
1120
+ }
1121
+
1122
+ // Decide if this is a response or action (50/50 chance)
1123
+ const isAction = Math.random() > 0.5;
1124
+
1125
+ if (isAction && actions.length > 0) {
1126
+ showActionModal(appName);
1127
+ } else {
1128
+ showResponseModal(appName);
1129
+ }
1130
+
1131
+ // Start timer for response
1132
+ state.startTime = Date.now();
1133
+
1134
+ // Hide notification badge (but keep count in state)
1135
+ const badge = appIcon.querySelector('.notification-count');
1136
+ badge.classList.add('hidden');
1137
+ }
1138
+
1139
+ // Show response modal with app-specific UI
1140
+ function showResponseModal(appName) {
1141
+ // Set up response modal
1142
  modalAppName.textContent = appName.charAt(0).toUpperCase() + appName.slice(1);
1143
 
1144
+ // Clear previous content
1145
+ appPostContainer.innerHTML = '';
1146
+
1147
+ // Create app-specific post
1148
+ const postDiv = document.createElement('div');
1149
+ postDiv.className = `${appName}-post`;
1150
+
1151
  // Random post and comment
1152
  const randomPostIndex = Math.floor(Math.random() * posts[appName].length);
1153
  const randomCommentIndex = Math.floor(Math.random() * comments.length);
1154
  const randomUserIndex = Math.floor(Math.random() * usernames.length);
1155
+ const randomAvatarIndex = Math.floor(Math.random() * avatars.length);
1156
+
1157
+ // Create post header with avatar
1158
+ const postHeader = document.createElement('div');
1159
+ postHeader.className = 'post-header';
1160
+
1161
+ const avatarImg = document.createElement('img');
1162
+ avatarImg.src = avatars[randomAvatarIndex];
1163
+ avatarImg.className = 'avatar';
1164
+ postHeader.appendChild(avatarImg);
1165
 
1166
+ const userInfo = document.createElement('div');
1167
+ const username = document.createElement('div');
1168
+ username.className = 'font-bold';
1169
+ username.textContent = 'kanyewest';
1170
+ userInfo.appendChild(username);
1171
+
1172
+ const postTime = document.createElement('div');
1173
+ postTime.className = 'text-sm text-gray-500';
1174
+ postTime.textContent = 'Just now';
1175
+ userInfo.appendChild(postTime);
1176
+
1177
+ postHeader.appendChild(userInfo);
1178
+ postDiv.appendChild(postHeader);
1179
+
1180
+ // Add post content
1181
+ const postContent = document.createElement('p');
1182
  postContent.textContent = posts[appName][randomPostIndex];
1183
+ postDiv.appendChild(postContent);
1184
+
1185
+ // Add comment
1186
+ const commentDiv = document.createElement('div');
1187
+ commentDiv.className = 'comment';
1188
+
1189
+ const commentUser = document.createElement('div');
1190
+ commentUser.className = 'comment-user';
1191
  commentUser.textContent = usernames[randomUserIndex];
1192
+ commentDiv.appendChild(commentUser);
1193
+
1194
+ const commentText = document.createElement('p');
1195
+ commentText.textContent = comments[randomCommentIndex];
1196
+ commentDiv.appendChild(commentText);
1197
+
1198
+ postDiv.appendChild(commentDiv);
1199
+
1200
+ // Add to container
1201
+ appPostContainer.appendChild(postDiv);
1202
 
1203
  // Show modal
1204
  responseModal.classList.add('active');
1205
  responseInput.value = '';
1206
  responseInput.focus();
1207
+ }
1208
+
1209
+ // Show action modal with app-specific UI
1210
+ function showActionModal(appName) {
1211
+ // Set up action modal
1212
+ actionAppName.textContent = appName.charAt(0).toUpperCase() + appName.slice(1);
1213
 
1214
+ // Clear previous content
1215
+ actionPostContainer.innerHTML = '';
1216
+
1217
+ // Create app-specific post
1218
+ const postDiv = document.createElement('div');
1219
+ postDiv.className = `${appName}-post`;
1220
+
1221
+ // Random post and comment
1222
+ const randomPostIndex = Math.floor(Math.random() * posts[appName].length);
1223
+ const randomCommentIndex = Math.floor(Math.random() * comments.length);
1224
+ const randomUserIndex = Math.floor(Math.random() * usernames.length);
1225
+ const randomAvatarIndex = Math.floor(Math.random() * avatars.length);
1226
+ const randomActionIndex = Math.floor(Math.random() * actions.length);
1227
+ const action = actions[randomActionIndex];
1228
 
1229
+ // Create post header with avatar
1230
+ const postHeader = document.createElement('div');
1231
+ postHeader.className = 'post-header';
1232
+
1233
+ const avatarImg = document.createElement('img');
1234
+ avatarImg.src = avatars[randomAvatarIndex];
1235
+ avatarImg.className = 'avatar';
1236
+ postHeader.appendChild(avatarImg);
1237
+
1238
+ const userInfo = document.createElement('div');
1239
+ const username = document.createElement('div');
1240
+ username.className = 'font-bold';
1241
+ username.textContent = 'kanyewest';
1242
+ userInfo.appendChild(username);
1243
+
1244
+ const postTime = document.createElement('div');
1245
+ postTime.className = 'text-sm text-gray-500';
1246
+ postTime.textContent = 'Just now';
1247
+ userInfo.appendChild(postTime);
1248
+
1249
+ postHeader.appendChild(userInfo);
1250
+ postDiv.appendChild(postHeader);
1251
+
1252
+ // Add post content
1253
+ const postContent = document.createElement('p');
1254
+ postContent.textContent = posts[appName][randomPostIndex];
1255
+ postDiv.appendChild(postContent);
1256
+
1257
+ // Add comment
1258
+ const commentDiv = document.createElement('div');
1259
+ commentDiv.className = 'comment';
1260
+
1261
+ const commentUser = document.createElement('div');
1262
+ commentUser.className = 'comment-user';
1263
+ commentUser.textContent = usernames[randomUserIndex];
1264
+ commentDiv.appendChild(commentUser);
1265
+
1266
+ const commentText = document.createElement('p');
1267
+ commentText.textContent = comments[randomCommentIndex];
1268
+ commentDiv.appendChild(commentText);
1269
+
1270
+ postDiv.appendChild(commentDiv);
1271
+
1272
+ // Add to container
1273
+ actionPostContainer.appendChild(postDiv);
1274
+
1275
+ // Set up action
1276
+ actionIcon.className = `fas ${action.icon}`;
1277
+ actionDescription.textContent = `${action.text} ${usernames[randomUserIndex]}`;
1278
+
1279
+ // Store action points (multiplied by notification count for this app)
1280
+ const basePoints = action.points;
1281
+ const notificationCount = state.appNotifications[appName];
1282
+ const multiplier = 1 + (notificationCount * 0.1); // 10% bonus per notification
1283
+ const totalPoints = Math.floor(basePoints * multiplier);
1284
+
1285
+ actionBtn.dataset.points = totalPoints;
1286
+ actionBtn.dataset.app = appName;
1287
+
1288
+ // Show modal
1289
+ actionModal.classList.add('active');
1290
+ }
1291
+
1292
+ // Show Snapchat modal with random image
1293
+ function showSnapchatModal() {
1294
+ // Random snap content
1295
+ const randomImageIndex = Math.floor(Math.random() * snapImages.length);
1296
+ const randomUsernameIndex = Math.floor(Math.random() * snapUsernames.length);
1297
+ const randomAvatarIndex = Math.floor(Math.random() * avatars.length);
1298
+
1299
+ snapAvatar.src = avatars[randomAvatarIndex];
1300
+ snapUsername.textContent = snapUsernames[randomUsernameIndex];
1301
+ snapImage.src = snapImages[randomImageIndex] + '&' + new Date().getTime(); // Cache busting
1302
+
1303
+ // Show modal
1304
+ snapchatModal.classList.add('active');
1305
+
1306
+ // Clear notification count for snapchat
1307
+ state.appNotifications['snapchat'] = 0;
1308
+ const badge = document.querySelector('.app-icon[data-app="snapchat"] .notification-count');
1309
+ badge.classList.add('hidden');
1310
+ }
1311
+
1312
+ // Show Settings modal
1313
+ function showSettingsModal() {
1314
+ // Show modal
1315
+ settingsModal.classList.add('active');
1316
+
1317
+ // Clear notification count for settings
1318
+ state.appNotifications['settings'] = 0;
1319
+ const badge = document.querySelector('.app-icon[data-app="settings"] .notification-count');
1320
  badge.classList.add('hidden');
1321
  }
1322
 
1323
  // Handle submit response
1324
  function handleSubmit() {
1325
+ playTapSound();
1326
  const response = responseInput.value.trim();
1327
 
1328
  if (response === '') {
 
1333
  // Calculate time taken (in seconds)
1334
  const timeTaken = (Date.now() - state.startTime) / 1000;
1335
 
1336
+ // Base points based on time taken
1337
  let points = Math.max(1, Math.floor(20 - timeTaken));
1338
 
1339
  // Bonus for longer responses
 
1354
  points += 3;
1355
  }
1356
 
1357
+ // Bonus based on notification count for this app
1358
+ const appName = modalAppName.textContent.toLowerCase();
1359
+ const notificationCount = state.appNotifications[appName];
1360
+ const multiplier = 1 + (notificationCount * 0.1); // 10% bonus per notification
1361
+ points = Math.floor(points * multiplier);
1362
+
1363
+ // Gain random followers (10k-300k)
1364
+ const followersGained = Math.floor(Math.random() * 290000) + 10000;
1365
+ state.followers += followersGained;
1366
+ followersDisplay.textContent = formatNumber(state.followers);
1367
+
1368
+ // Record response
1369
+ state.responses.push({
1370
+ app: modalAppName.textContent,
1371
+ text: response,
1372
+ points: points,
1373
+ followersGained: followersGained
1374
+ });
1375
+
1376
  // Update score
1377
  state.score += points;
1378
  scoreDisplay.textContent = state.score;
1379
 
1380
+ // Clear notification count for this app
1381
+ state.appNotifications[appName] = 0;
1382
+
1383
  // Show points earned
1384
  showNotification(points);
1385
 
 
 
 
1386
  // Hide modal
1387
  responseModal.classList.remove('active');
1388
  }
1389
 
1390
+ // Handle action completion
1391
+ function handleAction() {
1392
+ playTapSound();
1393
+ const points = parseInt(actionBtn.dataset.points) || 10;
1394
+ const appName = actionBtn.dataset.app;
1395
+
1396
+ // Gain random followers (10k-300k)
1397
+ const followersGained = Math.floor(Math.random() * 290000) + 10000;
1398
+ state.followers += followersGained;
1399
+ followersDisplay.textContent = formatNumber(state.followers);
1400
+
1401
+ // Record action
1402
+ state.responses.push({
1403
+ app: actionAppName.textContent,
1404
+ text: actionDescription.textContent,
1405
+ points: points,
1406
+ followersGained: followersGained
1407
+ });
1408
+
1409
+ // Update score
1410
+ state.score += points;
1411
+ scoreDisplay.textContent = state.score;
1412
+
1413
+ // Clear notification count for this app
1414
+ state.appNotifications[appName] = 0;
1415
+
1416
+ // Show points earned
1417
+ showNotification(points);
1418
+
1419
+ // Hide modal
1420
+ actionModal.classList.remove('active');
1421
+ }
1422
+
1423
+ // Handle Snapchat like
1424
+ function handleSnapLike() {
1425
+ playTapSound();
1426
+ const points = 15; // Fixed points for liking a snap
1427
+
1428
+ // Gain random followers (10k-300k)
1429
+ const followersGained = Math.floor(Math.random() * 290000) + 10000;
1430
+ state.followers += followersGained;
1431
+ followersDisplay.textContent = formatNumber(state.followers);
1432
+
1433
+ // Record action
1434
+ state.responses.push({
1435
+ app: "Snapchat",
1436
+ text: "Liked snap from " + snapUsername.textContent,
1437
+ points: points,
1438
+ followersGained: followersGained
1439
+ });
1440
+
1441
+ // Update score
1442
+ state.score += points;
1443
+ scoreDisplay.textContent = state.score;
1444
+
1445
+ // Show points earned
1446
+ showNotification(points);
1447
+
1448
+ // Hide modal
1449
+ snapchatModal.classList.remove('active');
1450
+ }
1451
+
1452
+ // Handle Snapchat skip
1453
+ function handleSnapSkip() {
1454
+ playTapSound();
1455
+ const points = 5; // Fewer points for skipping
1456
+
1457
+ // Gain random followers (10k-300k)
1458
+ const followersGained = Math.floor(Math.random() * 290000) + 10000;
1459
+ state.followers += followersGained;
1460
+ followersDisplay.textContent = formatNumber(state.followers);
1461
+
1462
+ // Record action
1463
+ state.responses.push({
1464
+ app: "Snapchat",
1465
+ text: "Skipped snap from " + snapUsername.textContent,
1466
+ points: points,
1467
+ followersGained: followersGained
1468
+ });
1469
+
1470
+ // Update score
1471
+ state.score += points;
1472
+ scoreDisplay.textContent = state.score;
1473
+
1474
+ // Show points earned
1475
+ showNotification(points);
1476
+
1477
+ // Hide modal
1478
+ snapchatModal.classList.remove('active');
1479
+ }
1480
+
1481
+ // Handle WiFi connection
1482
+ function handleWifiConnect(e) {
1483
+ playTapSound();
1484
+ const wifiName = e.currentTarget.dataset.wifi;
1485
+
1486
+ if (wifiName.includes('lock')) {
1487
+ alert('This network requires a password');
1488
+ return;
1489
+ }
1490
+
1491
+ state.connectedToWifi = true;
1492
+
1493
+ // Gain random followers (10k-300k)
1494
+ const followersGained = Math.floor(Math.random() * 290000) + 10000;
1495
+ state.followers += followersGained;
1496
+ followersDisplay.textContent = formatNumber(state.followers);
1497
+
1498
+ // Record action
1499
+ state.responses.push({
1500
+ app: "Settings",
1501
+ text: "Connected to " + wifiName,
1502
+ points: 10,
1503
+ followersGained: followersGained
1504
+ });
1505
+
1506
+ // Update score
1507
+ state.score += 10;
1508
+ scoreDisplay.textContent = state.score;
1509
+
1510
+ // Show points earned
1511
+ showNotification(10);
1512
+
1513
+ // Hide modal
1514
+ settingsModal.classList.remove('active');
1515
+ }
1516
+
1517
  // Show points notification
1518
  function showNotification(points) {
1519
  pointsEarned.textContent = points;
 
1527
  // End game
1528
  function endGame() {
1529
  state.gameActive = false;
1530
+ clearInterval(state.followerInterval);
1531
  clearInterval(state.notificationInterval);
1532
 
1533
+ // Calculate followers lost
1534
+ const followersLostCount = 10000000 - state.followers;
1535
+
1536
+ // Show all responses
1537
+ responsesList.innerHTML = '';
1538
+ state.responses.forEach(response => {
1539
+ const responseEl = document.createElement('div');
1540
+ responseEl.className = 'response-item';
1541
+ responseEl.innerHTML = `
1542
+ <span class="response-app">${response.app}:</span>
1543
+ <span class="response-text">${response.text}</span>
1544
+ <span class="text-green-600 float-right">+${response.points}</span>
1545
+ ${response.followersGained ? `<span class="text-blue-600 float-right mr-2">+${formatNumber(response.followersGained)}</span>` : ''}
1546
+ `;
1547
+ responsesList.appendChild(responseEl);
1548
+ });
1549
+
1550
  // Show game over modal
1551
  finalScore.textContent = state.score;
1552
+ followersLost.textContent = formatNumber(followersLostCount);
1553
  gameOverModal.classList.add('active');
1554
  }
1555
 
1556
+ // Play tap sound
1557
+ function playTapSound() {
1558
+ tapSound.currentTime = 0;
1559
+ tapSound.play();
1560
+ }
1561
+
1562
+ // Play key sound
1563
+ function playKeySound() {
1564
+ keySound.currentTime = 0;
1565
+ keySound.play();
1566
+ }
1567
+
1568
  // Event listeners
1569
  appIcons.forEach(icon => {
1570
  icon.addEventListener('click', handleAppClick);
1571
  });
1572
 
1573
  submitBtn.addEventListener('click', handleSubmit);
1574
+ actionBtn.addEventListener('click', handleAction);
1575
+ snapLikeBtn.addEventListener('click', handleSnapLike);
1576
+ snapDislikeBtn.addEventListener('click', handleSnapSkip);
1577
 
1578
  backBtn.addEventListener('click', () => {
1579
+ playTapSound();
1580
  responseModal.classList.remove('active');
1581
  });
1582
 
1583
+ actionBackBtn.addEventListener('click', () => {
1584
+ playTapSound();
1585
+ actionModal.classList.remove('active');
1586
+ });
1587
+
1588
+ snapBackBtn.addEventListener('click', () => {
1589
+ playTapSound();
1590
+ snapchatModal.classList.remove('active');
1591
+ });
1592
+
1593
+ settingsBackBtn.addEventListener('click', () => {
1594
+ playTapSound();
1595
+ settingsModal.classList.remove('active');
1596
+ });
1597
+
1598
+ restartBtn.addEventListener('click', () => {
1599
+ playTapSound();
1600
+ initGame();
1601
+ });
1602
+
1603
+ wifiItems.forEach(item => {
1604
+ item.addEventListener('click', handleWifiConnect);
1605
+ });
1606
 
1607
  // Keyboard shortcut for submit (Cmd+Enter or Ctrl+Enter)
1608
  responseInput.addEventListener('keydown', (e) => {
 
1611
  }
1612
  });
1613
 
1614
+ // Key sound when typing
1615
+ responseInput.addEventListener('keypress', () => {
1616
+ playKeySound();
1617
+ });
1618
+
1619
  // Update progress bar
1620
  setInterval(() => {
1621
+ const progress = (state.score / 500) * 100; // Adjusted for higher scores
1622
  progressBar.style.width = `${Math.min(100, progress)}%`;
1623
  }, 100);
1624
 
prompts.txt CHANGED
@@ -1,3 +1,6 @@
1
  Can you make game that looks like runescape mixed with diablo where you play a golden paladin in a crypt filled with skeletons, make skeletons drop gold when they die, use WASD keys to move like diablo, use R F Q E keys for abilities
2
  can you figure out why the character is disappearing? Also can you generate random maze dungeons? Make it all work and smooth and fully playable.
3
- Can you make a celebrity's social media manager simulator game where the user interface is an iphone screen? The apps on the screen will start getting notifications and you have to click on them and type a response to a question or comment someone left on your client's post, score should be gained when completing a response and more score for completing it quickly
 
 
 
 
1
  Can you make game that looks like runescape mixed with diablo where you play a golden paladin in a crypt filled with skeletons, make skeletons drop gold when they die, use WASD keys to move like diablo, use R F Q E keys for abilities
2
  can you figure out why the character is disappearing? Also can you generate random maze dungeons? Make it all work and smooth and fully playable.
3
+ Can you make a celebrity's social media manager simulator game where the user interface is an iphone screen? The apps on the screen will start getting notifications and you have to click on them and type a response to a question or comment someone left on your client's post, score should be gained when completing a response and more score for completing it quickly
4
+ I have a few improvements I'd like, lets start by making the interface more realistic like a real iphone, and the screen on the iphone should be realistic with realistic icons and a default iphone background wallpaper, also move the time countdown and score count to outside the iphone screen ui, make the notifications appear much faster and count higher than 1, lets make it kanye west's media manager simulator with people asking crazy funny questions and internet troll comments, record all responses and show them to player in a small window when the game is over so the player can review their gameplay, some notifications can be to follow like or subscribe to certain profiles by clicking on them instead of typing responses, making a soft finger tap sound when you click, add a funky pop instrumental, add messages app and email app and discord app and messenger app and spotify app and cashapp app and doordash app, make iphone tapping sounds when typing responses
5
+ for the settings icon make it so you have to connect to an open wifi signal, for snapchat make it so a photo pops up at a kanye concert or a selfie of a hot woman you have to like, also generate 1000 notifications every second spready randomly across all apps and accumulate more notifications over time on apps that already have notifications, give more score for responding to apps that have the highest number of notifications, make the pop up UI of each app a more realistic depiction of the respective app UI with random avatar pictures
6
+ snap chat is the only app working can you fix the others please? Snapchat picture is not displaying please fix it, Also lets get rid of the timer and instead replace it with follower count which begins at 10 million and starts decreasing rapidly at 100000 followers per second and when it reaches zero the game is over, add a random number of followers between 10000 and 300000 by responding to apps, also there is no sound or music so maybe fix that too if you can