This project combines Project 1, 2, and 3 individually, and makes them all accessible via a main menu. This project also organizes all the files more appropriately per project, as all three projects were included in the Unity file. The primary fixes for this project were the flow diagrams submitted as part of the previous projects' deliverables.

All features in Project 4 are as follows:

1. Destroying Destructable (Indicated by Orange Color) Objects

Input: Mouse Left Click

Output: Orange object disappears and reappears after five seconds

2. Changing Color of Character

Input: Button

Output: The player's color is changed to a random RGB value

3. Equipping a Hat

Input: Dropdown Menu

Output: Use the dropdown menu to equip a hat to the character

4. Cursor Position In Respect to the Object and World

Input: Mouse Location

Output: Text is displayed in the lower left corner, showing the game object the player is looking at, and the x, y, and z coordinates of the spot they're looking at

5.  RigidBody First-Pesron Player and Movement

Input: Keycode WASD or Arrow keys, Keycode Spacebar, and Mouse Movement

Output: Player moves in any direction they choose in a 3d environment based off keyboard input, the camera rotates based on the player's mouse movement (creating a first-person experience), the player cannot look behind themselves, and the player has the ability to jump when they're grounded

6. Stopwatch

Input: Interaction Input (Pressing E when looking at a 3D Button that prompts the user for an interaction) to start the timer. Theres another button with the same kind of input to stop and reset the timer.

Output: The timer on the wall starts, displayed in minutes and second. When the player stops the timer, it's reset to "00:00"

7. Changing Color of Bouncy Balls using 2D Sliders in a 3D Environment

Input: Keycode "B" Input and Slider Inputs (Red, Green, and Blue Sliders)

Output: Player can unlock their cursor to interact with the red, green and blue sliders. The color of all bouncy balls in the 3D environment change dynamically as the slider values are adjusted.

8. Changing Rendering Mesh of Bouncy Balls from Sphere to Cubes

Input: Keycode "B" Input and Toggle Input

Output: When the player interacts with the Toggle, all pre-existing bouncy balls have their rendering mesh changed from spheres to cubes. When interacting with it again to set it to False, the meshes are set back to spheres. The rigidbody and tags stay the same, regardless of the render mesh.

9. Interaction System with Selective Objects

Input: Interaction Input (pressing E on any interactable object that prompts you to do so)

Output: The player interacts with the interactable object, running the Interact() method in said interactable object. What actually happens can vary. This includes starting the stopwatch, stopping and resetting the stopwatch, spawn bouncy balls, to teleport to the end of the parkour when you spawn into the world on Project 3.

10.  General Animation - Destroying Destructible Wall Animation

Input: Mouse Left Click

Output: The destructable wall shrinks towards its center until it disappears. Then, it reappears as it originally looked 5 seconds later.

11. Loop Thru Complex Prefabs - 3D Button Prefab Animations

Input: Keycode Alpha1 and Keycode Alpha2

Output: Starts the button prefab if 1 is pressed, and stops it if 2 is pressed

12. Changed Type of Animation - Starting / Stopping Bouncy Ball Animations

Input: Keycode "B" Input and Left Mouse Click on "Start Animation" or "Stop Animation" UI Buttons

Output: Player can unlock their cursor and start or stop the bouncy balls' animation.

13. Change of Animation Clips - Changing Between 1 of 3 Presets for Bouncy Ball Animations

Input: Keycode "B" Input and Left Mouse Click on "Enlarge Animation" or "Shrink Animation" or "No Animation" UI Buttons

Output:  Player can unlock their cursor and change the animation of each bouncy ball between enlarging and returning to normal, shrinking and returning to normal, and no animation.

Published 9 days ago
StatusReleased
PlatformsHTML5
AuthorDanielMaleski
Made withUnity