Patch Notes - V1.8
Version 1.8 - June 2024 (CURRENT)
Updated all Text UI's to TextMeshPro for better optimisations and customisation
Added null checks to UIManager and interactor script for better null reference checks
Added bool checkbox to all managers / singletons for persistence - This allows users to state whether they want this to stay between scenes more easily
General script optimisations for performance and less line wastage
Version 1.7 - July 2023
Fixed script GUID issues by duplicating all scripts and replacing
Made Sound script generic so it will work with any of my assets
Refactored the FlashlightMovement script to make it more efficient
Refactored FlashlightController script
Added new ScriptableObject references for sounds
Split all functionality into separate methods for easier usage
Added new methods for cool down timer and reloading
Added a refactor for collecting a flashlight
Added a new PlayerInput method to split logic from content
Refactored entire drain logic section into a few lines
Update all fields with headers, titles and tooltips
Refactored the FlashlightItem script to use a switch/case for better optimisation
Flashlight pickup method to now matches new FlashlightController
Refactored FlashlightPickupTrigger
Flashlight pickup method to now matches new FlashlightController
Updated the AudioManager to be slightly more refined
Renamed FlashlightRaycast to FlashlightInteractor
Refactored this script to make it more efficient and shorter
FLUIManager additions
Added new functionality of canvas to turn on / off the canvas group instead of the main canvas object so it is always suitable for visability in the scene to avoid confusion.
Customised the flashlight UI to be more aligned with other assets
Removed the text from the UI
Renamed all UI elements to make them uniformed
Added new large yellow flashlight
Added new smaller flashlight
Version 1.6 - June 2022
Renamed all textures for consistency
Organised hierarchy of demo scene for ease of use
Cleaned up spare UI sprites from project folder
Created new UIManager
Moved Crosshair UI from raycast manager script
Moved all UI elements under the "UIManager" parent
Updated all UI references from FlashlightManager to new UIManager
Optimised Flashlight Controller script and functionality
Added ScriptableObjects for all audio effects for easy management
Flashlight Controller now has an option to disable inventory input if you don't want to see or use it (Especially if you're using the infinite flashlight)
Added an additional radial circle sprite so the package now has one thin and one thick option
Version 1.5 - June 2021
Updated the "FlashlightRaycast" script to make the system more refined
No need for layers or tags for general objects
Set the FPSController layer to "Ignore Raycast"
Added Radial UI for replacing batteries
Hold or let go of the replace battery key to do the UI interaction
Added new canvas "Flashlight_Radial_Canvas"
Added a boolean to on the "FlashlightController" to select whether you have a flashlight at the start (Not needing the requirement of picking it up
Re-imported Flashlight and Battery 3D assets with correct scaling of 1, 1, 1
Version 1.4.1 - March 2021
Optimisations
Removed Unity warnings from scripts by adding variable endings
Refactored scripts with slight optimisations and shortening where required
Scripting Changes:
Added easy variable names to change sounds in the "FlashlightController" script
Refactored and tweaked the "FlashlightTrigger" script to allow the user to pickup a battery or flashlight on trigger event
Added custom battery number, so you can pickup multiple batteries at once
Misc
Online documentation created
Added the trigger examples to the demo scene
Reduced asset size by removing light-baking
Updated to lowest Unity V2018.4 (As per Unity rules)
Version 1.4 – September 2020
UI Changes
Redesigned the flashlight UI to incorporate a new design
New flashlight basic icon
Radial 360 dial to show battery indication
Bottom corner battery number indicator
Re-written to combine this new design
Scripting Changes:
Hold “Reload Battery” key to replace the battery instead of just pressing the button
Optimised and re-factored the code to match with changes
Re-based the scene to have a much darker demo
Version 1.3 - July 2020
UI Changes:
Edited the canvas layout and the way it is display in Unity
Scripting Changes
Added a new Audio Manager, so more sounds can be added and called within script
Added a new input manager, which allows easy control of all inputs from one place
Refactored the Raycast, ItemController and main flashlight manager scripts to make them more efficient, optimised, and easier to use
The newly created “ItemController” allows an enum to be used to select the object type, the developer can easily add more objects to the enum to extend the system.
Added a trigger script to pickup batteries by walking over them
Added a new “Infinite Battery” tickbox in the controller, so you never need to pickup batteries, if the system is to be used just as a standalone flashlight mechanic.
Miscellaneous
Updated and edited sounds, textures and materials
Added new manager examples to the prefabs and demo scene
Update all prefabs and set them to 0,0,0 for future use
Changed tag type to only require “Pickup” on each item
Version 1.2 - April 2020
UI Changes:
Edited Grunge background image for visual look
Replaced the animated battery counter with a UI Image (Rather than UI Slider)
Create a rectangle UI element for UI image slider
Repositioned and anchored all UI elements
Renamed UI elements for consistency with variables
Scripting Changes
Editing variable naming conventions to improve consistency
Adding range sliders for intensity and speed
Changed default values for a more even start
Re-arranged common variables and made minor code tweaks for efficiency
Keys can be remapped within the flashlight controller inspector for ease of use
Miscellaneous
Edited flashlight rotation speed to 2 by default
Created a darker demo scene for flashlight testing
Increased the height of character controller
Changed layer mask for EXCLUDING objects like walls – Can be edited
Version 1.0 - November 2019
Initial Release
Last updated