Welcome to Raccoon Café, a cozy pixel-art game where you're the barista at the cutest café in town — and your customers? Adorable raccoons with a serious love for coffee!
In Raccoon Café, your job is to keep your furry visitors happy by:
- Brewing coffee with the coffee machine ☕
- Dragging fresh cups to the raccoon that appears 🐾
- Cleaning up with the trash bin 🗑️
- Ringing the cash register for a satisfying ka-ching 💸
- Watching for sparkles ✨ when your coffee hits the spot!
Each raccoon appears with a random coffee order (1–3 cups). Serve them right, and they’ll gleefully waddle away, making room for the next guest. With randomized raccoon sprites, no two visits feel quite the same.
- 🎨 Wholesome, hand-picked pixel art assets
- 🐾 Three unique raccoon sprites selected randomly
- ☕ Drag-and-drop coffee mechanic
- 🧼 Trash bin interaction and cleanup
- 💬 Animated dialogue box with visual cues
- 🎵 Relaxing jazz background music
- ✨ Sparkle effect when coffee is delivered correctly
- 🖱️ Custom mouse cursors for added charm
- 🎚️ Sound effects for all major interactions (click, sparkle, register, raccoon entry)
- Make sure you have Python 3.x installed.
- Install Pygame by running:
pip install pygame
- Run the game from your terminal or IDE:
python main.py
- Custom mouse cursor: Hiding the default system cursor and replacing it with a responsive pixel-art one was tricky, especially when syncing click states.
- Raccoon sprite randomness: The raccoon now randomly selects one of three sprites each time it enters, instead of changing unpredictably mid-game.
- Smooth transitions: Creating believable movement for the raccoon entering and exiting the café, while syncing sound and dialogue timing.
- Polishing interactions: Adding sound, hover effects, and click feedback for the register, coffee machine, and trash can — all while keeping things intuitive and cute.
- How to organize a multi-file Python game using
main.py,cafe.py,coffee.py, and a sharedgame_state.py - Implementing drag-and-drop mechanics with smooth mouse tracking and collision detection
- Managing sprite layers so that objects like coffee cups appear in the correct visual order
- Creating timed animations (like steam and sparkle effects) using frame intervals
- Adding interactivity to UI elements with hover highlights and sounds (trash, register, coffee machine)
- Using Pygame’s sound system to play simultaneous effects and loop background music
- Debugging subtle visual issues like cursor alignment, positioning offsets, and animation timing