Character movement (2D platformer)

Running left and right (CharacterController2D)

Jumping  ( space)

Crouching (shift)

State transition animations (running, jumping, crouching)

Health system

The character has HP (health) — displayed on the screen.

When colliding with an enemy, the character takes damage and is knocked back.

When HP drops to 0 → the Game Over panel appears.

Enemies

Move along the Y/X-axis between two points (patrolPointA and patrolPointB) or chase the player.

Deal damage to the player on contact

Animation of movement and rotation (sprite rotation)

Collectibles

Placed around the scene (with the ‘Collectable’ tag)

When collected:

The counter increases

The UI is updated

When the required number is reached, the winPanel appears

UI panels and menus

Start Panel with the ‘Start Game’ button

Win Panel — when all items are collected

Game Over Panel — when all HP is lost

Restart Button — restart the level

Timer

Counts the time the player takes to complete the level

Displayed in the format Time: MM:SS

Stops when you win

Sound (Audio)

AudioManager controls all sounds:

Victory sound

Defeat sound

Button press sound

Sounds are played through AudioSource

The abstract Enemy class 

defines general properties: speed, patrol points, collision handling with the player, and damage sound playback via AudioManager.

The enemy deals damage to the player upon collision and plays a sound.

They move along the Y/X-axis between two points (patrolPointA and patrolPointB) or chase the player.

Gizmos are used to display the patrol path in the editor.

The inheritance-based architecture makes it easy to create new enemies with different behaviours.

Updated 17 days ago
Published 23 days ago
StatusReleased
PlatformsHTML5
AuthorKsenija Zinina
Made withUnity

Leave a comment

Log in with itch.io to leave a comment.