Bird Sorters

Gameplay and UI Programmer

Brief

This puzzle game challenges players to sort different types of birds that are mixed up on branches. To complete each level, players must organize the birds by type, placing the same species on a single branch to remove them from the puzzle.

What I Worked On:

  • Implemented UI for main menu and daily rewards with responsive layouts.
  • Integrated Unity Ads and Ad-Free option to monetize gameplay.
  • Created pause state for gameplay.
  • Developed branch purchase logic allowing the player to add a branch to the level.
  • Created a daily reward feature.

Team Size: 2 - 4

Skills Used: Unity, C#, Github, Visual Studio

Project Length: +4 months

Platform: Mobile, Andriod

Branch Management

This task involves integrating branch management functionality into the UI, allowing players to interact with branches during gameplay. The goal is to provide an intuitive way to manage and utilize branches, which are key gameplay elements.

How I Achieved This:

The create branch button was implemented to manage branch icons and display the player's branch count in the Gameplay UI. Clicking the button removes a branch from the inventory and updates the UI through an event system, interacting with both GameplayManager and EditingManager to efficiently add branches.

Branch limits per level were enforced by disabling the button once the maximum number of branches is reached to ensure gameplay balance. Each branch created is counted as a move to keep the gameplay challenging and to incentivise the player to save their branches.

Daily Reward Manager

The Daily Reward Manager is a system designed to manage daily rewards for players, encouraging regular engagement. It tracks player logins, handles reward claims, and visually updates the UI to show claimed and available rewards.

How I Achieved This:

  • I created the DailyRewardManager to control reward loading, using a 2-second delay that simulates loading.
  • The ClaimDailyReward method processes reward claims with a delay, updating the UI to disable the claimed reward and mark it complete.
  • I added loading states to prevent button interaction during reward processing, ensuring a smooth user experience with no accidental double claims.
  • I tracked the current reward with an index, disabling claimed rewards and highlighting the next one. After all rewards are claimed, the system disables further interaction.
Back to Projects