Pour évité de te prendre la tête, je vais faire simple, étant un grand habitué du Js depuis longtemps :P
Les fonctions servent principalement a alleger ton script, d'autre comme la function Start, Awake ou le genre de detection de collision sont déjà implanté dans le langage pour facilité la vie
Créer une fonction personnalisé te servira a beaucoup de choses, par exemple faire un calcul, ou tout simplement créer un bouton pour un menu, au lieu de copier coller des dixaines de fois et de changer tout le temps le nom des variables
Le return quand a lui sert a "Tester" ta fonction, pas exemple, si tu fait une fonction qui demande si le joueur à le tag "Player", tu lui return true si c'est vrai, comme sa tu peut tester dans une ligne du style, if(FonctionQuiTesteLeTagDuJoueur() == true), un peut comme une variable boolean
Après le return peut servir a énormément de choses, tu peut retourner une texture, un nom, etc, bref tout les types imaginables.
Voilà, maintenant ton script sera beaucoup plus fluide, et tu comprend mieux le JS :P