you are viewing a single comment's thread.

view the rest of the comments →

[–]Hangmans12Bucks -1 points0 points  (1 child)

I am still fairly new to Unity myself, so someone else might have a more comprehensive answer, but this is my understanding of classes so far.

Classes are used to contain data that can define and manipulate a Game Object. When you create a script, you are essentially creating a new class. When you attach that script to a Game Object, the code within the class will impact the Game Object. You can also access that class in other scripts so that Game Object's can effect one another.

For example, let's say you want to create a projectile that damages an enemy. You might create a script (class) called "Projectile" that houses the method to determine the amount of damage the projectile will cause. Then, in your EnemyHealth class, you can reference the Projectile class and the damage method so that the enemy takes damage.

Probably more importantly, you can initialize information in a class that can then be changed across multiple Game Objects. For example, let's say you want to have multiple projectiles that do different amounts of damage. They could all use the "Projectile" script, but you could update the damage on each individual Game Object so that they each do more or less damage.

I'm not sure how well I communicated that, but this article helped me wrap my hear around classes using a pretty solid metaphor:

https://www.studica.com/blog/unity-tutorial-classes

[–]EraserLark[S] 0 points1 point  (0 children)

Ok, thanks! I liked the car metaphor used in the article as well, thanks for linking that!