Skip to content

Hobby Projects Implemented to Learn and Explore New Stuff

Notifications You must be signed in to change notification settings

niloufarmj/Hobby-Projects

Repository files navigation

Hobby-Projects

Table of Contents

  1. Car Game
  2. Digital Clock
  3. Note App
  4. Project Boost
  5. Desk Reservation System (Divar)
  6. Shopping Mall Management System
  7. Dice Kid
  8. Roll a Ball
  9. Angry Birds

1. Car Game

This is a simple car game implemented using C# and Windows Forms in .NET Framework. The game involves navigating a car through a series of obstacles while collecting coins.

Features:

  1. Control the car using arrow keys (left, right) to move it left or right respectively.
  2. Dodge the obstacles to avoid collision. If the car hits an obstacle, the game ends.
  3. Collect coins by colliding with them. Each collected coin increases the score.
InShot_20231208_215525766.mp4

2. Digital Clock

This is a simple digital clock implemented using C# and Windows Forms in .NET Framework. It shows current time and date

bandicam.2023-12-08.22-01-08-097.mp4

3. Note App

It's a simple note app saving notes in a list. You can read notes or delete them.

bandicam.2023-12-08.22-09-21-738.mp4

4. Project Boost

This is a starter project to learn game develoment in Unity Engine, implemented with C#.

Features:

  1. Control the Rocket pressing space to fly and right and left arrow keys to move right and left in respect.
  2. If the Rocket collides with pink objects it loses.
  3. If the Rocket collides with green objects it proceeds to next level.
bandicam.2023-12-07.03-05-25-026.mp4

5. Desk Reservation System (Divar)

The Java code implements a desk reservation system for a workspace with multiple floors and desks. Users can request and reserve desks based on specific criteria such as availability, features, and time intervals. The code can be further extended and customized to meet specific requirements and integrate with other systems or interfaces.

Features:

The code reads input from the user to perform various actions. The available commands are as follows:

  1. request_desk <user> <required_type> <start_time> <duration>: Requests a desk for a user with the specified requirements (required type, start time, and duration).
  2. reserve_desk <user> <reserve_start_time> <reserve_duration> <feature_code>: Reserves a desk for a user with the specified features, start time, and duration.
  3. reserve_multiple_desks <user> <num_of_desks> <start_time> <duration>: Reserves multiple desks for a user with the specified number of desks, start time, and duration.
  4. desk_status <desk_id> <start_time>: Displays the status of a desk with the specified ID at the given start time.

6. Shopping Mall Management System

This is a Java program that simulates a shopping mall management system. It allows users to sign up or log in as administrators, producers, carriers, or clients, and perform various actions within the shopping mall.

Features

  1. Admin Actions
  • Add producers and carriers
  • View and edit producer and carrier information
  • Apply discounts to all products
  1. Producer Actions
  • Add different types of products (Food, Wearing, Device)
  • Specify product details such as company name, volume, price, etc.
  1. Carrier Actions
  • Set the type of vehicle (motorcycle, pickup, car)
  • Perform carrier-related tasks
  1. Client Actions
  • Sign up as a client
  • Log in as a client
  • Perform client-specific tasks

Usage

Upon running the program, you will be prompted with a menu displaying various options. Enter the corresponding number to select an option and proceed with the desired action. The menu allows you to sign up or log in as an admin, producer, carrier, or client, and perform tasks specific to each role.

Please note that this program is a simulation and does not have a graphical user interface (GUI). All interactions and outputs are performed through the command line.

7. Dice Kid

This is a game implemented for Game Jam 2022 using C# and Unity Engine. Only phase 1 of the game is completed. phase 2 including level generation and other mechanics will be added later. phase 3 including exported executable game will be added later.

Features

  1. Control Dice Mother using 'A', 'D', 'W' keys to go left, right and jump, respectively.
  2. By colliding Dice Kids, Dice Mother collects them.
  3. Each kid can be dropped using 'space' key. Then a new ability will be added, randomly, according to the random dice number of that kid.
  4. By getting near an enemy, it will start following you.
  5. By colliding an enemy, you will lose a kid, and if there are no kids you will lose a heart.
  6. You have to reach the end line with maximum number of kids. Your Score will be calculated by that.
bandicam.2023-12-10.14-50-50-933.mp4

8. Roll a Ball

This is the Roll a Ball project developed in Unity to get started with the engine. Roll a Ball is a simple 3D game where the player controls a ball and tries to collect all the pickups scattered throughout the level. The goal is to navigate the ball using keyboard input or touch controls and avoid obstacles while collecting the pickups.

Features

  1. Simple and intuitive controls.
  2. Realistic physics simulation for the ball movement.
  3. Collectible pickups with score tracking.
  4. Win condition when all pickups are collected.
bandicam.2023-12-10.23-34-39-808.mp4

9. Angry Birds

This is the Angry Birds project developed in Unity to get started with the engine.

Features

  1. Visual Effects
bandicam.2024-01-22.21-13-49-100.mp4