Applying OOP principles on a project for Unity Junior Programmer Pathway.
oop.mp4
I've created a parent Paint class and 2 child classes named OrangePaint and BluePaint that are both deriving from parent Paint class.
OrangePaint class overrides Paint's PaintObject() function to add a particle effect to the painted object.
GameManager class has clean and reusable high-level functions.
GameManager has a static instance with private setter to prevent accidentally breaking such important class.